nearly done p1 p0_reader_cache stuff