#define C_(P1, P2) P1##P2
#define C2(P1, P2) C_(P1, P2)
#define C4(P1, P2, P3, P4) C2(C2(P1, P2), C2(P3, P4))
#define X2(X) C2(X, X)
#define X4(X) X2(X2(X))
#define X8(X) X2(X4(X))
#define X16(X) X2(X8(X))
#define X32(X) X2(X16(X))
#define X64(X) X2(X32(X))
#define X128(X) X2(X64(X))
#define X256(X) X2(X128(X))
#define X512(X) X2(X256(X))
#define X1024(X) X2(X512(X))
#define X2048(X) X2(X1024(X))
#define X4096(X) X2(X2048(X))
#define X4095(X) \
C2(C2( \
C4(X, X2(X), X4(X), X8(X)), \
C4(X16(X), X32(X), X64(X), X128(X))), \
C4(X256(X), X512(X), X1024(X), X2048(X)))
int X4095(x);
#define Y4095 X4095(y)
struct Y4095 {
Y4095 ();
virtual void f();
};
Y4095::Y4095() {}
#ifdef THROW
void g() {
throw Y4095();
}
#endif
#define X4088(X) \
C2(C2( \
C4(X, X4(X), X4(X), X8(X)), \
C4(X8(X), X32(X), X64(X), X128(X))), \
C4(X256(X), X512(X), X1024(X), X2048(X)))
#define Z4088 X4088(z)
int X4088(z) = 1515;
#define X4089(X) \
C2(C2( \
C4(X2(X), X4(X), X4(X), X8(X)), \
C4(X8(X), X32(X), X64(X), X128(X))), \
C4(X256(X), X512(X), X1024(X), X2048(X)))
int X4089(z) = 1717;