slightly nicer factoring for Unread