Revised read/write.