Factored out nested interfaces.