Separated out all the reader functions for easier debugging of issues.