A Class Template Specialization
Get an overview of how a class template specialization should name a type.
We'll cover the following...
Require a nested type
Just like for the nested types, we have to use the keyword typename
along with the specialized class template that is expected to be a valid specialization: