manage parameterized types