public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory) {int bytesRemaining = readHeader( data, offset );int pos            = offset + 8;remainingData = (bytesRemaining == 0) ? EMPTY : IOUtils.safelyAllocate(bytesRemaining, MAX_RECORD_LENGTH);System.arraycopy( data, pos, remainingData, 0, bytesRemaining );return 8 + bytesRemaining;}
public override int FillFields(byte[] data, int offset, IEscherRecordFactory recordFactory){int bytesRemaining = ReadHeader(data, offset);int pos = offset + 8;remainingData = new byte[bytesRemaining];Array.Copy(data, pos, remainingData, 0, bytesRemaining);return 8 + bytesRemaining;}