public void readExternal( ObjectInput in ) throws IOException, ClassNotFoundException {
byte c = in.readByte();
ObjectID key = ((IDTable)grandParent).newObjectID();
key.readExternal( in );
ClusterID data = ((IDTable)grandParent).newClusterID();
data.readExternal( in );
element = grandParent.newKeyData();
element.set( key, data );
DxKeyData elem = element;
for (int i = 1; i < c; i++) {
key = ((IDTable)grandParent).newObjectID();
key.readExternal( in );
data = ((IDTable)grandParent).newClusterID();
data.readExternal( in );
elem.next = ((IDTable)grandParent).newKeyData();
elem.next.set( key, data );
elem = elem.next;