Introduce more generics, but how?