3 template <typename T1, typename T2, template <T2> class Comp, class Result = Comp<1> >
7 template <typename Type, template <Type, Type> class Comp, class Result = Comp<1, 2> >
10 template <typename Type, template <int, Type> class Comp, class Result = Comp<1, 2> >
13 template <template <typename T1, typename T2, template <T2> class Comp, class Result = Comp<1> > class Foo>