update reading process

update reading process, slower but safer