#define R0(P, S) P(S) #define R1(P, S) R0(P,S##0) R0(P,S##1) #define R2(P, S) R0(P,S##0) R0(P,S##1) R0(P,S##2) R0(P,S##3) #define R3(P, S) R0(P,S##0) R0(P,S##1) R0(P,S##2) R0(P,S##3) R0(P,S##4) R0(P,S##5) R0(P,S##6) R0(P,S##7) #define R4(P, S) R3(P,S##0) R3(P,S##1) #define R5(P, S) R3(P,S##0) R3(P,S##1) R3(P,S##2) R3(P,S##3) #define R6(P, S) R3(P,S##0) R3(P,S##1) R3(P,S##2) R3(P,S##3) R3(P,S##4) R3(P,S##5) R3(P,S##6) R3(P,S##7) #define R7(P, S) R6(P,S##0) R6(P,S##1) #define R8(P, S) R6(P,S##0) R6(P,S##1) R6(P,S##2) R6(P,S##3) #define R9(P, S) R6(P,S##0) R6(P,S##1) R6(P,S##2) R6(P,S##3) R6(P,S##4) R6(P,S##5) R6(P,S##6) R6(P,S##7) #define R10(P, S) R9(P,S##0) R9(P,S##1) #define R11(P, S) R9(P,S##0) R9(P,S##1) R9(P,S##2) R9(P,S##3) #define R12(P, S) R9(P,S##0) R9(P,S##1) R9(P,S##2) R9(P,S##3) R9(P,S##4) R9(P,S##5) R9(P,S##6) R9(P,S##7) #define R13(P, S) R12(P,S##0) R12(P,S##1) #define R14(P, S) R12(P,S##0) R12(P,S##1) R12(P,S##2) R12(P,S##3) #define R15(P, S) R12(P,S##0) R12(P,S##1) R12(P,S##2) R12(P,S##3) R12(P,S##4) R12(P,S##5) R12(P,S##6) R12(P,S##7) #define R16(P, S) R15(P,S##0) R15(P,S##1) #define R17(P, S) R15(P,S##0) R15(P,S##1) R15(P,S##2) R15(P,S##3) #define R18(P, S) R15(P,S##0) R15(P,S##1) R15(P,S##2) R15(P,S##3) R15(P,S##4) R15(P,S##5) R15(P,S##6) R15(P,S##7) #define R19(P, S) R18(P,S##0) R18(P,S##1) #define R20(P, S) R18(P,S##0) R18(P,S##1) R18(P,S##2) R18(P,S##3) #define REPEAT_(RN, P) RN(P,) #define REPEAT2(N, P) REPEAT_(R##N,P)