refactor to go with mapped reads only
more cleanup