Multiple classes of Observers for unread models, forked from ledermann/unread