diff --git a/dist/open-dis7-java.jar b/dist/open-dis7-java.jar
index bbdde2a854bf454f71c20426c7a16e987c3fa105..c569b1c51e71acbeecd2fdc9b7089bd19633bdf1 100644
Binary files a/dist/open-dis7-java.jar and b/dist/open-dis7-java.jar differ
diff --git a/dist/open-dis7-javadoc.jar b/dist/open-dis7-javadoc.jar
index 256908858629f75eb623e52f2ef77c907bc296ac..f9de54854eb6de3176e57ac1252823d645cee781 100644
Binary files a/dist/open-dis7-javadoc.jar and b/dist/open-dis7-javadoc.jar differ
diff --git a/dist/open-dis7-source.jar b/dist/open-dis7-source.jar
index 5c0c3a28cb282ec0dc593d73de8ef2bbc3ad85f7..c9e361f1ebdf3d525ba72f66618f84cc5f695ca2 100644
Binary files a/dist/open-dis7-source.jar and b/dist/open-dis7-source.jar differ
diff --git a/entityjars/open-dis7-entities-all.jar b/entityjars/open-dis7-entities-all.jar
index d7db15b469dfb355ef690caa40e7cc7a759441b3..9659d01b13c2e9e3d854c2cfb50592fe96aef4b2 100644
Binary files a/entityjars/open-dis7-entities-all.jar and b/entityjars/open-dis7-entities-all.jar differ
diff --git a/entityjars/open-dis7-entities-chn.jar b/entityjars/open-dis7-entities-chn.jar
index e0eaf265c21ab55b153151e65d561f1e2cf7c1de..4352a5b4ac629a318700ea57e9c10f31b3f9568c 100644
Binary files a/entityjars/open-dis7-entities-chn.jar and b/entityjars/open-dis7-entities-chn.jar differ
diff --git a/entityjars/open-dis7-entities-deu.jar b/entityjars/open-dis7-entities-deu.jar
index 55e54721f7b86ca4fc2685dad2fada7dcf51bff7..b20d0947f0c0a9643ea3066002cdcf742b901e07 100644
Binary files a/entityjars/open-dis7-entities-deu.jar and b/entityjars/open-dis7-entities-deu.jar differ
diff --git a/entityjars/open-dis7-entities-javadoc.jar b/entityjars/open-dis7-entities-javadoc.jar
index a83c99daafe2842f8fd2670fd92d8750fcba365c..e6170a21b34590687e74768f2a673ba431035d81 100644
Binary files a/entityjars/open-dis7-entities-javadoc.jar and b/entityjars/open-dis7-entities-javadoc.jar differ
diff --git a/entityjars/open-dis7-entities-nato.jar b/entityjars/open-dis7-entities-nato.jar
index d7061c48c21e2776c57e6be204a105c6a626f895..1228000f97a84ad0449c6a49ec9ace55215d2aa3 100644
Binary files a/entityjars/open-dis7-entities-nato.jar and b/entityjars/open-dis7-entities-nato.jar differ
diff --git a/entityjars/open-dis7-entities-rus.jar b/entityjars/open-dis7-entities-rus.jar
index 1e49dbf94e4e5fe43536f22496b1fb32c864ac08..d11dd283a367b7360d642aa9615a3db658ded302 100644
Binary files a/entityjars/open-dis7-entities-rus.jar and b/entityjars/open-dis7-entities-rus.jar differ
diff --git a/entityjars/open-dis7-entities-usa-air.jar b/entityjars/open-dis7-entities-usa-air.jar
index 87c612bc544db7cd72b64ea9307515474fe46102..3beda4ad09a882f1279ab001338247c3f0087e58 100644
Binary files a/entityjars/open-dis7-entities-usa-air.jar and b/entityjars/open-dis7-entities-usa-air.jar differ
diff --git a/entityjars/open-dis7-entities-usa-all.jar b/entityjars/open-dis7-entities-usa-all.jar
index b9d74b64c329d4c38c0ed132a7ce7ec3202bbe03..2361a33999ebc4e6c4a99aaab0678baff9feef42 100644
Binary files a/entityjars/open-dis7-entities-usa-all.jar and b/entityjars/open-dis7-entities-usa-all.jar differ
diff --git a/entityjars/open-dis7-entities-usa-land.jar b/entityjars/open-dis7-entities-usa-land.jar
index 8365362c6349ecf12aa04a99f84740a92736035c..3522997f6f24891109a9373f3e45e897ed016a2a 100644
Binary files a/entityjars/open-dis7-entities-usa-land.jar and b/entityjars/open-dis7-entities-usa-land.jar differ
diff --git a/entityjars/open-dis7-entities-usa-munitions.jar b/entityjars/open-dis7-entities-usa-munitions.jar
index 8f22e729fbe3c278a2255103ddcec522110068b3..5c67f0ad99341933947725f809b802fd1c1c0cae 100644
Binary files a/entityjars/open-dis7-entities-usa-munitions.jar and b/entityjars/open-dis7-entities-usa-munitions.jar differ
diff --git a/entityjars/open-dis7-entities-usa-surface.jar b/entityjars/open-dis7-entities-usa-surface.jar
index 83a5be28e245897045360decac24c4cfd12bf47c..df3c2190bc60718a8e60ae36f7be79041a7759bc 100644
Binary files a/entityjars/open-dis7-entities-usa-surface.jar and b/entityjars/open-dis7-entities-usa-surface.jar differ
diff --git a/src-generated/edu/nps/moves/dis7/APA.java b/src-generated/edu/nps/moves/dis7/APA.java
index fbff55363018b16f8921202716869f11385ca653..930bc4bcc59f37c41f3cb570fe74d4158e5d384f 100644
--- a/src-generated/edu/nps/moves/dis7/APA.java
+++ b/src-generated/edu/nps/moves/dis7/APA.java
@@ -145,7 +145,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -167,4 +167,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (value == rhs.value)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" parameterIndex: ").append(parameterIndex).append("\n");
+    sb.append(" value: ").append(value).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AcknowledgePdu.java b/src-generated/edu/nps/moves/dis7/AcknowledgePdu.java
index f68e6f2ff2734ce84a34b298bde0cf3bec228b6e..6f3b178d9bea710162a3ba7f98bbfd5898620bff 100644
--- a/src-generated/edu/nps/moves/dis7/AcknowledgePdu.java
+++ b/src-generated/edu/nps/moves/dis7/AcknowledgePdu.java
@@ -177,7 +177,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -195,4 +195,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" acknowledgeFlag: ").append(acknowledgeFlag).append("\n");
+    sb.append(" responseFlag: ").append(responseFlag).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AcknowledgeRPdu.java b/src-generated/edu/nps/moves/dis7/AcknowledgeRPdu.java
index 32da80ccfcbf3d132bd4e432c754e844e05f9bd9..34c05da4d6b4ba028c8452cf6b69849e3c8dae25 100644
--- a/src-generated/edu/nps/moves/dis7/AcknowledgeRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/AcknowledgeRPdu.java
@@ -177,7 +177,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -195,4 +195,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" acknowledgeFlag: ").append(acknowledgeFlag).append("\n");
+    sb.append(" responseFlag: ").append(responseFlag).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AcousticEmitter.java b/src-generated/edu/nps/moves/dis7/AcousticEmitter.java
index 8385c2f60188b1b427211aa1e270f6ac9130bf96..67be0110d620b23da0ac383ef31779b6f1e06098 100644
--- a/src-generated/edu/nps/moves/dis7/AcousticEmitter.java
+++ b/src-generated/edu/nps/moves/dis7/AcousticEmitter.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (acousticIDNumber == rhs.acousticIDNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" acousticSystemName: ").append(acousticSystemName).append("\n");
+    sb.append(" acousticFunction: ").append(acousticFunction).append("\n");
+    sb.append(" acousticIDNumber: ").append(acousticIDNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ActionRequestPdu.java b/src-generated/edu/nps/moves/dis7/ActionRequestPdu.java
index bb160d13b3103ebdeae52f7423a56df343b8f5d1..03e4bf27951d3f1c91626ed4bfcff64783ccf7ac 100644
--- a/src-generated/edu/nps/moves/dis7/ActionRequestPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ActionRequestPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" actionID: ").append(actionID).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ActionRequestRPdu.java b/src-generated/edu/nps/moves/dis7/ActionRequestRPdu.java
index 4b8e3676065c96e78b2b3294f7d292282f6aa214..3a9de4df0ce49e5c67e79660b0c8cfbe6832a0cb 100644
--- a/src-generated/edu/nps/moves/dis7/ActionRequestRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ActionRequestRPdu.java
@@ -337,7 +337,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -365,4 +365,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" actionID: ").append(actionID).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ActionResponsePdu.java b/src-generated/edu/nps/moves/dis7/ActionResponsePdu.java
index c20f312612d4db803ba4349567b470fd7956ca4d..2412d29c591ee48085ec7317cc1c18c0b26d6355 100644
--- a/src-generated/edu/nps/moves/dis7/ActionResponsePdu.java
+++ b/src-generated/edu/nps/moves/dis7/ActionResponsePdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requestStatus: ").append(requestStatus).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ActionResponseRPdu.java b/src-generated/edu/nps/moves/dis7/ActionResponseRPdu.java
index 0bec73a1e02eca927f452bbdfea2d27669309604..b91c749cdf100b5ae931c996e8330ae4df69ba15 100644
--- a/src-generated/edu/nps/moves/dis7/ActionResponseRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ActionResponseRPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" responseStatus: ").append(responseStatus).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AggregateIdentifier.java b/src-generated/edu/nps/moves/dis7/AggregateIdentifier.java
index 5fcf12f269317d2c87de5eb5e9f98e5fe531c1dc..6ce0d49f060ced1f5cbd888769ddc381b9fa90bd 100644
--- a/src-generated/edu/nps/moves/dis7/AggregateIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/AggregateIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (aggregateID == rhs.aggregateID)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" aggregateID: ").append(aggregateID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AggregateMarking.java b/src-generated/edu/nps/moves/dis7/AggregateMarking.java
index c6e216f022d3ac5327762389de115917300f71a7..fbbf555463c1e98229db66dd84de2bdfdcede933 100644
--- a/src-generated/edu/nps/moves/dis7/AggregateMarking.java
+++ b/src-generated/edu/nps/moves/dis7/AggregateMarking.java
@@ -155,7 +155,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -182,4 +182,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" characterSet: ").append(characterSet).append("\n");
+    sb.append(" characters: ").append("\n");
+    sb.append(Arrays.toString(characters)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AggregateStatePdu.java b/src-generated/edu/nps/moves/dis7/AggregateStatePdu.java
index 7e60675e328a48a071f94c56559e741bc113f9b4..78a0e2348008b9e32cd7c1fa62d7565d2ae4d729 100644
--- a/src-generated/edu/nps/moves/dis7/AggregateStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/AggregateStatePdu.java
@@ -622,7 +622,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -667,4 +667,35 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" aggregateID: ").append(aggregateID).append("\n");
+    sb.append(" forceID: ").append(forceID).append("\n");
+    sb.append(" aggregateState: ").append(aggregateState).append("\n");
+    sb.append(" aggregateType: ").append(aggregateType).append("\n");
+    sb.append(" formation: ").append(formation).append("\n");
+    sb.append(" aggregateMarking: ").append(aggregateMarking).append("\n");
+    sb.append(" dimensions: ").append(dimensions).append("\n");
+    sb.append(" orientation: ").append(orientation).append("\n");
+    sb.append(" centerOfMass: ").append(centerOfMass).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" padTo32: ").append(padTo32).append("\n");
+    sb.append(" aggregateIDList: ").append("\n");
+    aggregateIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" entityIDList: ").append("\n");
+    entityIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" silentAggregateSystemList: ").append("\n");
+    silentAggregateSystemList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" silentEntitySystemList: ").append("\n");
+    silentEntitySystemList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumList: ").append("\n");
+    variableDatumList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AggregateType.java b/src-generated/edu/nps/moves/dis7/AggregateType.java
index d5087967a7cf2ae77ed15b91ace14863b63d3abf..5e94c86dea40802d1aa9231c54a07120d92b5747 100644
--- a/src-generated/edu/nps/moves/dis7/AggregateType.java
+++ b/src-generated/edu/nps/moves/dis7/AggregateType.java
@@ -256,7 +256,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -283,4 +283,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (extra == rhs.extra)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" aggregateKind: ").append(aggregateKind).append("\n");
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" country: ").append(country).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subcategory: ").append(subcategory).append("\n");
+    sb.append(" specificInfo: ").append(specificInfo).append("\n");
+    sb.append(" extra: ").append(extra).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AngleDeception.java b/src-generated/edu/nps/moves/dis7/AngleDeception.java
index b2fa32328c667db9ba41882661e45d87b6d87191..b5119b0139461fa6f1d291a6f638439e34dd5b7f 100644
--- a/src-generated/edu/nps/moves/dis7/AngleDeception.java
+++ b/src-generated/edu/nps/moves/dis7/AngleDeception.java
@@ -440,7 +440,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -476,4 +476,30 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding3 == rhs.padding3)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" emitterNumber: ").append(emitterNumber).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+    sb.append(" stateIndicator: ").append(stateIndicator).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" azimuthOffset: ").append(azimuthOffset).append("\n");
+    sb.append(" azimuthWidth: ").append(azimuthWidth).append("\n");
+    sb.append(" azimuthPullRate: ").append(azimuthPullRate).append("\n");
+    sb.append(" azimuthPullAcceleration: ").append(azimuthPullAcceleration).append("\n");
+    sb.append(" elevationOffset: ").append(elevationOffset).append("\n");
+    sb.append(" elevationWidth: ").append(elevationWidth).append("\n");
+    sb.append(" elevationPullRate: ").append(elevationPullRate).append("\n");
+    sb.append(" elevationPullAcceleration: ").append(elevationPullAcceleration).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AngularVelocityVector.java b/src-generated/edu/nps/moves/dis7/AngularVelocityVector.java
index 607ebd3a9ace69f0a17655cf87bcc5e5e0bab565..7c5d75dea81fc4d34ae1d1e487e03c27713d4e23 100644
--- a/src-generated/edu/nps/moves/dis7/AngularVelocityVector.java
+++ b/src-generated/edu/nps/moves/dis7/AngularVelocityVector.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (z == rhs.z)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" x: ").append(x).append("\n");
+    sb.append(" y: ").append(y).append("\n");
+    sb.append(" z: ").append(z).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AntennaLocation.java b/src-generated/edu/nps/moves/dis7/AntennaLocation.java
index 3a849eede487e04515226ffde0428f6e36a50e5b..0490b93b63824010e558373c222f101f342cdfa6 100644
--- a/src-generated/edu/nps/moves/dis7/AntennaLocation.java
+++ b/src-generated/edu/nps/moves/dis7/AntennaLocation.java
@@ -145,7 +145,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -167,4 +167,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (relativeAntennaLocation.equals( rhs.relativeAntennaLocation) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" antennaLocation: ").append(antennaLocation).append("\n");
+    sb.append(" relativeAntennaLocation: ").append(relativeAntennaLocation).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Appearance.java b/src-generated/edu/nps/moves/dis7/Appearance.java
index b68aaf84c4ea1a2de1445c146ac79e506fae87b0..5afe3d9d9daf6879dfa2682535c1721fcba06543 100644
--- a/src-generated/edu/nps/moves/dis7/Appearance.java
+++ b/src-generated/edu/nps/moves/dis7/Appearance.java
@@ -187,7 +187,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -211,4 +211,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (audio == rhs.audio)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" visual: ").append(visual).append("\n");
+    sb.append(" ir: ").append(ir).append("\n");
+    sb.append(" em: ").append(em).append("\n");
+    sb.append(" audio: ").append(audio).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AppearancePdu.java b/src-generated/edu/nps/moves/dis7/AppearancePdu.java
index c36b85c33d86541e42e71a0d5959aff4ceedfdf8..6ffdb7b189959179406e61deecfe6539a3880c15 100644
--- a/src-generated/edu/nps/moves/dis7/AppearancePdu.java
+++ b/src-generated/edu/nps/moves/dis7/AppearancePdu.java
@@ -275,7 +275,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -298,4 +298,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (appearanceFields.equals( rhs.appearanceFields) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" liveEntityId: ").append(liveEntityId).append("\n");
+    sb.append(" appearanceFlags: ").append(appearanceFlags).append("\n");
+    sb.append(" forceId: ").append(forceId).append("\n");
+    sb.append(" entityType: ").append(entityType).append("\n");
+    sb.append(" alternateEntityType: ").append(alternateEntityType).append("\n");
+    sb.append(" entityMarking: ").append(entityMarking).append("\n");
+    sb.append(" capabilities: ").append(capabilities).append("\n");
+    sb.append(" appearanceFields: ").append(appearanceFields).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ArealObjectStatePdu.java b/src-generated/edu/nps/moves/dis7/ArealObjectStatePdu.java
index 2dd87d0ff4eaa7d140306a1baa92017cefae986d..64b7d1339e53eab6fa0ca20333b3fff1f3392bdb 100644
--- a/src-generated/edu/nps/moves/dis7/ArealObjectStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/ArealObjectStatePdu.java
@@ -383,7 +383,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -400,6 +400,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (referencedObjectID.equals( rhs.referencedObjectID) )) ivarsEqual = false;
      if( ! (updateNumber == rhs.updateNumber)) ivarsEqual = false;
      if( ! (forceID == rhs.forceID)) ivarsEqual = false;
+     if( ! (modifications.equals( rhs.modifications) )) ivarsEqual = false;
      if( ! (objectType.equals( rhs.objectType) )) ivarsEqual = false;
      if( ! (specificObjectAppearance == rhs.specificObjectAppearance)) ivarsEqual = false;
      if( ! (generalObjectAppearance == rhs.generalObjectAppearance)) ivarsEqual = false;
@@ -411,4 +412,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" objectID: ").append(objectID).append("\n");
+    sb.append(" referencedObjectID: ").append(referencedObjectID).append("\n");
+    sb.append(" updateNumber: ").append(updateNumber).append("\n");
+    sb.append(" forceID: ").append(forceID).append("\n");
+    sb.append(" modifications: ").append(modifications).append("\n");
+    sb.append(" objectType: ").append(objectType).append("\n");
+    sb.append(" specificObjectAppearance: ").append(specificObjectAppearance).append("\n");
+    sb.append(" generalObjectAppearance: ").append(generalObjectAppearance).append("\n");
+    sb.append(" requesterID: ").append(requesterID).append("\n");
+    sb.append(" receivingID: ").append(receivingID).append("\n");
+    sb.append(" objectLocation: ").append("\n");
+    objectLocation.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ArticulatedPartVP.java b/src-generated/edu/nps/moves/dis7/ArticulatedPartVP.java
index fd904f0d011a953f026a663e9b633ed9ba904ce0..33f041c70574fcc690317dc3e7a8095bd138b2e3 100644
--- a/src-generated/edu/nps/moves/dis7/ArticulatedPartVP.java
+++ b/src-generated/edu/nps/moves/dis7/ArticulatedPartVP.java
@@ -234,7 +234,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -260,4 +260,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" changeIndicator: ").append(changeIndicator).append("\n");
+    sb.append(" partAttachedTo: ").append(partAttachedTo).append("\n");
+    sb.append(" parameterType: ").append(parameterType).append("\n");
+    sb.append(" parameterValue: ").append(parameterValue).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ArticulatedPartsPdu.java b/src-generated/edu/nps/moves/dis7/ArticulatedPartsPdu.java
index 84f17d4ddc48e3f788e44518eab1b6dfac5dcf32..712c983d159c55153a39fe7dd135a7066b1124b4 100644
--- a/src-generated/edu/nps/moves/dis7/ArticulatedPartsPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ArticulatedPartsPdu.java
@@ -187,7 +187,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -207,4 +207,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" liveEntityId: ").append(liveEntityId).append("\n");
+    sb.append(" variableParameters: ").append("\n");
+    variableParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Association.java b/src-generated/edu/nps/moves/dis7/Association.java
index 35acca60484ca7077910927180929e8e11fccbe6..7d3b30089384ecce68fed0c540374952e1fb53db 100644
--- a/src-generated/edu/nps/moves/dis7/Association.java
+++ b/src-generated/edu/nps/moves/dis7/Association.java
@@ -188,7 +188,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -212,4 +212,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (associatedLocation.equals( rhs.associatedLocation) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" associationType: ").append(associationType).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" associatedEntityID: ").append(associatedEntityID).append("\n");
+    sb.append(" associatedLocation: ").append(associatedLocation).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AttachedPartVP.java b/src-generated/edu/nps/moves/dis7/AttachedPartVP.java
index 3e909528df2afca43ce5f0f18387d591913dd6ab..55cbc198045e8a177a75fbf537674e1ddd1f9744 100644
--- a/src-generated/edu/nps/moves/dis7/AttachedPartVP.java
+++ b/src-generated/edu/nps/moves/dis7/AttachedPartVP.java
@@ -212,7 +212,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -237,4 +237,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (attachedPartType.equals( rhs.attachedPartType) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" detachedIndicator: ").append(detachedIndicator).append("\n");
+    sb.append(" partAttachedTo: ").append(partAttachedTo).append("\n");
+    sb.append(" parameterType: ").append(parameterType).append("\n");
+    sb.append(" attachedPartType: ").append(attachedPartType).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Attribute.java b/src-generated/edu/nps/moves/dis7/Attribute.java
index 643c7cab7389574ad1ac10f08c7670fbba1c8416..0ca8d60953d7a43cbdd955a26e8c0e731edcda6a 100644
--- a/src-generated/edu/nps/moves/dis7/Attribute.java
+++ b/src-generated/edu/nps/moves/dis7/Attribute.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -196,4 +196,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AttributePdu.java b/src-generated/edu/nps/moves/dis7/AttributePdu.java
index 0a3d436b2b6c763bfbfe569cf21ade73b783efcc..41799ff28c3d148c130ea09cc7400481f00d84d8 100644
--- a/src-generated/edu/nps/moves/dis7/AttributePdu.java
+++ b/src-generated/edu/nps/moves/dis7/AttributePdu.java
@@ -343,7 +343,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -370,4 +370,24 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" originatingSimulationAddress: ").append(originatingSimulationAddress).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" attributeRecordPduType: ").append(attributeRecordPduType).append("\n");
+    sb.append(" attributeRecordProtocolVersion: ").append(attributeRecordProtocolVersion).append("\n");
+    sb.append(" masterAttributeRecordType: ").append(masterAttributeRecordType).append("\n");
+    sb.append(" actionCode: ").append(actionCode).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+    sb.append(" attributeRecordSets: ").append("\n");
+    attributeRecordSets.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/AttributeRecordSet.java b/src-generated/edu/nps/moves/dis7/AttributeRecordSet.java
index af479f0d4c8aeecc8a517bd711026fafc274920a..03cfdba7f83183e87af6406bd2370d50df6e426e 100644
--- a/src-generated/edu/nps/moves/dis7/AttributeRecordSet.java
+++ b/src-generated/edu/nps/moves/dis7/AttributeRecordSet.java
@@ -178,7 +178,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -203,4 +203,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityId: ").append(entityId).append("\n");
+    sb.append(" attributeRecords: ").append("\n");
+    attributeRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/BeamAntennaPattern.java b/src-generated/edu/nps/moves/dis7/BeamAntennaPattern.java
index 8598551fa57b14dbf2aeb7f80938c22c0f9b7624..2080a09f841c7923c3830b150a26f3fccb1d65cd 100644
--- a/src-generated/edu/nps/moves/dis7/BeamAntennaPattern.java
+++ b/src-generated/edu/nps/moves/dis7/BeamAntennaPattern.java
@@ -318,7 +318,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -348,4 +348,24 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding3 == rhs.padding3)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" beamDirection: ").append(beamDirection).append("\n");
+    sb.append(" azimuthBeamwidth: ").append(azimuthBeamwidth).append("\n");
+    sb.append(" elevationBeamwidth: ").append(elevationBeamwidth).append("\n");
+    sb.append(" referenceSystem: ").append(referenceSystem).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" ez: ").append(ez).append("\n");
+    sb.append(" ex: ").append(ex).append("\n");
+    sb.append(" phase: ").append(phase).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/BeamData.java b/src-generated/edu/nps/moves/dis7/BeamData.java
index 4cbc8cf49db15ce235ea3c29942881be759bda3e..ccc25d587f9dc07bf79d2854c369fc3c4c5951b7 100644
--- a/src-generated/edu/nps/moves/dis7/BeamData.java
+++ b/src-generated/edu/nps/moves/dis7/BeamData.java
@@ -213,7 +213,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -238,4 +238,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (beamSweepSync == rhs.beamSweepSync)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" beamAzimuthCenter: ").append(beamAzimuthCenter).append("\n");
+    sb.append(" beamAzimuthSweep: ").append(beamAzimuthSweep).append("\n");
+    sb.append(" beamElevationCenter: ").append(beamElevationCenter).append("\n");
+    sb.append(" beamElevationSweep: ").append(beamElevationSweep).append("\n");
+    sb.append(" beamSweepSync: ").append(beamSweepSync).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/BeamStatus.java b/src-generated/edu/nps/moves/dis7/BeamStatus.java
index 7625a02094d9dcb403d2ae7fd4490b9e6f33589c..ba016360af66e8d4cbd668a680e5d1e941ca488f 100644
--- a/src-generated/edu/nps/moves/dis7/BeamStatus.java
+++ b/src-generated/edu/nps/moves/dis7/BeamStatus.java
@@ -125,7 +125,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -146,4 +146,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (beamState == rhs.beamState)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" beamState: ").append(beamState).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/BlankingSector.java b/src-generated/edu/nps/moves/dis7/BlankingSector.java
index 7929df04910f8e83d814b924b218ab9f7f153df0..560ff4fc3a790c10008303a7d13b30e36c19c4df 100644
--- a/src-generated/edu/nps/moves/dis7/BlankingSector.java
+++ b/src-generated/edu/nps/moves/dis7/BlankingSector.java
@@ -377,7 +377,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -410,4 +410,27 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding3 == rhs.padding3)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" emitterNumber: ").append(emitterNumber).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+    sb.append(" stateIndicator: ").append(stateIndicator).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" leftAzimuth: ").append(leftAzimuth).append("\n");
+    sb.append(" rightAzimuth: ").append(rightAzimuth).append("\n");
+    sb.append(" lowerElevation: ").append(lowerElevation).append("\n");
+    sb.append(" upperElevation: ").append(upperElevation).append("\n");
+    sb.append(" residualPower: ").append(residualPower).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ChangeOptions.java b/src-generated/edu/nps/moves/dis7/ChangeOptions.java
index aed05aa93e28b529ad4c0d9979c679d293a3507a..a43350fc1c56c86cdd190f5c4bb9cc240976098d 100644
--- a/src-generated/edu/nps/moves/dis7/ChangeOptions.java
+++ b/src-generated/edu/nps/moves/dis7/ChangeOptions.java
@@ -124,7 +124,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -145,4 +145,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (value == rhs.value)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" value: ").append(value).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ClockTime.java b/src-generated/edu/nps/moves/dis7/ClockTime.java
index 1927a3db1d4217b12ad771914915a07c30e62356..93ea45e2d6190f9edbff937c22eb44a78e07df9e 100644
--- a/src-generated/edu/nps/moves/dis7/ClockTime.java
+++ b/src-generated/edu/nps/moves/dis7/ClockTime.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (timePastHour == rhs.timePastHour)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" hour: ").append(hour).append("\n");
+    sb.append(" timePastHour: ").append(timePastHour).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CollisionElasticPdu.java b/src-generated/edu/nps/moves/dis7/CollisionElasticPdu.java
index 5ca36bba068390f230ec6ac43907e5189c3dbaf5..c3f6b7898bdafefc72e82e4c727187deb46a0855 100644
--- a/src-generated/edu/nps/moves/dis7/CollisionElasticPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CollisionElasticPdu.java
@@ -435,7 +435,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -465,4 +465,29 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (coefficientOfRestitution == rhs.coefficientOfRestitution)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" issuingEntityID: ").append(issuingEntityID).append("\n");
+    sb.append(" collidingEntityID: ").append(collidingEntityID).append("\n");
+    sb.append(" collisionEventID: ").append(collisionEventID).append("\n");
+    sb.append(" pad: ").append(pad).append("\n");
+    sb.append(" contactVelocity: ").append(contactVelocity).append("\n");
+    sb.append(" mass: ").append(mass).append("\n");
+    sb.append(" locationOfImpact: ").append(locationOfImpact).append("\n");
+    sb.append(" collisionIntermediateResultXX: ").append(collisionIntermediateResultXX).append("\n");
+    sb.append(" collisionIntermediateResultXY: ").append(collisionIntermediateResultXY).append("\n");
+    sb.append(" collisionIntermediateResultXZ: ").append(collisionIntermediateResultXZ).append("\n");
+    sb.append(" collisionIntermediateResultYY: ").append(collisionIntermediateResultYY).append("\n");
+    sb.append(" collisionIntermediateResultYZ: ").append(collisionIntermediateResultYZ).append("\n");
+    sb.append(" collisionIntermediateResultZZ: ").append(collisionIntermediateResultZZ).append("\n");
+    sb.append(" unitSurfaceNormal: ").append(unitSurfaceNormal).append("\n");
+    sb.append(" coefficientOfRestitution: ").append(coefficientOfRestitution).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CollisionPdu.java b/src-generated/edu/nps/moves/dis7/CollisionPdu.java
index 943fa6f40aae2291f7673fc07508742193ce3b82..9ed693cdd2948d45b1c4676f5dc0465512fad793 100644
--- a/src-generated/edu/nps/moves/dis7/CollisionPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CollisionPdu.java
@@ -282,7 +282,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -305,4 +305,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (location.equals( rhs.location) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" issuingEntityID: ").append(issuingEntityID).append("\n");
+    sb.append(" collidingEntityID: ").append(collidingEntityID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" collisionType: ").append(collisionType).append("\n");
+    sb.append(" pad: ").append(pad).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" mass: ").append(mass).append("\n");
+    sb.append(" location: ").append(location).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CommentPdu.java b/src-generated/edu/nps/moves/dis7/CommentPdu.java
index a7776c041104c96d0e58a5649281f020fd6df51c..9c79fe51bba9cb0ac7623488f4ea98c7f00ae9dc 100644
--- a/src-generated/edu/nps/moves/dis7/CommentPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CommentPdu.java
@@ -178,7 +178,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -197,4 +197,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CommentRPdu.java b/src-generated/edu/nps/moves/dis7/CommentRPdu.java
index f2309c53a17b88cffc3aac0daf8eab6b28771c2e..ce481141c5a588a060e4fa35c33f06a9929472ab 100644
--- a/src-generated/edu/nps/moves/dis7/CommentRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CommentRPdu.java
@@ -178,7 +178,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -197,4 +197,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CommunicationsNodeID.java b/src-generated/edu/nps/moves/dis7/CommunicationsNodeID.java
index 6fcbb5885ab7e4f13019b39b5507c397abc78a4d..267004e4b21f40848f0e6d3d3f8c7dbd714f8bfa 100644
--- a/src-generated/edu/nps/moves/dis7/CommunicationsNodeID.java
+++ b/src-generated/edu/nps/moves/dis7/CommunicationsNodeID.java
@@ -144,7 +144,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -166,4 +166,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (elementID == rhs.elementID)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityID: ").append(entityID).append("\n");
+    sb.append(" elementID: ").append(elementID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CreateEntityPdu.java b/src-generated/edu/nps/moves/dis7/CreateEntityPdu.java
index 431bf92b5594c844e09fd67c0730913a6d602cfc..3e64a98b3a71ee98418fe751b32334109dd0de4e 100644
--- a/src-generated/edu/nps/moves/dis7/CreateEntityPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CreateEntityPdu.java
@@ -133,7 +133,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -149,4 +149,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/CreateEntityRPdu.java b/src-generated/edu/nps/moves/dis7/CreateEntityRPdu.java
index 49185b148fe77145c1874436e8c5bc79a141f90a..278ac376657dad96009304381f00d0776d7f62c8 100644
--- a/src-generated/edu/nps/moves/dis7/CreateEntityRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/CreateEntityRPdu.java
@@ -197,7 +197,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -216,4 +216,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataFilterRecord.java b/src-generated/edu/nps/moves/dis7/DataFilterRecord.java
index 0f8686fc5f501952def80ee50c84b1a4b748dab4..6be3dddf6282cf72be1360a93b938f141d334b2f 100644
--- a/src-generated/edu/nps/moves/dis7/DataFilterRecord.java
+++ b/src-generated/edu/nps/moves/dis7/DataFilterRecord.java
@@ -136,7 +136,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -157,4 +157,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (bitFlags == rhs.bitFlags)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" bitFlags: ").append(bitFlags).append("\n");
+    sb.append(" GROUND_BURIAL_DEPTH_OFFSET_BIT: ").append(GROUND_BURIAL_DEPTH_OFFSET_BIT).append("\n");
+    sb.append(" WATER_BURIAL_DEPTH_OFFSET_BIT: ").append(WATER_BURIAL_DEPTH_OFFSET_BIT).append("\n");
+    sb.append(" SNOW_BURIAL_DEPTH_OFFSET_BIT: ").append(SNOW_BURIAL_DEPTH_OFFSET_BIT).append("\n");
+    sb.append(" MINE_ORIENTATION_BIT: ").append(MINE_ORIENTATION_BIT).append("\n");
+    sb.append(" THERMAL_CONSTRAST_BIT: ").append(THERMAL_CONSTRAST_BIT).append("\n");
+    sb.append(" REFLECTANCE_BIT: ").append(REFLECTANCE_BIT).append("\n");
+    sb.append(" MINE_EMPLACEMENT_TIME_BIT: ").append(MINE_EMPLACEMENT_TIME_BIT).append("\n");
+    sb.append(" TRIP_DETONATION_WIRE_BIT: ").append(TRIP_DETONATION_WIRE_BIT).append("\n");
+    sb.append(" FUSING_BIT: ").append(FUSING_BIT).append("\n");
+    sb.append(" SCALAR_DETECTION_COEFFICIENT_BIT: ").append(SCALAR_DETECTION_COEFFICIENT_BIT).append("\n");
+    sb.append(" PAINT_SCHEME_BIT: ").append(PAINT_SCHEME_BIT).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataPdu.java b/src-generated/edu/nps/moves/dis7/DataPdu.java
index e73d66f853a7554dc64242956a6ead978fa6a497..e10ff1946966eb931e3c3cabf1c66c09505110e3 100644
--- a/src-generated/edu/nps/moves/dis7/DataPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DataPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataQueryDatumSpecification.java b/src-generated/edu/nps/moves/dis7/DataQueryDatumSpecification.java
index e6db4eb600d16417ccb6a5c090f9ec90d0cc1482..1ab361b9dcfc22ed315d85f761c7105f7bac2f85 100644
--- a/src-generated/edu/nps/moves/dis7/DataQueryDatumSpecification.java
+++ b/src-generated/edu/nps/moves/dis7/DataQueryDatumSpecification.java
@@ -219,7 +219,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -247,4 +247,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fixedDatumIDList: ").append("\n");
+    fixedDatumIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumIDList: ").append("\n");
+    variableDatumIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataQueryPdu.java b/src-generated/edu/nps/moves/dis7/DataQueryPdu.java
index 079a37edf3ec5c73f19beaeb827ea95ac61de367..c42dbdb4498801dfa1e983756f1fa90bea718353 100644
--- a/src-generated/edu/nps/moves/dis7/DataQueryPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DataQueryPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" timeInterval: ").append(timeInterval).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataQueryRPdu.java b/src-generated/edu/nps/moves/dis7/DataQueryRPdu.java
index 3df2a1370100bba056828f5c6b532570f9e7b071..fe11c513c9e40a97f9143ef468aa324c8bc0f283 100644
--- a/src-generated/edu/nps/moves/dis7/DataQueryRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DataQueryRPdu.java
@@ -337,7 +337,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -365,4 +365,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" timeInterval: ").append(timeInterval).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DataRPdu.java b/src-generated/edu/nps/moves/dis7/DataRPdu.java
index 5de89bdcc41a4c4258e4317afde90977accf0f5e..402e300ca90ebab8e18b687a336e7e01151f25d0 100644
--- a/src-generated/edu/nps/moves/dis7/DataRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DataRPdu.java
@@ -315,7 +315,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -342,4 +342,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DatumSpecification.java b/src-generated/edu/nps/moves/dis7/DatumSpecification.java
index 94667c8b3b54f19350123dc8ee4dd6bae3a27e96..5b680667fa3bd7c76bafcea646da7dda9e16c41e 100644
--- a/src-generated/edu/nps/moves/dis7/DatumSpecification.java
+++ b/src-generated/edu/nps/moves/dis7/DatumSpecification.java
@@ -219,7 +219,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -247,4 +247,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fixedDatumIDList: ").append("\n");
+    fixedDatumIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumIDList: ").append("\n");
+    variableDatumIDList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DeadReckoningParameters.java b/src-generated/edu/nps/moves/dis7/DeadReckoningParameters.java
index 4a810aabbfb966805c78fc8c2dc0c498cb069ae5..e28b5afbe6072ba76f00d5e3fa82afe40a6c6802 100644
--- a/src-generated/edu/nps/moves/dis7/DeadReckoningParameters.java
+++ b/src-generated/edu/nps/moves/dis7/DeadReckoningParameters.java
@@ -197,7 +197,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -226,4 +226,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityAngularVelocity.equals( rhs.entityAngularVelocity) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" deadReckoningAlgorithm: ").append(deadReckoningAlgorithm).append("\n");
+    sb.append(" parameters: ").append("\n");
+    sb.append(Arrays.toString(parameters)).append("\n");
+    sb.append(" entityLinearAcceleration: ").append(entityLinearAcceleration).append("\n");
+    sb.append(" entityAngularVelocity: ").append(entityAngularVelocity).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DesignatorPdu.java b/src-generated/edu/nps/moves/dis7/DesignatorPdu.java
index e1b6b1ed264ad38a291b332d8fd2e4a0b7e7e254..ceb3cbfe59412f3cb824288e62ec2023e329eb4e 100644
--- a/src-generated/edu/nps/moves/dis7/DesignatorPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DesignatorPdu.java
@@ -370,7 +370,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -397,4 +397,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityLinearAcceleration.equals( rhs.entityLinearAcceleration) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" designatingEntityID: ").append(designatingEntityID).append("\n");
+    sb.append(" codeName: ").append(codeName).append("\n");
+    sb.append(" designatedEntityID: ").append(designatedEntityID).append("\n");
+    sb.append(" designatorCode: ").append(designatorCode).append("\n");
+    sb.append(" designatorPower: ").append(designatorPower).append("\n");
+    sb.append(" designatorWavelength: ").append(designatorWavelength).append("\n");
+    sb.append(" designatorSpotWrtDesignated: ").append(designatorSpotWrtDesignated).append("\n");
+    sb.append(" designatorSpotLocation: ").append(designatorSpotLocation).append("\n");
+    sb.append(" deadReckoningAlgorithm: ").append(deadReckoningAlgorithm).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" entityLinearAcceleration: ").append(entityLinearAcceleration).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DetonationPdu.java b/src-generated/edu/nps/moves/dis7/DetonationPdu.java
index fd4a627a294bb615216f581c941779da51824e39..6043f5c82ec93f7908412818908fae8a2d83a441 100644
--- a/src-generated/edu/nps/moves/dis7/DetonationPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DetonationPdu.java
@@ -381,7 +381,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -410,4 +410,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" sourceEntityID: ").append(sourceEntityID).append("\n");
+    sb.append(" targetEntityID: ").append(targetEntityID).append("\n");
+    sb.append(" explodingEntityID: ").append(explodingEntityID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" locationInWorldCoordinates: ").append(locationInWorldCoordinates).append("\n");
+    sb.append(" descriptor: ").append(descriptor).append("\n");
+    sb.append(" locationOfEntityCoordinates: ").append(locationOfEntityCoordinates).append("\n");
+    sb.append(" detonationResult: ").append(detonationResult).append("\n");
+    sb.append(" pad: ").append(pad).append("\n");
+    sb.append(" variableParameters: ").append("\n");
+    variableParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DirectedEnergyAreaAimpoint.java b/src-generated/edu/nps/moves/dis7/DirectedEnergyAreaAimpoint.java
index 0534359d6ce19436ee706ced83f2739d193c3f97..b536676963ab0d307485df93a9f57ef40f713eae 100644
--- a/src-generated/edu/nps/moves/dis7/DirectedEnergyAreaAimpoint.java
+++ b/src-generated/edu/nps/moves/dis7/DirectedEnergyAreaAimpoint.java
@@ -293,7 +293,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -324,4 +324,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" beamAntennaParameterList: ").append("\n");
+    beamAntennaParameterList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" directedEnergyTargetEnergyDepositionRecordList: ").append("\n");
+    directedEnergyTargetEnergyDepositionRecordList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DirectedEnergyDamage.java b/src-generated/edu/nps/moves/dis7/DirectedEnergyDamage.java
index d4fd52bd73feb8e2996fc9f9a94f26fa4c0e811b..d6ad6bed4f528261e3e9018a1d79e721fd1142e0 100644
--- a/src-generated/edu/nps/moves/dis7/DirectedEnergyDamage.java
+++ b/src-generated/edu/nps/moves/dis7/DirectedEnergyDamage.java
@@ -364,7 +364,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -390,9 +390,32 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (temperature == rhs.temperature)) ivarsEqual = false;
      if( ! (componentIdentification == rhs.componentIdentification)) ivarsEqual = false;
      if( ! (componentDamageStatus == rhs.componentDamageStatus)) ivarsEqual = false;
+     if( ! (componentVisualDamageStatus.equals( rhs.componentVisualDamageStatus) )) ivarsEqual = false;
      if( ! (componentVisualSmokeColor == rhs.componentVisualSmokeColor)) ivarsEqual = false;
      if( ! (fireEventID.equals( rhs.fireEventID) )) ivarsEqual = false;
      if( ! (padding2 == rhs.padding2)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" damageLocation: ").append(damageLocation).append("\n");
+    sb.append(" damageDiameter: ").append(damageDiameter).append("\n");
+    sb.append(" temperature: ").append(temperature).append("\n");
+    sb.append(" componentIdentification: ").append(componentIdentification).append("\n");
+    sb.append(" componentDamageStatus: ").append(componentDamageStatus).append("\n");
+    sb.append(" componentVisualDamageStatus: ").append(componentVisualDamageStatus).append("\n");
+    sb.append(" componentVisualSmokeColor: ").append(componentVisualSmokeColor).append("\n");
+    sb.append(" fireEventID: ").append(fireEventID).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DirectedEnergyFirePdu.java b/src-generated/edu/nps/moves/dis7/DirectedEnergyFirePdu.java
index c62f76904874d8e16cd583df859a13cdaa5de0c3..007b20e18fae4f9159d7e60aff337ec031b1ab2f 100644
--- a/src-generated/edu/nps/moves/dis7/DirectedEnergyFirePdu.java
+++ b/src-generated/edu/nps/moves/dis7/DirectedEnergyFirePdu.java
@@ -509,7 +509,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -533,6 +533,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (pad1 == rhs.pad1)) ivarsEqual = false;
      if( ! (pulseRepititionFrequency == rhs.pulseRepititionFrequency)) ivarsEqual = false;
      if( ! (pulseWidth == rhs.pulseWidth)) ivarsEqual = false;
+     if( ! (flags.equals( rhs.flags) )) ivarsEqual = false;
      if( ! (pulseShape == rhs.pulseShape)) ivarsEqual = false;
      if( ! (pad2 == rhs.pad2)) ivarsEqual = false;
      if( ! (pad3 == rhs.pad3)) ivarsEqual = false;
@@ -543,4 +544,32 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" firingEntityID: ").append(firingEntityID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" munitionType: ").append(munitionType).append("\n");
+    sb.append(" shotStartTime: ").append(shotStartTime).append("\n");
+    sb.append(" commulativeShotTime: ").append(commulativeShotTime).append("\n");
+    sb.append(" apertureEmitterLocation: ").append(apertureEmitterLocation).append("\n");
+    sb.append(" apertureDiameter: ").append(apertureDiameter).append("\n");
+    sb.append(" wavelength: ").append(wavelength).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pulseRepititionFrequency: ").append(pulseRepititionFrequency).append("\n");
+    sb.append(" pulseWidth: ").append(pulseWidth).append("\n");
+    sb.append(" flags: ").append(flags).append("\n");
+    sb.append(" pulseShape: ").append(pulseShape).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" pad3: ").append(pad3).append("\n");
+    sb.append(" pad4: ").append(pad4).append("\n");
+    sb.append(" dERecords: ").append("\n");
+    dERecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DirectedEnergyPrecisionAimpoint.java b/src-generated/edu/nps/moves/dis7/DirectedEnergyPrecisionAimpoint.java
index 6ce1e1cf8666c62bda032bd73e48d18698dce322..c695992bd57f6cd2288cb1707cc85d8a78143e32 100644
--- a/src-generated/edu/nps/moves/dis7/DirectedEnergyPrecisionAimpoint.java
+++ b/src-generated/edu/nps/moves/dis7/DirectedEnergyPrecisionAimpoint.java
@@ -428,7 +428,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -463,4 +463,29 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding2 == rhs.padding2)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" targetSpotLocation: ").append(targetSpotLocation).append("\n");
+    sb.append(" targetSpotEntityLocation: ").append(targetSpotEntityLocation).append("\n");
+    sb.append(" targetSpotVelocity: ").append(targetSpotVelocity).append("\n");
+    sb.append(" targetSpotAcceleration: ").append(targetSpotAcceleration).append("\n");
+    sb.append(" targetEntityID: ").append(targetEntityID).append("\n");
+    sb.append(" targetComponentID: ").append(targetComponentID).append("\n");
+    sb.append(" beamSpotType: ").append(beamSpotType).append("\n");
+    sb.append(" beamSpotCrossSectionSemiMajorAxis: ").append(beamSpotCrossSectionSemiMajorAxis).append("\n");
+    sb.append(" beamSpotCrossSectionSemiMinorAxis: ").append(beamSpotCrossSectionSemiMinorAxis).append("\n");
+    sb.append(" beamSpotCrossSectionOrientationAngle: ").append(beamSpotCrossSectionOrientationAngle).append("\n");
+    sb.append(" peakIrradiance: ").append(peakIrradiance).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DirectedEnergyTargetEnergyDeposition.java b/src-generated/edu/nps/moves/dis7/DirectedEnergyTargetEnergyDeposition.java
index c5ff9b0e772dfa9dfc0f12233a906abc7bfc50dd..1af4b25567ce2b72eac3bb6805e6b5f47bbba09f 100644
--- a/src-generated/edu/nps/moves/dis7/DirectedEnergyTargetEnergyDeposition.java
+++ b/src-generated/edu/nps/moves/dis7/DirectedEnergyTargetEnergyDeposition.java
@@ -168,7 +168,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -191,4 +191,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (peakIrradiance == rhs.peakIrradiance)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" targetEntityID: ").append(targetEntityID).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" peakIrradiance: ").append(peakIrradiance).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/DistributedEmissionsFamilyPdu.java b/src-generated/edu/nps/moves/dis7/DistributedEmissionsFamilyPdu.java
index 6ff88c6b650fd5f4b2cc5b35100664d6d116de29..1a828035555fda9e1523e90304d128c2e4742dc0 100644
--- a/src-generated/edu/nps/moves/dis7/DistributedEmissionsFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/DistributedEmissionsFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Domain.java b/src-generated/edu/nps/moves/dis7/Domain.java
index ec78ddb64afce0e996eddd930a6faf74bbb2bc66..facf36263393dfd0462d2ff2ddeb79eb0b5e9b44 100644
--- a/src-generated/edu/nps/moves/dis7/Domain.java
+++ b/src-generated/edu/nps/moves/dis7/Domain.java
@@ -16,10 +16,11 @@ import edu.nps.moves.dis7.enumerations.*;
  * An example approximating a Java enum "superclass". Can't use an interface, because we need the two
  * static methods, which can't go into an interface
  */
-//@formatter:off
 public class Domain
 {
-  private Domain() { }
+  private Domain()
+  {
+  }
 
   private Object enumInst;
 
@@ -32,11 +33,20 @@ public class Domain
   private Method getDescription;
 
   //@formatter:off
-  public static Domain inst(PlatformDomain d) { return _inst(d); }  //  uid 8
+  public static Domain inst(PlatformDomain d)
+  {
+    return _inst(d);
+  }  //  uid 8
 
-  public static Domain inst(MunitionDomain d) { return _inst(d); }  //  uid 14
+  public static Domain inst(MunitionDomain d)
+  {
+    return _inst(d);
+  }  //  uid 14
 
-  public static Domain inst(SupplyDomain d) { return _inst(d); }  //  uid 600
+  public static Domain inst(SupplyDomain d)
+  {
+    return _inst(d);
+  }  //  uid 600
 
   //@formatter:on
   private static Domain _inst(Object o)
@@ -46,19 +56,19 @@ public class Domain
     d.init();
     return d;
   }
-  
+
   private void init()
   {
     Class<?> c = enumInst.getClass();
     try {
       //@formatter:off
-      marshalBuff =    c.getDeclaredMethod("marshal",       new Class[]{ByteBuffer.class});
-      marshalDos =     c.getDeclaredMethod("marshal",       new Class[]{DataOutputStream.class});
-      unmarshalBuff =  c.getDeclaredMethod("unmarshalEnum", new Class[]{ByteBuffer.class});
-      unmarshalDis =   c.getDeclaredMethod("unmarshalEnum", new Class[]{DataInputStream.class});
-      mSize =          c.getDeclaredMethod("getMarshalledSize", (Class[]) null);
-      getValue =       c.getDeclaredMethod("getValue",          (Class[]) null);
-      getDescription = c.getDeclaredMethod("getDescription",    (Class[]) null);
+      marshalBuff = c.getDeclaredMethod("marshal", new Class[]{ByteBuffer.class});
+      marshalDos = c.getDeclaredMethod("marshal", new Class[]{DataOutputStream.class});
+      unmarshalBuff = c.getDeclaredMethod("unmarshalEnum", new Class[]{ByteBuffer.class});
+      unmarshalDis = c.getDeclaredMethod("unmarshalEnum", new Class[]{DataInputStream.class});
+      mSize = c.getDeclaredMethod("getMarshalledSize", (Class[]) null);
+      getValue = c.getDeclaredMethod("getValue", (Class[]) null);
+      getDescription = c.getDeclaredMethod("getDescription", (Class[]) null);
       //@formatter:on
     }
     catch (NoSuchMethodException ex) {
@@ -153,5 +163,4 @@ public class Domain
     final Domain rhs = (Domain) obj;
     return enumInst.equals(rhs.enumInst);
   }
-  //@formatter:on
 }
diff --git a/src-generated/edu/nps/moves/dis7/EEFundamentalParameterData.java b/src-generated/edu/nps/moves/dis7/EEFundamentalParameterData.java
index 0d15a28ec499113797791e0c99bb065d56da1602..bc613da2af98c38cf3a817d32bbb1252b11dca11 100644
--- a/src-generated/edu/nps/moves/dis7/EEFundamentalParameterData.java
+++ b/src-generated/edu/nps/moves/dis7/EEFundamentalParameterData.java
@@ -213,7 +213,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -238,4 +238,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (pulseWidth == rhs.pulseWidth)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" frequency: ").append(frequency).append("\n");
+    sb.append(" frequencyRange: ").append(frequencyRange).append("\n");
+    sb.append(" effectiveRadiatedPower: ").append(effectiveRadiatedPower).append("\n");
+    sb.append(" pulseRepetitionFrequency: ").append(pulseRepetitionFrequency).append("\n");
+    sb.append(" pulseWidth: ").append(pulseWidth).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ElectromagneticEmissionPdu.java b/src-generated/edu/nps/moves/dis7/ElectromagneticEmissionPdu.java
index e83b1a819edf57caa550ed094a578a60c4fe9a0e..5660a18259a55ddd6601a528127a96c228263880 100644
--- a/src-generated/edu/nps/moves/dis7/ElectromagneticEmissionPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ElectromagneticEmissionPdu.java
@@ -256,7 +256,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -279,4 +279,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" emittingEntityID: ").append(emittingEntityID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" stateUpdateIndicator: ").append(stateUpdateIndicator).append("\n");
+    sb.append(" paddingForEmissionsPdu: ").append(paddingForEmissionsPdu).append("\n");
+    sb.append(" systems: ").append("\n");
+    systems.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ElectronicEmitter.java b/src-generated/edu/nps/moves/dis7/ElectronicEmitter.java
index c8359095a7e06f494f77dc0f69e15d45388b69ad..e0978bd33c960c50019135d0929debc59c314b75 100644
--- a/src-generated/edu/nps/moves/dis7/ElectronicEmitter.java
+++ b/src-generated/edu/nps/moves/dis7/ElectronicEmitter.java
@@ -224,7 +224,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -251,4 +251,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" systemDataLength: ").append(systemDataLength).append("\n");
+    sb.append(" emitterSystem: ").append(emitterSystem).append("\n");
+    sb.append(" location: ").append(location).append("\n");
+    sb.append(" beams: ").append("\n");
+    beams.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EmitterBeam.java b/src-generated/edu/nps/moves/dis7/EmitterBeam.java
index 8016201cc6c5e27d03e51a5cab832b6c10197c65..fedd5a8689248fe431733c590a7b53a830ec84b9 100644
--- a/src-generated/edu/nps/moves/dis7/EmitterBeam.java
+++ b/src-generated/edu/nps/moves/dis7/EmitterBeam.java
@@ -345,7 +345,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -378,4 +378,25 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" beamDataLength: ").append(beamDataLength).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+    sb.append(" beamParameterIndex: ").append(beamParameterIndex).append("\n");
+    sb.append(" fundamentalParameterData: ").append(fundamentalParameterData).append("\n");
+    sb.append(" beamData: ").append(beamData).append("\n");
+    sb.append(" beamFunction: ").append(beamFunction).append("\n");
+    sb.append(" highDensityTrackJam: ").append(highDensityTrackJam).append("\n");
+    sb.append(" beamStatus: ").append(beamStatus).append("\n");
+    sb.append(" jammingTechnique: ").append(jammingTechnique).append("\n");
+    sb.append(" trackJamData: ").append("\n");
+    trackJamData.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EmitterSystem.java b/src-generated/edu/nps/moves/dis7/EmitterSystem.java
index 5a6b1e1deea1719c71e5f956accfe94019d70d17..5362b87722fdfdc3b484e39c7138cdc719b8cc02 100644
--- a/src-generated/edu/nps/moves/dis7/EmitterSystem.java
+++ b/src-generated/edu/nps/moves/dis7/EmitterSystem.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (emitterIDNumber == rhs.emitterIDNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" emitterName: ").append(emitterName).append("\n");
+    sb.append(" emitterFunction: ").append(emitterFunction).append("\n");
+    sb.append(" emitterIDNumber: ").append(emitterIDNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EngineFuel.java b/src-generated/edu/nps/moves/dis7/EngineFuel.java
index 5798b71f2a4ed8998492902db8994ce7f9944d70..cf1ed67d4963f59efb80061273f4dd4d41bed3d9 100644
--- a/src-generated/edu/nps/moves/dis7/EngineFuel.java
+++ b/src-generated/edu/nps/moves/dis7/EngineFuel.java
@@ -213,7 +213,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -238,4 +238,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fuelQuantity: ").append(fuelQuantity).append("\n");
+    sb.append(" fuelMeasurementUnits: ").append(fuelMeasurementUnits).append("\n");
+    sb.append(" fuelType: ").append(fuelType).append("\n");
+    sb.append(" fuelLocation: ").append(fuelLocation).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EngineFuelReload.java b/src-generated/edu/nps/moves/dis7/EngineFuelReload.java
index 92b1dd138999efff4f0784950bbb26c342220ad5..71b961eb9d8fc78ec2efd4287a56e7d9a41fcaa8 100644
--- a/src-generated/edu/nps/moves/dis7/EngineFuelReload.java
+++ b/src-generated/edu/nps/moves/dis7/EngineFuelReload.java
@@ -279,7 +279,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -307,4 +307,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" standardQuantity: ").append(standardQuantity).append("\n");
+    sb.append(" maximumQuantity: ").append(maximumQuantity).append("\n");
+    sb.append(" standardQuantityReloadTime: ").append(standardQuantityReloadTime).append("\n");
+    sb.append(" maximumQuantityReloadTime: ").append(maximumQuantityReloadTime).append("\n");
+    sb.append(" fuelMeasurmentUnits: ").append(fuelMeasurmentUnits).append("\n");
+    sb.append(" fuelType: ").append(fuelType).append("\n");
+    sb.append(" fuelLocation: ").append(fuelLocation).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityAssociationVP.java b/src-generated/edu/nps/moves/dis7/EntityAssociationVP.java
index f2aad6e0eec7dfcdec049965ccd23658246ecdfd..004bf71d121d2da33af27d5601e7b1522ed70161 100644
--- a/src-generated/edu/nps/moves/dis7/EntityAssociationVP.java
+++ b/src-generated/edu/nps/moves/dis7/EntityAssociationVP.java
@@ -300,7 +300,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -329,4 +329,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (groupNumber == rhs.groupNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" changeIndicator: ").append(changeIndicator).append("\n");
+    sb.append(" associationStatus: ").append(associationStatus).append("\n");
+    sb.append(" associationType: ").append(associationType).append("\n");
+    sb.append(" entityID: ").append(entityID).append("\n");
+    sb.append(" ownStationLocation: ").append(ownStationLocation).append("\n");
+    sb.append(" physicalConnectionType: ").append(physicalConnectionType).append("\n");
+    sb.append(" groupMemberType: ").append(groupMemberType).append("\n");
+    sb.append(" groupNumber: ").append(groupNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityDamageStatusPdu.java b/src-generated/edu/nps/moves/dis7/EntityDamageStatusPdu.java
index c97a69a4076abc9b8774de98883a107b825ff907..233126aada6f9d74526b024fedf80f54d1bbaa1a 100644
--- a/src-generated/edu/nps/moves/dis7/EntityDamageStatusPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EntityDamageStatusPdu.java
@@ -232,7 +232,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -254,4 +254,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" damagedEntityID: ").append(damagedEntityID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" damageDescriptionRecords: ").append("\n");
+    damageDescriptionRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityID.java b/src-generated/edu/nps/moves/dis7/EntityID.java
index f625842b919fb8fada57766481a12d9154c25136..c97794552914a570fd0e6080fdfea55592d417cd 100644
--- a/src-generated/edu/nps/moves/dis7/EntityID.java
+++ b/src-generated/edu/nps/moves/dis7/EntityID.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityID == rhs.entityID)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" siteID: ").append(siteID).append("\n");
+    sb.append(" applicationID: ").append(applicationID).append("\n");
+    sb.append(" entityID: ").append(entityID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityIdentifier.java b/src-generated/edu/nps/moves/dis7/EntityIdentifier.java
index df94e05a04e354b02bd872aa3f9f6869a2efecf0..6ad6469c8066435f36987ee7fc087bb4ce53456b 100644
--- a/src-generated/edu/nps/moves/dis7/EntityIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/EntityIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityNumber == rhs.entityNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" entityNumber: ").append(entityNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityInformationFamilyPdu.java b/src-generated/edu/nps/moves/dis7/EntityInformationFamilyPdu.java
index 8db153994db851b84ab5d03120acd24de8c1db60..db111cf9ede39767e1dc2d2f9a2f1da5d138f362 100644
--- a/src-generated/edu/nps/moves/dis7/EntityInformationFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EntityInformationFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityManagementFamilyPdu.java b/src-generated/edu/nps/moves/dis7/EntityManagementFamilyPdu.java
index af5544b26d82a721732a96490275d5199f9818b1..6a5a76e2d5422c9f9820836fa3b99bf622d2121e 100644
--- a/src-generated/edu/nps/moves/dis7/EntityManagementFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EntityManagementFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityMarking.java b/src-generated/edu/nps/moves/dis7/EntityMarking.java
index c87a03968d2b53955f259d3ec63262ee57a716a8..82b836802f916741fddaf3ba54b1a6fef6c0680d 100644
--- a/src-generated/edu/nps/moves/dis7/EntityMarking.java
+++ b/src-generated/edu/nps/moves/dis7/EntityMarking.java
@@ -155,7 +155,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -182,4 +182,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" characterSet: ").append(characterSet).append("\n");
+    sb.append(" characters: ").append("\n");
+    sb.append(Arrays.toString(characters)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityStatePdu.java b/src-generated/edu/nps/moves/dis7/EntityStatePdu.java
index f9d7aeaa0817912fcff3648129769b4375c08df7..2e8e37533a56aef2a497254ed52674bbb45f9fcc 100644
--- a/src-generated/edu/nps/moves/dis7/EntityStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/EntityStatePdu.java
@@ -401,7 +401,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -431,4 +431,27 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityID: ").append(entityID).append("\n");
+    sb.append(" forceId: ").append(forceId).append("\n");
+    sb.append(" entityType: ").append(entityType).append("\n");
+    sb.append(" alternativeEntityType: ").append(alternativeEntityType).append("\n");
+    sb.append(" entityLinearVelocity: ").append(entityLinearVelocity).append("\n");
+    sb.append(" entityLocation: ").append(entityLocation).append("\n");
+    sb.append(" entityOrientation: ").append(entityOrientation).append("\n");
+    sb.append(" entityAppearance: ").append(entityAppearance).append("\n");
+    sb.append(" deadReckoningParameters: ").append(deadReckoningParameters).append("\n");
+    sb.append(" marking: ").append(marking).append("\n");
+    sb.append(" capabilities: ").append(capabilities).append("\n");
+    sb.append(" variableParameters: ").append("\n");
+    variableParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityStateUpdatePdu.java b/src-generated/edu/nps/moves/dis7/EntityStateUpdatePdu.java
index fbd7a03ca052ac3f9cc7059a9821d2a211c7f57f..6819535c91866871e3a13ae1f714c838fc16f61e 100644
--- a/src-generated/edu/nps/moves/dis7/EntityStateUpdatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/EntityStateUpdatePdu.java
@@ -297,7 +297,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -322,4 +322,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityID: ").append(entityID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" entityLinearVelocity: ").append(entityLinearVelocity).append("\n");
+    sb.append(" entityLocation: ").append(entityLocation).append("\n");
+    sb.append(" entityOrientation: ").append(entityOrientation).append("\n");
+    sb.append(" entityAppearance: ").append(entityAppearance).append("\n");
+    sb.append(" variableParameters: ").append("\n");
+    variableParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityType.java b/src-generated/edu/nps/moves/dis7/EntityType.java
index f09c64e3bcf58a25aa7766fa93c17d7beb8367ed..555fac0a10e29759317fe9f80ceeb6c691b5adcb 100644
--- a/src-generated/edu/nps/moves/dis7/EntityType.java
+++ b/src-generated/edu/nps/moves/dis7/EntityType.java
@@ -255,8 +255,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    //if(getClass() != obj.getClass())
-    if(!getClass().isAssignableFrom(obj.getClass()))
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -283,4 +282,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (extra == rhs.extra)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityKind: ").append(entityKind).append("\n");
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" country: ").append(country).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subCategory: ").append(subCategory).append("\n");
+    sb.append(" specific: ").append(specific).append("\n");
+    sb.append(" extra: ").append(extra).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityTypeRaw.java b/src-generated/edu/nps/moves/dis7/EntityTypeRaw.java
index 8aa177e0505857fdf5432edac887c131c6bc8a15..13dade3ce5220ba38c5e275c7ae1fac40b4bb186 100644
--- a/src-generated/edu/nps/moves/dis7/EntityTypeRaw.java
+++ b/src-generated/edu/nps/moves/dis7/EntityTypeRaw.java
@@ -256,7 +256,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -283,4 +283,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (extra == rhs.extra)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityKind: ").append(entityKind).append("\n");
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" country: ").append(country).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subCategory: ").append(subCategory).append("\n");
+    sb.append(" specific: ").append(specific).append("\n");
+    sb.append(" extra: ").append(extra).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EntityTypeVP.java b/src-generated/edu/nps/moves/dis7/EntityTypeVP.java
index 2941c4107ee714c5a43eabdf69837c559e4d022c..85b0f5a8af7b58548c1ea8ee4f6c2ee0796cebd9 100644
--- a/src-generated/edu/nps/moves/dis7/EntityTypeVP.java
+++ b/src-generated/edu/nps/moves/dis7/EntityTypeVP.java
@@ -212,7 +212,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -237,4 +237,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding1 == rhs.padding1)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" changeIndicator: ").append(changeIndicator).append("\n");
+    sb.append(" entityType: ").append(entityType).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Environment.java b/src-generated/edu/nps/moves/dis7/Environment.java
index 06579711ec797122ebc7c3d92278e29c0d24886b..41d42ab018ecf5d197add2fe586cd3740a84c97e 100644
--- a/src-generated/edu/nps/moves/dis7/Environment.java
+++ b/src-generated/edu/nps/moves/dis7/Environment.java
@@ -229,7 +229,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -259,4 +259,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" environmentType: ").append(environmentType).append("\n");
+    sb.append(" length: ").append(length).append("\n");
+    sb.append(" index: ").append(index).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" geometry: ").append("\n");
+    sb.append(Arrays.toString(geometry)).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EnvironmentalProcessPdu.java b/src-generated/edu/nps/moves/dis7/EnvironmentalProcessPdu.java
index 081bbbc234c9c8e3540d3efc1d858b70372ff5be..f143f312887a136f529f90df42a3e47486e9a84e 100644
--- a/src-generated/edu/nps/moves/dis7/EnvironmentalProcessPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EnvironmentalProcessPdu.java
@@ -276,7 +276,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -292,6 +292,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (environementalProcessID.equals( rhs.environementalProcessID) )) ivarsEqual = false;
      if( ! (environmentType.equals( rhs.environmentType) )) ivarsEqual = false;
      if( ! (modelType == rhs.modelType)) ivarsEqual = false;
+     if( ! (environmentStatus.equals( rhs.environmentStatus) )) ivarsEqual = false;
      if( ! (sequenceNumber == rhs.sequenceNumber)) ivarsEqual = false;
 
      for(int idx = 0; idx < environmentRecords.size(); idx++)
@@ -299,4 +300,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" environementalProcessID: ").append(environementalProcessID).append("\n");
+    sb.append(" environmentType: ").append(environmentType).append("\n");
+    sb.append(" modelType: ").append(modelType).append("\n");
+    sb.append(" environmentStatus: ").append(environmentStatus).append("\n");
+    sb.append(" sequenceNumber: ").append(sequenceNumber).append("\n");
+    sb.append(" environmentRecords: ").append("\n");
+    environmentRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EulerAngles.java b/src-generated/edu/nps/moves/dis7/EulerAngles.java
index bfd2c7d04ed97977ac82b34ed19eac5b63ce6232..a1635dbb4fe0ebe8d0911ff46633e912febce75e 100644
--- a/src-generated/edu/nps/moves/dis7/EulerAngles.java
+++ b/src-generated/edu/nps/moves/dis7/EulerAngles.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (phi == rhs.phi)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" psi: ").append(psi).append("\n");
+    sb.append(" theta: ").append(theta).append("\n");
+    sb.append(" phi: ").append(phi).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EventIdentifier.java b/src-generated/edu/nps/moves/dis7/EventIdentifier.java
index d8985806354ec0fc6ad50da189b20a8988867df1..f4aed03c1fb9ad2c042057ffb1313025f9ecc6a2 100644
--- a/src-generated/edu/nps/moves/dis7/EventIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/EventIdentifier.java
@@ -145,7 +145,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -167,4 +167,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (eventNumber == rhs.eventNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" eventNumber: ").append(eventNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EventIdentifierLiveEntity.java b/src-generated/edu/nps/moves/dis7/EventIdentifierLiveEntity.java
index cf24792817c14bd77f0044786931260ce29e3d5d..a561181ba2aa4b7fe3feaa4b29b0e897849c3847 100644
--- a/src-generated/edu/nps/moves/dis7/EventIdentifierLiveEntity.java
+++ b/src-generated/edu/nps/moves/dis7/EventIdentifierLiveEntity.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (eventNumber == rhs.eventNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" siteNumber: ").append(siteNumber).append("\n");
+    sb.append(" applicationNumber: ").append(applicationNumber).append("\n");
+    sb.append(" eventNumber: ").append(eventNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EventReportPdu.java b/src-generated/edu/nps/moves/dis7/EventReportPdu.java
index 225f64a9f3ae28b8bf51cd71161549a3d8133375..71f9d87240b26b42041ae0d5fd6f77b5e939c55a 100644
--- a/src-generated/edu/nps/moves/dis7/EventReportPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EventReportPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" eventType: ").append(eventType).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/EventReportRPdu.java b/src-generated/edu/nps/moves/dis7/EventReportRPdu.java
index 85551755763f20afa3aac44ffdf21f7993b6b415..418e3e437ae2b078e68b68f3c7ad580e569c8a68 100644
--- a/src-generated/edu/nps/moves/dis7/EventReportRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/EventReportRPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" eventType: ").append(eventType).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Expendable.java b/src-generated/edu/nps/moves/dis7/Expendable.java
index b903ae4b37baf144f80dea3dd1c03f4c67bab40a..ac3b70790a169d424de3464f0c624c5c7f250292 100644
--- a/src-generated/edu/nps/moves/dis7/Expendable.java
+++ b/src-generated/edu/nps/moves/dis7/Expendable.java
@@ -209,7 +209,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -234,4 +234,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" expendable: ").append(expendable).append("\n");
+    sb.append(" station: ").append(station).append("\n");
+    sb.append(" quantity: ").append(quantity).append("\n");
+    sb.append(" expendableStatus: ").append(expendableStatus).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ExpendableDescriptor.java b/src-generated/edu/nps/moves/dis7/ExpendableDescriptor.java
index 16a1d3408693589908a4476f436503263a621a8f..c8527267726ffbdfdb0752316e9a591e9d9e9743 100644
--- a/src-generated/edu/nps/moves/dis7/ExpendableDescriptor.java
+++ b/src-generated/edu/nps/moves/dis7/ExpendableDescriptor.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" expendableType: ").append(expendableType).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ExpendableReload.java b/src-generated/edu/nps/moves/dis7/ExpendableReload.java
index adb27b82066f8edce6279b197a3b854285e4134b..2aec9a5300dbb39c41c0a8244736fbcb782c3a10 100644
--- a/src-generated/edu/nps/moves/dis7/ExpendableReload.java
+++ b/src-generated/edu/nps/moves/dis7/ExpendableReload.java
@@ -229,7 +229,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -255,4 +255,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (maximumQuantityReloadTime == rhs.maximumQuantityReloadTime)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" expendable: ").append(expendable).append("\n");
+    sb.append(" station: ").append(station).append("\n");
+    sb.append(" standardQuantity: ").append(standardQuantity).append("\n");
+    sb.append(" maximumQuantity: ").append(maximumQuantity).append("\n");
+    sb.append(" standardQuantityReloadTime: ").append(standardQuantityReloadTime).append("\n");
+    sb.append(" maximumQuantityReloadTime: ").append(maximumQuantityReloadTime).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ExplosionDescriptor.java b/src-generated/edu/nps/moves/dis7/ExplosionDescriptor.java
index a83486283d5809c4b6beb28bb28a10927e873a9e..538329306ac89dfdf138285f8724beab90980b20 100644
--- a/src-generated/edu/nps/moves/dis7/ExplosionDescriptor.java
+++ b/src-generated/edu/nps/moves/dis7/ExplosionDescriptor.java
@@ -190,7 +190,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -214,4 +214,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (explosiveForce == rhs.explosiveForce)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" explodingObject: ").append(explodingObject).append("\n");
+    sb.append(" explosiveMaterial: ").append(explosiveMaterial).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" explosiveForce: ").append(explosiveForce).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/FalseTargetsAttribute.java b/src-generated/edu/nps/moves/dis7/FalseTargetsAttribute.java
index 6012ac02d28d3394b61befc62dda772f4b24572e..3a2c4ef3cb455ba7aab69c33bea099bd705f7cca 100644
--- a/src-generated/edu/nps/moves/dis7/FalseTargetsAttribute.java
+++ b/src-generated/edu/nps/moves/dis7/FalseTargetsAttribute.java
@@ -419,7 +419,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -454,4 +454,29 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (firstTargetOffset == rhs.firstTargetOffset)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" emitterNumber: ").append(emitterNumber).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+    sb.append(" stateIndicator: ").append(stateIndicator).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+    sb.append(" falseTargetCount: ").append(falseTargetCount).append("\n");
+    sb.append(" walkSpeed: ").append(walkSpeed).append("\n");
+    sb.append(" walkAcceleration: ").append(walkAcceleration).append("\n");
+    sb.append(" maximumWalkDistance: ").append(maximumWalkDistance).append("\n");
+    sb.append(" keepTime: ").append(keepTime).append("\n");
+    sb.append(" echoSpacing: ").append(echoSpacing).append("\n");
+    sb.append(" firstTargetOffset: ").append(firstTargetOffset).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/FastEntityStatePdu.java b/src-generated/edu/nps/moves/dis7/FastEntityStatePdu.java
index 829d0bf8a41bd408075eadd759d8b0f2f38db8ad..514cb0b9eac21aa4bc4996cd8673f8f16602b634 100644
--- a/src-generated/edu/nps/moves/dis7/FastEntityStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/FastEntityStatePdu.java
@@ -1016,7 +1016,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -1083,4 +1083,56 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" site: ").append(site).append("\n");
+    sb.append(" application: ").append(application).append("\n");
+    sb.append(" entity: ").append(entity).append("\n");
+    sb.append(" forceId: ").append(forceId).append("\n");
+    sb.append(" entityKind: ").append(entityKind).append("\n");
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" country: ").append(country).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subcategory: ").append(subcategory).append("\n");
+    sb.append(" specific: ").append(specific).append("\n");
+    sb.append(" extra: ").append(extra).append("\n");
+    sb.append(" altEntityKind: ").append(altEntityKind).append("\n");
+    sb.append(" altDomain: ").append(altDomain).append("\n");
+    sb.append(" altCountry: ").append(altCountry).append("\n");
+    sb.append(" altCategory: ").append(altCategory).append("\n");
+    sb.append(" altSubcategory: ").append(altSubcategory).append("\n");
+    sb.append(" altSpecific: ").append(altSpecific).append("\n");
+    sb.append(" altExtra: ").append(altExtra).append("\n");
+    sb.append(" xVelocity: ").append(xVelocity).append("\n");
+    sb.append(" yVelocity: ").append(yVelocity).append("\n");
+    sb.append(" zVelocity: ").append(zVelocity).append("\n");
+    sb.append(" xLocation: ").append(xLocation).append("\n");
+    sb.append(" yLocation: ").append(yLocation).append("\n");
+    sb.append(" zLocation: ").append(zLocation).append("\n");
+    sb.append(" psi: ").append(psi).append("\n");
+    sb.append(" theta: ").append(theta).append("\n");
+    sb.append(" phi: ").append(phi).append("\n");
+    sb.append(" entityAppearance: ").append(entityAppearance).append("\n");
+    sb.append(" deadReckoningAlgorithm: ").append(deadReckoningAlgorithm).append("\n");
+    sb.append(" otherParameters: ").append("\n");
+    sb.append(Arrays.toString(otherParameters)).append("\n");
+    sb.append(" xAcceleration: ").append(xAcceleration).append("\n");
+    sb.append(" yAcceleration: ").append(yAcceleration).append("\n");
+    sb.append(" zAcceleration: ").append(zAcceleration).append("\n");
+    sb.append(" xAngularVelocity: ").append(xAngularVelocity).append("\n");
+    sb.append(" yAngularVelocity: ").append(yAngularVelocity).append("\n");
+    sb.append(" zAngularVelocity: ").append(zAngularVelocity).append("\n");
+    sb.append(" marking: ").append("\n");
+    sb.append(Arrays.toString(marking)).append("\n");
+    sb.append(" capabilities: ").append(capabilities).append("\n");
+    sb.append(" variableParameters: ").append("\n");
+    variableParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/FirePdu.java b/src-generated/edu/nps/moves/dis7/FirePdu.java
index 7095f39e2e801d5fbfb4a651369d99a52be57a22..7181367da23cb331da6b79f4dafee51c673d0406 100644
--- a/src-generated/edu/nps/moves/dis7/FirePdu.java
+++ b/src-generated/edu/nps/moves/dis7/FirePdu.java
@@ -302,7 +302,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -326,4 +326,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (range == rhs.range)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" firingEntityID: ").append(firingEntityID).append("\n");
+    sb.append(" targetEntityID: ").append(targetEntityID).append("\n");
+    sb.append(" munitionExpendibleID: ").append(munitionExpendibleID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" fireMissionIndex: ").append(fireMissionIndex).append("\n");
+    sb.append(" locationInWorldCoordinates: ").append(locationInWorldCoordinates).append("\n");
+    sb.append(" descriptor: ").append(descriptor).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" range: ").append(range).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/FixedDatum.java b/src-generated/edu/nps/moves/dis7/FixedDatum.java
index 6bf6d8922ab739d0d7c9d317bac2c092c7b7029c..9dac5eb1b37dadffa382f4a71f46cac9fe6fe2db 100644
--- a/src-generated/edu/nps/moves/dis7/FixedDatum.java
+++ b/src-generated/edu/nps/moves/dis7/FixedDatum.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (fixedDatumValue == rhs.fixedDatumValue)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fixedDatumID: ").append(fixedDatumID).append("\n");
+    sb.append(" fixedDatumValue: ").append(fixedDatumValue).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/FundamentalOperationalData.java b/src-generated/edu/nps/moves/dis7/FundamentalOperationalData.java
index eab39ecace8ed1febb99ccd86dac455f904406f3..d894af41f3fdc4551a4d9c4ab34ff140a98d81d2 100644
--- a/src-generated/edu/nps/moves/dis7/FundamentalOperationalData.java
+++ b/src-generated/edu/nps/moves/dis7/FundamentalOperationalData.java
@@ -323,7 +323,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -353,4 +353,24 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (parameter6 == rhs.parameter6)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" systemStatus: ").append(systemStatus).append("\n");
+    sb.append(" dataField1: ").append(dataField1).append("\n");
+    sb.append(" informationLayers: ").append(informationLayers).append("\n");
+    sb.append(" dataField2: ").append(dataField2).append("\n");
+    sb.append(" parameter1: ").append(parameter1).append("\n");
+    sb.append(" parameter2: ").append(parameter2).append("\n");
+    sb.append(" parameter3: ").append(parameter3).append("\n");
+    sb.append(" parameter4: ").append(parameter4).append("\n");
+    sb.append(" parameter5: ").append(parameter5).append("\n");
+    sb.append(" parameter6: ").append(parameter6).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridAxisDescriptor.java b/src-generated/edu/nps/moves/dis7/GridAxisDescriptor.java
index 5a795007232bed8ea0a141e6484b22e291204d08..8489652206ba2f5085d4f895a687cb9416a6bdc4 100644
--- a/src-generated/edu/nps/moves/dis7/GridAxisDescriptor.java
+++ b/src-generated/edu/nps/moves/dis7/GridAxisDescriptor.java
@@ -212,7 +212,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -237,4 +237,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (axisType == rhs.axisType)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" domainInitialXi: ").append(domainInitialXi).append("\n");
+    sb.append(" domainFinalXi: ").append(domainFinalXi).append("\n");
+    sb.append(" domainPointsXi: ").append(domainPointsXi).append("\n");
+    sb.append(" interleafFactor: ").append(interleafFactor).append("\n");
+    sb.append(" axisType: ").append(axisType).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridAxisDescriptorFixed.java b/src-generated/edu/nps/moves/dis7/GridAxisDescriptorFixed.java
index cba05e47ff2d005411624e0d0e2e3a7c2cde6238..b05a3c5538fb8234267116b4bdf6b6df558556de 100644
--- a/src-generated/edu/nps/moves/dis7/GridAxisDescriptorFixed.java
+++ b/src-generated/edu/nps/moves/dis7/GridAxisDescriptorFixed.java
@@ -154,7 +154,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -171,4 +171,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (initialIndex == rhs.initialIndex)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" numberOfPointsOnXiAxis: ").append(numberOfPointsOnXiAxis).append("\n");
+    sb.append(" initialIndex: ").append(initialIndex).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridAxisDescriptorVariable.java b/src-generated/edu/nps/moves/dis7/GridAxisDescriptorVariable.java
index 97aa9d2580f6a5cefed2095790c7df14cf3dc548..b83ba1ed8433c8de43e75ab852c1986e00a5da12 100644
--- a/src-generated/edu/nps/moves/dis7/GridAxisDescriptorVariable.java
+++ b/src-generated/edu/nps/moves/dis7/GridAxisDescriptorVariable.java
@@ -236,7 +236,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -261,4 +261,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" numberOfPointsOnXiAxis: ").append(numberOfPointsOnXiAxis).append("\n");
+    sb.append(" initialIndex: ").append(initialIndex).append("\n");
+    sb.append(" coordinateScaleXi: ").append(coordinateScaleXi).append("\n");
+    sb.append(" coordinateOffsetXi: ").append(coordinateOffsetXi).append("\n");
+    sb.append(" xiValues: ").append("\n");
+    sb.append(Arrays.toString(xiValues)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridData.java b/src-generated/edu/nps/moves/dis7/GridData.java
index a219dbcf21ffa8e702a171f9c9062eec97b4112d..00ac74dbecc478e0ffc1a9231e2c9ee0f73ff85f 100644
--- a/src-generated/edu/nps/moves/dis7/GridData.java
+++ b/src-generated/edu/nps/moves/dis7/GridData.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (dataRepresentation == rhs.dataRepresentation)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" sampleType: ").append(sampleType).append("\n");
+    sb.append(" dataRepresentation: ").append(dataRepresentation).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridDataType0.java b/src-generated/edu/nps/moves/dis7/GridDataType0.java
index baeb3fa3c15700f842d2de0071303efc8f79c4d3..1ccda79fc189a116750f68e3a5be13e486d6318f 100644
--- a/src-generated/edu/nps/moves/dis7/GridDataType0.java
+++ b/src-generated/edu/nps/moves/dis7/GridDataType0.java
@@ -155,7 +155,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -176,4 +176,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" dataValues: ").append("\n");
+    sb.append(Arrays.toString(dataValues)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridDataType1.java b/src-generated/edu/nps/moves/dis7/GridDataType1.java
index b3cad1ce1b254b125ceed17c8b1eb52c7ee88124..7b19a2dfe58f151e1bb971bb003088364fa184f8 100644
--- a/src-generated/edu/nps/moves/dis7/GridDataType1.java
+++ b/src-generated/edu/nps/moves/dis7/GridDataType1.java
@@ -197,7 +197,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -220,4 +220,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fieldScale: ").append(fieldScale).append("\n");
+    sb.append(" fieldOffset: ").append(fieldOffset).append("\n");
+    sb.append(" dataValues: ").append("\n");
+    sb.append(Arrays.toString(dataValues)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GridDataType2.java b/src-generated/edu/nps/moves/dis7/GridDataType2.java
index 3ee6244a2e7fb168c5316c1f1b251c94c4dfa226..09966f18a4f4ecc4cc0ca841150ce387b63f5614 100644
--- a/src-generated/edu/nps/moves/dis7/GridDataType2.java
+++ b/src-generated/edu/nps/moves/dis7/GridDataType2.java
@@ -168,7 +168,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -190,4 +190,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" dataValues: ").append("\n");
+    sb.append(Arrays.toString(dataValues)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GriddedDataPdu.java b/src-generated/edu/nps/moves/dis7/GriddedDataPdu.java
index da18ac21aa8770d7ef4360e63ba74c79947fca61..2020bd9c1acab16dcdf97293da8c99fef468849a 100644
--- a/src-generated/edu/nps/moves/dis7/GriddedDataPdu.java
+++ b/src-generated/edu/nps/moves/dis7/GriddedDataPdu.java
@@ -500,7 +500,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -536,4 +536,31 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" environmentalSimulationApplicationID: ").append(environmentalSimulationApplicationID).append("\n");
+    sb.append(" fieldNumber: ").append(fieldNumber).append("\n");
+    sb.append(" pduNumber: ").append(pduNumber).append("\n");
+    sb.append(" pduTotal: ").append(pduTotal).append("\n");
+    sb.append(" coordinateSystem: ").append(coordinateSystem).append("\n");
+    sb.append(" constantGrid: ").append(constantGrid).append("\n");
+    sb.append(" environmentType: ").append(environmentType).append("\n");
+    sb.append(" orientation: ").append(orientation).append("\n");
+    sb.append(" sampleTime: ").append(sampleTime).append("\n");
+    sb.append(" totalValues: ").append(totalValues).append("\n");
+    sb.append(" vectorDimension: ").append(vectorDimension).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" gridAxisDescriptors: ").append("\n");
+    gridAxisDescriptors.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" gridDataRecords: ").append("\n");
+    gridDataRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/GroupID.java b/src-generated/edu/nps/moves/dis7/GroupID.java
index ba05723a776594b98be72b2b87df2f688933c880..e3cf763ae1af1f45d02c93f9b169f2c0399a5cd1 100644
--- a/src-generated/edu/nps/moves/dis7/GroupID.java
+++ b/src-generated/edu/nps/moves/dis7/GroupID.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (groupNumber == rhs.groupNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" groupNumber: ").append(groupNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IFFData.java b/src-generated/edu/nps/moves/dis7/IFFData.java
index 45cc407de0699d8f5479c3ef1fea870dee784833..42d386d6357455045386133b50cb7aedb364814d 100644
--- a/src-generated/edu/nps/moves/dis7/IFFData.java
+++ b/src-generated/edu/nps/moves/dis7/IFFData.java
@@ -184,7 +184,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -212,4 +212,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IFFFundamentalParameterData.java b/src-generated/edu/nps/moves/dis7/IFFFundamentalParameterData.java
index 4a306b925b96147942852939b697e3c1b26c19ff..8a5433b9f80a25f254fa4322ed2332c21d792bd5 100644
--- a/src-generated/edu/nps/moves/dis7/IFFFundamentalParameterData.java
+++ b/src-generated/edu/nps/moves/dis7/IFFFundamentalParameterData.java
@@ -265,7 +265,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -297,4 +297,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" erp: ").append(erp).append("\n");
+    sb.append(" frequency: ").append(frequency).append("\n");
+    sb.append(" pgrf: ").append(pgrf).append("\n");
+    sb.append(" pulseWidth: ").append(pulseWidth).append("\n");
+    sb.append(" burstLength: ").append(burstLength).append("\n");
+    sb.append(" applicableModes: ").append(applicableModes).append("\n");
+    sb.append(" systemSpecificData: ").append("\n");
+    sb.append(Arrays.toString(systemSpecificData)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IFFLayer2Pdu.java b/src-generated/edu/nps/moves/dis7/IFFLayer2Pdu.java
index 1565e6bf5dd9c7603c1ee377b4997a5ccca8175c..1f2d1b55fa08fc117b96310df3ac2c9cc353e80f 100644
--- a/src-generated/edu/nps/moves/dis7/IFFLayer2Pdu.java
+++ b/src-generated/edu/nps/moves/dis7/IFFLayer2Pdu.java
@@ -251,7 +251,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -274,4 +274,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" layerHeader: ").append(layerHeader).append("\n");
+    sb.append(" beamData: ").append(beamData).append("\n");
+    sb.append(" secondaryOpParameter1: ").append(secondaryOpParameter1).append("\n");
+    sb.append(" secondaryOpParameter2: ").append(secondaryOpParameter2).append("\n");
+    sb.append(" fundamentalIFFParameters: ").append("\n");
+    fundamentalIFFParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IFFPdu.java b/src-generated/edu/nps/moves/dis7/IFFPdu.java
index 400f3ff31bddddab23ad788170b7450a91bc7c69..1c8372d1eaa30cc95fec9a249d6c760f25e31152 100644
--- a/src-generated/edu/nps/moves/dis7/IFFPdu.java
+++ b/src-generated/edu/nps/moves/dis7/IFFPdu.java
@@ -257,7 +257,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -279,4 +279,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (fundamentalParameters.equals( rhs.fundamentalParameters) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" emittingEntityId: ").append(emittingEntityId).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" location: ").append(location).append("\n");
+    sb.append(" systemID: ").append(systemID).append("\n");
+    sb.append(" systemDesignator: ").append(systemDesignator).append("\n");
+    sb.append(" systemSpecificData: ").append(systemSpecificData).append("\n");
+    sb.append(" fundamentalParameters: ").append(fundamentalParameters).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IOCommsNodeRecord.java b/src-generated/edu/nps/moves/dis7/IOCommsNodeRecord.java
index 937bb97bb2ee1bd6d12b4d90f297866f6dcdb1ba..3cbe86cbdfd8fe27241e2332ee70f3cf00b06fe5 100644
--- a/src-generated/edu/nps/moves/dis7/IOCommsNodeRecord.java
+++ b/src-generated/edu/nps/moves/dis7/IOCommsNodeRecord.java
@@ -216,7 +216,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -236,4 +236,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (commsNodeId.equals( rhs.commsNodeId) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" commsNodeType: ").append(commsNodeType).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" commsNodeId: ").append(commsNodeId).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IOEffectRecord.java b/src-generated/edu/nps/moves/dis7/IOEffectRecord.java
index 45bfd171e77ef827801913000cdab5f37804ade6..481212e6da28ecdb1fd15adb5847b5ca8d462384 100644
--- a/src-generated/edu/nps/moves/dis7/IOEffectRecord.java
+++ b/src-generated/edu/nps/moves/dis7/IOEffectRecord.java
@@ -304,7 +304,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -328,4 +328,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" ioStatus: ").append(ioStatus).append("\n");
+    sb.append(" ioLinkType: ").append(ioLinkType).append("\n");
+    sb.append(" ioEffect: ").append(ioEffect).append("\n");
+    sb.append(" ioEffectDutyCycle: ").append(ioEffectDutyCycle).append("\n");
+    sb.append(" ioEffectDuration: ").append(ioEffectDuration).append("\n");
+    sb.append(" ioProcess: ").append(ioProcess).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IORecord.java b/src-generated/edu/nps/moves/dis7/IORecord.java
index e13038a10329c73d53286c03dccc7e69e57401b8..9125568b2f0326ca2a16abaec3f8891e132b3e42 100644
--- a/src-generated/edu/nps/moves/dis7/IORecord.java
+++ b/src-generated/edu/nps/moves/dis7/IORecord.java
@@ -103,7 +103,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -123,4 +123,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IffDataSpecification.java b/src-generated/edu/nps/moves/dis7/IffDataSpecification.java
index 691389599c73b505db172a10f016a5da274eb22c..b9c54003f05311cb598442d1577aa685a0ee36fe 100644
--- a/src-generated/edu/nps/moves/dis7/IffDataSpecification.java
+++ b/src-generated/edu/nps/moves/dis7/IffDataSpecification.java
@@ -161,7 +161,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -185,4 +185,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" iffDataRecords: ").append("\n");
+    iffDataRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/InformationOperationsActionPdu.java b/src-generated/edu/nps/moves/dis7/InformationOperationsActionPdu.java
index 9e4d9bf4f42b4013430007558095533e6f90bf32..5c0bb54cdd9a724d3c6711a8fd09aee9058aa45d 100644
--- a/src-generated/edu/nps/moves/dis7/InformationOperationsActionPdu.java
+++ b/src-generated/edu/nps/moves/dis7/InformationOperationsActionPdu.java
@@ -380,7 +380,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -409,4 +409,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingSimID: ").append(receivingSimID).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" IOWarfareType: ").append(IOWarfareType).append("\n");
+    sb.append(" IOSimulationSource: ").append(IOSimulationSource).append("\n");
+    sb.append(" IOActionType: ").append(IOActionType).append("\n");
+    sb.append(" IOActionPhase: ").append(IOActionPhase).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" ioAttackerID: ").append(ioAttackerID).append("\n");
+    sb.append(" ioPrimaryTargetID: ").append(ioPrimaryTargetID).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" ioRecords: ").append("\n");
+    ioRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/InformationOperationsFamilyPdu.java b/src-generated/edu/nps/moves/dis7/InformationOperationsFamilyPdu.java
index 5d9f612b70c07dbc58ef2b71272f827e4bfc9ea2..bf71b473775dc70929462b9f4634ed13e305647e 100644
--- a/src-generated/edu/nps/moves/dis7/InformationOperationsFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/InformationOperationsFamilyPdu.java
@@ -131,7 +131,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -147,4 +147,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (originatingSimID.equals( rhs.originatingSimID) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" originatingSimID: ").append(originatingSimID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/InformationOperationsReportPdu.java b/src-generated/edu/nps/moves/dis7/InformationOperationsReportPdu.java
index 487f6c6c8f443c22c893697425ff62fd4cb6888c..fcb2e61d1015b9698fc5526d8a8de575156beeb4 100644
--- a/src-generated/edu/nps/moves/dis7/InformationOperationsReportPdu.java
+++ b/src-generated/edu/nps/moves/dis7/InformationOperationsReportPdu.java
@@ -314,7 +314,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -340,4 +340,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" ioSimSource: ").append(ioSimSource).append("\n");
+    sb.append(" ioReportType: ").append(ioReportType).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" ioAttackerID: ").append(ioAttackerID).append("\n");
+    sb.append(" ioPrimaryTargetID: ").append(ioPrimaryTargetID).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+    sb.append(" ioRecords: ").append("\n");
+    ioRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IntercomCommunicationsParameters.java b/src-generated/edu/nps/moves/dis7/IntercomCommunicationsParameters.java
index 3f73fc1c19ed9d31401f179b9e27849662b006ce..c4053a23116e1081e12317fc9a3b05a8ec7e385b 100644
--- a/src-generated/edu/nps/moves/dis7/IntercomCommunicationsParameters.java
+++ b/src-generated/edu/nps/moves/dis7/IntercomCommunicationsParameters.java
@@ -185,7 +185,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -213,4 +213,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" recordSpecificField: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificField)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IntercomControlPdu.java b/src-generated/edu/nps/moves/dis7/IntercomControlPdu.java
index 0e73300096456a96a4e82719547902420536aa64..40f65aaf0e3a13501d4f76660a6e575f733fa34d 100644
--- a/src-generated/edu/nps/moves/dis7/IntercomControlPdu.java
+++ b/src-generated/edu/nps/moves/dis7/IntercomControlPdu.java
@@ -407,7 +407,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -437,4 +437,27 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" controlType: ").append(controlType).append("\n");
+    sb.append(" communicationsChannelType: ").append(communicationsChannelType).append("\n");
+    sb.append(" sourceEntityID: ").append(sourceEntityID).append("\n");
+    sb.append(" sourceIntercomNumber: ").append(sourceIntercomNumber).append("\n");
+    sb.append(" sourceLineID: ").append(sourceLineID).append("\n");
+    sb.append(" transmitPriority: ").append(transmitPriority).append("\n");
+    sb.append(" transmitLineState: ").append(transmitLineState).append("\n");
+    sb.append(" command: ").append(command).append("\n");
+    sb.append(" masterIntercomReferenceID: ").append(masterIntercomReferenceID).append("\n");
+    sb.append(" masterIntercomNumber: ").append(masterIntercomNumber).append("\n");
+    sb.append(" masterChannelID: ").append(masterChannelID).append("\n");
+    sb.append(" intercomParameters: ").append("\n");
+    intercomParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IntercomIdentifier.java b/src-generated/edu/nps/moves/dis7/IntercomIdentifier.java
index 7e257a4de73db1f74867b00b07645151d9551c23..43280cf6de8cfcd9231b5ef5a373c24aca0e8958 100644
--- a/src-generated/edu/nps/moves/dis7/IntercomIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/IntercomIdentifier.java
@@ -187,7 +187,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -211,4 +211,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (intercomNumber == rhs.intercomNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" siteNumber: ").append(siteNumber).append("\n");
+    sb.append(" applicationNumber: ").append(applicationNumber).append("\n");
+    sb.append(" referenceNumber: ").append(referenceNumber).append("\n");
+    sb.append(" intercomNumber: ").append(intercomNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IntercomReferenceID.java b/src-generated/edu/nps/moves/dis7/IntercomReferenceID.java
index b5ab456093a160cc03aaee1102c8244bed409e07..45353aa5893574ac31e3f6a265175f4c104f936f 100644
--- a/src-generated/edu/nps/moves/dis7/IntercomReferenceID.java
+++ b/src-generated/edu/nps/moves/dis7/IntercomReferenceID.java
@@ -165,7 +165,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -188,4 +188,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (referenceNumber == rhs.referenceNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" siteNumber: ").append(siteNumber).append("\n");
+    sb.append(" applicationNumber: ").append(applicationNumber).append("\n");
+    sb.append(" referenceNumber: ").append(referenceNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IsGroupOfPdu.java b/src-generated/edu/nps/moves/dis7/IsGroupOfPdu.java
index 5a5792f94462a29a006d6d7f51e0225f8fff49ef..240013a924f2819e0448c9262d00e63641958d35 100644
--- a/src-generated/edu/nps/moves/dis7/IsGroupOfPdu.java
+++ b/src-generated/edu/nps/moves/dis7/IsGroupOfPdu.java
@@ -278,7 +278,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -302,4 +302,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" groupEntityID: ").append(groupEntityID).append("\n");
+    sb.append(" groupedEntityCategory: ").append(groupedEntityCategory).append("\n");
+    sb.append(" pad: ").append(pad).append("\n");
+    sb.append(" latitude: ").append(latitude).append("\n");
+    sb.append(" longitude: ").append(longitude).append("\n");
+    sb.append(" groupedEntityDescriptions: ").append("\n");
+    groupedEntityDescriptions.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/IsPartOfPdu.java b/src-generated/edu/nps/moves/dis7/IsPartOfPdu.java
index eb9d358030dc72ee539b63deb5ea917381f9627a..c44de3a3a4e891f6afd3b5d9456f01e0333ad887 100644
--- a/src-generated/edu/nps/moves/dis7/IsPartOfPdu.java
+++ b/src-generated/edu/nps/moves/dis7/IsPartOfPdu.java
@@ -237,7 +237,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -258,4 +258,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (partEntityType.equals( rhs.partEntityType) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" orginatingEntityID: ").append(orginatingEntityID).append("\n");
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" relationship: ").append(relationship).append("\n");
+    sb.append(" partLocation: ").append(partLocation).append("\n");
+    sb.append(" namedLocationID: ").append(namedLocationID).append("\n");
+    sb.append(" partEntityType: ").append(partEntityType).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/JammingTechnique.java b/src-generated/edu/nps/moves/dis7/JammingTechnique.java
index effc40f00d27426ae5c396ae30e1a9c63e4e1207..dee29fd068dfe41aa65e69ee1be418f2db8ea2ad 100644
--- a/src-generated/edu/nps/moves/dis7/JammingTechnique.java
+++ b/src-generated/edu/nps/moves/dis7/JammingTechnique.java
@@ -187,7 +187,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -211,4 +211,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (specific == rhs.specific)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" kind: ").append(kind).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subCategory: ").append(subCategory).append("\n");
+    sb.append(" specific: ").append(specific).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LEDetonationPdu.java b/src-generated/edu/nps/moves/dis7/LEDetonationPdu.java
index 1ddcaadea00b018523fd7de69017bffed528f856..498d94d56b3566c28dcb64a4fd4720de5023c5cd 100644
--- a/src-generated/edu/nps/moves/dis7/LEDetonationPdu.java
+++ b/src-generated/edu/nps/moves/dis7/LEDetonationPdu.java
@@ -355,7 +355,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -382,4 +382,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (detonationResult == rhs.detonationResult)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" firingLiveEntityId: ").append(firingLiveEntityId).append("\n");
+    sb.append(" detonationFlag1: ").append(detonationFlag1).append("\n");
+    sb.append(" detonationFlag2: ").append(detonationFlag2).append("\n");
+    sb.append(" targetLiveEntityId: ").append(targetLiveEntityId).append("\n");
+    sb.append(" munitionLiveEntityId: ").append(munitionLiveEntityId).append("\n");
+    sb.append(" eventId: ").append(eventId).append("\n");
+    sb.append(" worldLocation: ").append(worldLocation).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" munitionOrientation: ").append(munitionOrientation).append("\n");
+    sb.append(" munitionDescriptor: ").append(munitionDescriptor).append("\n");
+    sb.append(" entityLocation: ").append(entityLocation).append("\n");
+    sb.append(" detonationResult: ").append(detonationResult).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LEFirePdu.java b/src-generated/edu/nps/moves/dis7/LEFirePdu.java
index 5c1e82e40c53be4a791e1082b7afba6b9f6e2d4b..1107ea21dfc58a720e263988d8c3d753842a7bc0 100644
--- a/src-generated/edu/nps/moves/dis7/LEFirePdu.java
+++ b/src-generated/edu/nps/moves/dis7/LEFirePdu.java
@@ -294,7 +294,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -318,4 +318,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (range == rhs.range)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" firingLiveEntityId: ").append(firingLiveEntityId).append("\n");
+    sb.append(" flags: ").append(flags).append("\n");
+    sb.append(" targetLiveEntityId: ").append(targetLiveEntityId).append("\n");
+    sb.append(" munitionLiveEntityId: ").append(munitionLiveEntityId).append("\n");
+    sb.append(" eventId: ").append(eventId).append("\n");
+    sb.append(" location: ").append(location).append("\n");
+    sb.append(" munitionDescriptor: ").append(munitionDescriptor).append("\n");
+    sb.append(" velocity: ").append(velocity).append("\n");
+    sb.append(" range: ").append(range).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LEVector3FixedByte.java b/src-generated/edu/nps/moves/dis7/LEVector3FixedByte.java
index 05137b8ca72ee96e7d211ea0da3bf3a8ccc6d05e..be0d32e788c5a435370e0b91c2f912ed12cb5e0c 100644
--- a/src-generated/edu/nps/moves/dis7/LEVector3FixedByte.java
+++ b/src-generated/edu/nps/moves/dis7/LEVector3FixedByte.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (z == rhs.z)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" x: ").append(x).append("\n");
+    sb.append(" y: ").append(y).append("\n");
+    sb.append(" z: ").append(z).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LaunchedMunitionRecord.java b/src-generated/edu/nps/moves/dis7/LaunchedMunitionRecord.java
index 36e6082d9ec8f5ad7b090ade452cbcb6a4421712..1944253dafe58764b7f3f94ddee6a15130795b1f 100644
--- a/src-generated/edu/nps/moves/dis7/LaunchedMunitionRecord.java
+++ b/src-generated/edu/nps/moves/dis7/LaunchedMunitionRecord.java
@@ -246,7 +246,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -273,4 +273,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (targetLocation.equals( rhs.targetLocation) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fireEventID: ").append(fireEventID).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" firingEntityID: ").append(firingEntityID).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" targetEntityID: ").append(targetEntityID).append("\n");
+    sb.append(" padding3: ").append(padding3).append("\n");
+    sb.append(" targetLocation: ").append(targetLocation).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LayerHeader.java b/src-generated/edu/nps/moves/dis7/LayerHeader.java
index 888d92b4f8e64588434a408390e0786d702991ac..66be9a5391b59b417a611ca56bbc639548c3fb35 100644
--- a/src-generated/edu/nps/moves/dis7/LayerHeader.java
+++ b/src-generated/edu/nps/moves/dis7/LayerHeader.java
@@ -168,7 +168,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -191,4 +191,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (length == rhs.length)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" layerNumber: ").append(layerNumber).append("\n");
+    sb.append(" layerSpecificInformation: ").append(layerSpecificInformation).append("\n");
+    sb.append(" length: ").append(length).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LinearObjectStatePdu.java b/src-generated/edu/nps/moves/dis7/LinearObjectStatePdu.java
index f78c64096c38b2a196bfb2d3dfcd46d2da98b3af..11a53e46ac2562da377accc62637313fb0cfe527 100644
--- a/src-generated/edu/nps/moves/dis7/LinearObjectStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/LinearObjectStatePdu.java
@@ -318,7 +318,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -344,4 +344,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" objectID: ").append(objectID).append("\n");
+    sb.append(" referencedObjectID: ").append(referencedObjectID).append("\n");
+    sb.append(" updateNumber: ").append(updateNumber).append("\n");
+    sb.append(" forceID: ").append(forceID).append("\n");
+    sb.append(" requesterID: ").append(requesterID).append("\n");
+    sb.append(" receivingID: ").append(receivingID).append("\n");
+    sb.append(" objectType: ").append(objectType).append("\n");
+    sb.append(" linearSegmentParameters: ").append("\n");
+    linearSegmentParameters.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LinearSegmentParameter.java b/src-generated/edu/nps/moves/dis7/LinearSegmentParameter.java
index 7df6e7993300c579d2ccdd1450f2cefd54283953..5207717cfa32be7a49f87222ca60a1c78c7a9e79 100644
--- a/src-generated/edu/nps/moves/dis7/LinearSegmentParameter.java
+++ b/src-generated/edu/nps/moves/dis7/LinearSegmentParameter.java
@@ -341,7 +341,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -360,6 +360,8 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      final LinearSegmentParameter rhs = (LinearSegmentParameter)obj;
 
      if( ! (segmentNumber == rhs.segmentNumber)) ivarsEqual = false;
+     if( ! (segmentModification.equals( rhs.segmentModification) )) ivarsEqual = false;
+     if( ! (generalSegmentAppearance.equals( rhs.generalSegmentAppearance) )) ivarsEqual = false;
      if( ! (specificSegmentAppearance == rhs.specificSegmentAppearance)) ivarsEqual = false;
      if( ! (segmentLocation.equals( rhs.segmentLocation) )) ivarsEqual = false;
      if( ! (segmentOrientation.equals( rhs.segmentOrientation) )) ivarsEqual = false;
@@ -370,4 +372,25 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" segmentNumber: ").append(segmentNumber).append("\n");
+    sb.append(" segmentModification: ").append(segmentModification).append("\n");
+    sb.append(" generalSegmentAppearance: ").append(generalSegmentAppearance).append("\n");
+    sb.append(" specificSegmentAppearance: ").append(specificSegmentAppearance).append("\n");
+    sb.append(" segmentLocation: ").append(segmentLocation).append("\n");
+    sb.append(" segmentOrientation: ").append(segmentOrientation).append("\n");
+    sb.append(" segmentLength: ").append(segmentLength).append("\n");
+    sb.append(" segmentWidth: ").append(segmentWidth).append("\n");
+    sb.append(" segmentHeight: ").append(segmentHeight).append("\n");
+    sb.append(" segmentDepth: ").append(segmentDepth).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveDeadReckoningParameters.java b/src-generated/edu/nps/moves/dis7/LiveDeadReckoningParameters.java
index 7da4ba2b6e1ad1378c7cd5a1171466928779c29a..d3be2d8ad8df763d13ae35735c6323369be85d0c 100644
--- a/src-generated/edu/nps/moves/dis7/LiveDeadReckoningParameters.java
+++ b/src-generated/edu/nps/moves/dis7/LiveDeadReckoningParameters.java
@@ -165,7 +165,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -188,4 +188,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityAngularVelocity.equals( rhs.entityAngularVelocity) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" deadReckoningAlgorithm: ").append(deadReckoningAlgorithm).append("\n");
+    sb.append(" entityLinearAcceleration: ").append(entityLinearAcceleration).append("\n");
+    sb.append(" entityAngularVelocity: ").append(entityAngularVelocity).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityFamilyPdu.java b/src-generated/edu/nps/moves/dis7/LiveEntityFamilyPdu.java
index 6b9b24df50b96f881fcaab05bb8f29e205c1eff6..f2d5664836462d942e6e4a353b0038af80af8462 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityFamilyPdu.java
@@ -110,7 +110,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -125,4 +125,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityIdentifier.java b/src-generated/edu/nps/moves/dis7/LiveEntityIdentifier.java
index 35d6cc4d677cb64b16ff4413a8da9bf7486c8a55..a9ea59505f10cc21b1c2064828b49c9eb7a031ec 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (entityNumber == rhs.entityNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" liveSimulationAddress: ").append(liveSimulationAddress).append("\n");
+    sb.append(" entityNumber: ").append(entityNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityLinearVelocity.java b/src-generated/edu/nps/moves/dis7/LiveEntityLinearVelocity.java
index c7ec8ab998dafa57abb883f9ff72ead5c254e0e4..13f214bc015612b944ca80722c1f3f22451f6829 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityLinearVelocity.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityLinearVelocity.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (zComponent == rhs.zComponent)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" xComponent: ").append(xComponent).append("\n");
+    sb.append(" yComponent: ").append(yComponent).append("\n");
+    sb.append(" zComponent: ").append(zComponent).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityOrientation.java b/src-generated/edu/nps/moves/dis7/LiveEntityOrientation.java
index dee032051b5a33671df5108de83b7c456e23bdfb..211fe4300e458f7e8d546704c0e1c84bdaaec65a 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityOrientation.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityOrientation.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (phi == rhs.phi)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" psi: ").append(psi).append("\n");
+    sb.append(" theta: ").append(theta).append("\n");
+    sb.append(" phi: ").append(phi).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityOrientation16.java b/src-generated/edu/nps/moves/dis7/LiveEntityOrientation16.java
index ec3e969045b8e5dff0810ebba0b9cdfe14773695..0a66daa0b1e557fa26f50035a54cef82688ae652 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityOrientation16.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityOrientation16.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (phi == rhs.phi)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" psi: ").append(psi).append("\n");
+    sb.append(" theta: ").append(theta).append("\n");
+    sb.append(" phi: ").append(phi).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityOrientationError.java b/src-generated/edu/nps/moves/dis7/LiveEntityOrientationError.java
index 51ffcda148b290e984693a4420be429a08fccf61..7d712b3f633f6d78d285f0f92a5d6e8e28f70e7c 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityOrientationError.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityOrientationError.java
@@ -166,7 +166,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -189,4 +189,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (rotationError == rhs.rotationError)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" azimuthError: ").append(azimuthError).append("\n");
+    sb.append(" elevationError: ").append(elevationError).append("\n");
+    sb.append(" rotationError: ").append(rotationError).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityPdu.java b/src-generated/edu/nps/moves/dis7/LiveEntityPdu.java
index c332388650868eb5bc80dd5a96378c60d4faf315..da7e3deb98660df53f0317d8a6ab22c00fd2aee4 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityPdu.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityPdu.java
@@ -154,7 +154,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -171,4 +171,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" subprotocolNumber: ").append(subprotocolNumber).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityPositionError.java b/src-generated/edu/nps/moves/dis7/LiveEntityPositionError.java
index 67b78541a3e1239820f26db1c5ffc2abe9363387..81cf4615536628a5021053ca980375c3c5a49292 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityPositionError.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityPositionError.java
@@ -145,7 +145,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -167,4 +167,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (verticalError == rhs.verticalError)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" horizontalError: ").append(horizontalError).append("\n");
+    sb.append(" verticalError: ").append(verticalError).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveEntityRelativeWorldCoordinates.java b/src-generated/edu/nps/moves/dis7/LiveEntityRelativeWorldCoordinates.java
index f0a65a3b65e6bda6ce215aea8052495fc97aa615..8d2a238cea50c8dedc8bac7b7b607cde9807078b 100644
--- a/src-generated/edu/nps/moves/dis7/LiveEntityRelativeWorldCoordinates.java
+++ b/src-generated/edu/nps/moves/dis7/LiveEntityRelativeWorldCoordinates.java
@@ -187,7 +187,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -211,4 +211,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (deltaZ == rhs.deltaZ)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" referencePoint: ").append(referencePoint).append("\n");
+    sb.append(" deltaX: ").append(deltaX).append("\n");
+    sb.append(" deltaY: ").append(deltaY).append("\n");
+    sb.append(" deltaZ: ").append(deltaZ).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LiveSimulationAddress.java b/src-generated/edu/nps/moves/dis7/LiveSimulationAddress.java
index b10c8c4c4595a9b40183621ab5fe70692e61bfc1..524fe7b1e36d425a62d758a1dbed3df0e6aaf752 100644
--- a/src-generated/edu/nps/moves/dis7/LiveSimulationAddress.java
+++ b/src-generated/edu/nps/moves/dis7/LiveSimulationAddress.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (liveApplicationNumber == rhs.liveApplicationNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" liveSiteNumber: ").append(liveSiteNumber).append("\n");
+    sb.append(" liveApplicationNumber: ").append(liveApplicationNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/LogisticsFamilyPdu.java b/src-generated/edu/nps/moves/dis7/LogisticsFamilyPdu.java
index 9e12f136fa1dd1a08aad2c9bbe2ffcda362160f3..c139fb844421379dfa9480c4229b92ebd58878a4 100644
--- a/src-generated/edu/nps/moves/dis7/LogisticsFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/LogisticsFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MineEmplacementTime.java b/src-generated/edu/nps/moves/dis7/MineEmplacementTime.java
index 1f7c926435eeaf9cfe4a976c67b39d9078021553..a8a9d957c6473a9afc33873e179313982f0616fa 100644
--- a/src-generated/edu/nps/moves/dis7/MineEmplacementTime.java
+++ b/src-generated/edu/nps/moves/dis7/MineEmplacementTime.java
@@ -144,7 +144,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -166,4 +166,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (timePastTheHour == rhs.timePastTheHour)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" hour: ").append(hour).append("\n");
+    sb.append(" timePastTheHour: ").append(timePastTheHour).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MineEntityIdentifier.java b/src-generated/edu/nps/moves/dis7/MineEntityIdentifier.java
index a22cfdae81be1c900d53b43d8e124906eae23e9d..2d1992d154713e008bb6a6816f054290309a589e 100644
--- a/src-generated/edu/nps/moves/dis7/MineEntityIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/MineEntityIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (mineEntityNumber == rhs.mineEntityNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" mineEntityNumber: ").append(mineEntityNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldDataPdu.java b/src-generated/edu/nps/moves/dis7/MinefieldDataPdu.java
index 59a4f5fdd3d24b190aed4980c307872f5afd6e3f..a8a28827514c10e920cb6390cc724fa31f13edfe 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldDataPdu.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldDataPdu.java
@@ -900,7 +900,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -1002,4 +1002,56 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" minefieldID: ").append(minefieldID).append("\n");
+    sb.append(" requestingEntityID: ").append(requestingEntityID).append("\n");
+    sb.append(" minefieldSequenceNumbeer: ").append(minefieldSequenceNumbeer).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" pduSequenceNumber: ").append(pduSequenceNumber).append("\n");
+    sb.append(" numberOfPdus: ").append(numberOfPdus).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" dataFilter: ").append(dataFilter).append("\n");
+    sb.append(" mineType: ").append(mineType).append("\n");
+    sb.append(" padTo32: ").append(padTo32).append("\n");
+    sb.append(" groundBurialDepthOffset: ").append("\n");
+    sb.append(Arrays.toString(groundBurialDepthOffset)).append("\n");
+    sb.append(" waterBurialDepthOffset: ").append("\n");
+    sb.append(Arrays.toString(waterBurialDepthOffset)).append("\n");
+    sb.append(" snowBurialDepthOffset: ").append("\n");
+    sb.append(Arrays.toString(snowBurialDepthOffset)).append("\n");
+    sb.append(" thermalContrast: ").append("\n");
+    sb.append(Arrays.toString(thermalContrast)).append("\n");
+    sb.append(" reflectance: ").append("\n");
+    sb.append(Arrays.toString(reflectance)).append("\n");
+    sb.append(" mineEntityNumber: ").append("\n");
+    sb.append(Arrays.toString(mineEntityNumber)).append("\n");
+    sb.append(" scalarDetectionCoefficient: ").append("\n");
+    sb.append(Arrays.toString(scalarDetectionCoefficient)).append("\n");
+    sb.append(" padTo32_2: ").append(padTo32_2).append("\n");
+    sb.append(" numberOfTripDetonationWires: ").append("\n");
+    sb.append(Arrays.toString(numberOfTripDetonationWires)).append("\n");
+    sb.append(" padTo32_3: ").append(padTo32_3).append("\n");
+    sb.append(" numberOfVertices: ").append("\n");
+    sb.append(Arrays.toString(numberOfVertices)).append("\n");
+    sb.append(" sensorTypes: ").append("\n");
+    sensorTypes.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" mineLocation: ").append("\n");
+    mineLocation.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" mineOrientation: ").append("\n");
+    mineOrientation.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" mineEmplacementTime: ").append("\n");
+    mineEmplacementTime.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" fusing: ").append("\n");
+    fusing.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" paintScheme: ").append("\n");
+    paintScheme.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldFamilyPdu.java b/src-generated/edu/nps/moves/dis7/MinefieldFamilyPdu.java
index afe98d1209139250f9a50e3452c2cb6187625543..79fbadd5df2e72617de17466c3785fbb48cb3318 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldIdentifier.java b/src-generated/edu/nps/moves/dis7/MinefieldIdentifier.java
index 90fdb96b1f195601fed33472bb987fa278f4fa7a..dcfc4a943d692f052a45e9cbf8d8716eeac8664c 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (minefieldNumber == rhs.minefieldNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" minefieldNumber: ").append(minefieldNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldQueryPdu.java b/src-generated/edu/nps/moves/dis7/MinefieldQueryPdu.java
index 02d9e19268183239950343dc70dd5ee4aea439fe..0fa3c104cd1158096fb46e2d694f337a3d40df32 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldQueryPdu.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldQueryPdu.java
@@ -354,7 +354,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -383,4 +383,24 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" minefieldID: ").append(minefieldID).append("\n");
+    sb.append(" requestingEntityID: ").append(requestingEntityID).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" dataFilter: ").append(dataFilter).append("\n");
+    sb.append(" requestedMineType: ").append(requestedMineType).append("\n");
+    sb.append(" requestedPerimeterPoints: ").append("\n");
+    requestedPerimeterPoints.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" sensorTypes: ").append("\n");
+    sensorTypes.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldResponseNACKPdu.java b/src-generated/edu/nps/moves/dis7/MinefieldResponseNACKPdu.java
index 1515759946f864b13a8669f3f3ae6da0c42802ff..5a72897d1feacde674175a5b6c30e12c3c4492f2 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldResponseNACKPdu.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldResponseNACKPdu.java
@@ -214,7 +214,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -238,4 +238,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" minefieldID: ").append(minefieldID).append("\n");
+    sb.append(" requestingEntityID: ").append(requestingEntityID).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" missingPduSequenceNumbers: ").append("\n");
+    sb.append(Arrays.toString(missingPduSequenceNumbers)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldSensorType.java b/src-generated/edu/nps/moves/dis7/MinefieldSensorType.java
index 7028829338e342728f908bdf18000d21b963cf47..d98d25845a327a85bd65b5a217ec4844fe44d8d8 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldSensorType.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldSensorType.java
@@ -125,7 +125,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -146,4 +146,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (sensorType == rhs.sensorType)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" sensorType: ").append(sensorType).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MinefieldStatePdu.java b/src-generated/edu/nps/moves/dis7/MinefieldStatePdu.java
index 5cfca1fccdb30a3447e246d83c9931ad26cf76fa..701097a066192ed46de11fb78e5f9bfff8dbdf26 100644
--- a/src-generated/edu/nps/moves/dis7/MinefieldStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/MinefieldStatePdu.java
@@ -397,7 +397,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -416,6 +416,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (minefieldType.equals( rhs.minefieldType) )) ivarsEqual = false;
      if( ! (minefieldLocation.equals( rhs.minefieldLocation) )) ivarsEqual = false;
      if( ! (minefieldOrientation.equals( rhs.minefieldOrientation) )) ivarsEqual = false;
+     if( ! (appearance.equals( rhs.appearance) )) ivarsEqual = false;
      if( ! (protocolMode.equals( rhs.protocolMode) )) ivarsEqual = false;
 
      for(int idx = 0; idx < perimeterPoints.size(); idx++)
@@ -427,4 +428,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" minefieldID: ").append(minefieldID).append("\n");
+    sb.append(" minefieldSequence: ").append(minefieldSequence).append("\n");
+    sb.append(" forceID: ").append(forceID).append("\n");
+    sb.append(" minefieldType: ").append(minefieldType).append("\n");
+    sb.append(" minefieldLocation: ").append(minefieldLocation).append("\n");
+    sb.append(" minefieldOrientation: ").append(minefieldOrientation).append("\n");
+    sb.append(" appearance: ").append(appearance).append("\n");
+    sb.append(" protocolMode: ").append(protocolMode).append("\n");
+    sb.append(" perimeterPoints: ").append("\n");
+    perimeterPoints.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" mineType: ").append("\n");
+    mineType.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ModulationParameters.java b/src-generated/edu/nps/moves/dis7/ModulationParameters.java
index 3584c4ac09a175dded71b20c77c6f591154e6869..fcd7a70f26c33d0a943c4e536321da00925da394 100644
--- a/src-generated/edu/nps/moves/dis7/ModulationParameters.java
+++ b/src-generated/edu/nps/moves/dis7/ModulationParameters.java
@@ -140,7 +140,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -166,4 +166,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ModulationType.java b/src-generated/edu/nps/moves/dis7/ModulationType.java
index 4015c18f7632af9b767c0be41e90c577dc174c42..8d218b22aa6dcf3b90e00f54bbb0d4e0b67b6ea2 100644
--- a/src-generated/edu/nps/moves/dis7/ModulationType.java
+++ b/src-generated/edu/nps/moves/dis7/ModulationType.java
@@ -191,7 +191,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -215,4 +215,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (radioSystem == rhs.radioSystem)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" spreadSpectrum: ").append(spreadSpectrum).append("\n");
+    sb.append(" majorModulation: ").append(majorModulation).append("\n");
+    sb.append(" detail: ").append(detail).append("\n");
+    sb.append(" radioSystem: ").append(radioSystem).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Munition.java b/src-generated/edu/nps/moves/dis7/Munition.java
index c50faeb54f919689b2216e6a50fdf1b38d036c69..746f16fe61482c29407a7491a8dd64edd2446f7b 100644
--- a/src-generated/edu/nps/moves/dis7/Munition.java
+++ b/src-generated/edu/nps/moves/dis7/Munition.java
@@ -212,7 +212,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -237,4 +237,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" munitionType: ").append(munitionType).append("\n");
+    sb.append(" station: ").append(station).append("\n");
+    sb.append(" quantity: ").append(quantity).append("\n");
+    sb.append(" munitionStatus: ").append(munitionStatus).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MunitionDescriptor.java b/src-generated/edu/nps/moves/dis7/MunitionDescriptor.java
index feedb76224b5a3385d9927835810c1975f68934c..2d74c4e5ff8d2b991ae4933946e37e5c9cc79c4e 100644
--- a/src-generated/edu/nps/moves/dis7/MunitionDescriptor.java
+++ b/src-generated/edu/nps/moves/dis7/MunitionDescriptor.java
@@ -212,7 +212,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -237,4 +237,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (rate == rhs.rate)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" munitionType: ").append(munitionType).append("\n");
+    sb.append(" warhead: ").append(warhead).append("\n");
+    sb.append(" fuse: ").append(fuse).append("\n");
+    sb.append(" quantity: ").append(quantity).append("\n");
+    sb.append(" rate: ").append(rate).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/MunitionReload.java b/src-generated/edu/nps/moves/dis7/MunitionReload.java
index 868e2b5bdbc8a45c628dbcdd49b269083229e3ed..a32cdd13d53861970ff667df713d28faa5d5be99 100644
--- a/src-generated/edu/nps/moves/dis7/MunitionReload.java
+++ b/src-generated/edu/nps/moves/dis7/MunitionReload.java
@@ -234,7 +234,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -260,4 +260,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (maximumQuantityReloadTime == rhs.maximumQuantityReloadTime)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" munitionType: ").append(munitionType).append("\n");
+    sb.append(" station: ").append(station).append("\n");
+    sb.append(" standardQuantity: ").append(standardQuantity).append("\n");
+    sb.append(" maximumQuantity: ").append(maximumQuantity).append("\n");
+    sb.append(" standardQuantityReloadTime: ").append(standardQuantityReloadTime).append("\n");
+    sb.append(" maximumQuantityReloadTime: ").append(maximumQuantityReloadTime).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/NamedLocationIdentification.java b/src-generated/edu/nps/moves/dis7/NamedLocationIdentification.java
index 0a0463a2e77536d6ce0c0839d98505bb92ee691b..66c5252d85ea296add64abe51cab2d6e716c15df 100644
--- a/src-generated/edu/nps/moves/dis7/NamedLocationIdentification.java
+++ b/src-generated/edu/nps/moves/dis7/NamedLocationIdentification.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (stationNumber == rhs.stationNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" stationName: ").append(stationName).append("\n");
+    sb.append(" stationNumber: ").append(stationNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ObjectIdentifier.java b/src-generated/edu/nps/moves/dis7/ObjectIdentifier.java
index 070fa52858757ef47af02cfc9acbfb16d4ed6eb1..8905f91acc904744b4f4a047f03b5c2fa43b6a44 100644
--- a/src-generated/edu/nps/moves/dis7/ObjectIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/ObjectIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (objectNumber == rhs.objectNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" objectNumber: ").append(objectNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ObjectType.java b/src-generated/edu/nps/moves/dis7/ObjectType.java
index 0093c5bf339f257ebf65a541cfe52be963d76644..8f80c4b075787955eee70b27438250a93ffd045c 100644
--- a/src-generated/edu/nps/moves/dis7/ObjectType.java
+++ b/src-generated/edu/nps/moves/dis7/ObjectType.java
@@ -191,7 +191,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -215,4 +215,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (subCategory == rhs.subCategory)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" objectKind: ").append(objectKind).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subCategory: ").append(subCategory).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/OwnershipStatusRecord.java b/src-generated/edu/nps/moves/dis7/OwnershipStatusRecord.java
index 88771eadca86519d1578539d826ec2d47600a576..ad733c34e23ba023bf01335df67b92d3a74f98c7 100644
--- a/src-generated/edu/nps/moves/dis7/OwnershipStatusRecord.java
+++ b/src-generated/edu/nps/moves/dis7/OwnershipStatusRecord.java
@@ -168,7 +168,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -191,4 +191,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityId: ").append(entityId).append("\n");
+    sb.append(" ownershipStatus: ").append(ownershipStatus).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Pdu.java b/src-generated/edu/nps/moves/dis7/Pdu.java
index 97ee56ab08a920ae3bb022f9411b2e5912d8afdc..aade3f6666e642c3acff304b9d94f220a9e73ce2 100644
--- a/src-generated/edu/nps/moves/dis7/Pdu.java
+++ b/src-generated/edu/nps/moves/dis7/Pdu.java
@@ -249,7 +249,7 @@ public byte[] marshal() throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -275,4 +275,20 @@ public byte[] marshal() throws Exception
      if( ! (length == rhs.length)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" protocolVersion: ").append(protocolVersion).append("\n");
+    sb.append(" exerciseID: ").append(exerciseID).append("\n");
+    sb.append(" pduType: ").append(pduType).append("\n");
+    sb.append(" protocolFamily: ").append(protocolFamily).append("\n");
+    sb.append(" timestamp: ").append(timestamp).append("\n");
+    sb.append(" length: ").append(length).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/PduBase.java b/src-generated/edu/nps/moves/dis7/PduBase.java
index 5f404c6e5beb0eca00cf754fca38c2a76db370fb..b9ec2233171180d35eec7b22c10ef1343e864c9c 100644
--- a/src-generated/edu/nps/moves/dis7/PduBase.java
+++ b/src-generated/edu/nps/moves/dis7/PduBase.java
@@ -153,7 +153,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -170,4 +170,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" pduStatus: ").append(pduStatus).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/PduStatus.java b/src-generated/edu/nps/moves/dis7/PduStatus.java
index ead06418210c71b6e5a22378e09453cc054be5e4..ea751ef05a3faeea297054ab8a923968babd362b 100644
--- a/src-generated/edu/nps/moves/dis7/PduStatus.java
+++ b/src-generated/edu/nps/moves/dis7/PduStatus.java
@@ -116,4 +116,10 @@ public class PduStatus
   {
     return obj instanceof PduStatus && ((PduStatus) obj).getValue() == getValue();
   }
+  
+  @Override
+  public String toString()
+  {
+    return "PduStatus: "+ Integer.toBinaryString(getValue()+256).substring(1); // dont want to lose leading zeros
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/PointObjectStatePdu.java b/src-generated/edu/nps/moves/dis7/PointObjectStatePdu.java
index 07c4b9538e2f263e3ec048505754270443b853f4..86b0e83a2bc972e94ef449aefd13c60987d0631d 100644
--- a/src-generated/edu/nps/moves/dis7/PointObjectStatePdu.java
+++ b/src-generated/edu/nps/moves/dis7/PointObjectStatePdu.java
@@ -409,7 +409,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -426,14 +426,40 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (referencedObjectID.equals( rhs.referencedObjectID) )) ivarsEqual = false;
      if( ! (updateNumber == rhs.updateNumber)) ivarsEqual = false;
      if( ! (forceID == rhs.forceID)) ivarsEqual = false;
+     if( ! (modifications.equals( rhs.modifications) )) ivarsEqual = false;
      if( ! (objectType.equals( rhs.objectType) )) ivarsEqual = false;
      if( ! (objectLocation.equals( rhs.objectLocation) )) ivarsEqual = false;
      if( ! (objectOrientation.equals( rhs.objectOrientation) )) ivarsEqual = false;
      if( ! (specificObjectAppearance == rhs.specificObjectAppearance)) ivarsEqual = false;
+     if( ! (generObjectAppearance.equals( rhs.generObjectAppearance) )) ivarsEqual = false;
      if( ! (padding1 == rhs.padding1)) ivarsEqual = false;
      if( ! (requesterID.equals( rhs.requesterID) )) ivarsEqual = false;
      if( ! (receivingID.equals( rhs.receivingID) )) ivarsEqual = false;
      if( ! (pad2 == rhs.pad2)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" objectID: ").append(objectID).append("\n");
+    sb.append(" referencedObjectID: ").append(referencedObjectID).append("\n");
+    sb.append(" updateNumber: ").append(updateNumber).append("\n");
+    sb.append(" forceID: ").append(forceID).append("\n");
+    sb.append(" modifications: ").append(modifications).append("\n");
+    sb.append(" objectType: ").append(objectType).append("\n");
+    sb.append(" objectLocation: ").append(objectLocation).append("\n");
+    sb.append(" objectOrientation: ").append(objectOrientation).append("\n");
+    sb.append(" specificObjectAppearance: ").append(specificObjectAppearance).append("\n");
+    sb.append(" generObjectAppearance: ").append(generObjectAppearance).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" requesterID: ").append(requesterID).append("\n");
+    sb.append(" receivingID: ").append(receivingID).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/PropulsionSystemData.java b/src-generated/edu/nps/moves/dis7/PropulsionSystemData.java
index a48da9fa4eb985ba57cc62c913b049de903bf846..aa4e2678c61f58978d24e503ff22b974f49d607b 100644
--- a/src-generated/edu/nps/moves/dis7/PropulsionSystemData.java
+++ b/src-generated/edu/nps/moves/dis7/PropulsionSystemData.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (engineRpm == rhs.engineRpm)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" powerSetting: ").append(powerSetting).append("\n");
+    sb.append(" engineRpm: ").append(engineRpm).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ProtocolMode.java b/src-generated/edu/nps/moves/dis7/ProtocolMode.java
index 2187fc3d0e6a1b839dda3bfd8b44219672b1601f..d04bff3b56e79d694a278869a247342d634fca38 100644
--- a/src-generated/edu/nps/moves/dis7/ProtocolMode.java
+++ b/src-generated/edu/nps/moves/dis7/ProtocolMode.java
@@ -125,7 +125,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -146,4 +146,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (protocolMode == rhs.protocolMode)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" protocolMode: ").append(protocolMode).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RadioCommsHeader.java b/src-generated/edu/nps/moves/dis7/RadioCommsHeader.java
index c84b373ba144e63d8e43cf5086ac340da5f4ffff..23c09d649d182fc2bb59e7f6db46d27c52cfa38d 100644
--- a/src-generated/edu/nps/moves/dis7/RadioCommsHeader.java
+++ b/src-generated/edu/nps/moves/dis7/RadioCommsHeader.java
@@ -145,7 +145,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -167,4 +167,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (radioNumber == rhs.radioNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" radioReferenceID: ").append(radioReferenceID).append("\n");
+    sb.append(" radioNumber: ").append(radioNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RadioCommunicationsFamilyPdu.java b/src-generated/edu/nps/moves/dis7/RadioCommunicationsFamilyPdu.java
index 9911310ae042cf9c5b087a647cf0999eee50e98a..53b2f2486a0ba69f540d0cdedafd5520e33bbfce 100644
--- a/src-generated/edu/nps/moves/dis7/RadioCommunicationsFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/RadioCommunicationsFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RadioIdentifier.java b/src-generated/edu/nps/moves/dis7/RadioIdentifier.java
index 1d5a651dea3903241387e4cba31300aa0dc98877..e0d9e47c8f81e72c8cb6e0395e3f19e49d9ce53d 100644
--- a/src-generated/edu/nps/moves/dis7/RadioIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/RadioIdentifier.java
@@ -191,7 +191,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -215,4 +215,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (radioNumber == rhs.radioNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" siteNumber: ").append(siteNumber).append("\n");
+    sb.append(" applicationNumber: ").append(applicationNumber).append("\n");
+    sb.append(" referenceNumber: ").append(referenceNumber).append("\n");
+    sb.append(" radioNumber: ").append(radioNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RadioType.java b/src-generated/edu/nps/moves/dis7/RadioType.java
index 6737100d5d8ca090fe449dc0aee8cbd7adf1bc76..6141c94156b99f0314535966dcd017d86f721492 100644
--- a/src-generated/edu/nps/moves/dis7/RadioType.java
+++ b/src-generated/edu/nps/moves/dis7/RadioType.java
@@ -255,7 +255,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -282,4 +282,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (extra == rhs.extra)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityKind: ").append(entityKind).append("\n");
+    sb.append(" domain: ").append(domain).append("\n");
+    sb.append(" country: ").append(country).append("\n");
+    sb.append(" category: ").append(category).append("\n");
+    sb.append(" subcategory: ").append(subcategory).append("\n");
+    sb.append(" specific: ").append(specific).append("\n");
+    sb.append(" extra: ").append(extra).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ReceiverPdu.java b/src-generated/edu/nps/moves/dis7/ReceiverPdu.java
index a8684587b6035a18ff2696e0b10d7bab3b8bbd26..464e9668e263abc0655dc19b2ea09f61d4569c81 100644
--- a/src-generated/edu/nps/moves/dis7/ReceiverPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ReceiverPdu.java
@@ -239,7 +239,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -260,4 +260,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (transmitterRadioId == rhs.transmitterRadioId)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" header: ").append(header).append("\n");
+    sb.append(" receiverState: ").append(receiverState).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" receivedPower: ").append(receivedPower).append("\n");
+    sb.append(" transmitterEntityId: ").append(transmitterEntityId).append("\n");
+    sb.append(" transmitterRadioId: ").append(transmitterRadioId).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RecordQueryRPdu.java b/src-generated/edu/nps/moves/dis7/RecordQueryRPdu.java
index 4106e6306c75b27ccb9f18bc696a3e52970efe58..beaf83f504a0ec242a8e5c11b2635f1b722fb092 100644
--- a/src-generated/edu/nps/moves/dis7/RecordQueryRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/RecordQueryRPdu.java
@@ -279,7 +279,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -303,4 +303,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" eventType: ").append(eventType).append("\n");
+    sb.append(" time: ").append(time).append("\n");
+    sb.append(" recordIDs: ").append("\n");
+    recordIDs.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RecordQuerySpecification.java b/src-generated/edu/nps/moves/dis7/RecordQuerySpecification.java
index a945b34e174e4b499eed2e0340428839053e291e..393defaabf0acedbc0675978ccb4a72f47229d2f 100644
--- a/src-generated/edu/nps/moves/dis7/RecordQuerySpecification.java
+++ b/src-generated/edu/nps/moves/dis7/RecordQuerySpecification.java
@@ -159,7 +159,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -183,4 +183,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordIDs: ").append("\n");
+    recordIDs.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RecordRPdu.java b/src-generated/edu/nps/moves/dis7/RecordRPdu.java
index 007fd50a3d49bcacd8e15c3a9f3bf50ccc2a53f8..7d5d1991635663563bd66f3cb06b50d4de538266 100644
--- a/src-generated/edu/nps/moves/dis7/RecordRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/RecordRPdu.java
@@ -256,7 +256,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -279,4 +279,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" eventType: ").append(eventType).append("\n");
+    sb.append(" recordSets: ").append("\n");
+    recordSets.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RecordSpecification.java b/src-generated/edu/nps/moves/dis7/RecordSpecification.java
index ca678e2f9833601a528138dae4212a9b4afa9f20..824c431a1d69ce83505e64b1d12ce414980cd769 100644
--- a/src-generated/edu/nps/moves/dis7/RecordSpecification.java
+++ b/src-generated/edu/nps/moves/dis7/RecordSpecification.java
@@ -161,7 +161,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -185,4 +185,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordSets: ").append("\n");
+    recordSets.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RecordSpecificationElement.java b/src-generated/edu/nps/moves/dis7/RecordSpecificationElement.java
index f63e71389eb88362bfd2e1200b9531dc070db7f0..025cbd78a966fb5b9186fefb15afbea32dcca6fe 100644
--- a/src-generated/edu/nps/moves/dis7/RecordSpecificationElement.java
+++ b/src-generated/edu/nps/moves/dis7/RecordSpecificationElement.java
@@ -272,7 +272,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -309,4 +309,23 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordID: ").append(recordID).append("\n");
+    sb.append(" recordSetSerialNumber: ").append(recordSetSerialNumber).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" recordCount: ").append(recordCount).append("\n");
+    sb.append(" recordValues: ").append("\n");
+    sb.append(Arrays.toString(recordValues)).append("\n");
+    sb.append(" padTo64: ").append("\n");
+    sb.append(Arrays.toString(padTo64)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Relationship.java b/src-generated/edu/nps/moves/dis7/Relationship.java
index f76bafb9fd89eac5e4d97dc1597e3b73c47fe682..9a4579a6c77a275bb7847f7d1c24be80d7f84e85 100644
--- a/src-generated/edu/nps/moves/dis7/Relationship.java
+++ b/src-generated/edu/nps/moves/dis7/Relationship.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (position == rhs.position)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" nature: ").append(nature).append("\n");
+    sb.append(" position: ").append(position).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RemoveEntityPdu.java b/src-generated/edu/nps/moves/dis7/RemoveEntityPdu.java
index b41ffee477637b2a918b5b25eb19f003423b591d..ffac50da10789c9bb4b77c21907a65d2eaae8c64 100644
--- a/src-generated/edu/nps/moves/dis7/RemoveEntityPdu.java
+++ b/src-generated/edu/nps/moves/dis7/RemoveEntityPdu.java
@@ -133,7 +133,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -149,4 +149,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RemoveEntityRPdu.java b/src-generated/edu/nps/moves/dis7/RemoveEntityRPdu.java
index 4c19212cea2a33d138847622dc605a62a046834b..b25771a4d2c4d4122a88e77cc2a933c1b9782dac 100644
--- a/src-generated/edu/nps/moves/dis7/RemoveEntityRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/RemoveEntityRPdu.java
@@ -197,7 +197,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -216,4 +216,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RepairCompletePdu.java b/src-generated/edu/nps/moves/dis7/RepairCompletePdu.java
index 51ed130a9040d8e00046e1f4a7bd5bfe52051a68..0609dc069bc584fca6b3b0051c8b05ab157196f0 100644
--- a/src-generated/edu/nps/moves/dis7/RepairCompletePdu.java
+++ b/src-generated/edu/nps/moves/dis7/RepairCompletePdu.java
@@ -197,7 +197,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -216,4 +216,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding4 == rhs.padding4)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" repairingEntityID: ").append(repairingEntityID).append("\n");
+    sb.append(" repair: ").append(repair).append("\n");
+    sb.append(" padding4: ").append(padding4).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RepairResponsePdu.java b/src-generated/edu/nps/moves/dis7/RepairResponsePdu.java
index 21ce571c8ecbc55bdd4b4f8f056d0e3a2b0d0783..5a6fce116f79e353099726720aeb46146284439e 100644
--- a/src-generated/edu/nps/moves/dis7/RepairResponsePdu.java
+++ b/src-generated/edu/nps/moves/dis7/RepairResponsePdu.java
@@ -219,7 +219,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -239,4 +239,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding2 == rhs.padding2)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" repairingEntityID: ").append(repairingEntityID).append("\n");
+    sb.append(" repairResult: ").append(repairResult).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/RequestID.java b/src-generated/edu/nps/moves/dis7/RequestID.java
index 5b1fe7353a48c35e78f04dbbd5e7fcee4e801363..723e9857840a460a79bff41d28e5853851fe8b3f 100644
--- a/src-generated/edu/nps/moves/dis7/RequestID.java
+++ b/src-generated/edu/nps/moves/dis7/RequestID.java
@@ -125,7 +125,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -146,4 +146,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ResupplyCancelPdu.java b/src-generated/edu/nps/moves/dis7/ResupplyCancelPdu.java
index 1f07b383105f678188f51aae69b70953ea190f7b..66a616e3dcd202bdb231fa6f7d7de05cf334e0ee 100644
--- a/src-generated/edu/nps/moves/dis7/ResupplyCancelPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ResupplyCancelPdu.java
@@ -153,7 +153,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -170,4 +170,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (supplyingEntityID.equals( rhs.supplyingEntityID) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" supplyingEntityID: ").append(supplyingEntityID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ResupplyOfferPdu.java b/src-generated/edu/nps/moves/dis7/ResupplyOfferPdu.java
index 2566b6f0e01a19fd6602bf981764a4d552b90227..e9d169ed383c255eed51908276d96e7eb8281353 100644
--- a/src-generated/edu/nps/moves/dis7/ResupplyOfferPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ResupplyOfferPdu.java
@@ -255,7 +255,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -278,4 +278,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" supplyingEntityID: ").append(supplyingEntityID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" supplies: ").append("\n");
+    supplies.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ResupplyReceivedPdu.java b/src-generated/edu/nps/moves/dis7/ResupplyReceivedPdu.java
index fd991f74abd30dda19caac44f4ddfe262c41f71d..7cec521bc2e97d5a4d2e94a0b3ec955a89f26521 100644
--- a/src-generated/edu/nps/moves/dis7/ResupplyReceivedPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ResupplyReceivedPdu.java
@@ -255,7 +255,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -278,4 +278,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" supplyingEntityID: ").append(supplyingEntityID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" supplies: ").append("\n");
+    supplies.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SEESPdu.java b/src-generated/edu/nps/moves/dis7/SEESPdu.java
index d692d45435fe9121274612591805db53dcdcc6f0..2f77334ffe6bd7cdae55ba74c5fdcae15893e45d 100644
--- a/src-generated/edu/nps/moves/dis7/SEESPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SEESPdu.java
@@ -314,7 +314,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -341,4 +341,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" orginatingEntityID: ").append(orginatingEntityID).append("\n");
+    sb.append(" infraredSignatureRepresentationIndex: ").append(infraredSignatureRepresentationIndex).append("\n");
+    sb.append(" acousticSignatureRepresentationIndex: ").append(acousticSignatureRepresentationIndex).append("\n");
+    sb.append(" radarCrossSectionSignatureRepresentationIndex: ").append(radarCrossSectionSignatureRepresentationIndex).append("\n");
+    sb.append(" propulsionSystemData: ").append("\n");
+    propulsionSystemData.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" vectoringSystemData: ").append("\n");
+    vectoringSystemData.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SecondaryOperationalData.java b/src-generated/edu/nps/moves/dis7/SecondaryOperationalData.java
index d928f88e9ae8a78e5139e87678e93fecc0520a48..45742cb8e90b2dc28626048ad4789058111d33b4 100644
--- a/src-generated/edu/nps/moves/dis7/SecondaryOperationalData.java
+++ b/src-generated/edu/nps/moves/dis7/SecondaryOperationalData.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (numberOfIFFFundamentalParameterRecords == rhs.numberOfIFFFundamentalParameterRecords)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" operationalData1: ").append(operationalData1).append("\n");
+    sb.append(" operationalData2: ").append(operationalData2).append("\n");
+    sb.append(" numberOfIFFFundamentalParameterRecords: ").append(numberOfIFFFundamentalParameterRecords).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Sensor.java b/src-generated/edu/nps/moves/dis7/Sensor.java
index 76f14aa2e5c7afa8950aff513b488a048c5a96b8..217c665fd0194513588beb5939f06c3d4b24ddef 100644
--- a/src-generated/edu/nps/moves/dis7/Sensor.java
+++ b/src-generated/edu/nps/moves/dis7/Sensor.java
@@ -235,7 +235,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -261,4 +261,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" sensorTypeSource: ").append(sensorTypeSource).append("\n");
+    sb.append(" sensorOnOffStatus: ").append(sensorOnOffStatus).append("\n");
+    sb.append(" sensorType: ").append(sensorType).append("\n");
+    sb.append(" station: ").append(station).append("\n");
+    sb.append(" quantity: ").append(quantity).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SeparationVP.java b/src-generated/edu/nps/moves/dis7/SeparationVP.java
index f0e4a32f1356deba3924f7847c1554b10e3b2901..7209de3b8143da8655a81e6e9d0ccaa01b35e2bd 100644
--- a/src-generated/edu/nps/moves/dis7/SeparationVP.java
+++ b/src-generated/edu/nps/moves/dis7/SeparationVP.java
@@ -255,7 +255,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -282,4 +282,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (stationLocation.equals( rhs.stationLocation) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" reasonForSeparation: ").append(reasonForSeparation).append("\n");
+    sb.append(" preEntityIndicator: ").append(preEntityIndicator).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" parentEntityID: ").append(parentEntityID).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" stationLocation: ").append(stationLocation).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ServiceRequestPdu.java b/src-generated/edu/nps/moves/dis7/ServiceRequestPdu.java
index 1a3b1986c4149103cb125d6c6a588036df2af21b..f51d6585d91b439749d1f51b4a63fc9411d4f256 100644
--- a/src-generated/edu/nps/moves/dis7/ServiceRequestPdu.java
+++ b/src-generated/edu/nps/moves/dis7/ServiceRequestPdu.java
@@ -253,7 +253,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -276,4 +276,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestingEntityID: ").append(requestingEntityID).append("\n");
+    sb.append(" servicingEntityID: ").append(servicingEntityID).append("\n");
+    sb.append(" serviceTypeRequested: ").append(serviceTypeRequested).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" supplies: ").append("\n");
+    supplies.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SetDataPdu.java b/src-generated/edu/nps/moves/dis7/SetDataPdu.java
index 6817d1aac1758c1bb069ac077c9a6bb6f7d2cb21..7312e9b43687a4b1078f84acb4680cff9812b649 100644
--- a/src-generated/edu/nps/moves/dis7/SetDataPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SetDataPdu.java
@@ -271,7 +271,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -296,4 +296,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" fixedDatums: ").append("\n");
+    fixedDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatums: ").append("\n");
+    variableDatums.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SetDataRPdu.java b/src-generated/edu/nps/moves/dis7/SetDataRPdu.java
index 956a186b55a91222f06b79d531fbdd0943521452..d79971057397a8d4dc4d20ccbc1cf6cbad0e7755 100644
--- a/src-generated/edu/nps/moves/dis7/SetDataRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SetDataRPdu.java
@@ -315,7 +315,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -342,4 +342,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" fixedDatumRecords: ").append("\n");
+    fixedDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" variableDatumRecords: ").append("\n");
+    variableDatumRecords.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SetRecordRPdu.java b/src-generated/edu/nps/moves/dis7/SetRecordRPdu.java
index 488ea86e7982b92bcd6fb4bab659d9d1dc321482..9a39eb0f75c745e198c95097a461f02086c2800e 100644
--- a/src-generated/edu/nps/moves/dis7/SetRecordRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SetRecordRPdu.java
@@ -276,7 +276,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -300,4 +300,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" pad3: ").append(pad3).append("\n");
+    sb.append(" recordSets: ").append("\n");
+    recordSets.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/ShaftRPM.java b/src-generated/edu/nps/moves/dis7/ShaftRPM.java
index a3654f52a4574e2e1d8fdbe47562005b604a664a..ace618c8c835f19ea01e0a8b9b017aa3220da2e4 100644
--- a/src-generated/edu/nps/moves/dis7/ShaftRPM.java
+++ b/src-generated/edu/nps/moves/dis7/ShaftRPM.java
@@ -165,7 +165,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -188,4 +188,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (RPMrateOfChange == rhs.RPMrateOfChange)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" currentRPM: ").append(currentRPM).append("\n");
+    sb.append(" orderedRPM: ").append(orderedRPM).append("\n");
+    sb.append(" RPMrateOfChange: ").append(RPMrateOfChange).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SilentEntitySystem.java b/src-generated/edu/nps/moves/dis7/SilentEntitySystem.java
index 6c7d6646ca95fb140c61ac76e23557a63c9a7661..d0785935595a556db7930f04a1ac0973a6dd1f9f 100644
--- a/src-generated/edu/nps/moves/dis7/SilentEntitySystem.java
+++ b/src-generated/edu/nps/moves/dis7/SilentEntitySystem.java
@@ -185,7 +185,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -213,4 +213,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" numberOfEntities: ").append(numberOfEntities).append("\n");
+    sb.append(" entityType: ").append(entityType).append("\n");
+    sb.append(" appearanceRecordList: ").append("\n");
+    sb.append(Arrays.toString(appearanceRecordList)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SimulationAddress.java b/src-generated/edu/nps/moves/dis7/SimulationAddress.java
index 7c2cf3e560c1b39ce163badccd928e0075b09179..8bb920d8d832e8edd0c19a37bafaede6f80bbc44 100644
--- a/src-generated/edu/nps/moves/dis7/SimulationAddress.java
+++ b/src-generated/edu/nps/moves/dis7/SimulationAddress.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (application == rhs.application)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" site: ").append(site).append("\n");
+    sb.append(" application: ").append(application).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SimulationIdentifier.java b/src-generated/edu/nps/moves/dis7/SimulationIdentifier.java
index e037f98bbc8779db87572d4347948a2a69b78559..afb6aa3e6171ab77c1aec28dd5361e3ac5a25338 100644
--- a/src-generated/edu/nps/moves/dis7/SimulationIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/SimulationIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (referenceNumber == rhs.referenceNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" referenceNumber: ").append(referenceNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SimulationManagementFamilyPdu.java b/src-generated/edu/nps/moves/dis7/SimulationManagementFamilyPdu.java
index 10e547b80b47828b47cf2efb72c68f567629963c..19f70e1d7fb1bd648b5c6a9abe5603367bfda26c 100644
--- a/src-generated/edu/nps/moves/dis7/SimulationManagementFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SimulationManagementFamilyPdu.java
@@ -153,7 +153,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -170,4 +170,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (receivingID.equals( rhs.receivingID) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" originatingID: ").append(originatingID).append("\n");
+    sb.append(" receivingID: ").append(receivingID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SimulationManagementWithReliabilityFamilyPdu.java b/src-generated/edu/nps/moves/dis7/SimulationManagementWithReliabilityFamilyPdu.java
index 5c8e628e982cc952eb3053e9eb98a153f523654f..649c7eca10f6ec743d2cb91b900377fa246f1cf7 100644
--- a/src-generated/edu/nps/moves/dis7/SimulationManagementWithReliabilityFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SimulationManagementWithReliabilityFamilyPdu.java
@@ -152,7 +152,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (receivingID.equals( rhs.receivingID) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" originatingID: ").append(originatingID).append("\n");
+    sb.append(" receivingID: ").append(receivingID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StandardVariableRecord.java b/src-generated/edu/nps/moves/dis7/StandardVariableRecord.java
index 88e6f78a8f639db8138c668e32c6e156c32b511a..a595987fb34edec500b89cb45a3bcf107d31d22b 100644
--- a/src-generated/edu/nps/moves/dis7/StandardVariableRecord.java
+++ b/src-generated/edu/nps/moves/dis7/StandardVariableRecord.java
@@ -170,7 +170,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -197,4 +197,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StandardVariableSpecification.java b/src-generated/edu/nps/moves/dis7/StandardVariableSpecification.java
index 46d8a06f3dab4bfbbb187bf55dc1582c8089c7bb..30960eda52219aa7eee708a0015b94f3c355b09f 100644
--- a/src-generated/edu/nps/moves/dis7/StandardVariableSpecification.java
+++ b/src-generated/edu/nps/moves/dis7/StandardVariableSpecification.java
@@ -176,7 +176,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -201,4 +201,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" numberOfStandardVariableRecords: ").append(numberOfStandardVariableRecords).append("\n");
+    sb.append(" standardVariables: ").append("\n");
+    standardVariables.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StartResumePdu.java b/src-generated/edu/nps/moves/dis7/StartResumePdu.java
index ac448e5600b93c95cc9d08c1b1abad22e95217d1..225fe9e94a20aa0a723cfb3ec1bf63edac20108e 100644
--- a/src-generated/edu/nps/moves/dis7/StartResumePdu.java
+++ b/src-generated/edu/nps/moves/dis7/StartResumePdu.java
@@ -175,7 +175,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -193,4 +193,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" realWorldTime: ").append(realWorldTime).append("\n");
+    sb.append(" simulationTime: ").append(simulationTime).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StartResumeRPdu.java b/src-generated/edu/nps/moves/dis7/StartResumeRPdu.java
index c083bddcbf6554a3e01386c33c4d2c3305a843ed..3c86bd013214168a731c6d1db45fe18238760c16 100644
--- a/src-generated/edu/nps/moves/dis7/StartResumeRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/StartResumeRPdu.java
@@ -239,7 +239,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -260,4 +260,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" realWorldTime: ").append(realWorldTime).append("\n");
+    sb.append(" simulationTime: ").append(simulationTime).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" pad2: ").append(pad2).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StopFreezePdu.java b/src-generated/edu/nps/moves/dis7/StopFreezePdu.java
index a43448d67873364de5e80a06a538257e5671a027..c317b80c1b50387a087bc3c52d7d8b443fcba91f 100644
--- a/src-generated/edu/nps/moves/dis7/StopFreezePdu.java
+++ b/src-generated/edu/nps/moves/dis7/StopFreezePdu.java
@@ -219,7 +219,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -234,8 +234,24 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
      if( ! (realWorldTime.equals( rhs.realWorldTime) )) ivarsEqual = false;
      if( ! (reason == rhs.reason)) ivarsEqual = false;
+     if( ! (frozenBehavior.equals( rhs.frozenBehavior) )) ivarsEqual = false;
      if( ! (padding1 == rhs.padding1)) ivarsEqual = false;
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" realWorldTime: ").append(realWorldTime).append("\n");
+    sb.append(" reason: ").append(reason).append("\n");
+    sb.append(" frozenBehavior: ").append(frozenBehavior).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StopFreezeRPdu.java b/src-generated/edu/nps/moves/dis7/StopFreezeRPdu.java
index 6f9dde209e932064e32fc173ae00709c6f8beb94..08fc6f90a0c24fb908037eebf6a2b40416b05624 100644
--- a/src-generated/edu/nps/moves/dis7/StopFreezeRPdu.java
+++ b/src-generated/edu/nps/moves/dis7/StopFreezeRPdu.java
@@ -241,7 +241,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -256,9 +256,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
      if( ! (realWorldTime.equals( rhs.realWorldTime) )) ivarsEqual = false;
      if( ! (reason == rhs.reason)) ivarsEqual = false;
+     if( ! (frozenBehavior.equals( rhs.frozenBehavior) )) ivarsEqual = false;
      if( ! (requiredReliablityService == rhs.requiredReliablityService)) ivarsEqual = false;
      if( ! (pad1 == rhs.pad1)) ivarsEqual = false;
      if( ! (requestID == rhs.requestID)) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" realWorldTime: ").append(realWorldTime).append("\n");
+    sb.append(" reason: ").append(reason).append("\n");
+    sb.append(" frozenBehavior: ").append(frozenBehavior).append("\n");
+    sb.append(" requiredReliablityService: ").append(requiredReliablityService).append("\n");
+    sb.append(" pad1: ").append(pad1).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StorageFuel.java b/src-generated/edu/nps/moves/dis7/StorageFuel.java
index 0c7bc6de1db1b14857a4e45823b0d8042acc239f..1785a6bf7038a62a1e39c5b8ee3a7d719d24cff6 100644
--- a/src-generated/edu/nps/moves/dis7/StorageFuel.java
+++ b/src-generated/edu/nps/moves/dis7/StorageFuel.java
@@ -213,7 +213,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -238,4 +238,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" fuelQuantity: ").append(fuelQuantity).append("\n");
+    sb.append(" fuelMeasurementUnits: ").append(fuelMeasurementUnits).append("\n");
+    sb.append(" fuelType: ").append(fuelType).append("\n");
+    sb.append(" fuelLocation: ").append(fuelLocation).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/StorageFuelReload.java b/src-generated/edu/nps/moves/dis7/StorageFuelReload.java
index 2f340d00a4f78922cf847164227ea699b04d01fb..b70acf21f8010051a721d39b04947133653f9412 100644
--- a/src-generated/edu/nps/moves/dis7/StorageFuelReload.java
+++ b/src-generated/edu/nps/moves/dis7/StorageFuelReload.java
@@ -279,7 +279,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -307,4 +307,22 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" standardQuantity: ").append(standardQuantity).append("\n");
+    sb.append(" maximumQuantity: ").append(maximumQuantity).append("\n");
+    sb.append(" standardQuantityReloadTime: ").append(standardQuantityReloadTime).append("\n");
+    sb.append(" maximumQuantityReloadTime: ").append(maximumQuantityReloadTime).append("\n");
+    sb.append(" fuelMeasurementUnits: ").append(fuelMeasurementUnits).append("\n");
+    sb.append(" fuelType: ").append(fuelType).append("\n");
+    sb.append(" fuelLocation: ").append(fuelLocation).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SupplyQuantity.java b/src-generated/edu/nps/moves/dis7/SupplyQuantity.java
index 354b74d0445ea3a1b040500d1cbcf7458100d3ad..511a577bf84f9300c38cf3f7f1e0dc2be5212085 100644
--- a/src-generated/edu/nps/moves/dis7/SupplyQuantity.java
+++ b/src-generated/edu/nps/moves/dis7/SupplyQuantity.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (quantity == rhs.quantity)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" supplyType: ").append(supplyType).append("\n");
+    sb.append(" quantity: ").append(quantity).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SyntheticEnvironmentFamilyPdu.java b/src-generated/edu/nps/moves/dis7/SyntheticEnvironmentFamilyPdu.java
index 55a5b476dc3c816abac18e5e64e069a03f4176f1..786a0be8a0ebc17ae4bf300ac16dfd93d3cf3640 100644
--- a/src-generated/edu/nps/moves/dis7/SyntheticEnvironmentFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/SyntheticEnvironmentFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/SystemIdentifier.java b/src-generated/edu/nps/moves/dis7/SystemIdentifier.java
index e44a487c42fd2eb7a1a9d8144117521e9b366d38..30af33a38b5a74508fcd0d8d6c216d65b69e37e1 100644
--- a/src-generated/edu/nps/moves/dis7/SystemIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/SystemIdentifier.java
@@ -190,7 +190,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -214,4 +214,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (changeOptions.equals( rhs.changeOptions) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" systemType: ").append(systemType).append("\n");
+    sb.append(" systemName: ").append(systemName).append("\n");
+    sb.append(" systemMode: ").append(systemMode).append("\n");
+    sb.append(" changeOptions: ").append(changeOptions).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/TSPIPdu.java b/src-generated/edu/nps/moves/dis7/TSPIPdu.java
index 129796e3c55f899b008dea632dfa5cda6847d098..d85be41910bae10e030ca1586609a6c268daca9a 100644
--- a/src-generated/edu/nps/moves/dis7/TSPIPdu.java
+++ b/src-generated/edu/nps/moves/dis7/TSPIPdu.java
@@ -331,7 +331,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -361,4 +361,25 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" liveEntityId: ").append(liveEntityId).append("\n");
+    sb.append(" TSPIFlag: ").append(TSPIFlag).append("\n");
+    sb.append(" entityLocation: ").append(entityLocation).append("\n");
+    sb.append(" entityLinearVelocity: ").append(entityLinearVelocity).append("\n");
+    sb.append(" entityOrientation: ").append(entityOrientation).append("\n");
+    sb.append(" positionError: ").append(positionError).append("\n");
+    sb.append(" orientationError: ").append(orientationError).append("\n");
+    sb.append(" deadReckoningParameters: ").append(deadReckoningParameters).append("\n");
+    sb.append(" measuredSpeed: ").append(measuredSpeed).append("\n");
+    sb.append(" systemSpecificData: ").append("\n");
+    sb.append(Arrays.toString(systemSpecificData)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/TotalRecordSets.java b/src-generated/edu/nps/moves/dis7/TotalRecordSets.java
index 0be7db4db0ea17b9746dc9dfe2dba98a1861bd55..3cd55bf59db4485924c0a53f4dad45057a20715d 100644
--- a/src-generated/edu/nps/moves/dis7/TotalRecordSets.java
+++ b/src-generated/edu/nps/moves/dis7/TotalRecordSets.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (padding == rhs.padding)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" totalRecordSets: ").append(totalRecordSets).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/TrackJamData.java b/src-generated/edu/nps/moves/dis7/TrackJamData.java
index d55cc8ee81053b2c663fa998aa93a5fd74a57607..a2af1b89affb7267583d95a934cb1bb46e52b518 100644
--- a/src-generated/edu/nps/moves/dis7/TrackJamData.java
+++ b/src-generated/edu/nps/moves/dis7/TrackJamData.java
@@ -168,7 +168,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -191,4 +191,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (beamNumber == rhs.beamNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" entityID: ").append(entityID).append("\n");
+    sb.append(" emitterNumber: ").append(emitterNumber).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/TransferOwnershipPdu.java b/src-generated/edu/nps/moves/dis7/TransferOwnershipPdu.java
index 8aa1ee72eff50b2eb79cbac55190118b1a0d2a1a..bbcfdf795bb30f96ec1eb500caa45a646b550938 100644
--- a/src-generated/edu/nps/moves/dis7/TransferOwnershipPdu.java
+++ b/src-generated/edu/nps/moves/dis7/TransferOwnershipPdu.java
@@ -260,7 +260,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -282,4 +282,21 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (recordSets.equals( rhs.recordSets) )) ivarsEqual = false;
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" originatingEntityID: ").append(originatingEntityID).append("\n");
+    sb.append(" receivingEntityID: ").append(receivingEntityID).append("\n");
+    sb.append(" requestID: ").append(requestID).append("\n");
+    sb.append(" requiredReliabilityService: ").append(requiredReliabilityService).append("\n");
+    sb.append(" transferType: ").append(transferType).append("\n");
+    sb.append(" transferEntityID: ").append(transferEntityID).append("\n");
+    sb.append(" recordSets: ").append(recordSets).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/TransmitterPdu.java b/src-generated/edu/nps/moves/dis7/TransmitterPdu.java
index 3c8ce55e8d26f26d793410fcebbe4a4115915f4c..42c3fa2be4a0ea7a63ef1262a8efbf4ea3c311e2 100644
--- a/src-generated/edu/nps/moves/dis7/TransmitterPdu.java
+++ b/src-generated/edu/nps/moves/dis7/TransmitterPdu.java
@@ -593,7 +593,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -633,4 +633,35 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" header: ").append(header).append("\n");
+    sb.append(" radioNumber: ").append(radioNumber).append("\n");
+    sb.append(" radioEntityType: ").append(radioEntityType).append("\n");
+    sb.append(" transmitState: ").append(transmitState).append("\n");
+    sb.append(" inputSource: ").append(inputSource).append("\n");
+    sb.append(" variableTransmitterParameterCount: ").append(variableTransmitterParameterCount).append("\n");
+    sb.append(" antennaLocation: ").append(antennaLocation).append("\n");
+    sb.append(" relativeAntennaLocation: ").append(relativeAntennaLocation).append("\n");
+    sb.append(" antennaPatternType: ").append(antennaPatternType).append("\n");
+    sb.append(" frequency: ").append(frequency).append("\n");
+    sb.append(" transmitFrequencyBandwidth: ").append(transmitFrequencyBandwidth).append("\n");
+    sb.append(" power: ").append(power).append("\n");
+    sb.append(" modulationType: ").append(modulationType).append("\n");
+    sb.append(" cryptoSystem: ").append(cryptoSystem).append("\n");
+    sb.append(" cryptoKeyId: ").append(cryptoKeyId).append("\n");
+    sb.append(" padding1: ").append(padding1).append("\n");
+    sb.append(" padding2: ").append(padding2).append("\n");
+    sb.append(" modulationParametersList: ").append("\n");
+    modulationParametersList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" antennaPatternList: ").append("\n");
+    antennaPatternList.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UABeam.java b/src-generated/edu/nps/moves/dis7/UABeam.java
index 49787625097e2eb9b60da638054f9e276fe02e3d..30e5059f22a6fb7e236e5eed76c8766fdf59e3a7 100644
--- a/src-generated/edu/nps/moves/dis7/UABeam.java
+++ b/src-generated/edu/nps/moves/dis7/UABeam.java
@@ -185,7 +185,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -209,4 +209,18 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (fundamentalParameterData.equals( rhs.fundamentalParameterData) )) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" beamDataLength: ").append(beamDataLength).append("\n");
+    sb.append(" beamNumber: ").append(beamNumber).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" fundamentalParameterData: ").append(fundamentalParameterData).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UAEmitter.java b/src-generated/edu/nps/moves/dis7/UAEmitter.java
index d835976fff55ff340c5929de3d2bf25b07068fab..b1372dad1254b5d7a226251cd923f8b67c24f876 100644
--- a/src-generated/edu/nps/moves/dis7/UAEmitter.java
+++ b/src-generated/edu/nps/moves/dis7/UAEmitter.java
@@ -245,7 +245,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -273,4 +273,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" systemDataLength: ").append(systemDataLength).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+    sb.append(" acousticEmitter: ").append(acousticEmitter).append("\n");
+    sb.append(" location: ").append(location).append("\n");
+    sb.append(" beams: ").append("\n");
+    beams.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UAFundamentalParameter.java b/src-generated/edu/nps/moves/dis7/UAFundamentalParameter.java
index 1b46ce4ae550627bb43e2af70c3b15e347d20c59..a8887776a99f67b847dea821764e643e1bfd9b92 100644
--- a/src-generated/edu/nps/moves/dis7/UAFundamentalParameter.java
+++ b/src-generated/edu/nps/moves/dis7/UAFundamentalParameter.java
@@ -235,7 +235,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -261,4 +261,20 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (depressionElevationBeamWidth == rhs.depressionElevationBeamWidth)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" activeEmissionParameterIndex: ").append(activeEmissionParameterIndex).append("\n");
+    sb.append(" scanPattern: ").append(scanPattern).append("\n");
+    sb.append(" beamCenterAzimuthHorizontal: ").append(beamCenterAzimuthHorizontal).append("\n");
+    sb.append(" azimuthalBeamwidthHorizontal: ").append(azimuthalBeamwidthHorizontal).append("\n");
+    sb.append(" beamCenterDepressionElevation: ").append(beamCenterDepressionElevation).append("\n");
+    sb.append(" depressionElevationBeamWidth: ").append(depressionElevationBeamWidth).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UnattachedIdentifier.java b/src-generated/edu/nps/moves/dis7/UnattachedIdentifier.java
index 565d436e57a1915bea107bb48e0cf0e8cd8dec2f..af25d385134f5f72ebdfc6ada96fa6ee570132e5 100644
--- a/src-generated/edu/nps/moves/dis7/UnattachedIdentifier.java
+++ b/src-generated/edu/nps/moves/dis7/UnattachedIdentifier.java
@@ -146,7 +146,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -168,4 +168,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (referenceNumber == rhs.referenceNumber)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" simulationAddress: ").append(simulationAddress).append("\n");
+    sb.append(" referenceNumber: ").append(referenceNumber).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UnderwaterAcousticPdu.java b/src-generated/edu/nps/moves/dis7/UnderwaterAcousticPdu.java
index f2b8a99becf05fc2a192721488a8d200fb1c6b96..83d21935480c771688d9fbacecb8517a1e4c612a 100644
--- a/src-generated/edu/nps/moves/dis7/UnderwaterAcousticPdu.java
+++ b/src-generated/edu/nps/moves/dis7/UnderwaterAcousticPdu.java
@@ -414,7 +414,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -447,4 +447,26 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" emittingEntityID: ").append(emittingEntityID).append("\n");
+    sb.append(" eventID: ").append(eventID).append("\n");
+    sb.append(" stateChangeIndicator: ").append(stateChangeIndicator).append("\n");
+    sb.append(" pad: ").append(pad).append("\n");
+    sb.append(" passiveParameterIndex: ").append(passiveParameterIndex).append("\n");
+    sb.append(" propulsionPlantConfiguration: ").append(propulsionPlantConfiguration).append("\n");
+    sb.append(" shaftRPMs: ").append("\n");
+    shaftRPMs.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" apaData: ").append("\n");
+    apaData.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+    sb.append(" emitterSystems: ").append("\n");
+    emitterSystems.forEach(r->{ sb.append(r.getClass().getSimpleName()).append(": ").append(r).append("\n");});
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/UnsignedDISInteger.java b/src-generated/edu/nps/moves/dis7/UnsignedDISInteger.java
index 15e028e517ffa298503acfd455c6da485261e9b9..385da035e7d44ae11893da3f021330c218297d70 100644
--- a/src-generated/edu/nps/moves/dis7/UnsignedDISInteger.java
+++ b/src-generated/edu/nps/moves/dis7/UnsignedDISInteger.java
@@ -125,7 +125,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -146,4 +146,15 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (val == rhs.val)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" val: ").append(val).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/VariableDatum.java b/src-generated/edu/nps/moves/dis7/VariableDatum.java
index bcd0952b81a7e561691d7c5fe5107c4be5d78f71..4fabe42812474f9e9c0ac9ad8f7c7884dee3f36f 100644
--- a/src-generated/edu/nps/moves/dis7/VariableDatum.java
+++ b/src-generated/edu/nps/moves/dis7/VariableDatum.java
@@ -72,16 +72,32 @@ public class VariableDatum extends Object implements Serializable
    * Setter for {@link VariableDatum#variableDatumLength}
    * <p>
    * This value is the size IN BITS of the {@link VariableDatum#variableDatumValue} field. Since that field
-   * is a byte array, its size must be large enough to contain the specified number of bits. If this size is NOT
-   * set and this pdu is issued (marshaled), the value used for this field will be the size of the byte
-   * array times 8.
+   * is a byte array, its size must be large enough to contain the specified number of bits. If
+   * {@link VariableDatum#variableDatumValue} is NOT
+   * set and this pdu is issued (marshaled), the value used when marshaling this field will be
+   * the size of the byte array times 8.
    */
-  public VariableDatum setVariableDatumLength(int pVariableDatumLength)
+  public VariableDatum setVariableDatumLengthInBits(int bitLength)
   {
-    variableDatumLength = pVariableDatumLength;
+    variableDatumLength = bitLength;
     return this;
   }
 
+ /**
+   * Setter for {@link VariableDatum#variableDatumLength}
+   * <p>
+   * This value is the size in bytes of the {@link VariableDatum#variableDatumValue} field. Since that field
+   * is a byte array, its size must be large enough to contain the value specified here. If
+   * {@link VariableDatum#variableDatumValue} is NOT
+   * set and this pdu is issued (marshaled), the value used when marshaling this field will be
+   * the size of the byte array times 8.
+   */
+  public VariableDatum setVariableDatumLengthInBytes(int byteLength)
+  {
+    variableDatumLength = byteLength * Byte.SIZE;
+    return this;
+  }
+  
   /**
    * Getter for {@link VariableDatum#variableDatumLength}
    */
diff --git a/src-generated/edu/nps/moves/dis7/VariableParameter.java b/src-generated/edu/nps/moves/dis7/VariableParameter.java
index ed154d89bc8847add2bd66dea5a6dd772759951c..0deb2fb6bfdf84ee4532eb49f5bb6f2c8e5ed6f6 100644
--- a/src-generated/edu/nps/moves/dis7/VariableParameter.java
+++ b/src-generated/edu/nps/moves/dis7/VariableParameter.java
@@ -155,7 +155,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -182,4 +182,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/VariableTransmitterParameters.java b/src-generated/edu/nps/moves/dis7/VariableTransmitterParameters.java
index e06af319ef6c0d24da83b8bbc1700d8ac7487b64..c1e60ee4725c5488afccb45e55bda6d1d3717d54 100644
--- a/src-generated/edu/nps/moves/dis7/VariableTransmitterParameters.java
+++ b/src-generated/edu/nps/moves/dis7/VariableTransmitterParameters.java
@@ -184,7 +184,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -212,4 +212,19 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" recordType: ").append(recordType).append("\n");
+    sb.append(" recordLength: ").append(recordLength).append("\n");
+    sb.append(" recordSpecificFields: ").append("\n");
+    sb.append(Arrays.toString(recordSpecificFields)).append("\n");
+    sb.append(" padding: ").append(padding).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Vector2Float.java b/src-generated/edu/nps/moves/dis7/Vector2Float.java
index 0c61ab4133639d5597c60eb47d358cf3def47b3b..e742a262259ec935e67fcc0f47a3f5cddde03d61 100644
--- a/src-generated/edu/nps/moves/dis7/Vector2Float.java
+++ b/src-generated/edu/nps/moves/dis7/Vector2Float.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (y == rhs.y)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" x: ").append(x).append("\n");
+    sb.append(" y: ").append(y).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Vector3Double.java b/src-generated/edu/nps/moves/dis7/Vector3Double.java
index b4d48678ad3fedf018747c804159277c2182d9eb..a707b66257eebaaae677ceb1d5240a74217af9b8 100644
--- a/src-generated/edu/nps/moves/dis7/Vector3Double.java
+++ b/src-generated/edu/nps/moves/dis7/Vector3Double.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (z == rhs.z)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" x: ").append(x).append("\n");
+    sb.append(" y: ").append(y).append("\n");
+    sb.append(" z: ").append(z).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/Vector3Float.java b/src-generated/edu/nps/moves/dis7/Vector3Float.java
index d48b2470fd426919202a9301aa9e6f33f951f11f..7e3e67615fa9f908ce8179b804826b5849ff31b2 100644
--- a/src-generated/edu/nps/moves/dis7/Vector3Float.java
+++ b/src-generated/edu/nps/moves/dis7/Vector3Float.java
@@ -169,7 +169,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -192,4 +192,17 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (z == rhs.z)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" x: ").append(x).append("\n");
+    sb.append(" y: ").append(y).append("\n");
+    sb.append(" z: ").append(z).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/VectoringNozzleSystem.java b/src-generated/edu/nps/moves/dis7/VectoringNozzleSystem.java
index 9bd9fdb07d434ee496760f9755b6ba0e8ee1e9f1..a742e5aa8e6485ed54cfd4d8fa739b9c09f95a79 100644
--- a/src-generated/edu/nps/moves/dis7/VectoringNozzleSystem.java
+++ b/src-generated/edu/nps/moves/dis7/VectoringNozzleSystem.java
@@ -147,7 +147,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -169,4 +169,16 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
      if( ! (verticalDeflectionAngle == rhs.verticalDeflectionAngle)) ivarsEqual = false;
     return ivarsEqual;
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+    sb.append(" horizontalDeflectionAngle: ").append(horizontalDeflectionAngle).append("\n");
+    sb.append(" verticalDeflectionAngle: ").append(verticalDeflectionAngle).append("\n");
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/WarfareFamilyPdu.java b/src-generated/edu/nps/moves/dis7/WarfareFamilyPdu.java
index f9a88fa84db75847a5f76779049ee86b4920b79b..c88a687625c4e185f0d0878c8aa7a8d3c09325a4 100644
--- a/src-generated/edu/nps/moves/dis7/WarfareFamilyPdu.java
+++ b/src-generated/edu/nps/moves/dis7/WarfareFamilyPdu.java
@@ -111,7 +111,7 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
     if(obj == null)
        return false;
 
-    if(getClass() != obj.getClass())
+    if(!getClass().isAssignableFrom(obj.getClass())) //if(getClass() != obj.getClass())
         return false;
 
     return equalsImpl(obj);
@@ -126,4 +126,14 @@ public int unmarshal(java.nio.ByteBuffer buff) throws Exception
 
     return ivarsEqual && super.equalsImpl(rhs);
  }
+
+ @Override
+ public String toString()
+ {
+    StringBuilder sb = new StringBuilder();
+    sb.append(getClass().getSimpleName()+":\n");
+
+
+   return sb.toString();
+ }
 } // end of class
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/APAParameterIndexAPAStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/APAParameterIndexAPAStatus.java
index d25a4d8dd089de0e520db1ad891b20fb4d876a31..9f1029c0b52415b80c2a860ea50d3dc006672384 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/APAParameterIndexAPAStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/APAParameterIndexAPAStatus.java
@@ -97,4 +97,10 @@ public enum APAParameterIndexAPAStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "APAParameterIndexAPAStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeAcknowledgeFlag.java b/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeAcknowledgeFlag.java
index b148f7f8276f8e59e5966275c36273b2dfb033a6..f22bb303ad1ebba4d5be82e5f4bdeef0794d7434 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeAcknowledgeFlag.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeAcknowledgeFlag.java
@@ -84,4 +84,10 @@ public enum AcknowledgeAcknowledgeFlag
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AcknowledgeAcknowledgeFlag: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeResponseFlag.java b/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeResponseFlag.java
index 6417687ec2fa48c77cbb16f5650354b5a1531cf7..770184e9b34ba65870feb1d71db161af5e292d43 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeResponseFlag.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AcknowledgeResponseFlag.java
@@ -82,4 +82,10 @@ public enum AcknowledgeResponseFlag
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AcknowledgeResponseFlag: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Acronyms.java b/src-generated/edu/nps/moves/dis7/enumerations/Acronyms.java
index d0245c64c1b3d14b579f339b4de318e8ec039a6b..ddd451753062d100fb26225961119299ed2d6a95 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Acronyms.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Acronyms.java
@@ -706,4 +706,10 @@ public enum Acronyms
     {
         return description;
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Acronyms: " + name();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ActionRequestActionID.java b/src-generated/edu/nps/moves/dis7/enumerations/ActionRequestActionID.java
index fac66d56ae3c6df897914696db0627bd012fb891..f30373b8b8fcea448bbae8f6298c5667b075d7cb 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ActionRequestActionID.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ActionRequestActionID.java
@@ -172,4 +172,10 @@ public enum ActionRequestActionID
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ActionRequestActionID: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ActionResponseRequestStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/ActionResponseRequestStatus.java
index 7bb52df589bc2e2f9123293935904f45c6095d24..4caa6a00f24b909fff0aa20eb7b8c9bafd0a5dc2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ActionResponseRequestStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ActionResponseRequestStatus.java
@@ -102,4 +102,10 @@ public enum ActionResponseRequestStatus
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ActionResponseRequestStatus: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AddSpecificDimensionEnumerationsforSubsurfaceAreaSize.java b/src-generated/edu/nps/moves/dis7/enumerations/AddSpecificDimensionEnumerationsforSubsurfaceAreaSize.java
index 703a1c4a5bfc6ea2f67928d004e3181c9d7b2f9a..df5242d1afd53cdf6827aa616a3a2e04c0e7194d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AddSpecificDimensionEnumerationsforSubsurfaceAreaSize.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AddSpecificDimensionEnumerationsforSubsurfaceAreaSize.java
@@ -103,4 +103,10 @@ public enum AddSpecificDimensionEnumerationsforSubsurfaceAreaSize
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AddSpecificDimensionEnumerationsforSubsurfaceAreaSize: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforAirCategory201Insect.java b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforAirCategory201Insect.java
index cf9d6dffee2db52077d5cd0194ee4d1b0dc615cb..2609ca3d2f653a731f9d1ab6d94a6db0d73b0047 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforAirCategory201Insect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforAirCategory201Insect.java
@@ -95,4 +95,10 @@ public enum AddVariantsforAirCategory201Insect
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AddVariantsforAirCategory201Insect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforLandCategory200Mammal.java b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforLandCategory200Mammal.java
index 3fa78d68ed7996509b6454c31e30fa18530a5054..3fdf1791062d979608152c4fc8bdaffa1d31d864 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforLandCategory200Mammal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforLandCategory200Mammal.java
@@ -101,4 +101,10 @@ public enum AddVariantsforLandCategory200Mammal
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AddVariantsforLandCategory200Mammal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect.java b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect.java
index 014e5c348a5b8f79827b190f4de2b666ad8c1bfd..c7fe41cbe78af807b43161f30f0fae0fbe7df2e4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect.java
@@ -105,4 +105,10 @@ public enum AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AddVariantsforSubsurfaceCategoriesFishMolluskCrustaceanandInsect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateKind.java b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateKind.java
index 443d4028806316a74025edc1626f715f991c3f11..732b9e1f16259faf4a8cea25f6e9edf64572bb88 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateKind.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateKind.java
@@ -101,4 +101,10 @@ public enum AggregateStateAggregateKind
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AggregateStateAggregateKind: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateState.java b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateState.java
index 7ca3b9fcab04009cfdebb42ce2a54ba28ef2e8c5..95aec001fd130a247768eb9d4b467cdd730dcc7f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateAggregateState.java
@@ -101,4 +101,10 @@ public enum AggregateStateAggregateState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AggregateStateAggregateState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateFormation.java b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateFormation.java
index 58585e4367523419578e6dafb91f4d476d5713a5..2943e07e982012932313493ed1f09247d30dfe31 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateFormation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateFormation.java
@@ -86,4 +86,10 @@ public enum AggregateStateFormation
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AggregateStateFormation: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSpecific.java b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSpecific.java
index 1fe6f72dac5a00690aafd6e9bfba800fa56cfc0e..0a8f49e1128abdf687d5bcd70505a857dd5bdf07 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSpecific.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSpecific.java
@@ -93,4 +93,10 @@ public enum AggregateStateSpecific
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AggregateStateSpecific: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSubcategory.java b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSubcategory.java
index 121512516fcb8833ab2682b09698f33a61768970..83f9e794b624af57166dce4b327f65a0fc23be08 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSubcategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AggregateStateSubcategory.java
@@ -135,4 +135,10 @@ public enum AggregateStateSubcategory implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AggregateStateSubcategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformAppearance.java
index 0ba9c73f47f7bf62bda14af9fd9520c0684ad05c..e86b5943be935e7cf39fd35124a62a8f9cd323cf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformAppearance.java
@@ -185,4 +185,10 @@ public class AirPlatformAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "AirPlatformAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformCapabilities.java
index 91707262c0f411791b76126f6b1af808248e2e09..84b8844f1b41c14433d1f77b1a0daaec2e6faf2b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AirPlatformCapabilities.java
@@ -113,4 +113,10 @@ public class AirPlatformCapabilities extends DisBitSet implements EntityCapabili
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "AirPlatformCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AircraftAddressSource.java b/src-generated/edu/nps/moves/dis7/enumerations/AircraftAddressSource.java
index e21c456e97023073d6e9162c7aaf3aa794e1b204..f1a5f76a989d0919ee3964cd6e6fa467d49d6980 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AircraftAddressSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AircraftAddressSource.java
@@ -93,4 +93,10 @@ public enum AircraftAddressSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AircraftAddressSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AircraftIdentificationType.java b/src-generated/edu/nps/moves/dis7/enumerations/AircraftIdentificationType.java
index add60dc139fe72b4afc28d0ef543982d40ab44f2..a6536b9d158829bf69d19cdd99b033b0ede1604c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AircraftIdentificationType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AircraftIdentificationType.java
@@ -95,4 +95,10 @@ public enum AircraftIdentificationType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AircraftIdentificationType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AircraftPresentDomain.java b/src-generated/edu/nps/moves/dis7/enumerations/AircraftPresentDomain.java
index e6e3bcb13e5cbc0a37c9846ded003933eb0895d1..3379372a694a60743e422c3614d0971ce0197aef 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AircraftPresentDomain.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AircraftPresentDomain.java
@@ -95,4 +95,10 @@ public enum AircraftPresentDomain
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AircraftPresentDomain: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AircraftTypeWake.java b/src-generated/edu/nps/moves/dis7/enumerations/AircraftTypeWake.java
index 476407d37dd3c94f789a112d8b416463f0f60a6e..e0cadf4d9b3bad03c7a143c027b3ae0e567853ed 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AircraftTypeWake.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AircraftTypeWake.java
@@ -91,4 +91,10 @@ public enum AircraftTypeWake
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AircraftTypeWake: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AnimalLifeformGroupSizeRangeEnumerationforallDomains.java b/src-generated/edu/nps/moves/dis7/enumerations/AnimalLifeformGroupSizeRangeEnumerationforallDomains.java
index e6c21d875359691f7648d7cd37a8e3a8080f2224..9f46f23b3e7cd0f928eaf577cfc0a18483a8b1f6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AnimalLifeformGroupSizeRangeEnumerationforallDomains.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AnimalLifeformGroupSizeRangeEnumerationforallDomains.java
@@ -119,4 +119,10 @@ public enum AnimalLifeformGroupSizeRangeEnumerationforallDomains
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AnimalLifeformGroupSizeRangeEnumerationforallDomains: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AntennaSelection.java b/src-generated/edu/nps/moves/dis7/enumerations/AntennaSelection.java
index bafea7ba5265561929c3b6c54661f2f5283d2d08..a2f58b7799d09c58b06ba36b584f7933a488e76a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AntennaSelection.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AntennaSelection.java
@@ -97,4 +97,10 @@ public enum AntennaSelection
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AntennaSelection: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AntennaStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/AntennaStatus.java
index 089a00b379952761f47ee87d217bd52db575f832..0d74542c8b34ce0401bab91a3a26d9b46ce95965 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AntennaStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AntennaStatus.java
@@ -95,4 +95,10 @@ public enum AntennaStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AntennaStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceAntiCollisionDayNight.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceAntiCollisionDayNight.java
index d849c3e4e462269f2413cd1645bc0495b26189ee..833be083441984dc7d0f998de75c0f5a44e1c3cf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceAntiCollisionDayNight.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceAntiCollisionDayNight.java
@@ -93,4 +93,10 @@ public enum AppearanceAntiCollisionDayNight
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceAntiCollisionDayNight: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCamouflageType.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCamouflageType.java
index 5135b7a922c1bc6b34ff70f74b00350b1cf206a5..25187334df314312c488edd7044c9efe708a56d3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCamouflageType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCamouflageType.java
@@ -97,4 +97,10 @@ public enum AppearanceCamouflageType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceCamouflageType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCanopy.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCanopy.java
index 4c45a5553e3162b115ac7e246d7fd2653ee1ca23..00102d0926ea0c3b9d540c21e609e41c28dbf357 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCanopy.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceCanopy.java
@@ -103,4 +103,10 @@ public enum AppearanceCanopy
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceCanopy: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedMovement.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedMovement.java
index dee87ff38a448ba950e8cdc39bae174c726df95a..d04878ef6069332700d4094fede1f39ac5f1e9fe 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedMovement.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedMovement.java
@@ -93,4 +93,10 @@ public enum AppearanceConcealedMovement
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceConcealedMovement: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedPosition.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedPosition.java
index 65d1773e4368637066063986282cdce6f4b800d9..b761a8ce63f21726e943e2c72b86a0b1afd86f6a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedPosition.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceConcealedPosition.java
@@ -93,4 +93,10 @@ public enum AppearanceConcealedPosition
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceConcealedPosition: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceDamage.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceDamage.java
index 33780aa03517ecd8a80083301585bd0c4869bfc0..aa380e21eb0ccbba77a1e787aabed2898efb20cf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceDamage.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceDamage.java
@@ -97,4 +97,10 @@ public enum AppearanceDamage
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceDamage: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEntityorObjectState.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEntityorObjectState.java
index c913629a80949675f8a3499451208e1019b8bcbb..90e977dff94824b23b30c909dd75b80f070116f7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEntityorObjectState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEntityorObjectState.java
@@ -93,4 +93,10 @@ public enum AppearanceEntityorObjectState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceEntityorObjectState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEnvironmentalDensity.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEnvironmentalDensity.java
index 249e00ed01f819b892c318d86b4fbbd399e0f263..828f6287c9bc0e1070554a8a13eb8f28cbf6a53b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEnvironmentalDensity.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceEnvironmentalDensity.java
@@ -99,4 +99,10 @@ public enum AppearanceEnvironmentalDensity
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceEnvironmentalDensity: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceHatch.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceHatch.java
index 55cde9d862cdaa59b617c72d1c9cbb7e8408fba2..e135afc7ed53b9a7fd0c1d4108cac33e6467eb8d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceHatch.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceHatch.java
@@ -101,4 +101,10 @@ public enum AppearanceHatch
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceHatch: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLauncherOperational.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLauncherOperational.java
index f9483ab201f963c6c0d29a553e8e3ee2f3dd7349..6eb501cf459def7e08bbeee668f329dd4e2d2162 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLauncherOperational.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLauncherOperational.java
@@ -93,4 +93,10 @@ public enum AppearanceLauncherOperational
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLauncherOperational: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormComplianceStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormComplianceStatus.java
index 6ea78ea78a9ae17eb6d06f6f6c075cab6f40c4ef..1a42ce9677d160aca617e7fb40d5cfa8832be770 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormComplianceStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormComplianceStatus.java
@@ -121,4 +121,10 @@ public enum AppearanceLifeFormComplianceStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLifeFormComplianceStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormPosture.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormPosture.java
index 8e0415387832bde7f3c6a20ddcfa62adbffcf921..9ba12bb0d1652dea6421577381f46ceff403579e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormPosture.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormPosture.java
@@ -121,4 +121,10 @@ public enum AppearanceLifeFormPosture
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLifeFormPosture: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormWeaponImplement.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormWeaponImplement.java
index da6408abe3b1e7758984ad9b0988bf14b1c86a64..714f206c02eb85f798fbb96ffc03f30de0cc5d91 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormWeaponImplement.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeFormWeaponImplement.java
@@ -97,4 +97,10 @@ public enum AppearanceLifeFormWeaponImplement
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLifeFormWeaponImplement: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeformHealth.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeformHealth.java
index c5aa7f2d895c9c36353976fea9043f3c968df731..9cc357ff71b04e3402fed35b26a85dd5e83f829b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeformHealth.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLifeformHealth.java
@@ -97,4 +97,10 @@ public enum AppearanceLifeformHealth
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLifeformHealth: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectLaneMarkerVisible.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectLaneMarkerVisible.java
index cc12587842192bdd854e6547dd69e64d77face48..d103095f37c728ea173933b859b42e9f8d7917a9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectLaneMarkerVisible.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectLaneMarkerVisible.java
@@ -95,4 +95,10 @@ public enum AppearanceLinearObjectLaneMarkerVisible
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLinearObjectLaneMarkerVisible: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectTankDitchBreach.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectTankDitchBreach.java
index 7ebb8f742854b75673ebc5c835c87951fb772920..709977cb70e84d664969e13ea4c2225951fb37cb 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectTankDitchBreach.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceLinearObjectTankDitchBreach.java
@@ -97,4 +97,10 @@ public enum AppearanceLinearObjectTankDitchBreach
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceLinearObjectTankDitchBreach: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNVGMode.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNVGMode.java
index d7a9250ed88203cc74b5e75dc0a4a77ec808dbb9..e2928c28e14d98100010532a872062f29ac1ad9b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNVGMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNVGMode.java
@@ -93,4 +93,10 @@ public enum AppearanceNVGMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceNVGMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNavigationPositionBrightness.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNavigationPositionBrightness.java
index e73ad853f63ac99b98b0c9004a6f0b5ff8ccbd82..54831a99d604efe009f622869767337b2a8345b3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNavigationPositionBrightness.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceNavigationPositionBrightness.java
@@ -93,4 +93,10 @@ public enum AppearanceNavigationPositionBrightness
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceNavigationPositionBrightness: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralDamage.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralDamage.java
index 701128c887e52a60135d897c795f0defb5c6e91d..202369ff6acc122ddbcf881a970d9737b4eb5e06 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralDamage.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralDamage.java
@@ -95,4 +95,10 @@ public enum AppearanceObjectGeneralDamage
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceObjectGeneralDamage: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralIEDPresent.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralIEDPresent.java
index c26973a1ae80bf2e5bcae97beb621e07503a41aa..ac59c3686a92a6e2b1cacdda9092fe4396bcd8e8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralIEDPresent.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralIEDPresent.java
@@ -97,4 +97,10 @@ public enum AppearanceObjectGeneralIEDPresent
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceObjectGeneralIEDPresent: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralPredistributed.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralPredistributed.java
index 71e62cdc49fa4513aadc5e3355dd6259dd3133db..e17002224708266f898ef8ec40bbeac7b09056e3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralPredistributed.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectGeneralPredistributed.java
@@ -93,4 +93,10 @@ public enum AppearanceObjectGeneralPredistributed
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceObjectGeneralPredistributed: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificBreachState.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificBreachState.java
index 5274ea8c8bd1ee64456e393b17863d0e708c6976..41f10dd9aca85b77a78431ae5174f2dc20bd38ab 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificBreachState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificBreachState.java
@@ -95,4 +95,10 @@ public enum AppearanceObjectSpecificBreachState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceObjectSpecificBreachState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificChemicalType.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificChemicalType.java
index 4d0f5ca7c28f836bf78ec06e040d441189bfd53b..e1ba1b03b157dc4037ea36e41c0f35344f878d02 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificChemicalType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceObjectSpecificChemicalType.java
@@ -97,4 +97,10 @@ public enum AppearanceObjectSpecificChemicalType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceObjectSpecificChemicalType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearancePaintScheme.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearancePaintScheme.java
index 25677627dcdc1dff809c51d7f9b86cbb2ba772d5..7847b3786c4cc67d59c4b79540ad4b3e5e870402 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearancePaintScheme.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearancePaintScheme.java
@@ -93,4 +93,10 @@ public enum AppearancePaintScheme
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearancePaintScheme: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSubsurfaceHatch.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSubsurfaceHatch.java
index d56df5e01486a22f0dc74aa5ea04c9f49cbf2f3c..27c3c866d030ae0ee9d69c0da36279d4eafe89ff 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSubsurfaceHatch.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSubsurfaceHatch.java
@@ -95,4 +95,10 @@ public enum AppearanceSubsurfaceHatch
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceSubsurfaceHatch: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSupplyDeployed.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSupplyDeployed.java
index 51f61a18a47d5d5d78ac63bd634d8bea890c3368..34ba698763cc65033d3ed1ebb95b8729ba57157a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSupplyDeployed.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceSupplyDeployed.java
@@ -97,4 +97,10 @@ public enum AppearanceSupplyDeployed
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceSupplyDeployed: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceTrailingEffects.java b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceTrailingEffects.java
index fe4a063adb836da5fa837f960ae382462271675e..073e7425f5a1bb91bea76caf359e9b37bf8f0915 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AppearanceTrailingEffects.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AppearanceTrailingEffects.java
@@ -97,4 +97,10 @@ public enum AppearanceTrailingEffects
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AppearanceTrailingEffects: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ArealObjectAppearanceMinefield.java b/src-generated/edu/nps/moves/dis7/enumerations/ArealObjectAppearanceMinefield.java
index 3dce38272549effda51dce60fc326783c3f467e3..a024109aeea4e6e4cdbf5539ef50960db5c7252f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ArealObjectAppearanceMinefield.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ArealObjectAppearanceMinefield.java
@@ -81,4 +81,10 @@ public class ArealObjectAppearanceMinefield extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ArealObjectAppearanceMinefield: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeClass.java b/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeClass.java
index fbcfc016a1b64e43de4ec8455e75f9018506b006..1a2ecfde5d3be036d5a7a097898b961531f7a26e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeClass.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeClass.java
@@ -528,4 +528,10 @@ public enum ArticulatedPartsTypeClass
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ArticulatedPartsTypeClass: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeMetric.java b/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeMetric.java
index 9b8d1cfd46c04739b6b55b254ba04337448ede04..7b1e38a399fe0c5ef48d7aa933f859b46bba1453 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeMetric.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ArticulatedPartsTypeMetric.java
@@ -123,4 +123,10 @@ public enum ArticulatedPartsTypeMetric
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ArticulatedPartsTypeMetric: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AttachedPartDetachedIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/AttachedPartDetachedIndicator.java
index 03efe5a25f00376e7a0c690e32782262a1cb60ea..b1af4dc8b9c65b765f2d296c115f56602929d33d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AttachedPartDetachedIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AttachedPartDetachedIndicator.java
@@ -93,4 +93,10 @@ public enum AttachedPartDetachedIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AttachedPartDetachedIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AttachedParts.java b/src-generated/edu/nps/moves/dis7/enumerations/AttachedParts.java
index 433e613608a498567b5679f07568decb2e96e8cb..dca5e21a7eb2eb1fb52211a0db4a0ad9478f8b8c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AttachedParts.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AttachedParts.java
@@ -96,4 +96,10 @@ public enum AttachedParts
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AttachedParts: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/AustralianCategoryOverlay.java b/src-generated/edu/nps/moves/dis7/enumerations/AustralianCategoryOverlay.java
index e070640379580f89986b4e92a5e5bc9b79be994d..a3dfa3f50d4bbfaa8bd13773b813be494b937bed 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/AustralianCategoryOverlay.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/AustralianCategoryOverlay.java
@@ -101,4 +101,10 @@ public enum AustralianCategoryOverlay
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "AustralianCategoryOverlay: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/BeamStatusBeamState.java b/src-generated/edu/nps/moves/dis7/enumerations/BeamStatusBeamState.java
index c318f092c6455e8b38374f2f04895fef4231e977..d8a64ac577ebf053d57c18c663794382d3698a34 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/BeamStatusBeamState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/BeamStatusBeamState.java
@@ -93,4 +93,10 @@ public enum BeamStatusBeamState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "BeamStatusBeamState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/BuildingPaintScheme.java b/src-generated/edu/nps/moves/dis7/enumerations/BuildingPaintScheme.java
index 50f9ba6959a122b78ffbcbbd72eddb75a7326d8f..8a18bffd9a01425357f80a5774ea68225d22a730 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/BuildingPaintScheme.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/BuildingPaintScheme.java
@@ -91,4 +91,10 @@ public enum BuildingPaintScheme
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "BuildingPaintScheme: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSClearChannel.java b/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSClearChannel.java
index 8eb661ca7272d0827098efd668c8bdce22726382..a9bbd25d0f861cb92759e0ea81c4300e0a5f5e8d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSClearChannel.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSClearChannel.java
@@ -93,4 +93,10 @@ public enum CCTTSINCGARSClearChannel
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CCTTSINCGARSClearChannel: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSStartofMessage.java b/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSStartofMessage.java
index 5221a933ae200c9b00f040baae1149f869218e34..b10996168b72f76860b5849bea61662bcf985a01 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSStartofMessage.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CCTTSINCGARSStartofMessage.java
@@ -93,4 +93,10 @@ public enum CCTTSINCGARSStartofMessage
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CCTTSINCGARSStartofMessage: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CIGIExtensionPacketID.java b/src-generated/edu/nps/moves/dis7/enumerations/CIGIExtensionPacketID.java
index e21ca5d998e4abe9b2aebf21fc095067cbab409c..94bed43960a0f1e3a8f48226160a7f270f99bea9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CIGIExtensionPacketID.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CIGIExtensionPacketID.java
@@ -80,4 +80,10 @@ public enum CIGIExtensionPacketID
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CIGIExtensionPacketID: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CapabilityReport.java b/src-generated/edu/nps/moves/dis7/enumerations/CapabilityReport.java
index c3070684a7c8473c85d3e30bdc59f12f6037f29a..9a952d1c45fb3c95a7be36e4d8622ba2bc3dfc46 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CapabilityReport.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CapabilityReport.java
@@ -107,4 +107,10 @@ public enum CapabilityReport
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CapabilityReport: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms.java b/src-generated/edu/nps/moves/dis7/enumerations/Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms.java
index 6505c1eb508c792fa6fb7fba1c9850abcfb0b3ed..0747e1a1a32c83c1e6bfb10d9d386810900a57a5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms.java
@@ -91,4 +91,10 @@ public enum Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms implements
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class10SupplyCategoryMaterialtoSupportNonMilitaryPrograms: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class11SupplyCategorySuppliesNonDoctrinal.java b/src-generated/edu/nps/moves/dis7/enumerations/Class11SupplyCategorySuppliesNonDoctrinal.java
index 5de57e02e0d79bb47c5573553751e692eed7e295..24c06fcb37402d0a5af6e6a8331c6e1020e69cd8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class11SupplyCategorySuppliesNonDoctrinal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class11SupplyCategorySuppliesNonDoctrinal.java
@@ -99,4 +99,10 @@ public enum Class11SupplyCategorySuppliesNonDoctrinal implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class11SupplyCategorySuppliesNonDoctrinal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class12SupplyCategorySlingLoadsNonDoctrinal.java b/src-generated/edu/nps/moves/dis7/enumerations/Class12SupplyCategorySlingLoadsNonDoctrinal.java
index 86fb0292a6dd48b6d9b9d54e38da02152c7ceb14..871beace03ee863bda778c39307cd2263b607256 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class12SupplyCategorySlingLoadsNonDoctrinal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class12SupplyCategorySlingLoadsNonDoctrinal.java
@@ -111,4 +111,10 @@ public enum Class12SupplyCategorySlingLoadsNonDoctrinal implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class12SupplyCategorySlingLoadsNonDoctrinal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class1SupplyCategorySubsistence.java b/src-generated/edu/nps/moves/dis7/enumerations/Class1SupplyCategorySubsistence.java
index aef0dd71eadc4d1fa0920ff778f053018e7f47a9..c9a58b60eb383ec33083ed8206a5e82b3d9b85e0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class1SupplyCategorySubsistence.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class1SupplyCategorySubsistence.java
@@ -101,4 +101,10 @@ public enum Class1SupplyCategorySubsistence implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class1SupplyCategorySubsistence: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies.java b/src-generated/edu/nps/moves/dis7/enumerations/Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies.java
index cd69ddaa142c4534ab78bfee960eebca73f36b82..7f6331d8589f7915b0d9401a62abc9c3ce0f7cae 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies.java
@@ -105,4 +105,10 @@ public enum Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies im
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class2SupplyCategoryClothingIndividualEquipmentToolsAdminSupplies: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class3SupplyCategoryPetroleumOilsLubricants.java b/src-generated/edu/nps/moves/dis7/enumerations/Class3SupplyCategoryPetroleumOilsLubricants.java
index dbbf622e7abbb3d763b559a803df6063f2765a72..5c2ac08035222907a67abeb6f8476614b6114906 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class3SupplyCategoryPetroleumOilsLubricants.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class3SupplyCategoryPetroleumOilsLubricants.java
@@ -97,4 +97,10 @@ public enum Class3SupplyCategoryPetroleumOilsLubricants implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class3SupplyCategoryPetroleumOilsLubricants: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class4SupplyCategoryConstructionMaterials.java b/src-generated/edu/nps/moves/dis7/enumerations/Class4SupplyCategoryConstructionMaterials.java
index 0dfeca49d20f3a72f7539b330029940990b598ec..4241a1b221e9dd1c3445519260718cc2bb1b9089 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class4SupplyCategoryConstructionMaterials.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class4SupplyCategoryConstructionMaterials.java
@@ -95,4 +95,10 @@ public enum Class4SupplyCategoryConstructionMaterials implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class4SupplyCategoryConstructionMaterials: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class6SupplyCategoryPersonnelDemandItems.java b/src-generated/edu/nps/moves/dis7/enumerations/Class6SupplyCategoryPersonnelDemandItems.java
index 4bbe46f6309cb1e030f75a6bc4be93959fe61632..03786e3608e39c2653dff7560212d22349e40643 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class6SupplyCategoryPersonnelDemandItems.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class6SupplyCategoryPersonnelDemandItems.java
@@ -91,4 +91,10 @@ public enum Class6SupplyCategoryPersonnelDemandItems implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class6SupplyCategoryPersonnelDemandItems: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class7SupplyCategoryMajorItems.java b/src-generated/edu/nps/moves/dis7/enumerations/Class7SupplyCategoryMajorItems.java
index 08a246ece2b6f7619dc829cdb3e5c816123b0f5a..8bba754562a8af8edad5edf2ba1c855e0725e98d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class7SupplyCategoryMajorItems.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class7SupplyCategoryMajorItems.java
@@ -135,4 +135,10 @@ public enum Class7SupplyCategoryMajorItems implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class7SupplyCategoryMajorItems: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class8SupplyCategoryMedicalMaterial.java b/src-generated/edu/nps/moves/dis7/enumerations/Class8SupplyCategoryMedicalMaterial.java
index 8d277576caa217fb738bb6f0bf3d91acc7a3fff3..8c2a1c8eaacf8707ef264ac26673bd11565eccc3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class8SupplyCategoryMedicalMaterial.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class8SupplyCategoryMedicalMaterial.java
@@ -95,4 +95,10 @@ public enum Class8SupplyCategoryMedicalMaterial implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class8SupplyCategoryMedicalMaterial: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Class9SupplyCategoryRepairPartsandComponents.java b/src-generated/edu/nps/moves/dis7/enumerations/Class9SupplyCategoryRepairPartsandComponents.java
index 91c3b87158083a36c0fb4e21136686e146da16a8..39047ed5695bc48d7f3a7830a039674f28f715b1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Class9SupplyCategoryRepairPartsandComponents.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Class9SupplyCategoryRepairPartsandComponents.java
@@ -109,4 +109,10 @@ public enum Class9SupplyCategoryRepairPartsandComponents implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Class9SupplyCategoryRepairPartsandComponents: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CollisionType.java b/src-generated/edu/nps/moves/dis7/enumerations/CollisionType.java
index 70ba60ed053193fb21185c0d8951184d4d686ebe..e7da3af1b4da6dec6616643f2d012e67fcad66e8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CollisionType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CollisionType.java
@@ -95,4 +95,10 @@ public enum CollisionType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CollisionType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Color.java b/src-generated/edu/nps/moves/dis7/enumerations/Color.java
index 261601d0aabd4fa6aeb9f85d76b03664cf52e102..407da6142a292429eb338fe505c3bcf840d03ed9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Color.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Color.java
@@ -411,4 +411,10 @@ public enum Color
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Color: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSmoke.java b/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSmoke.java
index dae8ff1337c95fbf5364b44dc728f0145125ae9d..b93ab4db90755af2726d5a8074d815e4d41653e7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSmoke.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSmoke.java
@@ -97,4 +97,10 @@ public enum ComponentVisualDamageStatusSmoke
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ComponentVisualDamageStatusSmoke: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSurfaceDamage.java b/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSurfaceDamage.java
index bfa9ba994726e940cc48e7c63073ec13160bc862..eee1f8363360426c0789ef46e34e957b745fe7d7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSurfaceDamage.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ComponentVisualDamageStatusSurfaceDamage.java
@@ -97,4 +97,10 @@ public enum ComponentVisualDamageStatusSurfaceDamage
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ComponentVisualDamageStatusSurfaceDamage: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Country.java b/src-generated/edu/nps/moves/dis7/enumerations/Country.java
index 2b88addc0397f8f0d981a3880e363b3955e5106f..61e8a017a5ab32ce59a6079905726e6f52d79624 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Country.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Country.java
@@ -632,4 +632,10 @@ public enum Country
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Country: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CoverShroudStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/CoverShroudStatus.java
index bf059443952f09d59767e0feedf28454b88bfc02..05b47428b6a9c24d26a40d9aaeda1b1f627f6bf3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CoverShroudStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CoverShroudStatus.java
@@ -97,4 +97,10 @@ public enum CoverShroudStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CoverShroudStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CryptoKeyIDCryptoMode.java b/src-generated/edu/nps/moves/dis7/enumerations/CryptoKeyIDCryptoMode.java
index 628a63899b5092f86b735014f9c6da7c4a4a0c13..804b60a8948037f248f4e8d80bfc64527912a931 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CryptoKeyIDCryptoMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CryptoKeyIDCryptoMode.java
@@ -93,4 +93,10 @@ public enum CryptoKeyIDCryptoMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "CryptoKeyIDCryptoMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureAppearance.java
index ab607b8261042d831a7093a0e790dd1ea9edc647..ee6a0e9684db4390d7f313d5ffe5a31fc3836eac 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureAppearance.java
@@ -109,4 +109,10 @@ public class CulturalFeatureAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "CulturalFeatureAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureCapabilities.java
index d20808a26792019fa72148a17a3dd78fe866f6b5..1d5268d019692857720832729e028d9aedd28b4a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/CulturalFeatureCapabilities.java
@@ -85,4 +85,10 @@ public class CulturalFeatureCapabilities extends DisBitSet implements EntityCapa
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "CulturalFeatureCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentDamageStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentDamageStatus.java
index 3730bf3c1fd9f97666fce6adf2577b3189d5da5c..2e99b5fcf10914bb55df565f458e86bab1e8138d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentDamageStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentDamageStatus.java
@@ -99,4 +99,10 @@ public enum DEDamageDescriptionComponentDamageStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DEDamageDescriptionComponentDamageStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualDamageStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualDamageStatus.java
index 744081513499d86409c95182eb4b7ebd194bb553..5a7dece79ba9c0fcb65c06e4fbb946f26310a034 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualDamageStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualDamageStatus.java
@@ -85,4 +85,10 @@ public class DEDamageDescriptionComponentVisualDamageStatus extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "DEDamageDescriptionComponentVisualDamageStatus: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualSmokeColor.java b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualSmokeColor.java
index 39a048cc16c74a058400b48841179ec5c636a0a7..d020bd6dcf7002bbfba8c3ad45f865921a12b4f1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualSmokeColor.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEDamageDescriptionComponentVisualSmokeColor.java
@@ -97,4 +97,10 @@ public enum DEDamageDescriptionComponentVisualSmokeColor
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DEDamageDescriptionComponentVisualSmokeColor: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlags.java b/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlags.java
index ab9b9f46ecd388f7133153fd2c07ee7c31e6caae..3756fa5ae6172e2097564d0a70129abc5b305a87 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlags.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlags.java
@@ -81,4 +81,10 @@ public class DEFireFlags extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "DEFireFlags: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlagsStateUpdateFlag.java b/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlagsStateUpdateFlag.java
index 3aea3114314e5747ed2f835bc339469b5482672e..224c27c329ed1c0e62c7a479f0699718861ed77c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlagsStateUpdateFlag.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEFireFlagsStateUpdateFlag.java
@@ -93,4 +93,10 @@ public enum DEFireFlagsStateUpdateFlag
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DEFireFlagsStateUpdateFlag: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEFirePulseShape.java b/src-generated/edu/nps/moves/dis7/enumerations/DEFirePulseShape.java
index 54fd6cbca1ccda670c499b8c7fd622cc03277be5..045e18d0cfae96815d6cb646cc1617f66b08f1bd 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEFirePulseShape.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEFirePulseShape.java
@@ -97,4 +97,10 @@ public enum DEFirePulseShape
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DEFirePulseShape: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DEPrecisionAimpointBeamSpotType.java b/src-generated/edu/nps/moves/dis7/enumerations/DEPrecisionAimpointBeamSpotType.java
index daba9054805e92b99708335e0d1079c1822ff85f..beabd009be55677c09de68968ba07f8a4bf7f931 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DEPrecisionAimpointBeamSpotType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DEPrecisionAimpointBeamSpotType.java
@@ -95,4 +95,10 @@ public enum DEPrecisionAimpointBeamSpotType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DEPrecisionAimpointBeamSpotType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISAttributeActionCode.java b/src-generated/edu/nps/moves/dis7/enumerations/DISAttributeActionCode.java
index f6091b39522d926bff722857f3f9fd0655860086..051ed2b918837b7cac13d649fc0d4186c95d2a5d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISAttributeActionCode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISAttributeActionCode.java
@@ -91,4 +91,10 @@ public enum DISAttributeActionCode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISAttributeActionCode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISLiveEntitySubprotocolNumber.java b/src-generated/edu/nps/moves/dis7/enumerations/DISLiveEntitySubprotocolNumber.java
index 419f1a89fca4970a78b44ef2485205cbdc255e6b..3a9a02fe93db1aba122878620d9574011e084237 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISLiveEntitySubprotocolNumber.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISLiveEntitySubprotocolNumber.java
@@ -91,4 +91,10 @@ public enum DISLiveEntitySubprotocolNumber
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISLiveEntitySubprotocolNumber: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusActiveInterrogationIndicatorAII.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusActiveInterrogationIndicatorAII.java
index de532eacc35d04ff0e8b135a58f28510bd076ed9..ab6462e6a570760c7935a41d406147bba7df3f83 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusActiveInterrogationIndicatorAII.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusActiveInterrogationIndicatorAII.java
@@ -93,4 +93,10 @@ public enum DISPDUStatusActiveInterrogationIndicatorAII
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusActiveInterrogationIndicatorAII: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusCoupledExtensionIndicatorCEI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusCoupledExtensionIndicatorCEI.java
index a96572f26efa3885e3b988e7006291334cc14fa9..c1bb9ee647c5ebe62ce832b63783aedb43976ac4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusCoupledExtensionIndicatorCEI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusCoupledExtensionIndicatorCEI.java
@@ -93,4 +93,10 @@ public enum DISPDUStatusCoupledExtensionIndicatorCEI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusCoupledExtensionIndicatorCEI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusDetonationTypeIndicatorDTI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusDetonationTypeIndicatorDTI.java
index 2908fe978dcd8525f8db3c39e2fd0e0590c2c1ec..72bba58ebe0bbde423e79d4f317e0a2c2cb3f3b5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusDetonationTypeIndicatorDTI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusDetonationTypeIndicatorDTI.java
@@ -95,4 +95,10 @@ public enum DISPDUStatusDetonationTypeIndicatorDTI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusDetonationTypeIndicatorDTI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusFireTypeIndicatorFTI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusFireTypeIndicatorFTI.java
index 28fe35a89353980a6da57c01c3e6577c596e230d..3e302f4463ef6fb4eba31da49f20201eda3b6488 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusFireTypeIndicatorFTI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusFireTypeIndicatorFTI.java
@@ -93,4 +93,10 @@ public enum DISPDUStatusFireTypeIndicatorFTI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusFireTypeIndicatorFTI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIFFSimulationModeISM.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIFFSimulationModeISM.java
index 203a9f4924893120372ac2e8ab189489b3c92210..3c266e689bdce77aa02755971d9c6e7713ddb387 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIFFSimulationModeISM.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIFFSimulationModeISM.java
@@ -93,4 +93,10 @@ public enum DISPDUStatusIFFSimulationModeISM
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusIFFSimulationModeISM: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIntercomAttachedIndicatorIAI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIntercomAttachedIndicatorIAI.java
index 5fea08af203e92ebca087b21f53845eb438792be..c32afa26b276af705964874a97a0702f7e35ab11 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIntercomAttachedIndicatorIAI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusIntercomAttachedIndicatorIAI.java
@@ -95,4 +95,10 @@ public enum DISPDUStatusIntercomAttachedIndicatorIAI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusIntercomAttachedIndicatorIAI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusLVCIndicatorLVC.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusLVCIndicatorLVC.java
index 45acb3ce6119d225c89dae15c4403ea36438bd3a..302edb3618385e651258b5834b82c57db8538eda 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusLVCIndicatorLVC.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusLVCIndicatorLVC.java
@@ -97,4 +97,10 @@ public enum DISPDUStatusLVCIndicatorLVC
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusLVCIndicatorLVC: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusRadioAttachedIndicatorRAI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusRadioAttachedIndicatorRAI.java
index f2e75f484dcaeb06cc2ec6fb0c426f0e665f7238..0d9c7f5ffe661a26f3b9fc14db8178554605d665 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusRadioAttachedIndicatorRAI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusRadioAttachedIndicatorRAI.java
@@ -95,4 +95,10 @@ public enum DISPDUStatusRadioAttachedIndicatorRAI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusRadioAttachedIndicatorRAI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusTransferredEntityIndicatorTEI.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusTransferredEntityIndicatorTEI.java
index a414baacad1eab202d11cbb4c5ae588e20085543..83cc8e42508c9cbc41216d5092051019ff577f65 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusTransferredEntityIndicatorTEI.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUStatusTransferredEntityIndicatorTEI.java
@@ -93,4 +93,10 @@ public enum DISPDUStatusTransferredEntityIndicatorTEI
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUStatusTransferredEntityIndicatorTEI: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUType.java b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUType.java
index e4f16a3eaca641174a47537e8a0d6ffc5a5d7faf..20c44ac332010e476cf93fcea55ed912143a5e10 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISPDUType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISPDUType.java
@@ -235,4 +235,10 @@ public enum DISPDUType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISPDUType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolFamily.java b/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolFamily.java
index 5eb24d459da9a095bdbcf2adf219817a70da3b64..f6e6fbd629b75fbb955e8042e2c471d1499e8e1f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolFamily.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolFamily.java
@@ -117,4 +117,10 @@ public enum DISProtocolFamily
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISProtocolFamily: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolVersion.java b/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolVersion.java
index c39a6dd2580107aa193df9278d2b0819660f5006..ed1b6b3c9b69cc596cfee0ec725ab51742afafab 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolVersion.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DISProtocolVersion.java
@@ -105,4 +105,10 @@ public enum DISProtocolVersion
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DISProtocolVersion: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DRParametersType.java b/src-generated/edu/nps/moves/dis7/enumerations/DRParametersType.java
index 6f75d72348268745787f53b5bc8a103403c8d817..d7c7e1e48d4e6f6dfae2136518658ab19d710f6e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DRParametersType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DRParametersType.java
@@ -95,4 +95,10 @@ public enum DRParametersType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DRParametersType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DataCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/DataCategory.java
index 9609b7067393a7ebee2763187a217f3b253bddb9..be2e92190226f1fa339729c0fcc01e337862e024 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DataCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DataCategory.java
@@ -95,4 +95,10 @@ public enum DataCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DataCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DeadReckoningAlgorithm.java b/src-generated/edu/nps/moves/dis7/enumerations/DeadReckoningAlgorithm.java
index ed67b559fe1481f9ab644c8763cdd94d63ae79e3..761f6379bfdc0fec1239b7cd239c29fe963542c2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DeadReckoningAlgorithm.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DeadReckoningAlgorithm.java
@@ -109,4 +109,10 @@ public enum DeadReckoningAlgorithm
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DeadReckoningAlgorithm: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DeltaMode5SAltitudePositiveNegativeIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/DeltaMode5SAltitudePositiveNegativeIndicator.java
index 57dbc56567f68f350fa9cab97a7dde2d16fd8ce0..3b3f7b23fc5f79560206beb172e08544f1d6160b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DeltaMode5SAltitudePositiveNegativeIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DeltaMode5SAltitudePositiveNegativeIndicator.java
@@ -93,4 +93,10 @@ public enum DeltaMode5SAltitudePositiveNegativeIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DeltaMode5SAltitudePositiveNegativeIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DesignatorDesignatorCode.java b/src-generated/edu/nps/moves/dis7/enumerations/DesignatorDesignatorCode.java
index 1f4d629650acb2650170c5e0ffe72fd28489fbac..313a3986b189a22c6ed82d5cc985a27187bb5e78 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DesignatorDesignatorCode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DesignatorDesignatorCode.java
@@ -78,4 +78,10 @@ public enum DesignatorDesignatorCode
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DesignatorDesignatorCode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DesignatorSystemName.java b/src-generated/edu/nps/moves/dis7/enumerations/DesignatorSystemName.java
index 12ab32ab1f7b501fb739e580025fddcff3ab4d28..d43e89409f41681a2ad9980c558b8bddb9a99168 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DesignatorSystemName.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DesignatorSystemName.java
@@ -250,4 +250,10 @@ public enum DesignatorSystemName
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DesignatorSystemName: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/DetonationResult.java b/src-generated/edu/nps/moves/dis7/enumerations/DetonationResult.java
index c2b891b785732d6c6b7c59099fccbdb2571043ef..6dae2f84e56e590572bbf7b4f969ac26c4a5b3a0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/DetonationResult.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/DetonationResult.java
@@ -157,4 +157,10 @@ public enum DetonationResult
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "DetonationResult: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EEAttributeStateIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/EEAttributeStateIndicator.java
index 897df4ddc8168db0271721b97887856a90e8b005..4a55c4e0d3e0914dbdd8c61b40baf019f988fc17 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EEAttributeStateIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EEAttributeStateIndicator.java
@@ -95,4 +95,10 @@ public enum EEAttributeStateIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EEAttributeStateIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionBeamFunction.java b/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionBeamFunction.java
index d6892daf95cf9544aae4f24a4d78a7b0800e0698..d407ca993da7edec76a13ec0490ef764c433d796 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionBeamFunction.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionBeamFunction.java
@@ -137,4 +137,10 @@ public enum ElectromagneticEmissionBeamFunction
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ElectromagneticEmissionBeamFunction: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionStateUpdateIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionStateUpdateIndicator.java
index 45aa9ee4ff67d98d7e3d2de33e6a1ac11347be36..6b1540aa53f397f0da3dfbb77fa5fc24c95340b7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionStateUpdateIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ElectromagneticEmissionStateUpdateIndicator.java
@@ -93,4 +93,10 @@ public enum ElectromagneticEmissionStateUpdateIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ElectromagneticEmissionStateUpdateIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EmitterName.java b/src-generated/edu/nps/moves/dis7/enumerations/EmitterName.java
index d72cec466844cbce0a8f8db1b2894f28f8745fd8..98ede1e0c581181b80f09ef8e98f48d08fece3fe 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EmitterName.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EmitterName.java
@@ -4078,4 +4078,10 @@ public enum EmitterName
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EmitterName: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EmitterSystemFunction.java b/src-generated/edu/nps/moves/dis7/enumerations/EmitterSystemFunction.java
index 1cb953aab0482302b21dc60ca8bb3dacfa40dcf3..df77ed8292c72b8ad136f34f9c61556789386181 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EmitterSystemFunction.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EmitterSystemFunction.java
@@ -251,4 +251,10 @@ public enum EmitterSystemFunction
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EmitterSystemFunction: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationStatus.java
index 963b6f64a41fad1370ec344885acfb90f7c22a16..e2700032b2104aac029ae0c8bc5a1ea00e743cb9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationStatus.java
@@ -103,4 +103,10 @@ public enum EntityAssociationAssociationStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityAssociationAssociationStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationType.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationType.java
index 081e3626a9cda7520391c714841bd370a6db2fad..ee0ae4a3456b40b9aa4721104f8ccb6b2b41edd2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationAssociationType.java
@@ -119,4 +119,10 @@ public enum EntityAssociationAssociationType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityAssociationAssociationType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationGroupMemberType.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationGroupMemberType.java
index 18e27c2ee2336239639d017b94ddc3e5011df593..4d43b8e61fcea2e5a4b71bf91b8f227d171b1720 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationGroupMemberType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationGroupMemberType.java
@@ -103,4 +103,10 @@ public enum EntityAssociationGroupMemberType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityAssociationGroupMemberType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalAssociationType.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalAssociationType.java
index 6ec86bcb508c3b56db0aafb696741014874bd024..f7071b7de4fe4c3d459e931998167474d5ac36e3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalAssociationType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalAssociationType.java
@@ -145,4 +145,10 @@ public enum EntityAssociationPhysicalAssociationType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityAssociationPhysicalAssociationType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalConnectionType.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalConnectionType.java
index 4f2d32efb99038c6650a126e38313d05ee2dbd25..66c194c8e5d6b92d6413dec101ebe211f101c12a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalConnectionType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityAssociationPhysicalConnectionType.java
@@ -115,4 +115,10 @@ public enum EntityAssociationPhysicalConnectionType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityAssociationPhysicalConnectionType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityCapabilityTypes.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityCapabilityTypes.java
index d185d39bcc02c6e4646889659d84901912ce1a05..92106115ecd839d787ff5c20811c972d43858216 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityCapabilityTypes.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityCapabilityTypes.java
@@ -87,4 +87,10 @@ public enum EntityCapabilityTypes
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityCapabilityTypes: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityDamageStatusComponentIdentification.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityDamageStatusComponentIdentification.java
index 273ac8bd813b61c82723f89850a1ce71bb1c75d7..95ac1d8ee4ef8081920dee67631bfae9264d5473 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityDamageStatusComponentIdentification.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityDamageStatusComponentIdentification.java
@@ -109,4 +109,10 @@ public enum EntityDamageStatusComponentIdentification
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityDamageStatusComponentIdentification: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityKind.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityKind.java
index beb3fd28435a428a5e8f9aa85f26d31f7f180672..c570834305ecb5d3406d51a4ecf6010d8b42636f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityKind.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityKind.java
@@ -109,4 +109,10 @@ public enum EntityKind
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityKind: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityMarkingCharacterSet.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityMarkingCharacterSet.java
index 89ce65d402c74ec98cf0beb74c8caa56d0d32d64..654eb08c92d23244b59efcdcef3dc46c0a32a459 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityMarkingCharacterSet.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityMarkingCharacterSet.java
@@ -97,4 +97,10 @@ public enum EntityMarkingCharacterSet
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityMarkingCharacterSet: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EntityVPRecordChangeIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/EntityVPRecordChangeIndicator.java
index d7d08bbad228fdb9a6109ef66940795a2d0987bd..be48bb685ac3c239b9454e98f9af3d79ccfd410f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EntityVPRecordChangeIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EntityVPRecordChangeIndicator.java
@@ -93,4 +93,10 @@ public enum EntityVPRecordChangeIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EntityVPRecordChangeIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentRecordTypeGroups.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentRecordTypeGroups.java
index 07f775ce8ac2e5ba0dadea02d1d28968ce3e3bcb..3bc792ba61164b5f7835e91203a893cf7711a7ab 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentRecordTypeGroups.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentRecordTypeGroups.java
@@ -93,4 +93,10 @@ public enum EnvironmentRecordTypeGroups
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EnvironmentRecordTypeGroups: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalAppearance.java
index dd57b572d5cf36da08686615f0602702e7b0b43e..16be9582333f5e4e2a0a353b5db6a55912a2675b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalAppearance.java
@@ -89,4 +89,10 @@ public class EnvironmentalAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "EnvironmentalAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalCapabilities.java
index dd1462f7045dbdfc2091691ab52036751493c386..85511f610881f960c551c54c25625dffaff5cac2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalCapabilities.java
@@ -81,4 +81,10 @@ public class EnvironmentalCapabilities extends DisBitSet implements EntityCapabi
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "EnvironmentalCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessEnvironmentStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessEnvironmentStatus.java
index 8de381c2b8194193af5db09eaea2abbcf7ae7c1a..6d2f0c5c0658b489345901aa673baae581c29de2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessEnvironmentStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessEnvironmentStatus.java
@@ -81,4 +81,10 @@ public class EnvironmentalProcessEnvironmentStatus extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "EnvironmentalProcessEnvironmentStatus: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessModelType.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessModelType.java
index cb1f4bcb3d15a786e7784db555bea3aea7661477..8ce57d6775804318fb664ccd56a9268874001850 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessModelType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessModelType.java
@@ -91,4 +91,10 @@ public enum EnvironmentalProcessModelType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EnvironmentalProcessModelType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessRecordType.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessRecordType.java
index 2cbe1cd631a159af94cf0d7ab0780276548289c5..0be711bdaaef15d2894f140ca9ebae0b099d287a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessRecordType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalProcessRecordType.java
@@ -112,4 +112,10 @@ public enum EnvironmentalProcessRecordType
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EnvironmentalProcessRecordType: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalSubcategory.java b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalSubcategory.java
index 084a8c25e38af33183d899583694d17592d224ce..8864d8b47c8d871b8f0894be7a9ac1cce3cd166f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalSubcategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EnvironmentalSubcategory.java
@@ -101,4 +101,10 @@ public enum EnvironmentalSubcategory implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EnvironmentalSubcategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/EventReportEventType.java b/src-generated/edu/nps/moves/dis7/enumerations/EventReportEventType.java
index 5f6b602bfe12ec11d92da220198873cd50f84cda..f9aa4f2084dcc8459f7a7bf4c8b61bf06158fd2e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/EventReportEventType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/EventReportEventType.java
@@ -112,4 +112,10 @@ public enum EventReportEventType
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "EventReportEventType: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAirCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAirCategory.java
index bd5a2c940eac525439eecdf6402a819b6f8884e0..6a8603f6260c1d5f790f439c7ddb2cea17e1c55e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAirCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAirCategory.java
@@ -107,4 +107,10 @@ public enum ExpendableAirCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ExpendableAirCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAppearance.java
index 451c69618d422c649fe949b9aaf7efa337152277..78780e65fcb96eff3389d2ca6c1a042ea7ac4f2f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableAppearance.java
@@ -121,4 +121,10 @@ public class ExpendableAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ExpendableAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableCapabilities.java
index 084d0b912273a565803a8fdb252c84ca2b5845dd..73f16dce2acfa1ec05bd69dd21ab3fb59326bcab 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableCapabilities.java
@@ -77,4 +77,10 @@ public class ExpendableCapabilities extends DisBitSet implements EntityCapabilit
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ExpendableCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSubsurfaceCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSubsurfaceCategory.java
index 57cc64790f79a1ad60de99630a122383c9d8ff15..807656e66e11f7bfa6cf7179e248a77a2794404a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSubsurfaceCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSubsurfaceCategory.java
@@ -103,4 +103,10 @@ public enum ExpendableSubsurfaceCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ExpendableSubsurfaceCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSurfaceCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSurfaceCategory.java
index 121bfca24ca220c52dc0c057fa4eadd9b995aadb..1c4b44c345261cb512bdca0c7debdb1b8e8d5715 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSurfaceCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExpendableSurfaceCategory.java
@@ -99,4 +99,10 @@ public enum ExpendableSurfaceCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ExpendableSurfaceCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialCategories.java b/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialCategories.java
index e6ca22da17a31f9d88a32f6700a1088cfb8a8ee9..503c835461705edfe8c4b0cd4cb941b19e84d642 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialCategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialCategories.java
@@ -164,4 +164,10 @@ public enum ExplosiveMaterialCategories
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ExplosiveMaterialCategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialGroups.java b/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialGroups.java
index 583b259b608f99dd587c1ae5c2e459db49af9928..936d7d26f4aa5946114ec8918b6b6fb6bcd367fa 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialGroups.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ExplosiveMaterialGroups.java
@@ -103,4 +103,10 @@ public enum ExplosiveMaterialGroups
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ExplosiveMaterialGroups: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeColor.java b/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeColor.java
index 205fe5860862b15f10707adc0720b92ba66e1f72..cc7b1524bfd317aa59f3269afa77bfde248d36d0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeColor.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeColor.java
@@ -97,4 +97,10 @@ public enum FlareSmokeColor
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "FlareSmokeColor: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeStatus.java
index b0e42eea301075b7b87807e71b7164dd65b25dc9..5dab4f2aecc9aafdafa14ec8419ace267a8ae177 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/FlareSmokeStatus.java
@@ -95,4 +95,10 @@ public enum FlareSmokeStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "FlareSmokeStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ForceID.java b/src-generated/edu/nps/moves/dis7/enumerations/ForceID.java
index c5b1c9e31cb843de14c96f5cdd8d89822c6545bf..41b09c38757872792e08188291611cf35562ae7a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ForceID.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ForceID.java
@@ -151,4 +151,10 @@ public enum ForceID
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ForceID: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/FormatType.java b/src-generated/edu/nps/moves/dis7/enumerations/FormatType.java
index 5ba98fd2973c074b47fe5f3fabb5103494e42845..1a43f05bba81d5dd6ed3adbfba3d5d36a5275b59 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/FormatType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/FormatType.java
@@ -117,4 +117,10 @@ public enum FormatType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "FormatType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/FuelLocation.java b/src-generated/edu/nps/moves/dis7/enumerations/FuelLocation.java
index aacb0ab795f30927f3f49c610da7ada1aff688a0..788347fb799049994373e2a4ce898c01730541f6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/FuelLocation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/FuelLocation.java
@@ -91,4 +91,10 @@ public enum FuelLocation
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "FuelLocation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/FuelMeasurementUnits.java b/src-generated/edu/nps/moves/dis7/enumerations/FuelMeasurementUnits.java
index cbeed536d30b7e3e5c4f8bada11c0f5a0c450ced..968d56bb6361a730481c9841387a84295d4d6c3d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/FuelMeasurementUnits.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/FuelMeasurementUnits.java
@@ -95,4 +95,10 @@ public enum FuelMeasurementUnits
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "FuelMeasurementUnits: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GridAxisDescriptorAxisType.java b/src-generated/edu/nps/moves/dis7/enumerations/GridAxisDescriptorAxisType.java
index b16e449b8143cc99ff809ad7630357d8645cdc69..ac9f0117549a229d880087d3a5ab191c6cf2e2c8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GridAxisDescriptorAxisType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GridAxisDescriptorAxisType.java
@@ -93,4 +93,10 @@ public enum GridAxisDescriptorAxisType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GridAxisDescriptorAxisType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataConstantGrid.java b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataConstantGrid.java
index 95648e365b0ed4bbd6ebe9763727411a2c285796..ffcc2f44b2cb644959de520d4432d5886edbb133 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataConstantGrid.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataConstantGrid.java
@@ -93,4 +93,10 @@ public enum GriddedDataConstantGrid
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GriddedDataConstantGrid: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataCoordinateSystem.java b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataCoordinateSystem.java
index b3510298dcbb6dca84b0a91f5e026d0e7cdd1a99..7bc9729b068ebd921a8e5534e7577ac369f21ed1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataCoordinateSystem.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataCoordinateSystem.java
@@ -82,4 +82,10 @@ public enum GriddedDataCoordinateSystem
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GriddedDataCoordinateSystem: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataDataRepresentation.java b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataDataRepresentation.java
index 3be651ca162a82d371981037896552614a984c9d..2a462c7bc9d7937c7b8e77ec818b20d00218a353 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataDataRepresentation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataDataRepresentation.java
@@ -80,4 +80,10 @@ public enum GriddedDataDataRepresentation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GriddedDataDataRepresentation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataFieldNumber.java b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataFieldNumber.java
index f60bb52227d40ab2f2e623fdd2595fdb30234a50..c7945d6e238263d02df4601c8d627e5a6d7d9619 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataFieldNumber.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataFieldNumber.java
@@ -76,4 +76,10 @@ public enum GriddedDataFieldNumber
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GriddedDataFieldNumber: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataSampleType.java b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataSampleType.java
index caac6c907a63e6c6e7780908c0d736d9d0b51ce8..1e35fe2d003bf2b798ceccecdc7fa5e71e15da71 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataSampleType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/GriddedDataSampleType.java
@@ -76,4 +76,10 @@ public enum GriddedDataSampleType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "GriddedDataSampleType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/HighDensityTrackJam.java b/src-generated/edu/nps/moves/dis7/enumerations/HighDensityTrackJam.java
index 28e0231e8217009a5ba9f9c43ca1194eff40469e..743c744ca41171c30ab5ece66fa8b51880c22446 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/HighDensityTrackJam.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/HighDensityTrackJam.java
@@ -93,4 +93,10 @@ public enum HighDensityTrackJam
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "HighDensityTrackJam: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/HighFidelityHAVEQUICKTODTransmitIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/HighFidelityHAVEQUICKTODTransmitIndicator.java
index ce44be6b7dcb8323e933a526af22406e359236a8..c5f8fd18404ce844b159c44da514100cfe772f4d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/HighFidelityHAVEQUICKTODTransmitIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/HighFidelityHAVEQUICKTODTransmitIndicator.java
@@ -93,4 +93,10 @@ public enum HighFidelityHAVEQUICKTODTransmitIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "HighFidelityHAVEQUICKTODTransmitIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFAlternateMode4ChallengeReply.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFAlternateMode4ChallengeReply.java
index 75e2d3e50f8b7f3f377e84cfa242db0ecc166683..30f1b8a88c3f33bba9f9c97a11ec66467f9ab35d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFAlternateMode4ChallengeReply.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFAlternateMode4ChallengeReply.java
@@ -99,4 +99,10 @@ public enum IFFAlternateMode4ChallengeReply
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFAlternateMode4ChallengeReply: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFApplicableModes.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFApplicableModes.java
index 273d65233a460ac5ca284b0d1d65ee4f165f3f9c..6cf00924ddada3f5caa07a0bab347454749fbde2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFApplicableModes.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFApplicableModes.java
@@ -93,4 +93,10 @@ public enum IFFApplicableModes
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFApplicableModes: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFDataRecordAvailable.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFDataRecordAvailable.java
index 993f283195c224578457971d0da8e3722d0b2b9f..24ccbdc2e881177f34db9ac662395b0651a65ed4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFDataRecordAvailable.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFDataRecordAvailable.java
@@ -93,4 +93,10 @@ public enum IFFDataRecordAvailable
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFDataRecordAvailable: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFLayerSpecificInformation.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFLayerSpecificInformation.java
index 5b9f578b0afb1067769e2617f4c841c98cb7a584..9b13753b392c8d94d7bc33143d9a3da7e4ae8d92 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFLayerSpecificInformation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFLayerSpecificInformation.java
@@ -91,4 +91,10 @@ public enum IFFLayerSpecificInformation
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFLayerSpecificInformation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSimulationMode.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSimulationMode.java
index 445cbd9058f233e4f7e975644061cf293f7744aa..f769bba4bb7e2f0e6ec23917a8af7380330464d1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSimulationMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSimulationMode.java
@@ -93,4 +93,10 @@ public enum IFFSimulationMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSimulationMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemMode.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemMode.java
index 820461ee9153364094efe09eab557eb8b006b6d2..0463260fcffe593a4255b9a1c9204b0bf8366191 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemMode.java
@@ -101,4 +101,10 @@ public enum IFFSystemMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSystemMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemName.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemName.java
index 5cf76bc00072f2c82e92265a8ef78b19e23e500f..430ac6e52b81bbe01932bb3ecedcdd9d18e411ef 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemName.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemName.java
@@ -112,4 +112,10 @@ public enum IFFSystemName
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSystemName: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType.java
index 38a7a451b7dd9e9a72a1c3be1b23addb8b1334b6..4ee079df1493dd70019414561842105a6b2e93d4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType.java
@@ -104,4 +104,10 @@ public enum IFFSystemType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSystemType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter1.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter1.java
index 3dba6693354a0834b28b5d9df068f6311398d049..6094c6b182423969f73c317d75265f967f27a78b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter1.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter1.java
@@ -91,4 +91,10 @@ public enum IFFSystemType1OperationalParameter1
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSystemType1OperationalParameter1: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter2.java b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter2.java
index b22ae06216271291d89d1bf32ca8531c6c4636e2..1a94ee7cf15a0634488a7fbe13a6d4c3681ef5d4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter2.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IFFSystemType1OperationalParameter2.java
@@ -91,4 +91,10 @@ public enum IFFSystemType1OperationalParameter2
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IFFSystemType1OperationalParameter2: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionPhase.java b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionPhase.java
index fbffafcd4dad213a9e7b8f7106b9694821c5437d..67c758445ab528959d7499f6f832fef60f65d7fc 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionPhase.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionPhase.java
@@ -88,4 +88,10 @@ public enum IOActionIOActionPhase
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOActionIOActionPhase: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionType.java b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionType.java
index d0b41aca48e34cf97af86ffb1061c9f0161bc9e5..b5c6bb7bb41a82007525c9095fb1d785dc40d23d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOActionType.java
@@ -80,4 +80,10 @@ public enum IOActionIOActionType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOActionIOActionType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOSimulationSource.java b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOSimulationSource.java
index aad7c711d24fb2967fc19bd18c734c0d7b542d20..b53b9bd59496d99b8956c931f62203a6d2e40e81 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOSimulationSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOSimulationSource.java
@@ -78,4 +78,10 @@ public enum IOActionIOSimulationSource
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOActionIOSimulationSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOWarfareType.java b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOWarfareType.java
index 8a055bf7d11c90b383389b969da7f7805f452801..9f06fab9a7107ee8eb54bdef36156320507eb4c7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOWarfareType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOActionIOWarfareType.java
@@ -88,4 +88,10 @@ public enum IOActionIOWarfareType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOActionIOWarfareType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOCommsNodeRecordCommsNodeType.java b/src-generated/edu/nps/moves/dis7/enumerations/IOCommsNodeRecordCommsNodeType.java
index 4d7a89c74faf5bae4ff64475eccaade4b45a44e3..ad51170340bba503e5ed7e2b0edcf28dc67336d9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOCommsNodeRecordCommsNodeType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOCommsNodeRecordCommsNodeType.java
@@ -97,4 +97,10 @@ public enum IOCommsNodeRecordCommsNodeType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOCommsNodeRecordCommsNodeType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOEffect.java b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOEffect.java
index 44533a37d9289f4a86f14873e6bf82f349712c65..60c24f1e0ef9475d3ae2c41faf0ae5442d564853 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOEffect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOEffect.java
@@ -99,4 +99,10 @@ public enum IOEffectsRecordIOEffect
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOEffectsRecordIOEffect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOLinkType.java b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOLinkType.java
index fc1dd9d46cd21bbd4d7248bf17487679c32835b3..0b5b99cb963ca86ca30fabc1f9c1085c5b814652 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOLinkType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOLinkType.java
@@ -97,4 +97,10 @@ public enum IOEffectsRecordIOLinkType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOEffectsRecordIOLinkType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOProcess.java b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOProcess.java
index 9f78d8257e9a634b2bf0b23a69c56dd972979b59..4f3f640ad59e1b6dec18bee90baf0c2e51620737 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOProcess.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOProcess.java
@@ -76,4 +76,10 @@ public enum IOEffectsRecordIOProcess
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOEffectsRecordIOProcess: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOStatus.java
index 894222cd385d1d7f688a05ce9396b8db4f91a976..9f4ff9c5d5e9d96c78524a77445ef750e7c9a61b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOEffectsRecordIOStatus.java
@@ -105,4 +105,10 @@ public enum IOEffectsRecordIOStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOEffectsRecordIOStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IOReportIOReportType.java b/src-generated/edu/nps/moves/dis7/enumerations/IOReportIOReportType.java
index c5aec11a6811e373f3459966e05b8aa01eb89264..62d52c5b54bcae3554e193b7a0e34baa4ca5547c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IOReportIOReportType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IOReportIOReportType.java
@@ -97,4 +97,10 @@ public enum IOReportIOReportType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IOReportIOReportType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ISLSAntennaType.java b/src-generated/edu/nps/moves/dis7/enumerations/ISLSAntennaType.java
index 1e33615b66a90c2d004019c7be787d90cee0b197..808caef0d47884890102c1e0a618067d6edca4c9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ISLSAntennaType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ISLSAntennaType.java
@@ -93,4 +93,10 @@ public enum ISLSAntennaType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ISLSAntennaType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommand.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommand.java
index 1e418f32288288e37a2216aa7f69f4228d45cc0e..4e08238d5e14ce5a39cc8659822379734a9d4c84 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommand.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommand.java
@@ -103,4 +103,10 @@ public enum IntercomControlCommand
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlCommand: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsClass.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsClass.java
index c726888f81ef8684af493df95ab3bd03e9eba81e..4078bf48742d40c037a9565b2e1e47c7f292e9af 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsClass.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsClass.java
@@ -93,4 +93,10 @@ public enum IntercomControlCommunicationsClass
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlCommunicationsClass: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsType.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsType.java
index 354e3efa317df52cff0fc8c19112f53155cc4052..ccf366e0dd0029e884b057e0a11bfe6a50563687 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlCommunicationsType.java
@@ -99,4 +99,10 @@ public enum IntercomControlCommunicationsType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlCommunicationsType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlControlType.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlControlType.java
index d23c23a536e1eb6306cd799b1e0dcbbd09374dfb..bda567b9ac142e60ce07a1804e49434ae56d6783 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlControlType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlControlType.java
@@ -101,4 +101,10 @@ public enum IntercomControlControlType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlControlType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlDestinationLineStateCommand.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlDestinationLineStateCommand.java
index 3b38d4ce42e25c9fb31f1b25e8f1e16fc953dee3..ceb4a07249d17c30f0b538e86f7f024b9c26e159 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlDestinationLineStateCommand.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlDestinationLineStateCommand.java
@@ -97,4 +97,10 @@ public enum IntercomControlDestinationLineStateCommand
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlDestinationLineStateCommand: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlRecordType.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlRecordType.java
index 06d54596c1def8936ae175dce2394eea476dcfb0..eeb77fce6794c4c3d8555afa7a3383d2bcbb6e1a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlRecordType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlRecordType.java
@@ -80,4 +80,10 @@ public enum IntercomControlRecordType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlRecordType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlTransmitLineState.java b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlTransmitLineState.java
index 2e23e76b9e0f221feff5216a08869611d40b2e60..ac05451c471f77621ef1f3877f29cf3da45b747b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlTransmitLineState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IntercomControlTransmitLineState.java
@@ -95,4 +95,10 @@ public enum IntercomControlTransmitLineState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IntercomControlTransmitLineState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfGroupedEntityCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfGroupedEntityCategory.java
index b416ae8cf2fa7d99b5052a025af62254029e963d..914f24760e66044fb2b87ca15dc777f38a4346e4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfGroupedEntityCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfGroupedEntityCategory.java
@@ -109,4 +109,10 @@ public enum IsGroupOfGroupedEntityCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IsGroupOfGroupedEntityCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfRestStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfRestStatus.java
index ef5ee7897aecf2d6d5211b820f3bf3ee33dc902d..3776052193b10d784a413680365430a99d20f04c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfRestStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IsGroupOfRestStatus.java
@@ -107,4 +107,10 @@ public enum IsGroupOfRestStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IsGroupOfRestStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfNature.java b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfNature.java
index 1d1e9b2c41fee3c16a51e3e0fbda56c93a75365d..63eb5dbe6d29aaed450c9d2f401d0dace8068bc2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfNature.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfNature.java
@@ -96,4 +96,10 @@ public enum IsPartOfNature
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IsPartOfNature: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfPosition.java b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfPosition.java
index 4802bd4ea2c9387b98e1ea67d30c3eb7c35fa6de..87bd4c6af7aba3705836258dfcc91a4bbd8a3f7c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfPosition.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfPosition.java
@@ -80,4 +80,10 @@ public enum IsPartOfPosition
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IsPartOfPosition: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfStationName.java b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfStationName.java
index a5d9cc078628c61b9e7de4549755482d4b8bbad1..e395f81fe503e865e93cc8735edb7bfd196cceaf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfStationName.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IsPartOfStationName.java
@@ -112,4 +112,10 @@ public enum IsPartOfStationName
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IsPartOfStationName: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/IslandSubcategory.java b/src-generated/edu/nps/moves/dis7/enumerations/IslandSubcategory.java
index 2eda855c9b32ac3a316aaa1da85318263b047f4f..099612a29f3c7259675f672077e08f9b205bc071 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/IslandSubcategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/IslandSubcategory.java
@@ -88,4 +88,10 @@ public enum IslandSubcategory implements SubCategory
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "IslandSubcategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersSynchronizationState.java b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersSynchronizationState.java
index fcb7bce42241fa003e898684881f4c4cd67d52b0..2518ffd05fd07a22f352c71413d84bea816ee140 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersSynchronizationState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersSynchronizationState.java
@@ -97,4 +97,10 @@ public enum JTIDSMIDSModulationParametersSynchronizationState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "JTIDSMIDSModulationParametersSynchronizationState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode.java b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode.java
index f9c0b02a1e0af00ca536f4b144ccc77487d87d4c..6342c34d3a750ec00d3e0ef7baffd18ad6534f42 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode.java
@@ -93,4 +93,10 @@ public enum JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "JTIDSMIDSModulationParametersTransmittingTerminalPrimaryMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode.java b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode.java
index c2673e4dc2f9af439347f73a0bbc6852ee721f64..e290ecde334fe527205f491bf38ad20af5daca97 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode.java
@@ -97,4 +97,10 @@ public enum JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "JTIDSMIDSModulationParametersTransmittingTerminalSecondaryMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformAppearance.java
index b7610ae89154c0f8ff0075d3c49f4e1343d5083a..2cc7ff16a5db025cfc8101433e3ddba8bd631d01 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformAppearance.java
@@ -177,4 +177,10 @@ public class LandPlatformAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LandPlatformAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformCapabilities.java
index d794e4db8437320e3791bf4d6f97f3161bee0382..0818bdbbaac83f3848cfd7905dd3bb5ac58b6a4b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LandPlatformCapabilities.java
@@ -105,4 +105,10 @@ public class LandPlatformCapabilities extends DisBitSet implements EntityCapabil
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LandPlatformCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LeafCoverage.java b/src-generated/edu/nps/moves/dis7/enumerations/LeafCoverage.java
index 69e7cdf971121489e770f70d91ead1e1aee1a75c..d35e1fe2b44da26488577544c205b8669e5a00b7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LeafCoverage.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LeafCoverage.java
@@ -93,4 +93,10 @@ public enum LeafCoverage
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LeafCoverage: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Level2SquitterStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/Level2SquitterStatus.java
index 60a2aa4f687e482450fb67a5a867c10bae4f6fa4..98c1cd84651ff603a13e846c5a9331626f10818e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Level2SquitterStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Level2SquitterStatus.java
@@ -93,4 +93,10 @@ public enum Level2SquitterStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Level2SquitterStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormAirCategories.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormAirCategories.java
index db95eec344f8e301a863e27ae0370623506cf281..b4d82ddaf95a8297bfb515154e4e16d436752d8a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormAirCategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormAirCategories.java
@@ -92,4 +92,10 @@ public enum LifeFormAirCategories
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormAirCategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormCategoriesUS.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormCategoriesUS.java
index 6bc3d209f7bfd0dd2310b05511de38ce637b1481..c27bb4fff08522176481e63e5179a85d7ba678ca 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormCategoriesUS.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormCategoriesUS.java
@@ -131,4 +131,10 @@ public enum LifeFormCategoriesUS
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormCategoriesUS: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormExtraPersonalData.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormExtraPersonalData.java
index 81f0166d419831bbcea4662debe71c74bf9f771c..2597efe1f4be62c76ff9bbe0d9a6abe10d54eaa9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormExtraPersonalData.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormExtraPersonalData.java
@@ -167,4 +167,10 @@ public enum LifeFormExtraPersonalData
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormExtraPersonalData: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiMaterielRifles.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiMaterielRifles.java
index 1822509e4de7cb6c3801d10eb8b1ce743c120080..990aa7351182248cfdce0da6c7677077148c0be8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiMaterielRifles.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiMaterielRifles.java
@@ -95,4 +95,10 @@ public enum LifeFormHumanSpecificAntiMaterielRifles
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificAntiMaterielRifles: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankMissiles.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankMissiles.java
index e91bce65fe5fd7b22fdc0f46f81699a5d8f2baad..04ed40a03ae382b8eeb9fb15923c3f72c6d41559 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankMissiles.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankMissiles.java
@@ -237,4 +237,10 @@ public enum LifeFormHumanSpecificAntiTankMissiles
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificAntiTankMissiles: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankRockets.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankRockets.java
index ff3b16a0f957e46142fffd7d64d716bf4f8cfeb5..dd5698944c83d77e48dd08f0840328249d70e4c7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankRockets.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAntiTankRockets.java
@@ -227,4 +227,10 @@ public enum LifeFormHumanSpecificAntiTankRockets
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificAntiTankRockets: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAssaultRifles.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAssaultRifles.java
index 74e92a546dd772d5dfc88f265c88746ffa52a7b5..b822514cd5469d5398f6157e7aa5af7cefe8059d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAssaultRifles.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificAssaultRifles.java
@@ -209,4 +209,10 @@ public enum LifeFormHumanSpecificAssaultRifles
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificAssaultRifles: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificDroneGuns.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificDroneGuns.java
index d1b3e584d207dca1fe8afe8122099b20c5e91e3f..53f33f18c83e1ddb216cd3b12bd246df5d9cbe7f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificDroneGuns.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificDroneGuns.java
@@ -95,4 +95,10 @@ public enum LifeFormHumanSpecificDroneGuns
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificDroneGuns: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificEquipmentClass.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificEquipmentClass.java
index 3eee71b9786bbe4aa91be25da8ca66a104fa192b..a78660ffab015537cdfda32de430187ff45dcf45 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificEquipmentClass.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificEquipmentClass.java
@@ -99,4 +99,10 @@ public enum LifeFormHumanSpecificEquipmentClass
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificEquipmentClass: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameRockets.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameRockets.java
index 8d4804494faf814b4c7a03db3b8626a08047b377..0561dc7c3c7d5e76bd5ce996d8d803e417101388 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameRockets.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameRockets.java
@@ -103,4 +103,10 @@ public enum LifeFormHumanSpecificFlameRockets
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificFlameRockets: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameThrowers.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameThrowers.java
index 138cd7405780e70d491f2a86209f9ae962611263..dad2de2554fdd8789ce71667ce8e67b927d3ca46 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameThrowers.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificFlameThrowers.java
@@ -119,4 +119,10 @@ public enum LifeFormHumanSpecificFlameThrowers
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificFlameThrowers: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchers.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchers.java
index c030f32fd07cf35143fc759469899c223c15d20a..b1441217f62e159723f9fea09c17ab4ccc91dd68 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchers.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchers.java
@@ -171,4 +171,10 @@ public enum LifeFormHumanSpecificGrenadeLaunchers
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificGrenadeLaunchers: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchingMachineGun.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchingMachineGun.java
index 63d2301cc7ac56a31d0386788178d70997a5e5a7..db575d6784935b3a21d49975164c03149ba5a08f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchingMachineGun.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificGrenadeLaunchingMachineGun.java
@@ -129,4 +129,10 @@ public enum LifeFormHumanSpecificGrenadeLaunchingMachineGun
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificGrenadeLaunchingMachineGun: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHandGuns.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHandGuns.java
index 2a7d33ac4b863f60fdc20610f5d20c9072319a52..ff5fb14cb73183908b472414c4b8c1b887aa095d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHandGuns.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHandGuns.java
@@ -99,4 +99,10 @@ public enum LifeFormHumanSpecificHandGuns
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificHandGuns: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHighPowerRifles.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHighPowerRifles.java
index 3a6f8d85e223016050f4b4c79349629e209337a4..7e3a161990920f2eb242701273d5088ff9edd992 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHighPowerRifles.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificHighPowerRifles.java
@@ -109,4 +109,10 @@ public enum LifeFormHumanSpecificHighPowerRifles
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificHighPowerRifles: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMachineGuns.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMachineGuns.java
index 65df00ae16687f8c767b88f7b8d0e486b404a4f1..19173f106670ae42eda1a8b0e9d5ef9e3ccf0891 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMachineGuns.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMachineGuns.java
@@ -263,4 +263,10 @@ public enum LifeFormHumanSpecificMachineGuns
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificMachineGuns: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificManPortableAirDefenseSystem.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificManPortableAirDefenseSystem.java
index cf4b714c2af79c2e2b8425e5ab26d6dd356f97a3..d3e7f50c2dd4562e845c82d660116e30e70f1340 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificManPortableAirDefenseSystem.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificManPortableAirDefenseSystem.java
@@ -133,4 +133,10 @@ public enum LifeFormHumanSpecificManPortableAirDefenseSystem
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificManPortableAirDefenseSystem: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMortars.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMortars.java
index e8d3e8884d6e48f2e2054a9a6f100097b49cea21..4c623824458cdb6c59d0cb7d0f3d7c5beb5a622a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMortars.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificMortars.java
@@ -99,4 +99,10 @@ public enum LifeFormHumanSpecificMortars
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificMortars: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificRecoillessRifles.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificRecoillessRifles.java
index 38b6b250b04c395b849992614489a9e528982587..caa7cef07a2168569d1883deb9da0c55299bebd2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificRecoillessRifles.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificRecoillessRifles.java
@@ -147,4 +147,10 @@ public enum LifeFormHumanSpecificRecoillessRifles
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificRecoillessRifles: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificShotGuns.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificShotGuns.java
index 687a57c2e6617cff667aec6404445f211f4ef5eb..a65cda255b69e89d410c8ac56308b2a5e62131d2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificShotGuns.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificShotGuns.java
@@ -367,4 +367,10 @@ public enum LifeFormHumanSpecificShotGuns
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificShotGuns: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSniper.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSniper.java
index f7fdd384ba46ab3f3bd91ff6d6d95d1614a5883f..b3a2fa9a9abb8e151c4405b2782290dfb3479737 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSniper.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSniper.java
@@ -143,4 +143,10 @@ public enum LifeFormHumanSpecificSniper
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificSniper: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSubMachineGun.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSubMachineGun.java
index 52911d57711fdc04006be688b1ea81ec65f83b54..8d21abb0e67bd13585fb55d193f3c6329485a970 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSubMachineGun.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificSubMachineGun.java
@@ -115,4 +115,10 @@ public enum LifeFormHumanSpecificSubMachineGun
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificSubMachineGun: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificWeaponNonspecific.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificWeaponNonspecific.java
index d6bf4d5f8f92a4eaaebd34c4dcd2f32d399196f9..8fcf19eb808f53de6ff299de4540c91720009583 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificWeaponNonspecific.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSpecificWeaponNonspecific.java
@@ -95,4 +95,10 @@ public enum LifeFormHumanSpecificWeaponNonspecific
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSpecificWeaponNonspecific: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSubcategoryEquipmentClass.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSubcategoryEquipmentClass.java
index da33ddd364f16d63124f2074bcd0452dd9dc753e..b8fbc8b3b7a196e0502b7d441e2256ea492f6fcb 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSubcategoryEquipmentClass.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormHumanSubcategoryEquipmentClass.java
@@ -121,4 +121,10 @@ public enum LifeFormHumanSubcategoryEquipmentClass
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormHumanSubcategoryEquipmentClass: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormLandCategories.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormLandCategories.java
index aa01fb14a49073a04b6b0a691b7a9e2e7e581e13..0bd2c9041f98ebcfea05e0d184ed26d0de9cf3ad 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormLandCategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormLandCategories.java
@@ -134,4 +134,10 @@ public enum LifeFormLandCategories implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormLandCategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormSubsurfaceCategories.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormSubsurfaceCategories.java
index 33cefd6468d7aaaee272220dc2533b3f51b97f34..8b29f57afeb3342109c2df7f13963226330f8c47 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormSubsurfaceCategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormSubsurfaceCategories.java
@@ -94,4 +94,10 @@ public enum LifeFormSubsurfaceCategories
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormSubsurfaceCategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsAppearance.java
index 80f3fc85b10fdb0dd9cc653bbf4359228a70ba7a..13702b88750b3079e80db6c92b9764d488fdfd8b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsAppearance.java
@@ -141,4 +141,10 @@ public class LifeFormsAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LifeFormsAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsCapabilities.java
index 7c648f8f2af3622d008c02166f69b35e94bf99fb..ee2633c50bf7ff20d2a450f6974577789cc2afa8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsCapabilities.java
@@ -93,4 +93,10 @@ public class LifeFormsCapabilities extends DisBitSet implements EntityCapabiliti
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LifeFormsCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryCISWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryCISWeapons.java
index d429b8d2175ea46807fcf7a178c3324d41bd7b3d..7747c3e9494304b2861067237851eedc11564c7a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryCISWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryCISWeapons.java
@@ -193,4 +193,10 @@ public enum LifeFormsSubcategoryCISWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryCISWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryFrenchWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryFrenchWeapons.java
index cde38ca5c998efd2480668417bacc91e07c86a04..31ff96d0d542bbc4530483ad1892f678757a9d32 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryFrenchWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryFrenchWeapons.java
@@ -105,4 +105,10 @@ public enum LifeFormsSubcategoryFrenchWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryFrenchWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryGermanWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryGermanWeapons.java
index 9b6cb6ce0604e9920a320042e8513700c1b65a20..948abfd5d0180df7ffd8dffc99c12a916e2e7528 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryGermanWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryGermanWeapons.java
@@ -107,4 +107,10 @@ public enum LifeFormsSubcategoryGermanWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryGermanWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryIranianWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryIranianWeapons.java
index c66de65e41bfe092bec0e9e72c0bbb4f8112a8b2..28162bedf9175546e3f41195bdf932239a140d9a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryIranianWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryIranianWeapons.java
@@ -93,4 +93,10 @@ public enum LifeFormsSubcategoryIranianWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryIranianWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUKWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUKWeapons.java
index 5fc97def6ca84de910d8286ce197eb7bb075af58..55c9d44afdc07a92cebc992b7cb644d6f4b50392 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUKWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUKWeapons.java
@@ -113,4 +113,10 @@ public enum LifeFormsSubcategoryUKWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryUKWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUSWeapons.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUSWeapons.java
index c182d79cce05081eff5f30b7c95f033f052d36c5..6000ce8fb70517fc5162dd36f8c3b71823237b8d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUSWeapons.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeFormsSubcategoryUSWeapons.java
@@ -333,4 +333,10 @@ public enum LifeFormsSubcategoryUSWeapons implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeFormsSubcategoryUSWeapons: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LifeSavingEquipment.java b/src-generated/edu/nps/moves/dis7/enumerations/LifeSavingEquipment.java
index dfd8296cf77b4d53ca0c0a033bfa9f4301155b2e..20b46e8b631c64e4ffff2ad45308359eeb2b851a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LifeSavingEquipment.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LifeSavingEquipment.java
@@ -99,4 +99,10 @@ public enum LifeSavingEquipment implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "LifeSavingEquipment: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceBreach.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceBreach.java
index 664eae9a927ce85d5c3a395275d882c905b5e07b..30580fd9328d88ed7ff6aff6ad3877a767faa931 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceBreach.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceBreach.java
@@ -74,4 +74,10 @@ public class LinearObjectAppearanceBreach extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceBreach: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceExhaustSmoke.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceExhaustSmoke.java
index df86a024347ce7dc4837664a55f84ff731a11114..5949356e450dafd0af73735259a24ff6725c41b7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceExhaustSmoke.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceExhaustSmoke.java
@@ -85,4 +85,10 @@ public class LinearObjectAppearanceExhaustSmoke extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceExhaustSmoke: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceMinefieldLaneMarker.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceMinefieldLaneMarker.java
index 1b632e4eb01669fbf39a64f0f26e97b581a1a18a..37f1c12413b9a7185b400b669fcd82a7edd1b9af 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceMinefieldLaneMarker.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceMinefieldLaneMarker.java
@@ -77,4 +77,10 @@ public class LinearObjectAppearanceMinefieldLaneMarker extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceMinefieldLaneMarker: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceSpeedBump.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceSpeedBump.java
index a55883c1595bbba962dae2008e215b6b8d67c189..aaa6897a260db0199cc83df8a6b3df8bc1b75ca1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceSpeedBump.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceSpeedBump.java
@@ -85,4 +85,10 @@ public class LinearObjectAppearanceSpeedBump extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceSpeedBump: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceTankDitchAndConcertinaWire.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceTankDitchAndConcertinaWire.java
index 1568b660019b08b0e83bbe22cadbff8a586e6039..482392b9979aa16501a2b6446598b098982341b1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceTankDitchAndConcertinaWire.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceTankDitchAndConcertinaWire.java
@@ -85,4 +85,10 @@ public class LinearObjectAppearanceTankDitchAndConcertinaWire extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceTankDitchAndConcertinaWire: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceWire.java b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceWire.java
index 490159e43065fa5cda696e60c730ba4590c2a8f5..3656e111545e566b142bba8cdd35c1ea78905eb9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceWire.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/LinearObjectAppearanceWire.java
@@ -85,4 +85,10 @@ public class LinearObjectAppearanceWire extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "LinearObjectAppearanceWire: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BDataTerminalSetIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BDataTerminalSetIndicator.java
index 8762c0c0a0e4173c80c482f25e3316afe8770882..4219d3c742695a0e87141284635ce21c63340f65 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BDataTerminalSetIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BDataTerminalSetIndicator.java
@@ -105,4 +105,10 @@ public enum Link1111BDataTerminalSetIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Link1111BDataTerminalSetIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BFidelityLevel.java b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BFidelityLevel.java
index 5e8b5b2d54d7c3ce3d321514cff143cfe79da068..234d93050793634b97c6ed03a888a1ae8e05c4df 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BFidelityLevel.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BFidelityLevel.java
@@ -95,4 +95,10 @@ public enum Link1111BFidelityLevel
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Link1111BFidelityLevel: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BModeofOperation.java b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BModeofOperation.java
index a35348969ececa522b67a57409ebc846ad55743b..81fc8bc225b40e788a37921b8f209cfb0cc7bd0f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BModeofOperation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BModeofOperation.java
@@ -86,4 +86,10 @@ public enum Link1111BModeofOperation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Link1111BModeofOperation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BTerminalMode.java b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BTerminalMode.java
index 0a84dd6a14dd8c365980785642c04aeedb050a6d..c3c36030c1dbeee0c93f053e05ec07771c488f05 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Link1111BTerminalMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Link1111BTerminalMode.java
@@ -95,4 +95,10 @@ public enum Link1111BTerminalMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Link1111BTerminalMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Material.java b/src-generated/edu/nps/moves/dis7/enumerations/Material.java
index 955a2905195b5366eac49f2a20d6296ff559f41b..76b25f8b7b9094c26ec61a4a1c0d3c6448dd801d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Material.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Material.java
@@ -97,4 +97,10 @@ public enum Material
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Material: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceActiveStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceActiveStatus.java
index 062a1e87dd5e044ab995ee53e14090c31c353caf..a960f29ab2d3cfe876f0c9af7dc19c7194697a7e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceActiveStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceActiveStatus.java
@@ -93,4 +93,10 @@ public enum MinefieldAppearanceActiveStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldAppearanceActiveStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceLane.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceLane.java
index 0ef78ff3f332b186022b3d24ce10840c7e14504e..05eee45724b7eb739e2045618477d01b2fbebbed 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceLane.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceLane.java
@@ -93,4 +93,10 @@ public enum MinefieldAppearanceLane
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldAppearanceLane: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceMinefieldType.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceMinefieldType.java
index ed47bec12fddb9040fb89f8a91e8aea25208c255..3c4fd0bf170b583f320b70b9e9ed3cc96c7366f1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceMinefieldType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceMinefieldType.java
@@ -95,4 +95,10 @@ public enum MinefieldAppearanceMinefieldType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldAppearanceMinefieldType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceState.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceState.java
index 8267301d701f7ed8c66ef07494a3d97a4781bdde..238d86d86d076aa130c99ca8f45c910c396dec17 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldAppearanceState.java
@@ -93,4 +93,10 @@ public enum MinefieldAppearanceState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldAppearanceState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataFusing.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataFusing.java
index 0ee72224c74da2cfee0c8aa24dfca67bceb2d471..9326e09324e8e3e5a7422e69d7d37ca26cc72d18 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataFusing.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataFusing.java
@@ -85,4 +85,10 @@ public class MinefieldDataFusing extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "MinefieldDataFusing: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataPaintScheme.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataPaintScheme.java
index dbee3f4574c30f486edf7ed551cff040f11fe84d..eb1ef0b0f1650b751dcc4fd854ab5b86a9a32b9d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataPaintScheme.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldDataPaintScheme.java
@@ -81,4 +81,10 @@ public class MinefieldDataPaintScheme extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "MinefieldDataPaintScheme: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldFusingFuseType.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldFusingFuseType.java
index 3a3d37f48310b1b8dbe978c7b355e33afc46ad61..0692d843efb47cc25daba3698879d26cd3857f18 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldFusingFuseType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldFusingFuseType.java
@@ -103,4 +103,10 @@ public enum MinefieldFusingFuseType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldFusingFuseType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemeAlgae.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemeAlgae.java
index 5d57e04c501a99adbe5266b687971bf6cd5227bb..26c3486999f5343b3a441c9c41e6244273f70ff6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemeAlgae.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemeAlgae.java
@@ -97,4 +97,10 @@ public enum MinefieldPaintSchemeAlgae
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldPaintSchemeAlgae: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemePaintScheme.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemePaintScheme.java
index 4fcdaa15d43fb62c981ac7d7a326411518396850..8213ff5d706ce01f43880990ef681962c3f1f9bf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemePaintScheme.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldPaintSchemePaintScheme.java
@@ -127,4 +127,10 @@ public enum MinefieldPaintSchemePaintScheme
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldPaintSchemePaintScheme: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypes.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypes.java
index c65661d0ab04acdb180dfb387461806517cf13d5..1795f0b11d863db3ed6bcdbbd8049de16c327eee 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypes.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypes.java
@@ -99,4 +99,10 @@ public enum MinefieldSensorTypes
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypes: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesFLIR.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesFLIR.java
index cd535e5c6d4e614fffe6ce6871861a014eb77723..778f086ccc924cda41e3c874ef73a60f5bfe051b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesFLIR.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesFLIR.java
@@ -94,4 +94,10 @@ public enum MinefieldSensorTypesFLIR
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesFLIR: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesLaser.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesLaser.java
index 7f0862672327f1f842f43b3679eda13a00509fb9..76b1da2fa5bc1d4be0091b048bbb9194165f672c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesLaser.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesLaser.java
@@ -78,4 +78,10 @@ public enum MinefieldSensorTypesLaser
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesLaser: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMagnetic.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMagnetic.java
index d93fd815a59cf42841bbf140e80f7fb77581467b..85eb33f462f34dc4ad9a6603af7210e6ab85ff14 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMagnetic.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMagnetic.java
@@ -82,4 +82,10 @@ public enum MinefieldSensorTypesMagnetic
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesMagnetic: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMultispectral.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMultispectral.java
index 142186eb4ac262b6d867a3d62fd36e1a8f0b4a2f..f60eae8359a05fddc80af0e0747233a584d742c5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMultispectral.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesMultispectral.java
@@ -76,4 +76,10 @@ public enum MinefieldSensorTypesMultispectral
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesMultispectral: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesOptical.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesOptical.java
index 00625801d118aec43d040b2816f5bbed24c06bab..caca72633dbdebf2afe98c3aa01ebfaa786136bc 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesOptical.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesOptical.java
@@ -98,4 +98,10 @@ public enum MinefieldSensorTypesOptical
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesOptical: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesPhysical.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesPhysical.java
index fd9cd260f78662829e8707dee48087f20c224415..bc4e0de31f557a90b53a383fad3bd2c8b70de06b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesPhysical.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesPhysical.java
@@ -80,4 +80,10 @@ public enum MinefieldSensorTypesPhysical
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesPhysical: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesRADAR.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesRADAR.java
index b5b896af88dd8f203d22b42fd8495cb75a50c23e..92260e89604541c6d30577992a47c90a8c7dc1e7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesRADAR.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesRADAR.java
@@ -86,4 +86,10 @@ public enum MinefieldSensorTypesRADAR
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesRADAR: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesSONAR.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesSONAR.java
index 2db96fe3a514169a572f45fb7d4e3a61373a0c80..ccc99f73bf9761034cfe74b579fcd8471aa3e9e1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesSONAR.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldSensorTypesSONAR.java
@@ -76,4 +76,10 @@ public enum MinefieldSensorTypesSONAR
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldSensorTypesSONAR: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateAppearanceBitMap.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateAppearanceBitMap.java
index 61ef091910c6e0912852b18582039fe8973e65aa..a5d94fc85f1937d79675e87867b1fd6b75877eba 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateAppearanceBitMap.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateAppearanceBitMap.java
@@ -89,4 +89,10 @@ public class MinefieldStateAppearanceBitMap extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "MinefieldStateAppearanceBitMap: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateProtocolMode.java b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateProtocolMode.java
index f85087080473874c3d24e61141d8f7d7c66a60b3..e3990794d0494636861822ddd109185aeea4662d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateProtocolMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MinefieldStateProtocolMode.java
@@ -93,4 +93,10 @@ public enum MinefieldStateProtocolMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MinefieldStateProtocolMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5IFFMission.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5IFFMission.java
index 59ec6ee8ddb704fdabcfc5e36e12d0c179cb7120..18c9001b8205995d5033e81ae00e0073f50a2b30 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5IFFMission.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5IFFMission.java
@@ -103,4 +103,10 @@ public enum Mode5IFFMission
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5IFFMission: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5LevelSelection.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5LevelSelection.java
index f7d954c0ebe7748722dbfc4ae5b0e449b0ed4240..645c928d5e0d213aff713df70295e634b9cc66d9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5LevelSelection.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5LevelSelection.java
@@ -93,4 +93,10 @@ public enum Mode5LevelSelection
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5LevelSelection: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5LocationErrors.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5LocationErrors.java
index 8223d4fa00136d80565c65b4fc5b2777581c2bc3..25fecbbd5aa04491984a64dec3c1944c32e2c234 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5LocationErrors.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5LocationErrors.java
@@ -93,4 +93,10 @@ public enum Mode5LocationErrors
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5LocationErrors: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5MessageFormatsStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5MessageFormatsStatus.java
index 49bb2a088233c64b01f48970331d2a2ff19e9f65..7abec83c3d5d18f1c4ef63cf97bdf899ca00439b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5MessageFormatsStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5MessageFormatsStatus.java
@@ -93,4 +93,10 @@ public enum Mode5MessageFormatsStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5MessageFormatsStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5PlatformType.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5PlatformType.java
index 789493e19ffca15a7855bbec542f331843feb8be..72de434e0fb905099c63d98846b4b768957b3204 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5PlatformType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5PlatformType.java
@@ -93,4 +93,10 @@ public enum Mode5PlatformType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5PlatformType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5Reply.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5Reply.java
index 6935f3b47285014a3f1243e56a6133c592cd28a2..63a54ae2e135617a665561c53ef27c31ebf190ad 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5Reply.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5Reply.java
@@ -97,4 +97,10 @@ public enum Mode5Reply
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5Reply: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5SAltitudeResolution.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5SAltitudeResolution.java
index 1138155d7d525526e4008dff250eb95525f2e576..577eb52c70eb8c4f6a32cc42c524ae0570c96a6e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5SAltitudeResolution.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5SAltitudeResolution.java
@@ -93,4 +93,10 @@ public enum Mode5SAltitudeResolution
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5SAltitudeResolution: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Mode5SquitterType.java b/src-generated/edu/nps/moves/dis7/enumerations/Mode5SquitterType.java
index e6b288604ae0e6e1616c6dcaf11a90273a9beea6..4e56a63f8c6ec035d3e18d901dab0e5b145b18b5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Mode5SquitterType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Mode5SquitterType.java
@@ -95,4 +95,10 @@ public enum Mode5SquitterType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Mode5SquitterType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ModeCAltitudeIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/ModeCAltitudeIndicator.java
index 9e6184beceec86dd686400eec81b9cbadcdb0a92..3f2aa4e6daf7a5171049d80321ebe37b29e2efdd 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ModeCAltitudeIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ModeCAltitudeIndicator.java
@@ -93,4 +93,10 @@ public enum ModeCAltitudeIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ModeCAltitudeIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorIdentifierICType.java b/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorIdentifierICType.java
index fb4040dcc1ecc0b595a981b74062724caaaa1c39..fe0a01cf66bc2c530c36e3f46f527ddff39efc3e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorIdentifierICType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorIdentifierICType.java
@@ -93,4 +93,10 @@ public enum ModeSInterrogatorIdentifierICType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ModeSInterrogatorIdentifierICType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorStatusTransmitState.java b/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorStatusTransmitState.java
index 7848c5c50b4a1e816706874780c032eb0f4e39fa..6e6dccb7210a1d1a5938051f89d89069c4282da5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorStatusTransmitState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ModeSInterrogatorStatusTransmitState.java
@@ -101,4 +101,10 @@ public enum ModeSInterrogatorStatusTransmitState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ModeSInterrogatorStatusTransmitState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterRecordSource.java b/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterRecordSource.java
index 65e8e0efe01248a84fd53b2df346218ad7e734c4..d4252aacb95e14e3bff2dcd6de19e9bfbc880bcf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterRecordSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterRecordSource.java
@@ -93,4 +93,10 @@ public enum ModeSSquitterRecordSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ModeSSquitterRecordSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterType.java b/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterType.java
index 9f8e7c85d5a6dedc289bf7172b397609571808f0..f9b70362a747f7f439cbfded48518b90745789e7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ModeSSquitterType.java
@@ -97,4 +97,10 @@ public enum ModeSSquitterType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ModeSSquitterType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionAppearance.java
index c0bce6a2b7e7856a87802cc32cf297a57c9c19bd..d2c639e4fa2923ed5600e8242268b3cda57cc0ec 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionAppearance.java
@@ -117,4 +117,10 @@ public class MunitionAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "MunitionAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionCapabilities.java
index f6f1f337485fd23f4d67d45117ec42104d8881a6..bbf6742afa014ae68a3d97c7900d82ba139b4108 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionCapabilities.java
@@ -81,4 +81,10 @@ public class MunitionCapabilities extends DisBitSet implements EntityCapabilitie
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "MunitionCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionCategory.java
index db9a1b2e9b181e20720aa4b8d17d5eed57384372..9908e57a417bdbf2ba7d908bad442f30b9700525 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionCategory.java
@@ -97,4 +97,10 @@ public enum MunitionCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MunitionCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorFuse.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorFuse.java
index 8bd88ce6753fe7cc8ca73713df2a92221c3a99e6..8a224e9cbc9d6423718304f077efe1982274b617 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorFuse.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorFuse.java
@@ -288,4 +288,10 @@ public enum MunitionDescriptorFuse
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MunitionDescriptorFuse: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorWarhead.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorWarhead.java
index 38df07484ac4e9098fdbbe8078180c7190fbf33a..6999aa9058c390076ff1ec7b265fff80517b9619 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorWarhead.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDescriptorWarhead.java
@@ -266,4 +266,10 @@ public enum MunitionDescriptorWarhead
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MunitionDescriptorWarhead: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDomain.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDomain.java
index 974cc9e42a8a2ad65956832d906b622192e76439..749b134b9f372f44033f1af70ffc656e1ac8f739 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionDomain.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionDomain.java
@@ -115,4 +115,10 @@ public enum MunitionDomain
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MunitionDomain: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/MunitionExpendableStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/MunitionExpendableStatus.java
index e2f05d0f8d6fb3a0af7affe77d1113e9bb49eb93..920500120e010d5f7e358cfd081f85167ebff28b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/MunitionExpendableStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/MunitionExpendableStatus.java
@@ -95,4 +95,10 @@ public enum MunitionExpendableStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "MunitionExpendableStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordFrequencyTable.java b/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordFrequencyTable.java
index e301e105f011736de4d17b49ea26dcd7d9dee5a6..8023fedb86401f34cfe6b9ebfb9426d24a647124 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordFrequencyTable.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordFrequencyTable.java
@@ -97,4 +97,10 @@ public enum NETIDRecordFrequencyTable
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "NETIDRecordFrequencyTable: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordMode.java b/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordMode.java
index cc2024d3cb030b70ab0416c916a5cc5bda7ebb4a..b96eaec08a604232f69a9d398e3ceecb5c57f184 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordMode.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/NETIDRecordMode.java
@@ -95,4 +95,10 @@ public enum NETIDRecordMode
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "NETIDRecordMode: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/NavigationSource.java b/src-generated/edu/nps/moves/dis7/enumerations/NavigationSource.java
index 1dbad3cedd6f0358629e5f07854e5e864152a14e..c10f9c971c02268f2e26569e3eb937e2e82a7727 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/NavigationSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/NavigationSource.java
@@ -97,4 +97,10 @@ public enum NavigationSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "NavigationSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/NonHumanLifeFormsAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/NonHumanLifeFormsAppearance.java
index d55b63e5b661ba2d4bbf10e0c2dfa49ae412f87c..e3431e2d6abea0b01c1cf58c77882104a2db6ae3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/NonHumanLifeFormsAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/NonHumanLifeFormsAppearance.java
@@ -89,4 +89,10 @@ public class NonHumanLifeFormsAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "NonHumanLifeFormsAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ObjectKind.java b/src-generated/edu/nps/moves/dis7/enumerations/ObjectKind.java
index ee2906234ae5e1f58259a67a0722f4dc6d36d4be..1015f20cdf32bbc9f9091d3187931ea6d78a115e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ObjectKind.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ObjectKind.java
@@ -107,4 +107,10 @@ public enum ObjectKind
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ObjectKind: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateAppearanceGeneral.java b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateAppearanceGeneral.java
index df5bf00b078847409dd4e303630652f82fb2f70e..bab516441342e493c23f9b1286d83276a6a0bcc1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateAppearanceGeneral.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateAppearanceGeneral.java
@@ -101,4 +101,10 @@ public class ObjectStateAppearanceGeneral extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ObjectStateAppearanceGeneral: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationArealObject.java b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationArealObject.java
index 21a73000b49c932c3343efc0f4d27aaff1948557..d35d126d1614c2ba26eb4babd18723aebdb4d081 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationArealObject.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationArealObject.java
@@ -77,4 +77,10 @@ public class ObjectStateModificationArealObject extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ObjectStateModificationArealObject: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationLinearObject.java b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationLinearObject.java
index c12f921f4e4cd45bdfb0af247d334b5de1a7fbd7..3cae88bd4dfc10fd50039cf275c3c0b678cbe21d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationLinearObject.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationLinearObject.java
@@ -81,4 +81,10 @@ public class ObjectStateModificationLinearObject extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ObjectStateModificationLinearObject: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationPointObject.java b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationPointObject.java
index 2ce27a6ed4ad2d499ddd0bd8fd6ab03f842f47b6..9297d7851aeaf8b662ca8352c55b74083569418f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationPointObject.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ObjectStateModificationPointObject.java
@@ -81,4 +81,10 @@ public class ObjectStateModificationPointObject extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "ObjectStateModificationPointObject: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/OwnershipStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/OwnershipStatus.java
index 304ded0165e350ca5750a6067f63fd90556efcde..09515585d588437e172b2af9a493d487d1ffc460 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/OwnershipStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/OwnershipStatus.java
@@ -103,4 +103,10 @@ public enum OwnershipStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "OwnershipStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Parachute.java b/src-generated/edu/nps/moves/dis7/enumerations/Parachute.java
index 30087ac5b9fcad7295f5eb5abe27f30fbf851e3b..3c2dfce80c33c32035d70c7209b37a8bca4f3c6a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Parachute.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Parachute.java
@@ -97,4 +97,10 @@ public enum Parachute
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Parachute: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PhysicalAssociationTypeGroups.java b/src-generated/edu/nps/moves/dis7/enumerations/PhysicalAssociationTypeGroups.java
index 2e93043d847238f30f31ce5df1220f5e064675e7..9786922879123205f09d9e6aa1ca0104b87c45b5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PhysicalAssociationTypeGroups.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PhysicalAssociationTypeGroups.java
@@ -99,4 +99,10 @@ public enum PhysicalAssociationTypeGroups
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PhysicalAssociationTypeGroups: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCategory.java
index 831187b7c73567161b2ed99366486cece2a7e598..6c5812d66cc895409dce772f2744b57ac24e72f0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCategory.java
@@ -142,4 +142,10 @@ public enum PlatformAirCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianFixedWingAircraftSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianFixedWingAircraftSubcategories.java
index 3be486b0c50e5cadfff3cec85f0d980d63615979..6d858aaa70cb93c240a36b749dd90f4ac1219a8c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianFixedWingAircraftSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianFixedWingAircraftSubcategories.java
@@ -107,4 +107,10 @@ public enum PlatformAirCivilianFixedWingAircraftSubcategories implements SubCate
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianFixedWingAircraftSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianGliderSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianGliderSubcategories.java
index a245f3df70b00563423472c90ef9943b6290d8e1..f2003b53ad860d008afa06e06b02725b970a9036 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianGliderSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianGliderSubcategories.java
@@ -95,4 +95,10 @@ public enum PlatformAirCivilianGliderSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianGliderSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianHelicopterSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianHelicopterSubcategories.java
index 8adcdc71239e1727d625d9be9dad99c3398be612..62a599ce7b27b1c0c1a1c57e1c857f5483d1ce52 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianHelicopterSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianHelicopterSubcategories.java
@@ -105,4 +105,10 @@ public enum PlatformAirCivilianHelicopterSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianHelicopterSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirAirshipSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirAirshipSubcategories.java
index ea003eb8c76c3c4e2e72d9b8ca7dc374a87f40d1..4b36bd7a9214360ab9cc7d9649d747b73b6cb34a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirAirshipSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirAirshipSubcategories.java
@@ -99,4 +99,10 @@ public enum PlatformAirCivilianLighterthanAirAirshipSubcategories implements Sub
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianLighterthanAirAirshipSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirBalloonSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirBalloonSubcategories.java
index c4ce6d784f2554758caed1fdf96999028e3c11fa..9ee020180ea4934692109c4b7b8796e6c6bf86ac 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirBalloonSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianLighterthanAirBalloonSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformAirCivilianLighterthanAirBalloonSubcategories implements Sub
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianLighterthanAirBalloonSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories.java
index 33c27db4d7b13b8cf2f3d523529e595881c4da83..69683e30cb57fb465de7b507664c64d78d26ff7b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories imple
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianUltralightNonrigidWingAircraftSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightRigidWingAircraftSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightRigidWingAircraftSubcategories.java
index b661f42b19865e2efab08fc6c73ff3db1e0f857a..277c0b1e9c6f96877eb10e51080f34bd6c90e039 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightRigidWingAircraftSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformAirCivilianUltralightRigidWingAircraftSubcategories.java
@@ -95,4 +95,10 @@ public enum PlatformAirCivilianUltralightRigidWingAircraftSubcategories implemen
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformAirCivilianUltralightRigidWingAircraftSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformDomain.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformDomain.java
index 1dad48134f1ca33b8427341ca10cc97da77a851e..d8757a833fccbd180c36c51e6cdc5157ea8f78a3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformDomain.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformDomain.java
@@ -101,4 +101,10 @@ public enum PlatformDomain
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformDomain: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandBusSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandBusSubcategories.java
index c6fb4166dc1b529ca6301ee78a19f9b28a6653b5..2a5f5079731d4c8524970882b16d7984b5cffbf1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandBusSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandBusSubcategories.java
@@ -129,4 +129,10 @@ public enum PlatformLandBusSubcategories
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandBusSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCarSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCarSubcategories.java
index 00f9144e77e2621faec6b8ceaefeb9eda184d87d..0dd251de5e142fdd1b6c07dfee3b3510c5d8ca6a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCarSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCarSubcategories.java
@@ -179,4 +179,10 @@ public enum PlatformLandCarSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandCarSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCategory.java
index 40128ea80e8e59066146ac6659d4bd944649cf10..9ef84e1d492fdf5503d8f168094173120f2fecfc 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandCategory.java
@@ -187,4 +187,10 @@ public enum PlatformLandCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandConstructionSpecialtyVehicleSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandConstructionSpecialtyVehicleSubcategories.java
index 4d319111006a52368b3e735f89fd5712a908cc34..b35770f98c2b331ba2b9e024a1aa595b7c07477f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandConstructionSpecialtyVehicleSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandConstructionSpecialtyVehicleSubcategories.java
@@ -203,4 +203,10 @@ public enum PlatformLandConstructionSpecialtyVehicleSubcategories implements Sub
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandConstructionSpecialtyVehicleSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandFarmSpecialtyVehicleSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandFarmSpecialtyVehicleSubcategories.java
index beee0226489bc42e61425c1ae4aa0cee34307f40..f720ce3a81d7005adb95f09f4c0ddf8bfd35ef7d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandFarmSpecialtyVehicleSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandFarmSpecialtyVehicleSubcategories.java
@@ -109,4 +109,10 @@ public enum PlatformLandFarmSpecialtyVehicleSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandFarmSpecialtyVehicleSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMotorcycleSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMotorcycleSubcategories.java
index ff0fb397376dec1f5f214351ad3ca1eef607faf6..2662019c06ce0ac526d116646b3aa3a10101ed67 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMotorcycleSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMotorcycleSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformLandMotorcycleSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandMotorcycleSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitCargoTruckSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitCargoTruckSubcategories.java
index bd1f267290eb10df8b1406f0373f0b2c391dc5d5..4f145232528c1ac97e090606def8613b2eeba012 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitCargoTruckSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitCargoTruckSubcategories.java
@@ -97,4 +97,10 @@ public enum PlatformLandMultipleUnitCargoTruckSubcategories implements SubCatego
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandMultipleUnitCargoTruckSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories.java
index cb74483be3691c01347d09df6d8379502262a7d4..ff2e214d34619dd2347b18a8ea120d5bca334008 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories.java
@@ -95,4 +95,10 @@ public enum PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories implement
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandMultipleUnitUtilityEmergencyTruckSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandNonmotorizedSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandNonmotorizedSubcategories.java
index 7a2e215e06f6bf7fa540eb48a702bf56d8de7395..387c5402ea3681c57d84b57af12ec16abdf73e63 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandNonmotorizedSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandNonmotorizedSubcategories.java
@@ -141,4 +141,10 @@ public enum PlatformLandNonmotorizedSubcategories
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandNonmotorizedSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandRecreationalSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandRecreationalSubcategories.java
index b84963bd8fc4257fc997056165d8f9f6437aeefa..02e8b9201da10b2748be9e4000c47f04edb197b3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandRecreationalSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandRecreationalSubcategories.java
@@ -121,4 +121,10 @@ public enum PlatformLandRecreationalSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandRecreationalSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitCargoTruckSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitCargoTruckSubcategories.java
index f8f517ce368b2ebc561bc0d47d1b11cf9ecc388c..780fad7530f19bbfffe46e654f5a109fdcc663fc 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitCargoTruckSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitCargoTruckSubcategories.java
@@ -155,4 +155,10 @@ public enum PlatformLandSingleUnitCargoTruckSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandSingleUnitCargoTruckSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitUtilityEmergencyTruckSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitUtilityEmergencyTruckSubcategories.java
index d1a6f4a0020a9e12ca4f260d1c542f49779784d3..97caad8369d22cbc3c65093c7ec4571988ee432e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitUtilityEmergencyTruckSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandSingleUnitUtilityEmergencyTruckSubcategories.java
@@ -179,4 +179,10 @@ public enum PlatformLandSingleUnitUtilityEmergencyTruckSubcategories implements
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandSingleUnitUtilityEmergencyTruckSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrailerSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrailerSubcategories.java
index 5d99ba96a4f75759a89d622b4ba422cbeadf5184..4ae26f207ce4aa008848e7887fbd2ee572363a4d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrailerSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrailerSubcategories.java
@@ -145,4 +145,10 @@ public enum PlatformLandTrailerSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandTrailerSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrainsSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrainsSubcategories.java
index 5499a65c8cefbe5d344e0ee679f8382f1cb36b0d..be2bcb4dec464541eeb5c0c21ccf7208d50a7719 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrainsSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandTrainsSubcategories.java
@@ -107,4 +107,10 @@ public enum PlatformLandTrainsSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandTrainsSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandUtilityEmergencyCarSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandUtilityEmergencyCarSubcategories.java
index 990e6169fb204f497160424f037f1882fe745b5d..9a2f1c5f7c5b831b63254ae93cccea6d2a91e5d3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandUtilityEmergencyCarSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformLandUtilityEmergencyCarSubcategories.java
@@ -103,4 +103,10 @@ public enum PlatformLandUtilityEmergencyCarSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformLandUtilityEmergencyCarSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSpaceCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSpaceCategory.java
index 5b7dae050d8a255fd5faf119a52fda16a61e8618..bdceea1a3310e2c5b8836eb3a95c70a2a99ebc22 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSpaceCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSpaceCategory.java
@@ -97,4 +97,10 @@ public enum PlatformSpaceCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSpaceCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCategory.java
index fbe28ecbcefb10c4f4e51c8f35ac10e608d548eb..1c4665020dfe70b63eebabbee5501ca6b9dbb9c7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCategory.java
@@ -129,4 +129,10 @@ public enum PlatformSubsurfaceCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSubsurfaceCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories.java
index 793875df02555f69b5f7672d42d651688ecfcffc..6a2583f2e55bc27d6187a79914da4821b2e8e79b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories.java
@@ -93,4 +93,10 @@ public enum PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories implements S
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSubsurfaceCivilianSemiSubmersiblesSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmarineSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmarineSubcategories.java
index deceb2f4f28199982f5ee7811c8a882af34fd6b8..7d588cb2733bef414715d43c02555367b155577b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmarineSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmarineSubcategories.java
@@ -93,4 +93,10 @@ public enum PlatformSubsurfaceCivilianSubmarineSubcategories implements SubCateg
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSubsurfaceCivilianSubmarineSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmersibleSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmersibleSubcategories.java
index 1e03634f342b315a1dd77eeba51cf1061eca29bc..4dc64688d851e833eef9518aa65d0cad544a68ee 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmersibleSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSubsurfaceCivilianSubmersibleSubcategories.java
@@ -93,4 +93,10 @@ public enum PlatformSubsurfaceCivilianSubmersibleSubcategories implements SubCat
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSubsurfaceCivilianSubmersibleSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceCategory.java
index 8fe47694aabbe849717b7bc2e5e4f5f98acd847e..ae68fca12ae1d823584aa573cc3e248c50446295 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceCategory.java
@@ -174,4 +174,10 @@ public enum PlatformSurfaceCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceDryCargoShipSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceDryCargoShipSubcategories.java
index 0387da444829816d34ed966778565a7325e16c4a..f9cb5975640ae792eac19d28aeae995cdb1f5edd 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceDryCargoShipSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceDryCargoShipSubcategories.java
@@ -105,4 +105,10 @@ public enum PlatformSurfaceDryCargoShipSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceDryCargoShipSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceFishingVesselSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceFishingVesselSubcategories.java
index ce5907872a5ee3edaa24f4e2b541046f5fa393f0..59d4492d4029be93f3eb4111e637528eae3930b5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceFishingVesselSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceFishingVesselSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformSurfaceFishingVesselSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceFishingVesselSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceOtherVesselsSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceOtherVesselsSubcategories.java
index 1bb812ea7842d54239c02444b4eb74f7ad222452..4d865ef06292097dc89316b187509624aa6dc58b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceOtherVesselsSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceOtherVesselsSubcategories.java
@@ -111,4 +111,10 @@ public enum PlatformSurfaceOtherVesselsSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceOtherVesselsSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePassengerVesselSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePassengerVesselSubcategories.java
index aeadd313a51f8161344673eecf3b7e346d752472..932d210a5f24c01fa7154a2e2c08c67995001e0f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePassengerVesselSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePassengerVesselSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformSurfacePassengerVesselSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfacePassengerVesselSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateMotorboatSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateMotorboatSubcategories.java
index 02eff228b28a2a1f039f728edb130450702378ce..a27645ebef516be6eee1cbd701f879914af4ecf5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateMotorboatSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateMotorboatSubcategories.java
@@ -99,4 +99,10 @@ public enum PlatformSurfacePrivateMotorboatSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfacePrivateMotorboatSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateSailboatSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateSailboatSubcategories.java
index c2cc79922a9c2662f6cc7765ac941e61ac83bc9c..cae5bc24d319656a3a0b61b99530486c97149c7f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateSailboatSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfacePrivateSailboatSubcategories.java
@@ -99,4 +99,10 @@ public enum PlatformSurfacePrivateSailboatSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfacePrivateSailboatSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceSupportVesselSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceSupportVesselSubcategories.java
index 63c0f2a592b6b8392ad21fd2c93e5917916d7ad3..c89c05788e10e9202e802da6af98ba4cc515f052 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceSupportVesselSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceSupportVesselSubcategories.java
@@ -101,4 +101,10 @@ public enum PlatformSurfaceSupportVesselSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceSupportVesselSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceTankerSubcategories.java b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceTankerSubcategories.java
index 764d195fa692df4b8f77ffb91b583eda3c77249e..ced6b9cbf0d7d121c9bcd6660b42753d666b26f5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceTankerSubcategories.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PlatformSurfaceTankerSubcategories.java
@@ -109,4 +109,10 @@ public enum PlatformSurfaceTankerSubcategories implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "PlatformSurfaceTankerSubcategories: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceAirGroundBurst.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceAirGroundBurst.java
index 1c94a02eda4f1c0d87801d1d170dcac2ed9b4ac3..146274f6d2fd93a72ecd6e6710d12aeb5189c205 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceAirGroundBurst.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceAirGroundBurst.java
@@ -93,4 +93,10 @@ public class PointObjectAppearanceAirGroundBurst extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceAirGroundBurst: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingRubble.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingRubble.java
index abec15cc6ae7fffbffc96d686f56920222af8629..56e9eb0284324b6808beadd2e8910bc8f0be641d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingRubble.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingRubble.java
@@ -74,4 +74,10 @@ public class PointObjectAppearanceBuildingRubble extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceBuildingRubble: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingStructure.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingStructure.java
index 9daf4657d262069ea8b2eba50bd36177ec143301..539c584eff90863f2b2e3fb4e24ce9b8cda51a12 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingStructure.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceBuildingStructure.java
@@ -85,4 +85,10 @@ public class PointObjectAppearanceBuildingStructure extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceBuildingStructure: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceCrater.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceCrater.java
index c738af7c6822472c9eab0795798c5542899a153d..7bceec5302f631f230ddbe63d9cfe0ee7cf8ec71 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceCrater.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceCrater.java
@@ -89,4 +89,10 @@ public class PointObjectAppearanceCrater extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceCrater: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceDisturbedEarthRoad.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceDisturbedEarthRoad.java
index f54b32f78848fbf34c401dc858cd7661e7395fb9..83c53c2b60b9f38775cc216716442fe2bf6413ad 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceDisturbedEarthRoad.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceDisturbedEarthRoad.java
@@ -85,4 +85,10 @@ public class PointObjectAppearanceDisturbedEarthRoad extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceDisturbedEarthRoad: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceLogCribAbatisEtAl.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceLogCribAbatisEtAl.java
index aa2cf21a0fc64a9595fe8e1de82a508fb734ed78..094206865cdf0bbd5f0d94cf0f1108e5317d0055 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceLogCribAbatisEtAl.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceLogCribAbatisEtAl.java
@@ -77,4 +77,10 @@ public class PointObjectAppearanceLogCribAbatisEtAl extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceLogCribAbatisEtAl: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearancePothole.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearancePothole.java
index dc9249b658c672319e3acf402182f11ab667504f..37f7c11051e723829ae6b5013a541d630708da25 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearancePothole.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearancePothole.java
@@ -81,4 +81,10 @@ public class PointObjectAppearancePothole extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearancePothole: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceRibbonBridge.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceRibbonBridge.java
index 9f37a570f0b2aaefa9b752758d43d16bf1cac568..6a9e362081471932ccf8e862c21c69c89952751f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceRibbonBridge.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceRibbonBridge.java
@@ -77,4 +77,10 @@ public class PointObjectAppearanceRibbonBridge extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceRibbonBridge: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceStationaryBridgeAndAVLB.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceStationaryBridgeAndAVLB.java
index 237a45bbea0253601f8ac8b03189ca0d76d970be..f33befacad57d98e59c9d453d3130f899563d514 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceStationaryBridgeAndAVLB.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceStationaryBridgeAndAVLB.java
@@ -74,4 +74,10 @@ public class PointObjectAppearanceStationaryBridgeAndAVLB extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceStationaryBridgeAndAVLB: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceTree.java b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceTree.java
index 820126658a517cda8916b44e43f437a2a3653740..1f28050780aefc5394d3c726436ff523d4d577af 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceTree.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/PointObjectAppearanceTree.java
@@ -81,4 +81,10 @@ public class PointObjectAppearanceTree extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "PointObjectAppearanceTree: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RadioAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/RadioAppearance.java
index 6bd6df5c8450751451ce601baf1e8795273b4f41..feebecac2e10d9a827c6351a80bc3b34fe7aa1d1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RadioAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RadioAppearance.java
@@ -81,4 +81,10 @@ public class RadioAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "RadioAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RadioCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/RadioCapabilities.java
index b5a0e2569cb5e4dc332f06516673edb630727b10..10a201cf0da4a7f9d3f2cfff6698423b43675133 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RadioCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RadioCapabilities.java
@@ -77,4 +77,10 @@ public class RadioCapabilities extends DisBitSet implements EntityCapabilities
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "RadioCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RadioCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/RadioCategory.java
index 1783d6460572dcb7b6d02727469c3ce741808b08..c91388ba96611056f5ac758656e3b1ea5fdb6f57 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RadioCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RadioCategory.java
@@ -173,4 +173,10 @@ public enum RadioCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RadioCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RadioSubcategory.java b/src-generated/edu/nps/moves/dis7/enumerations/RadioSubcategory.java
index 476f02645d1972b1729ed329714fd75ea3eefad0..ab4bc4e4420bb12d7e0dc5147b2d2ec64cbaa51f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RadioSubcategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RadioSubcategory.java
@@ -196,4 +196,10 @@ public enum RadioSubcategory implements SubCategory
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RadioSubcategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ReceiverReceiverState.java b/src-generated/edu/nps/moves/dis7/enumerations/ReceiverReceiverState.java
index e5ee6e6732f75795fe9f6e93b42ebacbb39049a6..72cf4a189698a7a0a69b400f9fe4d202ba58841d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ReceiverReceiverState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ReceiverReceiverState.java
@@ -80,4 +80,10 @@ public enum ReceiverReceiverState
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ReceiverReceiverState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RecordQueryREventType.java b/src-generated/edu/nps/moves/dis7/enumerations/RecordQueryREventType.java
index 421d3ad733071b76ffce67915bcd408079786a58..34799b8b0c2142081fe7e779926f9bbdea323364 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RecordQueryREventType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RecordQueryREventType.java
@@ -78,4 +78,10 @@ public enum RecordQueryREventType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RecordQueryREventType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RecordREventType.java b/src-generated/edu/nps/moves/dis7/enumerations/RecordREventType.java
index e14b55d6997dab9e18bfdb0d87b89948d7bd3bb1..44d2915a214b21b88534aff17218c7dc44bbd6c3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RecordREventType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RecordREventType.java
@@ -76,4 +76,10 @@ public enum RecordREventType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RecordREventType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RepairCompleteRepair.java b/src-generated/edu/nps/moves/dis7/enumerations/RepairCompleteRepair.java
index 4d77a08bb9dd299d37b4176848fbe2d01de946dd..3711ac93cb0a1f62e5c6a704816b76909144a988 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RepairCompleteRepair.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RepairCompleteRepair.java
@@ -242,4 +242,10 @@ public enum RepairCompleteRepair
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RepairCompleteRepair: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RepairGroups.java b/src-generated/edu/nps/moves/dis7/enumerations/RepairGroups.java
index 9e77cdf010c4b3460303614bb0e348d0152dc588..40e93bdbd7f3c08aaa4fd64784a3920213171bfd 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RepairGroups.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RepairGroups.java
@@ -109,4 +109,10 @@ public enum RepairGroups
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RepairGroups: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RepairResponseRepairResult.java b/src-generated/edu/nps/moves/dis7/enumerations/RepairResponseRepairResult.java
index 48522bd53b503bd5cd64542b6d8491078c6a43bf..83b31c175fc02cb7621dbb3614bf0a91f11530fa 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RepairResponseRepairResult.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RepairResponseRepairResult.java
@@ -99,4 +99,10 @@ public enum RepairResponseRepairResult
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RepairResponseRepairResult: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ReplyAmplification.java b/src-generated/edu/nps/moves/dis7/enumerations/ReplyAmplification.java
index e186519824c74e3ef6d5bae99c5d38a96cd35b09..d7a515f3efbb442009d84ad0334579fc55a0951c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ReplyAmplification.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ReplyAmplification.java
@@ -97,4 +97,10 @@ public enum ReplyAmplification
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ReplyAmplification: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/RequiredReliabilityService.java b/src-generated/edu/nps/moves/dis7/enumerations/RequiredReliabilityService.java
index d6a8d3a10bf4aa0b8f1b842c638e037fefce409d..e786debb47fa06b0ee73062604aff9fa170c69ff 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/RequiredReliabilityService.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/RequiredReliabilityService.java
@@ -93,4 +93,10 @@ public enum RequiredReliabilityService
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "RequiredReliabilityService: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/Season.java b/src-generated/edu/nps/moves/dis7/enumerations/Season.java
index 6b1340c93e445bc576c5f1032f67ee2fc30d7c62..e9e991d745c02584ca5fa47d5c1ea2106ac305f9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/Season.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/Season.java
@@ -97,4 +97,10 @@ public enum Season
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "Season: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterAppearance.java
index ad141baa500a054edeadcfa944fbf27034b6edc4..9a5cb3bd00660fe710735fa761a41d90ccc868a9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterAppearance.java
@@ -145,4 +145,10 @@ public class SensorEmitterAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SensorEmitterAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCapabilities.java
index 4d14209160bc68bf10108f206e59985cc5ce6b17..62aa252e4bc27885e6ed6225667a195a4ecb9010 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCapabilities.java
@@ -89,4 +89,10 @@ public class SensorEmitterCapabilities extends DisBitSet implements EntityCapabi
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SensorEmitterCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCategory.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCategory.java
index 9ad9228a13e45f3fc832de5e7e30390bd52bb2e2..65c221f8d5b0b195662a5ab63ddec27b706c6ed3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCategory.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorEmitterCategory.java
@@ -123,4 +123,10 @@ public enum SensorEmitterCategory implements Category
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SensorEmitterCategory: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorOnOffStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorOnOffStatus.java
index a7de380d8942d0cd74d1a02d0d78e6c3f86f723c..b2ffeaff4663c7a1d5cdaff340f2e3fcea696cef 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorOnOffStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorOnOffStatus.java
@@ -93,4 +93,10 @@ public enum SensorOnOffStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SensorOnOffStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypeOtherActiveSensors.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypeOtherActiveSensors.java
index e00571f770047881a202aa4f7249d3e54c7baf9c..76cf4b7da0903c0ad884270cf8f60972169141db 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypeOtherActiveSensors.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypeOtherActiveSensors.java
@@ -76,4 +76,10 @@ public enum SensorRecordSensorTypeOtherActiveSensors
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SensorRecordSensorTypeOtherActiveSensors: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypePassiveSensors.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypePassiveSensors.java
index b66a31f6071846a38747752a25a48cedbff27113..5c556bf3cfd7182aa26faa980df45df7d603dbe8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypePassiveSensors.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorRecordSensorTypePassiveSensors.java
@@ -164,4 +164,10 @@ public enum SensorRecordSensorTypePassiveSensors
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SensorRecordSensorTypePassiveSensors: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SensorTypeSource.java b/src-generated/edu/nps/moves/dis7/enumerations/SensorTypeSource.java
index e46f54b00e5acb6a78480d3819ace4c15051654c..01a8508aae716fd76a92f776167174adf5edc2b0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SensorTypeSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SensorTypeSource.java
@@ -101,4 +101,10 @@ public enum SensorTypeSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SensorTypeSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPPreEntityIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPPreEntityIndicator.java
index 8131d147bd8c979d5acfbc0d15c2385497f200d6..c2297fc456fe955e67d05f124efb77d19bf9830b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPPreEntityIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPPreEntityIndicator.java
@@ -97,4 +97,10 @@ public enum SeparationVPPreEntityIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SeparationVPPreEntityIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPReasonforSeparation.java b/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPReasonforSeparation.java
index aede7a0f9790f43fa230cc26a8111b406195c1a2..f135efa2b9d7c997e1a8dbee5ced369211b14416 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPReasonforSeparation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SeparationVPReasonforSeparation.java
@@ -95,4 +95,10 @@ public enum SeparationVPReasonforSeparation
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SeparationVPReasonforSeparation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/ServiceRequestServiceTypeRequested.java b/src-generated/edu/nps/moves/dis7/enumerations/ServiceRequestServiceTypeRequested.java
index 66d46052a76ea492bf2c6ceb519d6483fa6bc6e4..81376306325d1380eb6860a61b29cc73d98d319d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/ServiceRequestServiceTypeRequested.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/ServiceRequestServiceTypeRequested.java
@@ -99,4 +99,10 @@ public enum ServiceRequestServiceTypeRequested
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "ServiceRequestServiceTypeRequested: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingClass.java b/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingClass.java
index 5745973476666bdce2702f1d894e274cba7ee44b..ee85251df27194c7717a7258835e37feba059a72 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingClass.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingClass.java
@@ -97,4 +97,10 @@ public enum SignalEncodingClass
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SignalEncodingClass: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingType.java b/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingType.java
index db220f2682020a6f09f0a6055dbe416ccfb25af6..1b5bff6ef96f70cce837e7e8f551b2bc5903aade 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SignalEncodingType.java
@@ -98,4 +98,10 @@ public enum SignalEncodingType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SignalEncodingType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SignalTDLType.java b/src-generated/edu/nps/moves/dis7/enumerations/SignalTDLType.java
index 9afc9dbd0d97727f3e912920e3e47f433dce88be..b8e49f5486464d3270af1050e9dfa521e4a23a5d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SignalTDLType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SignalTDLType.java
@@ -264,4 +264,10 @@ public enum SignalTDLType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SignalTDLType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SignalUserProtocolIdentificationNumber.java b/src-generated/edu/nps/moves/dis7/enumerations/SignalUserProtocolIdentificationNumber.java
index 7d641a797ef24d9023df317590693297098a0f54..8d16786c56e64cf1f24484ec2ed1f391c7b27e67 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SignalUserProtocolIdentificationNumber.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SignalUserProtocolIdentificationNumber.java
@@ -142,4 +142,10 @@ public enum SignalUserProtocolIdentificationNumber
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SignalUserProtocolIdentificationNumber: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformAppearance.java
index f0cabc91a672578684db939a6612cece028433f1..bf773032b0226f4424e29c4cd8c5d72d0f0ac61e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformAppearance.java
@@ -109,4 +109,10 @@ public class SpacePlatformAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SpacePlatformAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformCapabilities.java
index bf122b9c3b580e9755b359b0e6e8f705dc921111..42d0f32af3e5276912e5cae52abd932ecb57aee1 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SpacePlatformCapabilities.java
@@ -93,4 +93,10 @@ public class SpacePlatformCapabilities extends DisBitSet implements EntityCapabi
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SpacePlatformCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforAirAreaSize.java b/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforAirAreaSize.java
index 8a529822ee1f25e4b2aa2c2b0a7309654cb5d655..d2d511835f8f1a1f118e7745df3ee7ee7afbedac 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforAirAreaSize.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforAirAreaSize.java
@@ -103,4 +103,10 @@ public enum SpecificDimensionEnumerationsforAirAreaSize
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SpecificDimensionEnumerationsforAirAreaSize: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforLandAreaSize.java b/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforLandAreaSize.java
index 9b8460f46e3cd634149cdcc1e640bfb6ca98ff7f..9cc598768e889041fc144082717a66836b5543b6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforLandAreaSize.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SpecificDimensionEnumerationsforLandAreaSize.java
@@ -103,4 +103,10 @@ public enum SpecificDimensionEnumerationsforLandAreaSize
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SpecificDimensionEnumerationsforLandAreaSize: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SpotChaffStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/SpotChaffStatus.java
index 6f1f96e391ea795abd31b5ed7372654a273062cb..ef76e9110a7eee56c9983930053f7070f52e1e44 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SpotChaffStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SpotChaffStatus.java
@@ -95,4 +95,10 @@ public enum SpotChaffStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SpotChaffStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeFrozenBehavior.java b/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeFrozenBehavior.java
index 84d263a559c3b5eec2d081ba88f61fd4fc3ab5b6..fa74dddf613f5bdca5e74cec1f3f5e31e9bc6a9d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeFrozenBehavior.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeFrozenBehavior.java
@@ -85,4 +85,10 @@ public class StopFreezeFrozenBehavior extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "StopFreezeFrozenBehavior: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeReason.java b/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeReason.java
index 2d7b790335448c4ecee6a4c37e230e2c72e22b75..4aff54ca5f6144dc1224c2cffe83449c38a8a9cf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeReason.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/StopFreezeReason.java
@@ -107,4 +107,10 @@ public enum StopFreezeReason
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "StopFreezeReason: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory200Bird.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory200Bird.java
index 9717aa62d154dd296ca0423bae4c2850053f3432..d2b4f64a796526a4f18a9952d3575ab48c8f3f81 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory200Bird.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory200Bird.java
@@ -143,4 +143,10 @@ public enum SubcategoriesforAirCategory200Bird implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforAirCategory200Bird: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory201Insect.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory201Insect.java
index 1dab496bcd718ce9c46e5436a288b23753453718..ea0e264d9a3184f7e0275a9a349bcf79c8f1a50c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory201Insect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory201Insect.java
@@ -107,4 +107,10 @@ public enum SubcategoriesforAirCategory201Insect implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforAirCategory201Insect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory202Mammal.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory202Mammal.java
index dfc69bdc95d91681b465f3f1b369ee2972081206..c33f1860a85fbaa3cc3e2161e41f3e5af5564bcb 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory202Mammal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforAirCategory202Mammal.java
@@ -95,4 +95,10 @@ public enum SubcategoriesforAirCategory202Mammal implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforAirCategory202Mammal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory200Mammal.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory200Mammal.java
index 08d2ba9042638d0d36a636b93fe758c2f11217e7..8d5eda9697be7b0631438fae1e39c569cab7eddf 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory200Mammal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory200Mammal.java
@@ -149,4 +149,10 @@ public enum SubcategoriesforLandCategory200Mammal implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory200Mammal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory201Reptile.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory201Reptile.java
index 22321619acca7cb6f96ffc3fbd44b4253d70f30f..961b0db26fd132330cf7f5f3bb8e7996582287df 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory201Reptile.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory201Reptile.java
@@ -135,4 +135,10 @@ public enum SubcategoriesforLandCategory201Reptile implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory201Reptile: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory202Amphibian.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory202Amphibian.java
index aa1c1477ae51e31acf06b609016f286888d77ebd..2c2b95cf355adf639e70c2574a88684b093c4d44 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory202Amphibian.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory202Amphibian.java
@@ -97,4 +97,10 @@ public enum SubcategoriesforLandCategory202Amphibian implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory202Amphibian: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory203Insect.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory203Insect.java
index e19314864b23ff46a8be75b73c79a021ad019fbf..7492b6f9b4e5f7e37d4c764cd4a23fb14c8f5ff7 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory203Insect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory203Insect.java
@@ -103,4 +103,10 @@ public enum SubcategoriesforLandCategory203Insect implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory203Insect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory204Arachnid.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory204Arachnid.java
index d31180b24fe14ff6abf2e4f1c614348064af1c06..0b3520090fce86f70e5f57868b22ba8aafc24550 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory204Arachnid.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory204Arachnid.java
@@ -99,4 +99,10 @@ public enum SubcategoriesforLandCategory204Arachnid implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory204Arachnid: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory205Mollusk.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory205Mollusk.java
index 7774795c1afcb893188676732a1de3cf4574e673..dc2c311d6d7903215a758f5c7997b98aba9150a0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory205Mollusk.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory205Mollusk.java
@@ -93,4 +93,10 @@ public enum SubcategoriesforLandCategory205Mollusk implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory205Mollusk: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory206Marsupial.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory206Marsupial.java
index ddb360bfc2cd9d6fdc1c7b5291383978c6c92c87..ad086933cc4b48b9d708b95105383114225a3d2c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory206Marsupial.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforLandCategory206Marsupial.java
@@ -115,4 +115,10 @@ public enum SubcategoriesforLandCategory206Marsupial
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforLandCategory206Marsupial: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory200Fish.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory200Fish.java
index 53df750d603af382c7d2d9a793e230556b0b33de..0f8c98c6514211d65929d58d99465595e608756a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory200Fish.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory200Fish.java
@@ -143,4 +143,10 @@ public enum SubcategoriesforSubsurfaceCategory200Fish implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforSubsurfaceCategory200Fish: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory201Mammal.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory201Mammal.java
index b448629757a268c23f23b49f6b67707bfc8d8c49..0ad746b9905e72071032ff0eb4add7caad4124b8 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory201Mammal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory201Mammal.java
@@ -207,4 +207,10 @@ public enum SubcategoriesforSubsurfaceCategory201Mammal implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforSubsurfaceCategory201Mammal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory202Mollusk.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory202Mollusk.java
index 5085f8857465479583b05c1787c7fb872c1a9064..7d406d14fb143f31bbaae15061b3b421b76cbc33 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory202Mollusk.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory202Mollusk.java
@@ -107,4 +107,10 @@ public enum SubcategoriesforSubsurfaceCategory202Mollusk implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforSubsurfaceCategory202Mollusk: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory203Crustacean.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory203Crustacean.java
index bc98d80dd94eaccbf5f54f3711ade96e394a770a..5f9d7c1a120c746870e5ee2515bf5e793921ac0b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory203Crustacean.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory203Crustacean.java
@@ -99,4 +99,10 @@ public enum SubcategoriesforSubsurfaceCategory203Crustacean implements SubCatego
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforSubsurfaceCategory203Crustacean: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory204Insect.java b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory204Insect.java
index ad21e8b9e0eee7b0d9231a7ad2538d554496f91e..82b38a9871ebaffc950dde063824f10da9134bee 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory204Insect.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubcategoriesforSubsurfaceCategory204Insect.java
@@ -93,4 +93,10 @@ public enum SubcategoriesforSubsurfaceCategory204Insect implements SubCategory
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SubcategoriesforSubsurfaceCategory204Insect: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformAppearance.java
index 8eed636f778ae8d6036b0b9290105b4a8e1ead0f..f7886d94a509521a5ee6a82ab1456c659ccad63e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformAppearance.java
@@ -117,4 +117,10 @@ public class SubsurfacePlatformAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SubsurfacePlatformAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformCapabilities.java
index d7a855e54d6e3d27a7feb302ca7de85c05769b84..0a25a10b393a2b1134843ba752d6b771c6e1bdc5 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SubsurfacePlatformCapabilities.java
@@ -105,4 +105,10 @@ public class SubsurfacePlatformCapabilities extends DisBitSet implements EntityC
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SubsurfacePlatformCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SupplyAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/SupplyAppearance.java
index d6bc52b157b5023a4af76d8d33f250ee4cd77242..b61bd9926bfc88c986112f7b28d5e30d75b8ac95 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SupplyAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SupplyAppearance.java
@@ -105,4 +105,10 @@ public class SupplyAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SupplyAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SupplyCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/SupplyCapabilities.java
index 95d01026ce8cc5b2e609fede06e79abe7ac01cc1..699be87af5e8448f7efd29f150d6a7fbc01257a6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SupplyCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SupplyCapabilities.java
@@ -93,4 +93,10 @@ public class SupplyCapabilities extends DisBitSet implements EntityCapabilities
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SupplyCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SupplyDomain.java b/src-generated/edu/nps/moves/dis7/enumerations/SupplyDomain.java
index cab5d1d094cd660092eb97e5857b515037abf254..2652519a13c0ad68057def8749f5e6cebd797151 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SupplyDomain.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SupplyDomain.java
@@ -115,4 +115,10 @@ public enum SupplyDomain
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SupplyDomain: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SupplyFuelType.java b/src-generated/edu/nps/moves/dis7/enumerations/SupplyFuelType.java
index 13fad9b258af23e9c2c676b7c2e16e96417f176d..efc637f75475970405bf0bd545dad4294c2a2f0a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SupplyFuelType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SupplyFuelType.java
@@ -113,4 +113,10 @@ public enum SupplyFuelType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SupplyFuelType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformAppearance.java b/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformAppearance.java
index 37a8a540f6b966825a6e2b2cf0d370b8dac6adab..6796d0edfb25aae257976402496431f1d7b5d48b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformAppearance.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformAppearance.java
@@ -125,4 +125,10 @@ public class SurfacePlatformAppearance extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SurfacePlatformAppearance: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformCapabilities.java b/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformCapabilities.java
index c8492db4599c4514c198bb95b5c3b12916a47aa6..0f4ef516f1ffb7f5e9980727fa19da942c9402d0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformCapabilities.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SurfacePlatformCapabilities.java
@@ -105,4 +105,10 @@ public class SurfacePlatformCapabilities extends DisBitSet implements EntityCapa
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "SurfacePlatformCapabilities: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/SurveillanceStatus.java b/src-generated/edu/nps/moves/dis7/enumerations/SurveillanceStatus.java
index b918550dea6a58996d60f4b2e960c4e80c0079a9..03b0b718c160141c8571db8aacd5fd88c43e06c9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/SurveillanceStatus.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/SurveillanceStatus.java
@@ -97,4 +97,10 @@ public enum SurveillanceStatus
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "SurveillanceStatus: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASBasicAdvancedIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASBasicAdvancedIndicator.java
index 5f053185aa5b66e1fcf90512b9ce2c757f2d9b37..0d3c2b3fd04bd72473488499573d0b9f590aebd9 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASBasicAdvancedIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASBasicAdvancedIndicator.java
@@ -93,4 +93,10 @@ public enum TCASACASBasicAdvancedIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TCASACASBasicAdvancedIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASIndicator.java
index e81bcbde12212a231b214ee5de468a6d1f901079..c72c7cf5be0cb2b7e3334615c8e5ec53e594697d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASIndicator.java
@@ -93,4 +93,10 @@ public enum TCASACASIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TCASACASIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASSoftwareVersion.java b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASSoftwareVersion.java
index 73c0640196f08fb904160ab368c854c7d1aa4e8d..84c95d5b6328f24619d1edd6ef90c6ad1659cf15 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASSoftwareVersion.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASSoftwareVersion.java
@@ -95,4 +95,10 @@ public enum TCASACASSoftwareVersion
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TCASACASSoftwareVersion: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASType.java b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASType.java
index d78f446d65b8f9898ce0f714ea85a4a5dab4a251..dc55209c78eefb2d632b9172621fcb53711cfb45 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TCASACASType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TCASACASType.java
@@ -95,4 +95,10 @@ public enum TCASACASType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TCASACASType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TCASIIIType.java b/src-generated/edu/nps/moves/dis7/enumerations/TCASIIIType.java
index b34688b0a1196e93030d7023eab8d9031d0cc808..add821ba908c829e297ab73dc7608555e49441a6 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TCASIIIType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TCASIIIType.java
@@ -93,4 +93,10 @@ public enum TCASIIIType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TCASIIIType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TILinkType.java b/src-generated/edu/nps/moves/dis7/enumerations/TILinkType.java
index 2834486ffc3a5d9c7a525d13335ce6f03d68a556..949ac105ad759294b952566a6a1f5bd3a04e880e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TILinkType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TILinkType.java
@@ -100,4 +100,10 @@ public enum TILinkType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TILinkType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TimeTypeSource.java b/src-generated/edu/nps/moves/dis7/enumerations/TimeTypeSource.java
index cc90ae90f5ced4da0b6275666b0c6cd0d3b1abde..02228952c1c49ca101a6094a56e3a0bcf46b4e9c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TimeTypeSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TimeTypeSource.java
@@ -95,4 +95,10 @@ public enum TimeTypeSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TimeTypeSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransferControlTransferType.java b/src-generated/edu/nps/moves/dis7/enumerations/TransferControlTransferType.java
index ac813ee560e403e19022048da25df0c5bdeffabc..7adae8673196be89ce22879f9a29f16ce28420ab 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransferControlTransferType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransferControlTransferType.java
@@ -111,4 +111,10 @@ public enum TransferControlTransferType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransferControlTransferType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmissionIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmissionIndicator.java
index 231a54e8808cf7fc161320a465e69295369942a1..8e4d68e193769daa4ef836aec35db17e891bf19a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmissionIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmissionIndicator.java
@@ -97,4 +97,10 @@ public enum TransmissionIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmissionIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternReferenceSystem.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternReferenceSystem.java
index b742ba9975f8385a1456104eb9422dcab7d5cdbd..e7ea12b9d52450777ef6e0a43f1ae2b360aa2436 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternReferenceSystem.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternReferenceSystem.java
@@ -93,4 +93,10 @@ public enum TransmitterAntennaPatternReferenceSystem
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterAntennaPatternReferenceSystem: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternType.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternType.java
index 1e3ab03be58d88df4d802e69f18214f44d690b5b..6a053f70c6010e26d47e8b978aa71bbdf307b37d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterAntennaPatternType.java
@@ -84,4 +84,10 @@ public enum TransmitterAntennaPatternType
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterAntennaPatternType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterCryptoSystem.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterCryptoSystem.java
index 72b237c155ea54e553fb35eaa34391c4649e76ee..00e9c204bef2ef9c5e35eda93c8ac34e6d3ac58c 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterCryptoSystem.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterCryptoSystem.java
@@ -102,4 +102,10 @@ public enum TransmitterCryptoSystem
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterCryptoSystem: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeModulation.java
index 73683073e4bb4a9f08e83dd19edd0dd95fa981f6..02de21f04050e589648851f156b61f8b65dc32e2 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeModulation.java
@@ -96,4 +96,10 @@ public enum TransmitterDetailAmplitudeModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailAmplitudeModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeandAngleModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeandAngleModulation.java
index f5b3a1e49dc113b757e24d965201964d50e3b057..16d8167a0d245a8c0834e837b12daf7caedccc7e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeandAngleModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAmplitudeandAngleModulation.java
@@ -78,4 +78,10 @@ public enum TransmitterDetailAmplitudeandAngleModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailAmplitudeandAngleModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAnglemodulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAnglemodulation.java
index 5e08fab241c2f6bb4d51b18835693f8af4a38912..54c90edd46b460f6a8c2bde30fc9f0caf9a850bd 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAnglemodulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailAnglemodulation.java
@@ -82,4 +82,10 @@ public enum TransmitterDetailAnglemodulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailAnglemodulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCarrierPhaseShiftModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCarrierPhaseShiftModulation.java
index 23990f77742b9d0424fc9d1e52330f5f68238e8a..c1b2bc7810cbc3e14f8b4b82dd05b2cbdf215682 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCarrierPhaseShiftModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCarrierPhaseShiftModulation.java
@@ -76,4 +76,10 @@ public enum TransmitterDetailCarrierPhaseShiftModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailCarrierPhaseShiftModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCombinationModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCombinationModulation.java
index 589b46b70c03a91be9c32699b9f490da487afa79..fc16c786a2ff7e466c473896578c0b00aad4fb77 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCombinationModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailCombinationModulation.java
@@ -78,4 +78,10 @@ public enum TransmitterDetailCombinationModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailCombinationModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailPulseModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailPulseModulation.java
index 5f7e6fd8b68a34050d5e5904bcc79776186f00ef..5f4b074379ea937b9ca1176c9eea0ba91cd38d14 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailPulseModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailPulseModulation.java
@@ -82,4 +82,10 @@ public enum TransmitterDetailPulseModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailPulseModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailSATCOMModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailSATCOMModulation.java
index 885fca7a640425c8f8a3dfe999f444fc4d0ee7a0..9d4c5e73e8d9b32242f157d392544d110f15cfd3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailSATCOMModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailSATCOMModulation.java
@@ -78,4 +78,10 @@ public enum TransmitterDetailSATCOMModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailSATCOMModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailUnmodulatedModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailUnmodulatedModulation.java
index 128133de11fea1d5c72615142aac5b34e5533d60..824fbe1a2083a8164776f78ab427110f1a772256 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailUnmodulatedModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterDetailUnmodulatedModulation.java
@@ -78,4 +78,10 @@ public enum TransmitterDetailUnmodulatedModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterDetailUnmodulatedModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterInputSource.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterInputSource.java
index da7a8df8a9eb97291b15fe260a9afe8fc5e55799..b9d67d5bd33a23cfaf66f3042b46390fd5bb4ea0 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterInputSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterInputSource.java
@@ -119,4 +119,10 @@ public enum TransmitterInputSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterInputSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterMajorModulation.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterMajorModulation.java
index bd90f995ba41672755400cc21d2feb79e471a1da..cd3f22616d25dee68cbdd12d549bbc4e52dd98aa 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterMajorModulation.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterMajorModulation.java
@@ -84,4 +84,10 @@ public enum TransmitterMajorModulation
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterMajorModulation: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterModulationTypeSystem.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterModulationTypeSystem.java
index d2c315df8cba4d2228fd38b60c32348898e11451..c81ef5ffda2ad54a61f51ad8de9ba18d49ec9106 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterModulationTypeSystem.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterModulationTypeSystem.java
@@ -102,4 +102,10 @@ public enum TransmitterModulationTypeSystem
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterModulationTypeSystem: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterTransmitState.java b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterTransmitState.java
index b6eb16f28ede1fed9ee996815f5e09d9bb8e695c..45e1d60797d6d0e0d3c88b0a8ca8b2ea4e8a7223 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransmitterTransmitState.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransmitterTransmitState.java
@@ -95,4 +95,10 @@ public enum TransmitterTransmitState
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransmitterTransmitState: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TransponderInterrogatorIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/TransponderInterrogatorIndicator.java
index 07420224ff71b3a6436a0f69eafadaca375d86f1..493dd169209125f052f01ff96a29539528155d4d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TransponderInterrogatorIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TransponderInterrogatorIndicator.java
@@ -93,4 +93,10 @@ public enum TransponderInterrogatorIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TransponderInterrogatorIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/TurnRateSource.java b/src-generated/edu/nps/moves/dis7/enumerations/TurnRateSource.java
index 4aeea830df6dd0f210c6addd9b6bfacddaf4a55c..79303f5c791ebc7cc7423621c8c32996a34c0f67 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/TurnRateSource.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/TurnRateSource.java
@@ -95,4 +95,10 @@ public enum TurnRateSource
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "TurnRateSource: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticEmitterSystemFunction.java b/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticEmitterSystemFunction.java
index d122000f83b19ce6707d386939f555ffa97f3e96..7b37001460990f3353950704306f259a9a88400d 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticEmitterSystemFunction.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticEmitterSystemFunction.java
@@ -99,4 +99,10 @@ public enum UAAcousticEmitterSystemFunction
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAAcousticEmitterSystemFunction: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticSystemName.java b/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticSystemName.java
index ae3f61941d5357cee1c773c7bd7d1b002e0066d4..b06ae652e6160f53eef4305372f0d073ffa5973a 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticSystemName.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAAcousticSystemName.java
@@ -94,4 +94,10 @@ public enum UAAcousticSystemName
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAAcousticSystemName: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAActiveEmissionParameterIndex.java b/src-generated/edu/nps/moves/dis7/enumerations/UAActiveEmissionParameterIndex.java
index a6505e06d1249dafb57110a061a09889bfb231b4..eafe90f6e070f985703cbaa18ab7ecd6f655d8e4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAActiveEmissionParameterIndex.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAActiveEmissionParameterIndex.java
@@ -76,4 +76,10 @@ public enum UAActiveEmissionParameterIndex
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAActiveEmissionParameterIndex: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAAdditionalPassiveActivityParameterIndex.java b/src-generated/edu/nps/moves/dis7/enumerations/UAAdditionalPassiveActivityParameterIndex.java
index 1bea632e2e1520eb4fb0c376b92edf46939f4fa5..599a03654cfbeffd2bd4c42a2ef174187760dfc4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAAdditionalPassiveActivityParameterIndex.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAAdditionalPassiveActivityParameterIndex.java
@@ -76,4 +76,10 @@ public enum UAAdditionalPassiveActivityParameterIndex
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAAdditionalPassiveActivityParameterIndex: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAPassiveParameterIndex.java b/src-generated/edu/nps/moves/dis7/enumerations/UAPassiveParameterIndex.java
index fb1a262edf2551f27fcb68c7cb184b064e13364b..633e5752af7ee12396776d9757394539ba605b39 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAPassiveParameterIndex.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAPassiveParameterIndex.java
@@ -76,4 +76,10 @@ public enum UAPassiveParameterIndex
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAPassiveParameterIndex: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfiguration.java b/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfiguration.java
index 0e162d4d3052a51b083bb2f00b5dd8488f52fd1d..e1e218e843659b7f8b817b25cbc6538b2c8c909e 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfiguration.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfiguration.java
@@ -81,4 +81,10 @@ public class UAPropulsionPlantConfiguration extends DisBitSet
       setbits(start,length,val);
       return this;
   }
+  
+  @Override
+  public String toString()
+  {
+      return "UAPropulsionPlantConfiguration: " + super.toString();
+  }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfigurationConfiguration.java b/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfigurationConfiguration.java
index 20f10fbc77e7a9ce2c7279f72c397ba681afaa69..881986d7e1cb81743db7e51866e81da62d47e595 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfigurationConfiguration.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAPropulsionPlantConfigurationConfiguration.java
@@ -103,4 +103,10 @@ public enum UAPropulsionPlantConfigurationConfiguration
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAPropulsionPlantConfigurationConfiguration: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAScanPattern.java b/src-generated/edu/nps/moves/dis7/enumerations/UAScanPattern.java
index 32c9aa3c0144ee1beafcf04e4ff71326cfe189f9..b20e96dfc8bb24566e254be3eea6baac7370c2e3 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAScanPattern.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAScanPattern.java
@@ -86,4 +86,10 @@ public enum UAScanPattern
     {
         return 2; // 16 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAScanPattern: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/UAStateChangeUpdateIndicator.java b/src-generated/edu/nps/moves/dis7/enumerations/UAStateChangeUpdateIndicator.java
index 61c5bc2e6fbc8cb7d3d7225bbb163ebfc3f840f5..db1c0965c1c9aec5e7f05c28c125462e48641a25 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/UAStateChangeUpdateIndicator.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/UAStateChangeUpdateIndicator.java
@@ -93,4 +93,10 @@ public enum UAStateChangeUpdateIndicator
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "UAStateChangeUpdateIndicator: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/VariableParameterRecordType.java b/src-generated/edu/nps/moves/dis7/enumerations/VariableParameterRecordType.java
index 48e90d2b93f9d5a1f7f3e9258150f9912ed9432f..8c9245d6eeb66daab5c524f3434efe8befd01eee 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/VariableParameterRecordType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/VariableParameterRecordType.java
@@ -99,4 +99,10 @@ public enum VariableParameterRecordType
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "VariableParameterRecordType: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/VariableRecordType.java b/src-generated/edu/nps/moves/dis7/enumerations/VariableRecordType.java
index 189e09a9c4c156e115de9e8aacfa439c32cbe590..59f43f8a2e1723b51d85dcd2b9e0d34dfb3d864b 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/VariableRecordType.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/VariableRecordType.java
@@ -2387,4 +2387,10 @@ public enum VariableRecordType
     {
         return 4; // 32 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "VariableRecordType: " + name() + ": " + getValue();
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforAirCategory200Bird.java b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforAirCategory200Bird.java
index 86c2848b86a3b6fd6d9365347088224a1b64b513..78a5a688bbe3b36e55e4a1ecf2aa450c846211bb 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforAirCategory200Bird.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforAirCategory200Bird.java
@@ -97,4 +97,10 @@ public enum VariantsforAirCategory200Bird
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "VariantsforAirCategory200Bird: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids.java b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids.java
index 1105887358302dbd5343c0497971b96404d2661d..84804620e8873577a73812d37e95d08553185cd4 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids.java
@@ -99,4 +99,10 @@ public enum VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "VariantsforLandCategoriesReptilesAmphibiansInsectsandArachnids: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforSubsurfaceCategory201Mammal.java b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforSubsurfaceCategory201Mammal.java
index 1250c43c83b1b3116f704e17e36f5d83d6befbae..6e2b51c91ba151f4ad9894779df7e7662893769f 100644
--- a/src-generated/edu/nps/moves/dis7/enumerations/VariantsforSubsurfaceCategory201Mammal.java
+++ b/src-generated/edu/nps/moves/dis7/enumerations/VariantsforSubsurfaceCategory201Mammal.java
@@ -93,4 +93,10 @@ public enum VariantsforSubsurfaceCategory201Mammal
     {
         return 1; // 8 bits
     }
+    
+    @Override
+    public String toString()
+    {
+        return "VariantsforSubsurfaceCategory201Mammal: " + name() + ": " + getValue(); 
+    }
 }
diff --git a/test/edu/nps/moves/dis7/BitFieldRoundTripTest.java b/test/edu/nps/moves/dis7/BitFieldRoundTripTest.java
index 4a123cd8048dfd3a7fc28d1210af6712c70d5039..4cb68553612511637c68dda3f78403686e5ab15e 100644
--- a/test/edu/nps/moves/dis7/BitFieldRoundTripTest.java
+++ b/test/edu/nps/moves/dis7/BitFieldRoundTripTest.java
@@ -7,7 +7,6 @@ package edu.nps.moves.dis7;
 import edu.nps.moves.dis7.enumerations.AppearanceCamouflageType;
 import edu.nps.moves.dis7.enumerations.ForceID;
 import edu.nps.moves.dis7.enumerations.LandPlatformAppearance;
-import edu.nps.moves.dis7.enumerations.VariableRecordType;
 import edu.nps.moves.dis7.util.DisNetworking;
 import edu.nps.moves.dis7.util.PduFactory;
 import java.io.IOException;
@@ -48,7 +47,7 @@ public class BitFieldRoundTripTest
   private Object waiter = new Object();
 
   @Test
-  public void testRoundTrip()
+  public void testBitFieldRoundTrip()
   {
     PduFactory factory = new PduFactory();
 
@@ -114,27 +113,27 @@ public class BitFieldRoundTripTest
     System.out.println(s);
     System.out.println("Alternative EntityType: "+espdu.alternativeEntityType.toString());
     System.out.println("Entity Capabilities: "+espdu.capabilities.toString());
-    System.out.println(""+ espdu.getDeadReckoningParameters().toString());
-    System.out.println(""+ espdu.getEntityAppearance());
-    System.out.println(""+ espdu.getEntityID().toString());
-    System.out.println(""+ espdu.getEntityLinearVelocity().toString());
-    System.out.println(""+ espdu.getEntityLocation().toString());
-    System.out.println(""+ espdu.getEntityOrientation().toString());
-    System.out.println(""+ espdu.getEntityType().toString());
-    System.out.println(""+ espdu.getExerciseID());
-    System.out.println(""+ espdu.getForceId().toString());
-    System.out.println(""+ espdu.getLength());
-    System.out.println(""+ espdu.getMarking().toString());
-    System.out.println(""+ espdu.getPduStatus().toString());
-    System.out.println(""+ espdu.getPduType().toString());
-    System.out.println(""+ espdu.getProtocolFamily().toString());
-    System.out.println(""+ espdu.getProtocolVersion());
-    System.out.println(""+ espdu.getTimestamp());
-    System.out.println(""+ espdu.getVariableParameters().toString());
+    System.out.println("Dead Reckoning Parameters: "+ espdu.getDeadReckoningParameters().toString());
+    System.out.println("Entity Appearance: "+ espdu.getEntityAppearance());
+    System.out.println("Entity ID: "+ espdu.getEntityID().toString());
+    System.out.println("Entity Linear Velocity: "+ espdu.getEntityLinearVelocity().toString());
+    System.out.println("Entity Location: "+ espdu.getEntityLocation().toString());
+    System.out.println("Entity Orientation: "+ espdu.getEntityOrientation().toString());
+    System.out.println("Entity Type: "+ espdu.getEntityType().toString());
+    System.out.println("Exercise ID: "+ espdu.getExerciseID());
+    System.out.println("Force ID: "+ espdu.getForceId().toString());
+    System.out.println("Length: "+ espdu.getLength());
+    System.out.println("Marking: "+ espdu.getMarking().toString());
+    System.out.println("Pdu Status: "+ espdu.getPduStatus().toString());
+    System.out.println("Pdu Type: "+ espdu.getPduType().toString());
+    System.out.println("Protocol Family: "+ espdu.getProtocolFamily().toString());
+    System.out.println("Protocol Version: "+ espdu.getProtocolVersion());
+    System.out.println("Timestamp: "+ espdu.getTimestamp());
+    System.out.println("Variable Parameters: "+ espdu.getVariableParameters().toString());
     System.out.println();
  }
   public static void main(String[] args)
   {
-    new BitFieldRoundTripTest().testRoundTrip();
+    new BitFieldRoundTripTest().testBitFieldRoundTrip();
   }
 }
diff --git a/test/edu/nps/moves/dis7/FixedAndVariableDatumRoundTripTest.java b/test/edu/nps/moves/dis7/FixedAndVariableDatumRoundTripTest.java
index d7088a93b129a6aa4fd6b9d989d31d3af4a4ade8..621b4239510d9c0fdddcab315aba008c8852d2e2 100644
--- a/test/edu/nps/moves/dis7/FixedAndVariableDatumRoundTripTest.java
+++ b/test/edu/nps/moves/dis7/FixedAndVariableDatumRoundTripTest.java
@@ -75,11 +75,11 @@ public class FixedAndVariableDatumRoundTripTest
 
     variableDatum1.setVariableDatumID(variableDatum1Type);
     variableDatum1.setVariableDatumValue(variableDatum1Value);
-    variableDatum1.setVariableDatumLength(variableDatum1LengthInBits);
+    //variableDatum1.setVariableDatumLength(variableDatum1LengthInBits);
 
     variableDatum2.setVariableDatumID(variableDatum2Type);
     variableDatum2.setVariableDatumValue(variableDatum2Value);
-    variableDatum2.setVariableDatumLength(variableDatum2Value.length * 8); //in bits
+    //variableDatum2.setVariableDatumLength(variableDatum2Value.length * 8); //in bits
   }
 
   private Pdu receivedPdu;
diff --git a/test/edu/nps/moves/dis7/MarshalEnumsTest.java b/test/edu/nps/moves/dis7/MarshalEnumsTest.java
index 40dc819e0d1521fb324f35b1ab89ba8eca22aa7e..fe68ea9d2173b61df93fa8f58d29a4b480bfc183 100644
--- a/test/edu/nps/moves/dis7/MarshalEnumsTest.java
+++ b/test/edu/nps/moves/dis7/MarshalEnumsTest.java
@@ -536,14 +536,14 @@ public class MarshalEnumsTest
 
   private void marshalIt(Enum en, ByteBuffer bb) throws Throwable
   {
-    Class c = en.getClass();
+    Class<?> c = en.getClass();
     Method meth = c.getDeclaredMethod("marshal", new Class[]{ByteBuffer.class});
     meth.invoke(en, bb);
   }
 
   private int getMarshalSize(Enum en) throws Throwable
   {
-    Class c = en.getClass();
+    Class<?> c = en.getClass();
     Method meth = c.getDeclaredMethod("getMarshalledSize", (Class[]) null);
     return (Integer) meth.invoke(en, (Object[]) null);
   }