Added the notion of a supertype