text: public int serialize(int offset, byte[] data){byte[] rawData = getRawData();if (getEscherRecords().size() == 0 && rawData != null){return writeData( offset, data, rawData );}byte[] buffer = new byte[getRawDataSize()];int pos = 0;for ( Iterator<EscherRecord> iterator = getEscherRecords().iterator(); iterator.hasNext(); ){EscherRecord r = iterator.next();pos += r.serialize(pos, buffer, new NullEscherSerializationListener() );}return writeData( offset, data, buffer );}