Improve the read method...