template <typename T> T mul(T, T);
template <typename T> T mul(T x, T y) { return x * y; } template double mul(double, double);