In other words, we can make these functions generic, so if our component needs to maintain several different types of lists, we can more easily provide further collection and IEnumVARIANT objects that reuse these same functions without any further modification.