@Override
 public StreamRecord<T> deserialize(StreamRecord<T> reuse, DataInputView source)
     throws IOException {
   T element = typeSerializer.deserialize(reuse.getValue(), source);
   reuse.replace(element, 0);
   return reuse;
 }
 @Override
 public StreamRecord<T> copy(StreamRecord<T> from, StreamRecord<T> reuse) {
   reuse.replace(typeSerializer.copy(from.getValue(), reuse.getValue()), 0);
   return reuse;
 }