#include <iostream>
void printSingle(double d)
{
std::cout << "DBL!!! " << d << " ";
}
template <typename T>
void printSingle(const T& t)
{
std::cout << t << " ";
}
template <typename...ARGS>
void Print(const ARGS&...args) {
const int dummy[] = {0, (printSingle(args), 0)...};
static_cast<void>(dummy); // Avoid warning for unused variable
std::cout << std::endl;
}
int main() {
Print(1.1, 2, 3.3, 4);
Print(0, 1.1, 2, 3.3, 4);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKCnZvaWQgcHJpbnRTaW5nbGUoZG91YmxlIGQpCnsKICAgIHN0ZDo6Y291dCA8PCAiREJMISEhICIgPDwgZCA8PCAiICI7Cn0KCnRlbXBsYXRlIDx0eXBlbmFtZSBUPgp2b2lkIHByaW50U2luZ2xlKGNvbnN0IFQmIHQpCnsKICAgIHN0ZDo6Y291dCA8PCB0IDw8ICIgIjsKfQoKdGVtcGxhdGUgPHR5cGVuYW1lLi4uQVJHUz4Kdm9pZCBQcmludChjb25zdCBBUkdTJi4uLmFyZ3MpIHsKICAgIGNvbnN0IGludCBkdW1teVtdID0gezAsIChwcmludFNpbmdsZShhcmdzKSwgMCkuLi59OwogICAgc3RhdGljX2Nhc3Q8dm9pZD4oZHVtbXkpOyAvLyBBdm9pZCB3YXJuaW5nIGZvciB1bnVzZWQgdmFyaWFibGUKICAgIHN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7Cn0KCmludCBtYWluKCkgewogICAgUHJpbnQoMS4xLCAyLCAzLjMsIDQpOwogICAgUHJpbnQoMCwgMS4xLCAyLCAzLjMsIDQpOwp9