byte data[] = new byte[1024*4];
ByteSequence bs = new ByteSequence(data, 0, reader.read(offset, data));
int pos = 0;
while( true ) {
pos = bs.indexOf(header, pos);
if( pos >= 0 ) {
return offset+pos;
} else {
// need to load the next data chunck in..
if( bs.length != data.length ) {