have you verified that this is okay by switching to a (local) contra-variant Consumer? (it should be, but I don’t trust my brain with that particular algorithm—it is one of the most complex in the Scala spec)