Separated the reader and writer