#include <iostream>

#define OUT(x) if((y = x > 0 ? x : y), x > 1) cout << x+1

using namespace std;

int main() {
	int y = 0;
	OUT(0) << "message";     // OK
        cout << y << endl;

	OUT(1) << "message";     // OK
        cout << y << endl;

	OUT(2) << "m";     // OK
        cout << y << endl;
    
	if(0) {
	   OUT(2) << "message";     // OK, nothing printed
	}

        cout << y << endl;

	if(0)
	   OUT(3) << "message";     // Nothing printed as well

        cout << y << endl;        
	
	return 0;
}