use last_xpointer to keep reading progress for crereader