7.2 rewriting file reading, need to combine 7.2 and 7.4