@Override
 public Collection<byte[]> getPayload() throws IOException {
   ArrayList<byte[]> result = null;
   if (spans.isPayloadAvailable()) {
     result = new ArrayList<byte[]>(spans.getPayload());
   }
   return result; // TODO: any way to avoid the new construction?
 }