making types more "correct"