? #define A(X, Y) Y X ? #define B 1 ## 2 ## 3 ? .singlestep A(B, 2) current: [1 ## 2 ## 3] in A( _ , 2 ) ? step current: [12 ## 3] in A( _ , 2 ) ? step current: [123] in A( _ , 2 ) ? step current: [2] in A( 123, _ ) ? step expanding A with ( 123, 2 ) current: [2] in _ 123 ?