read pages as needed