refacts, mark-as-read in progress