why is it parameterized with `Integer`?