rework reads/writes