#include <iostream>
class DebugMessage
{
private:
std::ostream& stream;
public:
DebugMessage() : stream( std::cout ) { }
virtual ~DebugMessage() { stream << std::endl; }
template<typename T>
std::ostream& operator<<( const T& t ) const
{
return stream << t;
}
};
int main(int argc, char *argv[])
{
DebugMessage() << "hello" << 42;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgRGVidWdNZXNzYWdlIAp7CnByaXZhdGU6IAoJc3RkOjpvc3RyZWFtJiBzdHJlYW07CnB1YmxpYzoKICAgIERlYnVnTWVzc2FnZSgpIDogc3RyZWFtKCBzdGQ6OmNvdXQgKSB7IH0KICAgIHZpcnR1YWwgfkRlYnVnTWVzc2FnZSgpIHsgc3RyZWFtIDw8IHN0ZDo6ZW5kbDsgfQogICAgCgl0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogIAlzdGQ6Om9zdHJlYW0mIG9wZXJhdG9yPDwoIGNvbnN0IFQmIHQgKSBjb25zdAogIAl7CgkJcmV0dXJuIHN0cmVhbSA8PCB0OwogIAl9Cn07CgppbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQp7CiAgICBEZWJ1Z01lc3NhZ2UoKSA8PCAiaGVsbG8iIDw8IDQyOwogICAgcmV0dXJuIDA7Cn0=