receiverCharBuffer.get(temp); receivers.add (new String(temp).trim());
  public int readFromBuffer(			     int index, 			     int manifestsSoFar,			     List agentNames,			     int [] uidAgentIndex,			     long [] uidLong,			     CharBuffer charBuffer, 			     long [] instanceLongBuffer,			     int [] instanceIntBuffer,			     boolean [] instanceBooleanBuffer,			     CharBuffer nomenCharBuffer,			     CharBuffer typeIDCharBuffer,			     double [] weightDoubleBuffer) {    // UIDs    UID     = new UID((String) agentNames.get(uidAgentIndex[index*numUID]), 		      uidLong[index*numUID]);    ownerID = (String) agentNames.get(uidAgentIndex[(index*numUID)+1]);    // Strings    char temp [] = new char [maxStringLength];    charBuffer.get(temp);    itemNomen = new String(temp).trim();    charBuffer.get(temp);    prototypeUID = new String(temp).trim();    charBuffer.get(temp);    name = new String(temp).trim();    // longs    aggregateNumber = instanceLongBuffer[(index*numLong)];    // booleans     hasManifest     = instanceBooleanBuffer[(index*numBoolean)];    // ints    int numNomens = instanceIntBuffer[index*numInt];    if (hasManifest) {      nomenclatures = new ArrayList ();      typeIdentifications = new ArrayList ();      weights       = new ArrayList ();      for (int i = 0; i < numNomens; i++) {	nomenCharBuffer.get(temp);	nomenclatures.add (new String(temp).trim());	typeIDCharBuffer.get(temp);	typeIdentifications.add (new String(temp).trim());	weights.add (new Mass (weightDoubleBuffer[manifestsSoFar + i], Mass.KILOGRAMS));      }    }    return manifestsSoFar + numNomens;  }