@Override
 public void writeObject(Marshaller output, Object object) throws IOException {
   output.write(id);
   // Write as an unsigned, variable length, integer to safe space
   UnsignedNumeric.writeUnsignedInt(output, foreignId);
   externalizer.writeObject(output, object);
 }
 @Override
 public void writeObject(Marshaller output, Object object) throws IOException {
   output.write(id);
   externalizer.writeObject(output, object);
 }
 @Override
 public void writeClass(final Marshaller marshaller, final Class<?> clazz) throws IOException {
   marshaller.write(bytes);
 }