hmm, actually, what is confusing that that a single object Subjects already has a plural name. This make the naming confusing when representing a list of Subjects (which is called ``subjects`` here).
Is it possible to rename this interface to use a singular name for the iterator ?