Generic types are used more accurately so that the compiler does not raise warnings.