A function template can be overloaded under the rules for non-template function overloading (same name, but different parameter types) and in addition to that, the overloading is valid if
The return type is different, or
The template parameter list is different, except for the naming of paramete...