segregates reads and writes into two separate repository.