withSubTypes