Return a generic Type