diff --git a/Include/AuroraForEach.hpp b/Include/AuroraForEach.hpp index ef0eb56..ce8ebc9 100644 --- a/Include/AuroraForEach.hpp +++ b/Include/AuroraForEach.hpp @@ -6,710 +6,1048 @@ #define AU_FE_EXPAND(exp) exp #define AU_FE_ERROR(exp) ERROR. CHECK PARAMETER COUNT. DID YOU FORGET A COMMA? #define AU_FE_0(expandable) -#define AU_FE_1(expandable, X0) expandable(X0) AU_FE_EXPAND(AU_FE_0(expandable)) +#define AU_FE_1(expandable, X0) expandable(X0) +#define AU_FE_2_THAT(expandable, ctx, X0) expandable(ctx, X0) #define AU_FE_1_FIRST(first, second) #define AU_FE_2(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_1(expandable, __VA_ARGS__)) +#define AU_FE_3_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_2_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_3_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_1(second, __VA_ARGS__)) #define AU_FE_3(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_2(expandable, __VA_ARGS__)) +#define AU_FE_4_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_3_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_4_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_2(second, __VA_ARGS__)) #define AU_FE_4(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_3(expandable, __VA_ARGS__)) +#define AU_FE_5_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_4_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_5_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_3(second, __VA_ARGS__)) #define AU_FE_5(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_4(expandable, __VA_ARGS__)) +#define AU_FE_6_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_5_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_6_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_4(second, __VA_ARGS__)) #define AU_FE_6(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_5(expandable, __VA_ARGS__)) +#define AU_FE_7_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_6_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_7_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_5(second, __VA_ARGS__)) #define AU_FE_7(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_6(expandable, __VA_ARGS__)) +#define AU_FE_8_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_7_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_8_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_6(second, __VA_ARGS__)) #define AU_FE_8(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_7(expandable, __VA_ARGS__)) +#define AU_FE_9_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_8_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_9_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_7(second, __VA_ARGS__)) #define AU_FE_9(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_8(expandable, __VA_ARGS__)) +#define AU_FE_10_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_9_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_10_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_8(second, __VA_ARGS__)) #define AU_FE_10(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_9(expandable, __VA_ARGS__)) +#define AU_FE_11_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_10_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_11_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_9(second, __VA_ARGS__)) #define AU_FE_11(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_10(expandable, __VA_ARGS__)) +#define AU_FE_12_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_11_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_12_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_10(second, __VA_ARGS__)) #define AU_FE_12(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_11(expandable, __VA_ARGS__)) +#define AU_FE_13_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_12_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_13_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_11(second, __VA_ARGS__)) #define AU_FE_13(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_12(expandable, __VA_ARGS__)) +#define AU_FE_14_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_13_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_14_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_12(second, __VA_ARGS__)) #define AU_FE_14(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_13(expandable, __VA_ARGS__)) +#define AU_FE_15_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_14_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_15_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_13(second, __VA_ARGS__)) #define AU_FE_15(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_14(expandable, __VA_ARGS__)) +#define AU_FE_16_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_15_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_16_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_14(second, __VA_ARGS__)) #define AU_FE_16(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_15(expandable, __VA_ARGS__)) +#define AU_FE_17_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_16_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_17_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_15(second, __VA_ARGS__)) #define AU_FE_17(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_16(expandable, __VA_ARGS__)) +#define AU_FE_18_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_17_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_18_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_16(second, __VA_ARGS__)) #define AU_FE_18(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_17(expandable, __VA_ARGS__)) +#define AU_FE_19_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_18_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_19_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_17(second, __VA_ARGS__)) #define AU_FE_19(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_18(expandable, __VA_ARGS__)) +#define AU_FE_20_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_19_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_20_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_18(second, __VA_ARGS__)) #define AU_FE_20(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_19(expandable, __VA_ARGS__)) +#define AU_FE_21_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_20_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_21_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_19(second, __VA_ARGS__)) #define AU_FE_21(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_20(expandable, __VA_ARGS__)) +#define AU_FE_22_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_21_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_22_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_20(second, __VA_ARGS__)) #define AU_FE_22(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_21(expandable, __VA_ARGS__)) +#define AU_FE_23_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_22_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_23_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_21(second, __VA_ARGS__)) #define AU_FE_23(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_22(expandable, __VA_ARGS__)) +#define AU_FE_24_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_23_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_24_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_22(second, __VA_ARGS__)) #define AU_FE_24(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_23(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_24_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_23(second, __VA_ARGS__)) #define AU_FE_25(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_24(expandable, __VA_ARGS__)) +#define AU_FE_26_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_25_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_26_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_24(second, __VA_ARGS__)) #define AU_FE_26(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_25(expandable, __VA_ARGS__)) +#define AU_FE_27_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_26_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_27_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_25(second, __VA_ARGS__)) #define AU_FE_27(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_26(expandable, __VA_ARGS__)) +#define AU_FE_28_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_27_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_28_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_26(second, __VA_ARGS__)) #define AU_FE_28(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_27(expandable, __VA_ARGS__)) +#define AU_FE_29_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_28_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_29_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_27(second, __VA_ARGS__)) #define AU_FE_29(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_28(expandable, __VA_ARGS__)) +#define AU_FE_30_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_29_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_30_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_28(second, __VA_ARGS__)) #define AU_FE_30(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_29(expandable, __VA_ARGS__)) +#define AU_FE_31_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_30_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_31_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_29(second, __VA_ARGS__)) #define AU_FE_31(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_30(expandable, __VA_ARGS__)) +#define AU_FE_32_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_31_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_32_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_30(second, __VA_ARGS__)) #define AU_FE_32(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_31(expandable, __VA_ARGS__)) +#define AU_FE_33_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_32_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_33_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_31(second, __VA_ARGS__)) #define AU_FE_33(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_32(expandable, __VA_ARGS__)) +#define AU_FE_34_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_33_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_34_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_32(second, __VA_ARGS__)) #define AU_FE_34(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_33(expandable, __VA_ARGS__)) +#define AU_FE_35_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_34_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_35_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_33(second, __VA_ARGS__)) #define AU_FE_35(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_34(expandable, __VA_ARGS__)) +#define AU_FE_36_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_35_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_36_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_34(second, __VA_ARGS__)) #define AU_FE_36(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_35(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_36_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_35(second, __VA_ARGS__)) #define AU_FE_37(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_36(expandable, __VA_ARGS__)) +#define AU_FE_38_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_37_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_38_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_36(second, __VA_ARGS__)) #define AU_FE_38(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_37(expandable, __VA_ARGS__)) +#define AU_FE_39_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_38_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_39_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_37(second, __VA_ARGS__)) #define AU_FE_39(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_38(expandable, __VA_ARGS__)) +#define AU_FE_40_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_39_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_40_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_38(second, __VA_ARGS__)) #define AU_FE_40(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_39(expandable, __VA_ARGS__)) +#define AU_FE_41_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_40_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_41_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_39(second, __VA_ARGS__)) #define AU_FE_41(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_40(expandable, __VA_ARGS__)) +#define AU_FE_42_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_41_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_42_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_40(second, __VA_ARGS__)) #define AU_FE_42(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_41(expandable, __VA_ARGS__)) +#define AU_FE_43_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_42_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_43_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_41(second, __VA_ARGS__)) #define AU_FE_43(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_42(expandable, __VA_ARGS__)) +#define AU_FE_44_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_43_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_44_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_42(second, __VA_ARGS__)) #define AU_FE_44(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_43(expandable, __VA_ARGS__)) +#define AU_FE_45_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_44_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_45_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_43(second, __VA_ARGS__)) #define AU_FE_45(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_44(expandable, __VA_ARGS__)) +#define AU_FE_46_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_45_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_46_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_44(second, __VA_ARGS__)) #define AU_FE_46(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_45(expandable, __VA_ARGS__)) +#define AU_FE_47_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_46_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_47_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_45(second, __VA_ARGS__)) #define AU_FE_47(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_46(expandable, __VA_ARGS__)) +#define AU_FE_48_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_47_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_48_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_46(second, __VA_ARGS__)) #define AU_FE_48(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_47(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_48_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_47(second, __VA_ARGS__)) #define AU_FE_49(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_48(expandable, __VA_ARGS__)) +#define AU_FE_50_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_49_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_50_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_48(second, __VA_ARGS__)) #define AU_FE_50(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_49(expandable, __VA_ARGS__)) +#define AU_FE_51_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_50_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_51_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_49(second, __VA_ARGS__)) #define AU_FE_51(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_50(expandable, __VA_ARGS__)) +#define AU_FE_52_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_51_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_52_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_50(second, __VA_ARGS__)) #define AU_FE_52(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_51(expandable, __VA_ARGS__)) +#define AU_FE_53_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_52_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_53_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_51(second, __VA_ARGS__)) #define AU_FE_53(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_52(expandable, __VA_ARGS__)) +#define AU_FE_54_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_53_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_54_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_52(second, __VA_ARGS__)) #define AU_FE_54(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_53(expandable, __VA_ARGS__)) +#define AU_FE_55_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_54_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_55_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_53(second, __VA_ARGS__)) #define AU_FE_55(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_54(expandable, __VA_ARGS__)) +#define AU_FE_56_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_55_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_56_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_54(second, __VA_ARGS__)) #define AU_FE_56(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_55(expandable, __VA_ARGS__)) +#define AU_FE_57_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_56_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_57_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_55(second, __VA_ARGS__)) #define AU_FE_57(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_56(expandable, __VA_ARGS__)) +#define AU_FE_58_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_57_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_58_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_56(second, __VA_ARGS__)) #define AU_FE_58(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_57(expandable, __VA_ARGS__)) +#define AU_FE_59_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_58_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_59_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_57(second, __VA_ARGS__)) #define AU_FE_59(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_58(expandable, __VA_ARGS__)) +#define AU_FE_60_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_59_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_60_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_58(second, __VA_ARGS__)) #define AU_FE_60(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_59(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_60_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_59(second, __VA_ARGS__)) #define AU_FE_61(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_60(expandable, __VA_ARGS__)) +#define AU_FE_62_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_61_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_62_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_60(second, __VA_ARGS__)) #define AU_FE_62(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_61(expandable, __VA_ARGS__)) +#define AU_FE_63_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_62_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_63_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_61(second, __VA_ARGS__)) #define AU_FE_63(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_62(expandable, __VA_ARGS__)) +#define AU_FE_64_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_63_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_64_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_62(second, __VA_ARGS__)) #define AU_FE_64(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_63(expandable, __VA_ARGS__)) +#define AU_FE_65_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_64_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_65_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_63(second, __VA_ARGS__)) #define AU_FE_65(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_64(expandable, __VA_ARGS__)) +#define AU_FE_66_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_65_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_66_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_64(second, __VA_ARGS__)) #define AU_FE_66(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_65(expandable, __VA_ARGS__)) +#define AU_FE_67_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_66_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_67_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_65(second, __VA_ARGS__)) #define AU_FE_67(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_66(expandable, __VA_ARGS__)) +#define AU_FE_68_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_67_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_68_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_66(second, __VA_ARGS__)) #define AU_FE_68(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_67(expandable, __VA_ARGS__)) +#define AU_FE_69_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_68_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_69_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_67(second, __VA_ARGS__)) #define AU_FE_69(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_68(expandable, __VA_ARGS__)) +#define AU_FE_70_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_69_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_70_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_68(second, __VA_ARGS__)) #define AU_FE_70(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_69(expandable, __VA_ARGS__)) +#define AU_FE_71_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_70_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_71_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_69(second, __VA_ARGS__)) #define AU_FE_71(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_70(expandable, __VA_ARGS__)) +#define AU_FE_72_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_71_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_72_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_70(second, __VA_ARGS__)) #define AU_FE_72(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_71(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_72_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_71(second, __VA_ARGS__)) #define AU_FE_73(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_72(expandable, __VA_ARGS__)) +#define AU_FE_74_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_73_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_74_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_72(second, __VA_ARGS__)) #define AU_FE_74(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_73(expandable, __VA_ARGS__)) +#define AU_FE_75_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_74_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_75_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_73(second, __VA_ARGS__)) #define AU_FE_75(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_74(expandable, __VA_ARGS__)) +#define AU_FE_76_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_75_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_76_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_74(second, __VA_ARGS__)) #define AU_FE_76(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_75(expandable, __VA_ARGS__)) +#define AU_FE_77_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_76_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_77_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_75(second, __VA_ARGS__)) #define AU_FE_77(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_76(expandable, __VA_ARGS__)) +#define AU_FE_78_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_77_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_78_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_76(second, __VA_ARGS__)) #define AU_FE_78(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_77(expandable, __VA_ARGS__)) +#define AU_FE_79_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_78_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_79_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_77(second, __VA_ARGS__)) #define AU_FE_79(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_78(expandable, __VA_ARGS__)) +#define AU_FE_80_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_79_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_80_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_78(second, __VA_ARGS__)) #define AU_FE_80(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_79(expandable, __VA_ARGS__)) +#define AU_FE_81_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_80_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_81_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_79(second, __VA_ARGS__)) #define AU_FE_81(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_80(expandable, __VA_ARGS__)) +#define AU_FE_82_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_81_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_82_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_80(second, __VA_ARGS__)) #define AU_FE_82(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_81(expandable, __VA_ARGS__)) +#define AU_FE_83_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_82_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_83_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_81(second, __VA_ARGS__)) #define AU_FE_83(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_82(expandable, __VA_ARGS__)) +#define AU_FE_84_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_83_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_84_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_82(second, __VA_ARGS__)) #define AU_FE_84(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_83(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_84_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_83(second, __VA_ARGS__)) #define AU_FE_85(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_84(expandable, __VA_ARGS__)) +#define AU_FE_86_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_85_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_86_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_84(second, __VA_ARGS__)) #define AU_FE_86(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_85(expandable, __VA_ARGS__)) +#define AU_FE_87_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_86_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_87_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_85(second, __VA_ARGS__)) #define AU_FE_87(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_86(expandable, __VA_ARGS__)) +#define AU_FE_88_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_87_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_88_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_86(second, __VA_ARGS__)) #define AU_FE_88(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_87(expandable, __VA_ARGS__)) +#define AU_FE_89_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_88_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_89_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_87(second, __VA_ARGS__)) #define AU_FE_89(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_88(expandable, __VA_ARGS__)) +#define AU_FE_90_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_89_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_90_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_88(second, __VA_ARGS__)) #define AU_FE_90(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_89(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_90_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_89(second, __VA_ARGS__)) #define AU_FE_91(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_90(expandable, __VA_ARGS__)) +#define AU_FE_92_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_91_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_92_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_90(second, __VA_ARGS__)) #define AU_FE_92(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_91(expandable, __VA_ARGS__)) +#define AU_FE_93_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_92_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_93_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_91(second, __VA_ARGS__)) #define AU_FE_93(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_92(expandable, __VA_ARGS__)) +#define AU_FE_94_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_93_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_94_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_92(second, __VA_ARGS__)) #define AU_FE_94(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_93(expandable, __VA_ARGS__)) +#define AU_FE_95_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_94_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_95_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_93(second, __VA_ARGS__)) #define AU_FE_95(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_94(expandable, __VA_ARGS__)) +#define AU_FE_96_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_95_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_96_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_94(second, __VA_ARGS__)) #define AU_FE_96(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_95(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_96_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_95(second, __VA_ARGS__)) #define AU_FE_97(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_96(expandable, __VA_ARGS__)) +#define AU_FE_98_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_97_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_98_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_96(second, __VA_ARGS__)) #define AU_FE_98(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_97(expandable, __VA_ARGS__)) +#define AU_FE_99_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_98_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_99_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_97(second, __VA_ARGS__)) #define AU_FE_99(expandable, X0, ...) expandable(X0) AU_FE_EXPAND(AU_FE_98(expandable, __VA_ARGS__)) +#define AU_FE_100_THAT(expandable, ctx, X0, ...) expandable(ctx, X0) AU_FE_EXPAND(AU_FE_99_THAT(expandable, ctx, __VA_ARGS__)) #define AU_FE_100_FIRST(first, second, X0, ...) first(X0) AU_FE_EXPAND(AU_FE_98(second, __VA_ARGS__)) #define AU_GET_MACRO(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, NAME,...) NAME -#define AU_FOR_EACH(action, ...) AU_FE_EXPAND(AU_GET_MACRO(_whydoweneedthis, __VA_ARGS__, AU_FE_99, AU_FE_98, AU_FE_97, AU_FE_96, AU_FE_95, AU_FE_94, AU_FE_93, AU_FE_92, AU_FE_91, AU_FE_90, AU_FE_89, AU_FE_88, AU_FE_87, AU_FE_86, AU_FE_85, AU_FE_84, AU_FE_83, AU_FE_82, AU_FE_81, AU_FE_80, AU_FE_79, AU_FE_78, AU_FE_77, AU_FE_76, AU_FE_75, AU_FE_74, AU_FE_73, AU_FE_72, AU_FE_71, AU_FE_70, AU_FE_69, AU_FE_68, AU_FE_67, AU_FE_66, AU_FE_65, AU_FE_64, AU_FE_63, AU_FE_62, AU_FE_61, AU_FE_60, AU_FE_59, AU_FE_58, AU_FE_57, AU_FE_56, AU_FE_55, AU_FE_54, AU_FE_53, AU_FE_52, AU_FE_51, AU_FE_50, AU_FE_49, AU_FE_48, AU_FE_47, AU_FE_46, AU_FE_45, AU_FE_44, AU_FE_43, AU_FE_42, AU_FE_41, AU_FE_40, AU_FE_39, AU_FE_38, AU_FE_37, AU_FE_36, AU_FE_35, AU_FE_34, AU_FE_33, AU_FE_32, AU_FE_31, AU_FE_30, AU_FE_29, AU_FE_28, AU_FE_27, AU_FE_26, AU_FE_25, AU_FE_24, AU_FE_23, AU_FE_22, AU_FE_21, AU_FE_20, AU_FE_19, AU_FE_18, AU_FE_17, AU_FE_16, AU_FE_15, AU_FE_14, AU_FE_13, AU_FE_12, AU_FE_11, AU_FE_10, AU_FE_9, AU_FE_8, AU_FE_7, AU_FE_6, AU_FE_5, AU_FE_4, AU_FE_3, AU_FE_2, AU_FE_1, AU_FE_0)(action,__VA_ARGS__)) +#define AU_FOR_EACH(action, ...) AU_FE_EXPAND(AU_GET_MACRO(_whydoweneedthis, __VA_ARGS__, AU_FE_99, AU_FE_98, AU_FE_97, AU_FE_96, AU_FE_95, AU_FE_94, AU_FE_93, AU_FE_92, AU_FE_91, AU_FE_90, AU_FE_89, AU_FE_88, AU_FE_87, AU_FE_86, AU_FE_85, AU_FE_84, AU_FE_83, AU_FE_82, AU_FE_81, AU_FE_80, AU_FE_79, AU_FE_78, AU_FE_77, AU_FE_76, AU_FE_75, AU_FE_74, AU_FE_73, AU_FE_72, AU_FE_71, AU_FE_70, AU_FE_69, AU_FE_68, AU_FE_67, AU_FE_66, AU_FE_65, AU_FE_64, AU_FE_63, AU_FE_62, AU_FE_61, AU_FE_60, AU_FE_59, AU_FE_58, AU_FE_57, AU_FE_56, AU_FE_55, AU_FE_54, AU_FE_53, AU_FE_52, AU_FE_51, AU_FE_50, AU_FE_49, AU_FE_48, AU_FE_47, AU_FE_46, AU_FE_45, AU_FE_44, AU_FE_43, AU_FE_42, AU_FE_41, AU_FE_40, AU_FE_39, AU_FE_38, AU_FE_37, AU_FE_36, AU_FE_35, AU_FE_34, AU_FE_33, AU_FE_32, AU_FE_31, AU_FE_30, AU_FE_29, AU_FE_28, AU_FE_27, AU_FE_26, AU_FE_25, AU_FE_24, AU_FE_23, AU_FE_22, AU_FE_21, AU_FE_20, AU_FE_19, AU_FE_18, AU_FE_17, AU_FE_16, AU_FE_15, AU_FE_14, AU_FE_13, AU_FE_12, AU_FE_11, AU_FE_10, AU_FE_9, AU_FE_8, AU_FE_7, AU_FE_6, AU_FE_5, AU_FE_4, AU_FE_3, AU_FE_2, AU_FE_1, AU_FE_0)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST(action, ...) AU_FE_EXPAND(AU_GET_MACRO(_whydoweneedthis, __VA_ARGS__, AU_FE_99_FIRST, AU_FE_98_FIRST, AU_FE_97_FIRST, AU_FE_96_FIRST, AU_FE_95_FIRST, AU_FE_94_FIRST, AU_FE_93_FIRST, AU_FE_92_FIRST, AU_FE_91_FIRST, AU_FE_90_FIRST, AU_FE_89_FIRST, AU_FE_88_FIRST, AU_FE_87_FIRST, AU_FE_86_FIRST, AU_FE_85_FIRST, AU_FE_84_FIRST, AU_FE_83_FIRST, AU_FE_82_FIRST, AU_FE_81_FIRST, AU_FE_80_FIRST, AU_FE_79_FIRST, AU_FE_78_FIRST, AU_FE_77_FIRST, AU_FE_76_FIRST, AU_FE_75_FIRST, AU_FE_74_FIRST, AU_FE_73_FIRST, AU_FE_72_FIRST, AU_FE_71_FIRST, AU_FE_70_FIRST, AU_FE_69_FIRST, AU_FE_68_FIRST, AU_FE_67_FIRST, AU_FE_66_FIRST, AU_FE_65_FIRST, AU_FE_64_FIRST, AU_FE_63_FIRST, AU_FE_62_FIRST, AU_FE_61_FIRST, AU_FE_60_FIRST, AU_FE_59_FIRST, AU_FE_58_FIRST, AU_FE_57_FIRST, AU_FE_56_FIRST, AU_FE_55_FIRST, AU_FE_54_FIRST, AU_FE_53_FIRST, AU_FE_52_FIRST, AU_FE_51_FIRST, AU_FE_50_FIRST, AU_FE_49_FIRST, AU_FE_48_FIRST, AU_FE_47_FIRST, AU_FE_46_FIRST, AU_FE_45_FIRST, AU_FE_44_FIRST, AU_FE_43_FIRST, AU_FE_42_FIRST, AU_FE_41_FIRST, AU_FE_40_FIRST, AU_FE_39_FIRST, AU_FE_38_FIRST, AU_FE_37_FIRST, AU_FE_36_FIRST, AU_FE_35_FIRST, AU_FE_34_FIRST, AU_FE_33_FIRST, AU_FE_32_FIRST, AU_FE_31_FIRST, AU_FE_30_FIRST, AU_FE_29_FIRST, AU_FE_28_FIRST, AU_FE_27_FIRST, AU_FE_26_FIRST, AU_FE_25_FIRST, AU_FE_24_FIRST, AU_FE_23_FIRST, AU_FE_22_FIRST, AU_FE_21_FIRST, AU_FE_20_FIRST, AU_FE_19_FIRST, AU_FE_18_FIRST, AU_FE_17_FIRST, AU_FE_16_FIRST, AU_FE_15_FIRST, AU_FE_14_FIRST, AU_FE_13_FIRST, AU_FE_12_FIRST, AU_FE_11_FIRST, AU_FE_10_FIRST, AU_FE_9_FIRST, AU_FE_8_FIRST, AU_FE_7_FIRST, AU_FE_6_FIRST, AU_FE_5_FIRST, AU_FE_4_FIRST, AU_FE_3_FIRST, AU_FE_2_FIRST, AU_FE_1_FIRST, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT(action, ...) AU_FE_EXPAND(AU_GET_MACRO(_whydoweneedthis, __VA_ARGS__, AU_FE_99_THAT, AU_FE_98_THAT, AU_FE_97_THAT, AU_FE_96_THAT, AU_FE_95_THAT, AU_FE_94_THAT, AU_FE_93_THAT, AU_FE_92_THAT, AU_FE_91_THAT, AU_FE_90_THAT, AU_FE_89_THAT, AU_FE_88_THAT, AU_FE_87_THAT, AU_FE_86_THAT, AU_FE_85_THAT, AU_FE_84_THAT, AU_FE_83_THAT, AU_FE_82_THAT, AU_FE_81_THAT, AU_FE_80_THAT, AU_FE_79_THAT, AU_FE_78_THAT, AU_FE_77_THAT, AU_FE_76_THAT, AU_FE_75_THAT, AU_FE_74_THAT, AU_FE_73_THAT, AU_FE_72_THAT, AU_FE_71_THAT, AU_FE_70_THAT, AU_FE_69_THAT, AU_FE_68_THAT, AU_FE_67_THAT, AU_FE_66_THAT, AU_FE_65_THAT, AU_FE_64_THAT, AU_FE_63_THAT, AU_FE_62_THAT, AU_FE_61_THAT, AU_FE_60_THAT, AU_FE_59_THAT, AU_FE_58_THAT, AU_FE_57_THAT, AU_FE_56_THAT, AU_FE_55_THAT, AU_FE_54_THAT, AU_FE_53_THAT, AU_FE_52_THAT, AU_FE_51_THAT, AU_FE_50_THAT, AU_FE_49_THAT, AU_FE_48_THAT, AU_FE_47_THAT, AU_FE_46_THAT, AU_FE_45_THAT, AU_FE_44_THAT, AU_FE_43_THAT, AU_FE_42_THAT, AU_FE_41_THAT, AU_FE_40_THAT, AU_FE_39_THAT, AU_FE_38_THAT, AU_FE_37_THAT, AU_FE_36_THAT, AU_FE_35_THAT, AU_FE_34_THAT, AU_FE_33_THAT, AU_FE_32_THAT, AU_FE_31_THAT, AU_FE_30_THAT, AU_FE_29_THAT, AU_FE_28_THAT, AU_FE_27_THAT, AU_FE_26_THAT, AU_FE_25_THAT, AU_FE_24_THAT, AU_FE_23_THAT, AU_FE_22_THAT, AU_FE_21_THAT, AU_FE_20_THAT, AU_FE_19_THAT, AU_FE_18_THAT, AU_FE_17_THAT, AU_FE_16_THAT, AU_FE_15_THAT, AU_FE_14_THAT, AU_FE_13_THAT, AU_FE_12_THAT, AU_FE_11_THAT, AU_FE_10_THAT, AU_FE_9_THAT, AU_FE_8_THAT, AU_FE_7_THAT, AU_FE_6_THAT, AU_FE_5_THAT, AU_FE_4_THAT, AU_FE_3_THAT, AU_FE_ERROR, AU_FE_1_THAT, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_2(expandable) #define AU_FE_1_2(expandable) #define AU_FE_1_FIRST_2(first, second) -#define AU_FE_2_2(expandable, X0, X1) expandable(X0, X1) AU_FE_EXPAND(AU_FE_0_2(expandable)) +#define AU_FE_2_2(expandable, X0, X1) expandable(X0, X1) +#define AU_FE_3_THAT_2(expandable, ctx, X0, X1) expandable(ctx, X0, X1) #define AU_FE_3_FIRST_2(first, second, X0, X1) first(X0, X1) AU_FE_EXPAND(AU_FE_0_2(second)) #define AU_FE_4_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_2_2(expandable, __VA_ARGS__)) +#define AU_FE_5_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_3_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_5_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_2_2(second, __VA_ARGS__)) #define AU_FE_6_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_4_2(expandable, __VA_ARGS__)) +#define AU_FE_7_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_5_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_7_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_4_2(second, __VA_ARGS__)) #define AU_FE_8_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_6_2(expandable, __VA_ARGS__)) +#define AU_FE_9_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_7_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_9_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_6_2(second, __VA_ARGS__)) #define AU_FE_10_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_8_2(expandable, __VA_ARGS__)) +#define AU_FE_11_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_9_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_11_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_8_2(second, __VA_ARGS__)) #define AU_FE_12_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_10_2(expandable, __VA_ARGS__)) +#define AU_FE_13_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_11_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_13_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_10_2(second, __VA_ARGS__)) #define AU_FE_14_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_12_2(expandable, __VA_ARGS__)) +#define AU_FE_15_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_13_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_15_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_12_2(second, __VA_ARGS__)) #define AU_FE_16_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_14_2(expandable, __VA_ARGS__)) +#define AU_FE_17_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_15_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_17_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_14_2(second, __VA_ARGS__)) #define AU_FE_18_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_16_2(expandable, __VA_ARGS__)) +#define AU_FE_19_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_17_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_19_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_16_2(second, __VA_ARGS__)) #define AU_FE_20_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_18_2(expandable, __VA_ARGS__)) +#define AU_FE_21_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_19_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_21_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_18_2(second, __VA_ARGS__)) #define AU_FE_22_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_20_2(expandable, __VA_ARGS__)) +#define AU_FE_23_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_21_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_23_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_20_2(second, __VA_ARGS__)) #define AU_FE_24_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_22_2(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_23_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_22_2(second, __VA_ARGS__)) #define AU_FE_26_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_24_2(expandable, __VA_ARGS__)) +#define AU_FE_27_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_25_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_27_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_24_2(second, __VA_ARGS__)) #define AU_FE_28_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_26_2(expandable, __VA_ARGS__)) +#define AU_FE_29_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_27_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_29_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_26_2(second, __VA_ARGS__)) #define AU_FE_30_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_28_2(expandable, __VA_ARGS__)) +#define AU_FE_31_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_29_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_31_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_28_2(second, __VA_ARGS__)) #define AU_FE_32_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_30_2(expandable, __VA_ARGS__)) +#define AU_FE_33_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_31_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_33_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_30_2(second, __VA_ARGS__)) #define AU_FE_34_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_32_2(expandable, __VA_ARGS__)) +#define AU_FE_35_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_33_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_35_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_32_2(second, __VA_ARGS__)) #define AU_FE_36_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_34_2(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_35_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_34_2(second, __VA_ARGS__)) #define AU_FE_38_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_36_2(expandable, __VA_ARGS__)) +#define AU_FE_39_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_37_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_39_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_36_2(second, __VA_ARGS__)) #define AU_FE_40_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_38_2(expandable, __VA_ARGS__)) +#define AU_FE_41_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_39_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_41_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_38_2(second, __VA_ARGS__)) #define AU_FE_42_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_40_2(expandable, __VA_ARGS__)) +#define AU_FE_43_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_41_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_43_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_40_2(second, __VA_ARGS__)) #define AU_FE_44_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_42_2(expandable, __VA_ARGS__)) +#define AU_FE_45_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_43_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_45_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_42_2(second, __VA_ARGS__)) #define AU_FE_46_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_44_2(expandable, __VA_ARGS__)) +#define AU_FE_47_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_45_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_47_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_44_2(second, __VA_ARGS__)) #define AU_FE_48_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_46_2(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_47_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_46_2(second, __VA_ARGS__)) #define AU_FE_50_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_48_2(expandable, __VA_ARGS__)) +#define AU_FE_51_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_49_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_51_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_48_2(second, __VA_ARGS__)) #define AU_FE_52_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_50_2(expandable, __VA_ARGS__)) +#define AU_FE_53_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_51_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_53_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_50_2(second, __VA_ARGS__)) #define AU_FE_54_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_52_2(expandable, __VA_ARGS__)) +#define AU_FE_55_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_53_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_55_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_52_2(second, __VA_ARGS__)) #define AU_FE_56_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_54_2(expandable, __VA_ARGS__)) +#define AU_FE_57_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_55_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_57_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_54_2(second, __VA_ARGS__)) #define AU_FE_58_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_56_2(expandable, __VA_ARGS__)) +#define AU_FE_59_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_57_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_59_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_56_2(second, __VA_ARGS__)) #define AU_FE_60_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_58_2(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_59_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_58_2(second, __VA_ARGS__)) #define AU_FE_62_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_60_2(expandable, __VA_ARGS__)) +#define AU_FE_63_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_61_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_63_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_60_2(second, __VA_ARGS__)) #define AU_FE_64_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_62_2(expandable, __VA_ARGS__)) +#define AU_FE_65_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_63_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_65_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_62_2(second, __VA_ARGS__)) #define AU_FE_66_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_64_2(expandable, __VA_ARGS__)) +#define AU_FE_67_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_65_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_67_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_64_2(second, __VA_ARGS__)) #define AU_FE_68_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_66_2(expandable, __VA_ARGS__)) +#define AU_FE_69_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_67_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_69_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_66_2(second, __VA_ARGS__)) #define AU_FE_70_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_68_2(expandable, __VA_ARGS__)) +#define AU_FE_71_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_69_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_71_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_68_2(second, __VA_ARGS__)) #define AU_FE_72_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_70_2(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_71_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_70_2(second, __VA_ARGS__)) #define AU_FE_74_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_72_2(expandable, __VA_ARGS__)) +#define AU_FE_75_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_73_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_75_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_72_2(second, __VA_ARGS__)) #define AU_FE_76_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_74_2(expandable, __VA_ARGS__)) +#define AU_FE_77_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_75_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_77_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_74_2(second, __VA_ARGS__)) #define AU_FE_78_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_76_2(expandable, __VA_ARGS__)) +#define AU_FE_79_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_77_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_79_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_76_2(second, __VA_ARGS__)) #define AU_FE_80_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_78_2(expandable, __VA_ARGS__)) +#define AU_FE_81_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_79_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_81_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_78_2(second, __VA_ARGS__)) #define AU_FE_82_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_80_2(expandable, __VA_ARGS__)) +#define AU_FE_83_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_81_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_83_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_80_2(second, __VA_ARGS__)) #define AU_FE_84_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_82_2(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_83_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_82_2(second, __VA_ARGS__)) #define AU_FE_86_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_84_2(expandable, __VA_ARGS__)) +#define AU_FE_87_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_85_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_87_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_84_2(second, __VA_ARGS__)) #define AU_FE_88_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_86_2(expandable, __VA_ARGS__)) +#define AU_FE_89_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_87_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_89_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_86_2(second, __VA_ARGS__)) #define AU_FE_90_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_88_2(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_89_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_88_2(second, __VA_ARGS__)) #define AU_FE_92_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_90_2(expandable, __VA_ARGS__)) +#define AU_FE_93_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_91_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_93_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_90_2(second, __VA_ARGS__)) #define AU_FE_94_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_92_2(expandable, __VA_ARGS__)) +#define AU_FE_95_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_93_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_95_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_92_2(second, __VA_ARGS__)) #define AU_FE_96_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_94_2(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_95_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_94_2(second, __VA_ARGS__)) #define AU_FE_98_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_96_2(expandable, __VA_ARGS__)) +#define AU_FE_99_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_97_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_99_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_96_2(second, __VA_ARGS__)) #define AU_FE_100_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_98_2(expandable, __VA_ARGS__)) +#define AU_FE_101_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_99_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_101_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_98_2(second, __VA_ARGS__)) #define AU_FE_102_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_100_2(expandable, __VA_ARGS__)) +#define AU_FE_103_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_101_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_103_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_100_2(second, __VA_ARGS__)) #define AU_FE_104_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_102_2(expandable, __VA_ARGS__)) +#define AU_FE_105_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_103_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_105_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_102_2(second, __VA_ARGS__)) #define AU_FE_106_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_104_2(expandable, __VA_ARGS__)) +#define AU_FE_107_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_105_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_107_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_104_2(second, __VA_ARGS__)) #define AU_FE_108_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_106_2(expandable, __VA_ARGS__)) +#define AU_FE_109_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_107_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_109_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_106_2(second, __VA_ARGS__)) #define AU_FE_110_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_108_2(expandable, __VA_ARGS__)) +#define AU_FE_111_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_109_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_111_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_108_2(second, __VA_ARGS__)) #define AU_FE_112_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_110_2(expandable, __VA_ARGS__)) +#define AU_FE_113_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_111_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_113_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_110_2(second, __VA_ARGS__)) #define AU_FE_114_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_112_2(expandable, __VA_ARGS__)) +#define AU_FE_115_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_113_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_115_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_112_2(second, __VA_ARGS__)) #define AU_FE_116_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_114_2(expandable, __VA_ARGS__)) +#define AU_FE_117_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_115_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_117_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_114_2(second, __VA_ARGS__)) #define AU_FE_118_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_116_2(expandable, __VA_ARGS__)) +#define AU_FE_119_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_117_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_119_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_116_2(second, __VA_ARGS__)) #define AU_FE_120_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_118_2(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_119_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_118_2(second, __VA_ARGS__)) #define AU_FE_122_2(expandable, X0, X1, ...) expandable(X0, X1) AU_FE_EXPAND(AU_FE_120_2(expandable, __VA_ARGS__)) +#define AU_FE_123_THAT_2(expandable, ctx, X0, X1, ...) expandable(ctx, X0, X1) AU_FE_EXPAND(AU_FE_121_THAT_2(expandable, ctx, __VA_ARGS__)) #define AU_FE_123_FIRST_2(first, second, X0, X1, ...) first(X0, X1) AU_FE_EXPAND(AU_FE_120_2(second, __VA_ARGS__)) #define AU_GET_MACRO_2(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_2(action, ...) AU_FE_EXPAND(AU_GET_MACRO_2(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_122_2, AU_FE_ERROR, AU_FE_120_2, AU_FE_ERROR, AU_FE_118_2, AU_FE_ERROR, AU_FE_116_2, AU_FE_ERROR, AU_FE_114_2, AU_FE_ERROR, AU_FE_112_2, AU_FE_ERROR, AU_FE_110_2, AU_FE_ERROR, AU_FE_108_2, AU_FE_ERROR, AU_FE_106_2, AU_FE_ERROR, AU_FE_104_2, AU_FE_ERROR, AU_FE_102_2, AU_FE_ERROR, AU_FE_100_2, AU_FE_ERROR, AU_FE_98_2, AU_FE_ERROR, AU_FE_96_2, AU_FE_ERROR, AU_FE_94_2, AU_FE_ERROR, AU_FE_92_2, AU_FE_ERROR, AU_FE_90_2, AU_FE_ERROR, AU_FE_88_2, AU_FE_ERROR, AU_FE_86_2, AU_FE_ERROR, AU_FE_84_2, AU_FE_ERROR, AU_FE_82_2, AU_FE_ERROR, AU_FE_80_2, AU_FE_ERROR, AU_FE_78_2, AU_FE_ERROR, AU_FE_76_2, AU_FE_ERROR, AU_FE_74_2, AU_FE_ERROR, AU_FE_72_2, AU_FE_ERROR, AU_FE_70_2, AU_FE_ERROR, AU_FE_68_2, AU_FE_ERROR, AU_FE_66_2, AU_FE_ERROR, AU_FE_64_2, AU_FE_ERROR, AU_FE_62_2, AU_FE_ERROR, AU_FE_60_2, AU_FE_ERROR, AU_FE_58_2, AU_FE_ERROR, AU_FE_56_2, AU_FE_ERROR, AU_FE_54_2, AU_FE_ERROR, AU_FE_52_2, AU_FE_ERROR, AU_FE_50_2, AU_FE_ERROR, AU_FE_48_2, AU_FE_ERROR, AU_FE_46_2, AU_FE_ERROR, AU_FE_44_2, AU_FE_ERROR, AU_FE_42_2, AU_FE_ERROR, AU_FE_40_2, AU_FE_ERROR, AU_FE_38_2, AU_FE_ERROR, AU_FE_36_2, AU_FE_ERROR, AU_FE_34_2, AU_FE_ERROR, AU_FE_32_2, AU_FE_ERROR, AU_FE_30_2, AU_FE_ERROR, AU_FE_28_2, AU_FE_ERROR, AU_FE_26_2, AU_FE_ERROR, AU_FE_24_2, AU_FE_ERROR, AU_FE_22_2, AU_FE_ERROR, AU_FE_20_2, AU_FE_ERROR, AU_FE_18_2, AU_FE_ERROR, AU_FE_16_2, AU_FE_ERROR, AU_FE_14_2, AU_FE_ERROR, AU_FE_12_2, AU_FE_ERROR, AU_FE_10_2, AU_FE_ERROR, AU_FE_8_2, AU_FE_ERROR, AU_FE_6_2, AU_FE_ERROR, AU_FE_4_2, AU_FE_ERROR, AU_FE_2_2, AU_FE_1_2, AU_FE_0_2)(action,__VA_ARGS__)) +#define AU_FOR_EACH_2(action, ...) AU_FE_EXPAND(AU_GET_MACRO_2(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_122_2, AU_FE_ERROR, AU_FE_120_2, AU_FE_ERROR, AU_FE_118_2, AU_FE_ERROR, AU_FE_116_2, AU_FE_ERROR, AU_FE_114_2, AU_FE_ERROR, AU_FE_112_2, AU_FE_ERROR, AU_FE_110_2, AU_FE_ERROR, AU_FE_108_2, AU_FE_ERROR, AU_FE_106_2, AU_FE_ERROR, AU_FE_104_2, AU_FE_ERROR, AU_FE_102_2, AU_FE_ERROR, AU_FE_100_2, AU_FE_ERROR, AU_FE_98_2, AU_FE_ERROR, AU_FE_96_2, AU_FE_ERROR, AU_FE_94_2, AU_FE_ERROR, AU_FE_92_2, AU_FE_ERROR, AU_FE_90_2, AU_FE_ERROR, AU_FE_88_2, AU_FE_ERROR, AU_FE_86_2, AU_FE_ERROR, AU_FE_84_2, AU_FE_ERROR, AU_FE_82_2, AU_FE_ERROR, AU_FE_80_2, AU_FE_ERROR, AU_FE_78_2, AU_FE_ERROR, AU_FE_76_2, AU_FE_ERROR, AU_FE_74_2, AU_FE_ERROR, AU_FE_72_2, AU_FE_ERROR, AU_FE_70_2, AU_FE_ERROR, AU_FE_68_2, AU_FE_ERROR, AU_FE_66_2, AU_FE_ERROR, AU_FE_64_2, AU_FE_ERROR, AU_FE_62_2, AU_FE_ERROR, AU_FE_60_2, AU_FE_ERROR, AU_FE_58_2, AU_FE_ERROR, AU_FE_56_2, AU_FE_ERROR, AU_FE_54_2, AU_FE_ERROR, AU_FE_52_2, AU_FE_ERROR, AU_FE_50_2, AU_FE_ERROR, AU_FE_48_2, AU_FE_ERROR, AU_FE_46_2, AU_FE_ERROR, AU_FE_44_2, AU_FE_ERROR, AU_FE_42_2, AU_FE_ERROR, AU_FE_40_2, AU_FE_ERROR, AU_FE_38_2, AU_FE_ERROR, AU_FE_36_2, AU_FE_ERROR, AU_FE_34_2, AU_FE_ERROR, AU_FE_32_2, AU_FE_ERROR, AU_FE_30_2, AU_FE_ERROR, AU_FE_28_2, AU_FE_ERROR, AU_FE_26_2, AU_FE_ERROR, AU_FE_24_2, AU_FE_ERROR, AU_FE_22_2, AU_FE_ERROR, AU_FE_20_2, AU_FE_ERROR, AU_FE_18_2, AU_FE_ERROR, AU_FE_16_2, AU_FE_ERROR, AU_FE_14_2, AU_FE_ERROR, AU_FE_12_2, AU_FE_ERROR, AU_FE_10_2, AU_FE_ERROR, AU_FE_8_2, AU_FE_ERROR, AU_FE_6_2, AU_FE_ERROR, AU_FE_4_2, AU_FE_ERROR, AU_FE_2_2, AU_FE_1_2, AU_FE_0_2)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_2(action, ...) AU_FE_EXPAND(AU_GET_MACRO_2(_whydoweneedthis, __VA_ARGS__, AU_FE_123_FIRST_2, AU_FE_ERROR, AU_FE_121_FIRST_2, AU_FE_ERROR, AU_FE_119_FIRST_2, AU_FE_ERROR, AU_FE_117_FIRST_2, AU_FE_ERROR, AU_FE_115_FIRST_2, AU_FE_ERROR, AU_FE_113_FIRST_2, AU_FE_ERROR, AU_FE_111_FIRST_2, AU_FE_ERROR, AU_FE_109_FIRST_2, AU_FE_ERROR, AU_FE_107_FIRST_2, AU_FE_ERROR, AU_FE_105_FIRST_2, AU_FE_ERROR, AU_FE_103_FIRST_2, AU_FE_ERROR, AU_FE_101_FIRST_2, AU_FE_ERROR, AU_FE_99_FIRST_2, AU_FE_ERROR, AU_FE_97_FIRST_2, AU_FE_ERROR, AU_FE_95_FIRST_2, AU_FE_ERROR, AU_FE_93_FIRST_2, AU_FE_ERROR, AU_FE_91_FIRST_2, AU_FE_ERROR, AU_FE_89_FIRST_2, AU_FE_ERROR, AU_FE_87_FIRST_2, AU_FE_ERROR, AU_FE_85_FIRST_2, AU_FE_ERROR, AU_FE_83_FIRST_2, AU_FE_ERROR, AU_FE_81_FIRST_2, AU_FE_ERROR, AU_FE_79_FIRST_2, AU_FE_ERROR, AU_FE_77_FIRST_2, AU_FE_ERROR, AU_FE_75_FIRST_2, AU_FE_ERROR, AU_FE_73_FIRST_2, AU_FE_ERROR, AU_FE_71_FIRST_2, AU_FE_ERROR, AU_FE_69_FIRST_2, AU_FE_ERROR, AU_FE_67_FIRST_2, AU_FE_ERROR, AU_FE_65_FIRST_2, AU_FE_ERROR, AU_FE_63_FIRST_2, AU_FE_ERROR, AU_FE_61_FIRST_2, AU_FE_ERROR, AU_FE_59_FIRST_2, AU_FE_ERROR, AU_FE_57_FIRST_2, AU_FE_ERROR, AU_FE_55_FIRST_2, AU_FE_ERROR, AU_FE_53_FIRST_2, AU_FE_ERROR, AU_FE_51_FIRST_2, AU_FE_ERROR, AU_FE_49_FIRST_2, AU_FE_ERROR, AU_FE_47_FIRST_2, AU_FE_ERROR, AU_FE_45_FIRST_2, AU_FE_ERROR, AU_FE_43_FIRST_2, AU_FE_ERROR, AU_FE_41_FIRST_2, AU_FE_ERROR, AU_FE_39_FIRST_2, AU_FE_ERROR, AU_FE_37_FIRST_2, AU_FE_ERROR, AU_FE_35_FIRST_2, AU_FE_ERROR, AU_FE_33_FIRST_2, AU_FE_ERROR, AU_FE_31_FIRST_2, AU_FE_ERROR, AU_FE_29_FIRST_2, AU_FE_ERROR, AU_FE_27_FIRST_2, AU_FE_ERROR, AU_FE_25_FIRST_2, AU_FE_ERROR, AU_FE_23_FIRST_2, AU_FE_ERROR, AU_FE_21_FIRST_2, AU_FE_ERROR, AU_FE_19_FIRST_2, AU_FE_ERROR, AU_FE_17_FIRST_2, AU_FE_ERROR, AU_FE_15_FIRST_2, AU_FE_ERROR, AU_FE_13_FIRST_2, AU_FE_ERROR, AU_FE_11_FIRST_2, AU_FE_ERROR, AU_FE_9_FIRST_2, AU_FE_ERROR, AU_FE_7_FIRST_2, AU_FE_ERROR, AU_FE_5_FIRST_2, AU_FE_ERROR, AU_FE_3_FIRST_2, AU_FE_ERROR, AU_FE_1_FIRST_2, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_2(action, ...) AU_FE_EXPAND(AU_GET_MACRO_2(_whydoweneedthis, __VA_ARGS__, AU_FE_123_THAT_2, AU_FE_ERROR, AU_FE_121_THAT_2, AU_FE_ERROR, AU_FE_119_THAT_2, AU_FE_ERROR, AU_FE_117_THAT_2, AU_FE_ERROR, AU_FE_115_THAT_2, AU_FE_ERROR, AU_FE_113_THAT_2, AU_FE_ERROR, AU_FE_111_THAT_2, AU_FE_ERROR, AU_FE_109_THAT_2, AU_FE_ERROR, AU_FE_107_THAT_2, AU_FE_ERROR, AU_FE_105_THAT_2, AU_FE_ERROR, AU_FE_103_THAT_2, AU_FE_ERROR, AU_FE_101_THAT_2, AU_FE_ERROR, AU_FE_99_THAT_2, AU_FE_ERROR, AU_FE_97_THAT_2, AU_FE_ERROR, AU_FE_95_THAT_2, AU_FE_ERROR, AU_FE_93_THAT_2, AU_FE_ERROR, AU_FE_91_THAT_2, AU_FE_ERROR, AU_FE_89_THAT_2, AU_FE_ERROR, AU_FE_87_THAT_2, AU_FE_ERROR, AU_FE_85_THAT_2, AU_FE_ERROR, AU_FE_83_THAT_2, AU_FE_ERROR, AU_FE_81_THAT_2, AU_FE_ERROR, AU_FE_79_THAT_2, AU_FE_ERROR, AU_FE_77_THAT_2, AU_FE_ERROR, AU_FE_75_THAT_2, AU_FE_ERROR, AU_FE_73_THAT_2, AU_FE_ERROR, AU_FE_71_THAT_2, AU_FE_ERROR, AU_FE_69_THAT_2, AU_FE_ERROR, AU_FE_67_THAT_2, AU_FE_ERROR, AU_FE_65_THAT_2, AU_FE_ERROR, AU_FE_63_THAT_2, AU_FE_ERROR, AU_FE_61_THAT_2, AU_FE_ERROR, AU_FE_59_THAT_2, AU_FE_ERROR, AU_FE_57_THAT_2, AU_FE_ERROR, AU_FE_55_THAT_2, AU_FE_ERROR, AU_FE_53_THAT_2, AU_FE_ERROR, AU_FE_51_THAT_2, AU_FE_ERROR, AU_FE_49_THAT_2, AU_FE_ERROR, AU_FE_47_THAT_2, AU_FE_ERROR, AU_FE_45_THAT_2, AU_FE_ERROR, AU_FE_43_THAT_2, AU_FE_ERROR, AU_FE_41_THAT_2, AU_FE_ERROR, AU_FE_39_THAT_2, AU_FE_ERROR, AU_FE_37_THAT_2, AU_FE_ERROR, AU_FE_35_THAT_2, AU_FE_ERROR, AU_FE_33_THAT_2, AU_FE_ERROR, AU_FE_31_THAT_2, AU_FE_ERROR, AU_FE_29_THAT_2, AU_FE_ERROR, AU_FE_27_THAT_2, AU_FE_ERROR, AU_FE_25_THAT_2, AU_FE_ERROR, AU_FE_23_THAT_2, AU_FE_ERROR, AU_FE_21_THAT_2, AU_FE_ERROR, AU_FE_19_THAT_2, AU_FE_ERROR, AU_FE_17_THAT_2, AU_FE_ERROR, AU_FE_15_THAT_2, AU_FE_ERROR, AU_FE_13_THAT_2, AU_FE_ERROR, AU_FE_11_THAT_2, AU_FE_ERROR, AU_FE_9_THAT_2, AU_FE_ERROR, AU_FE_7_THAT_2, AU_FE_ERROR, AU_FE_5_THAT_2, AU_FE_ERROR, AU_FE_ERROR, AU_FE_2_THAT_2, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_3(expandable) #define AU_FE_1_3(expandable, empty) #define AU_FE_1_FIRST_3(first, second) #define AU_FE_2_3(expandable) -#define AU_FE_3_3(expandable, X0, X1, X2) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_0_3(expandable)) +#define AU_FE_3_3(expandable, X0, X1, X2) expandable(X0, X1, X2) +#define AU_FE_4_THAT_3(expandable, ctx, X0, X1, X2) expandable(ctx, X0, X1, X2) #define AU_FE_4_FIRST_3(first, second, X0, X1, X2) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_0_3(second)) #define AU_FE_6_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_3_3(expandable, __VA_ARGS__)) +#define AU_FE_7_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_4_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_7_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_3_3(second, __VA_ARGS__)) #define AU_FE_9_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_6_3(expandable, __VA_ARGS__)) +#define AU_FE_10_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_7_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_10_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_6_3(second, __VA_ARGS__)) #define AU_FE_12_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_9_3(expandable, __VA_ARGS__)) +#define AU_FE_13_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_10_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_13_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_9_3(second, __VA_ARGS__)) #define AU_FE_15_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_12_3(expandable, __VA_ARGS__)) +#define AU_FE_16_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_13_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_16_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_12_3(second, __VA_ARGS__)) #define AU_FE_18_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_15_3(expandable, __VA_ARGS__)) +#define AU_FE_19_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_16_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_19_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_15_3(second, __VA_ARGS__)) #define AU_FE_21_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_18_3(expandable, __VA_ARGS__)) +#define AU_FE_22_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_19_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_22_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_18_3(second, __VA_ARGS__)) #define AU_FE_24_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_21_3(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_22_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_21_3(second, __VA_ARGS__)) #define AU_FE_27_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_24_3(expandable, __VA_ARGS__)) +#define AU_FE_28_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_25_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_28_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_24_3(second, __VA_ARGS__)) #define AU_FE_30_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_27_3(expandable, __VA_ARGS__)) +#define AU_FE_31_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_28_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_31_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_27_3(second, __VA_ARGS__)) #define AU_FE_33_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_30_3(expandable, __VA_ARGS__)) +#define AU_FE_34_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_31_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_34_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_30_3(second, __VA_ARGS__)) #define AU_FE_36_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_33_3(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_34_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_33_3(second, __VA_ARGS__)) #define AU_FE_39_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_36_3(expandable, __VA_ARGS__)) +#define AU_FE_40_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_37_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_40_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_36_3(second, __VA_ARGS__)) #define AU_FE_42_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_39_3(expandable, __VA_ARGS__)) +#define AU_FE_43_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_40_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_43_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_39_3(second, __VA_ARGS__)) #define AU_FE_45_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_42_3(expandable, __VA_ARGS__)) +#define AU_FE_46_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_43_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_46_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_42_3(second, __VA_ARGS__)) #define AU_FE_48_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_45_3(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_46_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_45_3(second, __VA_ARGS__)) #define AU_FE_51_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_48_3(expandable, __VA_ARGS__)) +#define AU_FE_52_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_49_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_52_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_48_3(second, __VA_ARGS__)) #define AU_FE_54_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_51_3(expandable, __VA_ARGS__)) +#define AU_FE_55_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_52_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_55_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_51_3(second, __VA_ARGS__)) #define AU_FE_57_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_54_3(expandable, __VA_ARGS__)) +#define AU_FE_58_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_55_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_58_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_54_3(second, __VA_ARGS__)) #define AU_FE_60_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_57_3(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_58_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_57_3(second, __VA_ARGS__)) #define AU_FE_63_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_60_3(expandable, __VA_ARGS__)) +#define AU_FE_64_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_61_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_64_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_60_3(second, __VA_ARGS__)) #define AU_FE_66_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_63_3(expandable, __VA_ARGS__)) +#define AU_FE_67_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_64_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_67_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_63_3(second, __VA_ARGS__)) #define AU_FE_69_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_66_3(expandable, __VA_ARGS__)) +#define AU_FE_70_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_67_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_70_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_66_3(second, __VA_ARGS__)) #define AU_FE_72_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_69_3(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_70_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_69_3(second, __VA_ARGS__)) #define AU_FE_75_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_72_3(expandable, __VA_ARGS__)) +#define AU_FE_76_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_73_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_76_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_72_3(second, __VA_ARGS__)) #define AU_FE_78_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_75_3(expandable, __VA_ARGS__)) +#define AU_FE_79_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_76_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_79_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_75_3(second, __VA_ARGS__)) #define AU_FE_81_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_78_3(expandable, __VA_ARGS__)) +#define AU_FE_82_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_79_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_82_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_78_3(second, __VA_ARGS__)) #define AU_FE_84_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_81_3(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_82_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_81_3(second, __VA_ARGS__)) #define AU_FE_87_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_84_3(expandable, __VA_ARGS__)) +#define AU_FE_88_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_85_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_88_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_84_3(second, __VA_ARGS__)) #define AU_FE_90_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_87_3(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_88_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_87_3(second, __VA_ARGS__)) #define AU_FE_93_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_90_3(expandable, __VA_ARGS__)) +#define AU_FE_94_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_91_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_94_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_90_3(second, __VA_ARGS__)) #define AU_FE_96_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_93_3(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_94_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_93_3(second, __VA_ARGS__)) #define AU_FE_99_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_96_3(expandable, __VA_ARGS__)) +#define AU_FE_100_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_97_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_100_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_96_3(second, __VA_ARGS__)) #define AU_FE_102_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_99_3(expandable, __VA_ARGS__)) +#define AU_FE_103_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_100_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_103_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_99_3(second, __VA_ARGS__)) #define AU_FE_105_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_102_3(expandable, __VA_ARGS__)) +#define AU_FE_106_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_103_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_106_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_102_3(second, __VA_ARGS__)) #define AU_FE_108_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_105_3(expandable, __VA_ARGS__)) +#define AU_FE_109_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_106_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_109_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_105_3(second, __VA_ARGS__)) #define AU_FE_111_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_108_3(expandable, __VA_ARGS__)) +#define AU_FE_112_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_109_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_112_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_108_3(second, __VA_ARGS__)) #define AU_FE_114_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_111_3(expandable, __VA_ARGS__)) +#define AU_FE_115_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_112_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_115_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_111_3(second, __VA_ARGS__)) #define AU_FE_117_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_114_3(expandable, __VA_ARGS__)) +#define AU_FE_118_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_115_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_118_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_114_3(second, __VA_ARGS__)) #define AU_FE_120_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_117_3(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_118_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_117_3(second, __VA_ARGS__)) #define AU_FE_123_3(expandable, X0, X1, X2, ...) expandable(X0, X1, X2) AU_FE_EXPAND(AU_FE_120_3(expandable, __VA_ARGS__)) +#define AU_FE_124_THAT_3(expandable, ctx, X0, X1, X2, ...) expandable(ctx, X0, X1, X2) AU_FE_EXPAND(AU_FE_121_THAT_3(expandable, ctx, __VA_ARGS__)) #define AU_FE_124_FIRST_3(first, second, X0, X1, X2, ...) first(X0, X1, X2) AU_FE_EXPAND(AU_FE_120_3(second, __VA_ARGS__)) #define AU_GET_MACRO_3(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_3(action, ...) AU_FE_EXPAND(AU_GET_MACRO_3(_whydoweneedthis, __VA_ARGS__, AU_FE_123_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_114_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_111_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_102_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_93_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_87_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_75_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_69_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_51_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_39_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_27_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_3_3, AU_FE_2_3, AU_FE_1_3, AU_FE_0_3)(action,__VA_ARGS__)) +#define AU_FOR_EACH_3(action, ...) AU_FE_EXPAND(AU_GET_MACRO_3(_whydoweneedthis, __VA_ARGS__, AU_FE_123_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_114_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_111_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_102_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_93_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_87_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_75_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_69_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_51_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_39_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_27_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_3_3, AU_FE_2_3, AU_FE_1_3, AU_FE_0_3)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_3(action, ...) AU_FE_EXPAND(AU_GET_MACRO_3(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_118_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_103_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_94_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_82_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_79_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_67_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_58_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_52_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_34_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_22_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_10_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_4_FIRST_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_3, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_3(action, ...) AU_FE_EXPAND(AU_GET_MACRO_3(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_118_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_103_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_94_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_82_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_79_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_67_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_58_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_52_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_34_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_22_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_10_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_3_THAT_3, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_4(expandable) #define AU_FE_1_4(expandable, empty) #define AU_FE_1_FIRST_4(first, second) #define AU_FE_3_4(expandable) -#define AU_FE_4_4(expandable, X0, X1, X2, X3) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_0_4(expandable)) +#define AU_FE_4_4(expandable, X0, X1, X2, X3) expandable(X0, X1, X2, X3) +#define AU_FE_5_THAT_4(expandable, ctx, X0, X1, X2, X3) expandable(ctx, X0, X1, X2, X3) #define AU_FE_5_FIRST_4(first, second, X0, X1, X2, X3) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_0_4(second)) #define AU_FE_8_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_4_4(expandable, __VA_ARGS__)) +#define AU_FE_9_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_5_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_9_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_4_4(second, __VA_ARGS__)) #define AU_FE_12_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_8_4(expandable, __VA_ARGS__)) +#define AU_FE_13_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_9_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_13_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_8_4(second, __VA_ARGS__)) #define AU_FE_16_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_12_4(expandable, __VA_ARGS__)) +#define AU_FE_17_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_13_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_17_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_12_4(second, __VA_ARGS__)) #define AU_FE_20_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_16_4(expandable, __VA_ARGS__)) +#define AU_FE_21_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_17_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_21_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_16_4(second, __VA_ARGS__)) #define AU_FE_24_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_20_4(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_21_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_20_4(second, __VA_ARGS__)) #define AU_FE_28_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_24_4(expandable, __VA_ARGS__)) +#define AU_FE_29_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_25_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_29_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_24_4(second, __VA_ARGS__)) #define AU_FE_32_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_28_4(expandable, __VA_ARGS__)) +#define AU_FE_33_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_29_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_33_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_28_4(second, __VA_ARGS__)) #define AU_FE_36_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_32_4(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_33_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_32_4(second, __VA_ARGS__)) #define AU_FE_40_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_36_4(expandable, __VA_ARGS__)) +#define AU_FE_41_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_37_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_41_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_36_4(second, __VA_ARGS__)) #define AU_FE_44_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_40_4(expandable, __VA_ARGS__)) +#define AU_FE_45_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_41_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_45_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_40_4(second, __VA_ARGS__)) #define AU_FE_48_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_44_4(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_45_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_44_4(second, __VA_ARGS__)) #define AU_FE_52_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_48_4(expandable, __VA_ARGS__)) +#define AU_FE_53_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_49_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_53_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_48_4(second, __VA_ARGS__)) #define AU_FE_56_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_52_4(expandable, __VA_ARGS__)) +#define AU_FE_57_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_53_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_57_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_52_4(second, __VA_ARGS__)) #define AU_FE_60_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_56_4(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_57_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_56_4(second, __VA_ARGS__)) #define AU_FE_64_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_60_4(expandable, __VA_ARGS__)) +#define AU_FE_65_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_61_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_65_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_60_4(second, __VA_ARGS__)) #define AU_FE_68_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_64_4(expandable, __VA_ARGS__)) +#define AU_FE_69_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_65_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_69_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_64_4(second, __VA_ARGS__)) #define AU_FE_72_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_68_4(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_69_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_68_4(second, __VA_ARGS__)) #define AU_FE_76_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_72_4(expandable, __VA_ARGS__)) +#define AU_FE_77_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_73_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_77_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_72_4(second, __VA_ARGS__)) #define AU_FE_80_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_76_4(expandable, __VA_ARGS__)) +#define AU_FE_81_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_77_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_81_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_76_4(second, __VA_ARGS__)) #define AU_FE_84_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_80_4(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_81_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_80_4(second, __VA_ARGS__)) #define AU_FE_88_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_84_4(expandable, __VA_ARGS__)) +#define AU_FE_89_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_85_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_89_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_84_4(second, __VA_ARGS__)) #define AU_FE_92_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_88_4(expandable, __VA_ARGS__)) +#define AU_FE_93_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_89_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_93_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_88_4(second, __VA_ARGS__)) #define AU_FE_96_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_92_4(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_93_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_92_4(second, __VA_ARGS__)) #define AU_FE_100_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_96_4(expandable, __VA_ARGS__)) +#define AU_FE_101_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_97_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_101_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_96_4(second, __VA_ARGS__)) #define AU_FE_104_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_100_4(expandable, __VA_ARGS__)) +#define AU_FE_105_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_101_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_105_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_100_4(second, __VA_ARGS__)) #define AU_FE_108_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_104_4(expandable, __VA_ARGS__)) +#define AU_FE_109_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_105_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_109_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_104_4(second, __VA_ARGS__)) #define AU_FE_112_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_108_4(expandable, __VA_ARGS__)) +#define AU_FE_113_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_109_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_113_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_108_4(second, __VA_ARGS__)) #define AU_FE_116_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_112_4(expandable, __VA_ARGS__)) +#define AU_FE_117_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_113_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_117_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_112_4(second, __VA_ARGS__)) #define AU_FE_120_4(expandable, X0, X1, X2, X3, ...) expandable(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_116_4(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_4(expandable, ctx, X0, X1, X2, X3, ...) expandable(ctx, X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_117_THAT_4(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_4(first, second, X0, X1, X2, X3, ...) first(X0, X1, X2, X3) AU_FE_EXPAND(AU_FE_116_4(second, __VA_ARGS__)) #define AU_GET_MACRO_4(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_4(action, ...) AU_FE_EXPAND(AU_GET_MACRO_4(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_116_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_104_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_92_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_68_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_52_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_44_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_32_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_20_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_4_4, AU_FE_3_4, AU_FE_ERROR, AU_FE_1_4, AU_FE_0_4)(action,__VA_ARGS__)) +#define AU_FOR_EACH_4(action, ...) AU_FE_EXPAND(AU_GET_MACRO_4(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_116_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_104_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_92_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_68_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_52_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_44_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_32_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_20_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_4_4, AU_FE_3_4, AU_FE_ERROR, AU_FE_1_4, AU_FE_0_4)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_4(action, ...) AU_FE_EXPAND(AU_GET_MACRO_4(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_101_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_93_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_89_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_77_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_69_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_53_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_29_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_17_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_5_FIRST_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_4, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_4(action, ...) AU_FE_EXPAND(AU_GET_MACRO_4(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_101_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_93_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_89_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_77_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_69_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_53_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_29_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_17_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_4_THAT_4, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_5(expandable) #define AU_FE_1_5(expandable, empty) #define AU_FE_1_FIRST_5(first, second) #define AU_FE_4_5(expandable) -#define AU_FE_5_5(expandable, X0, X1, X2, X3, X4) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_0_5(expandable)) +#define AU_FE_5_5(expandable, X0, X1, X2, X3, X4) expandable(X0, X1, X2, X3, X4) +#define AU_FE_6_THAT_5(expandable, ctx, X0, X1, X2, X3, X4) expandable(ctx, X0, X1, X2, X3, X4) #define AU_FE_6_FIRST_5(first, second, X0, X1, X2, X3, X4) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_0_5(second)) #define AU_FE_10_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_5_5(expandable, __VA_ARGS__)) +#define AU_FE_11_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_6_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_11_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_5_5(second, __VA_ARGS__)) #define AU_FE_15_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_10_5(expandable, __VA_ARGS__)) +#define AU_FE_16_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_11_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_16_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_10_5(second, __VA_ARGS__)) #define AU_FE_20_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_15_5(expandable, __VA_ARGS__)) +#define AU_FE_21_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_16_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_21_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_15_5(second, __VA_ARGS__)) #define AU_FE_25_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_20_5(expandable, __VA_ARGS__)) +#define AU_FE_26_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_21_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_26_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_20_5(second, __VA_ARGS__)) #define AU_FE_30_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_25_5(expandable, __VA_ARGS__)) +#define AU_FE_31_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_26_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_31_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_25_5(second, __VA_ARGS__)) #define AU_FE_35_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_30_5(expandable, __VA_ARGS__)) +#define AU_FE_36_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_31_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_36_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_30_5(second, __VA_ARGS__)) #define AU_FE_40_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_35_5(expandable, __VA_ARGS__)) +#define AU_FE_41_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_36_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_41_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_35_5(second, __VA_ARGS__)) #define AU_FE_45_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_40_5(expandable, __VA_ARGS__)) +#define AU_FE_46_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_41_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_46_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_40_5(second, __VA_ARGS__)) #define AU_FE_50_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_45_5(expandable, __VA_ARGS__)) +#define AU_FE_51_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_46_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_51_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_45_5(second, __VA_ARGS__)) #define AU_FE_55_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_50_5(expandable, __VA_ARGS__)) +#define AU_FE_56_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_51_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_56_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_50_5(second, __VA_ARGS__)) #define AU_FE_60_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_55_5(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_56_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_55_5(second, __VA_ARGS__)) #define AU_FE_65_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_60_5(expandable, __VA_ARGS__)) +#define AU_FE_66_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_61_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_66_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_60_5(second, __VA_ARGS__)) #define AU_FE_70_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_65_5(expandable, __VA_ARGS__)) +#define AU_FE_71_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_66_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_71_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_65_5(second, __VA_ARGS__)) #define AU_FE_75_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_70_5(expandable, __VA_ARGS__)) +#define AU_FE_76_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_71_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_76_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_70_5(second, __VA_ARGS__)) #define AU_FE_80_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_75_5(expandable, __VA_ARGS__)) +#define AU_FE_81_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_76_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_81_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_75_5(second, __VA_ARGS__)) #define AU_FE_85_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_80_5(expandable, __VA_ARGS__)) +#define AU_FE_86_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_81_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_86_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_80_5(second, __VA_ARGS__)) #define AU_FE_90_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_85_5(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_86_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_85_5(second, __VA_ARGS__)) #define AU_FE_95_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_90_5(expandable, __VA_ARGS__)) +#define AU_FE_96_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_91_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_96_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_90_5(second, __VA_ARGS__)) #define AU_FE_100_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_95_5(expandable, __VA_ARGS__)) +#define AU_FE_101_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_96_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_101_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_95_5(second, __VA_ARGS__)) #define AU_FE_105_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_100_5(expandable, __VA_ARGS__)) +#define AU_FE_106_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_101_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_106_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_100_5(second, __VA_ARGS__)) #define AU_FE_110_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_105_5(expandable, __VA_ARGS__)) +#define AU_FE_111_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_106_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_111_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_105_5(second, __VA_ARGS__)) #define AU_FE_115_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_110_5(expandable, __VA_ARGS__)) +#define AU_FE_116_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_111_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_116_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_110_5(second, __VA_ARGS__)) #define AU_FE_120_5(expandable, X0, X1, X2, X3, X4, ...) expandable(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_115_5(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_5(expandable, ctx, X0, X1, X2, X3, X4, ...) expandable(ctx, X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_116_THAT_5(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_5(first, second, X0, X1, X2, X3, X4, ...) first(X0, X1, X2, X3, X4) AU_FE_EXPAND(AU_FE_115_5(second, __VA_ARGS__)) #define AU_GET_MACRO_5(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_5(action, ...) AU_FE_EXPAND(AU_GET_MACRO_5(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_110_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_95_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_75_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_50_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_35_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_20_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_10_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_5_5, AU_FE_4_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_5, AU_FE_0_5)(action,__VA_ARGS__)) +#define AU_FOR_EACH_5(action, ...) AU_FE_EXPAND(AU_GET_MACRO_5(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_110_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_95_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_75_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_50_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_35_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_20_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_10_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_5_5, AU_FE_4_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_5, AU_FE_0_5)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_5(action, ...) AU_FE_EXPAND(AU_GET_MACRO_5(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_116_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_111_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_101_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_86_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_71_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_51_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_26_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_11_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_FIRST_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_5, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_5(action, ...) AU_FE_EXPAND(AU_GET_MACRO_5(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_116_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_111_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_101_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_86_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_76_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_71_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_51_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_26_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_11_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_5_THAT_5, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_6(expandable) #define AU_FE_1_6(expandable, empty) #define AU_FE_1_FIRST_6(first, second) #define AU_FE_5_6(expandable) -#define AU_FE_6_6(expandable, X0, X1, X2, X3, X4, X5) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_0_6(expandable)) +#define AU_FE_6_6(expandable, X0, X1, X2, X3, X4, X5) expandable(X0, X1, X2, X3, X4, X5) +#define AU_FE_7_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5) expandable(ctx, X0, X1, X2, X3, X4, X5) #define AU_FE_7_FIRST_6(first, second, X0, X1, X2, X3, X4, X5) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_0_6(second)) #define AU_FE_12_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_6_6(expandable, __VA_ARGS__)) +#define AU_FE_13_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_7_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_13_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_6_6(second, __VA_ARGS__)) #define AU_FE_18_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_12_6(expandable, __VA_ARGS__)) +#define AU_FE_19_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_13_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_19_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_12_6(second, __VA_ARGS__)) #define AU_FE_24_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_18_6(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_19_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_18_6(second, __VA_ARGS__)) #define AU_FE_30_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_24_6(expandable, __VA_ARGS__)) +#define AU_FE_31_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_25_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_31_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_24_6(second, __VA_ARGS__)) #define AU_FE_36_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_30_6(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_31_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_30_6(second, __VA_ARGS__)) #define AU_FE_42_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_36_6(expandable, __VA_ARGS__)) +#define AU_FE_43_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_37_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_43_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_36_6(second, __VA_ARGS__)) #define AU_FE_48_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_42_6(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_43_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_42_6(second, __VA_ARGS__)) #define AU_FE_54_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_48_6(expandable, __VA_ARGS__)) +#define AU_FE_55_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_49_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_55_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_48_6(second, __VA_ARGS__)) #define AU_FE_60_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_54_6(expandable, __VA_ARGS__)) +#define AU_FE_61_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_55_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_61_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_54_6(second, __VA_ARGS__)) #define AU_FE_66_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_60_6(expandable, __VA_ARGS__)) +#define AU_FE_67_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_61_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_67_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_60_6(second, __VA_ARGS__)) #define AU_FE_72_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_66_6(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_67_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_66_6(second, __VA_ARGS__)) #define AU_FE_78_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_72_6(expandable, __VA_ARGS__)) +#define AU_FE_79_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_73_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_79_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_72_6(second, __VA_ARGS__)) #define AU_FE_84_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_78_6(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_79_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_78_6(second, __VA_ARGS__)) #define AU_FE_90_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_84_6(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_85_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_84_6(second, __VA_ARGS__)) #define AU_FE_96_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_90_6(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_91_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_90_6(second, __VA_ARGS__)) #define AU_FE_102_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_96_6(expandable, __VA_ARGS__)) +#define AU_FE_103_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_97_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_103_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_96_6(second, __VA_ARGS__)) #define AU_FE_108_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_102_6(expandable, __VA_ARGS__)) +#define AU_FE_109_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_103_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_109_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_102_6(second, __VA_ARGS__)) #define AU_FE_114_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_108_6(expandable, __VA_ARGS__)) +#define AU_FE_115_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_109_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_115_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_108_6(second, __VA_ARGS__)) #define AU_FE_120_6(expandable, X0, X1, X2, X3, X4, X5, ...) expandable(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_114_6(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_6(expandable, ctx, X0, X1, X2, X3, X4, X5, ...) expandable(ctx, X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_115_THAT_6(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_6(first, second, X0, X1, X2, X3, X4, X5, ...) first(X0, X1, X2, X3, X4, X5) AU_FE_EXPAND(AU_FE_114_6(second, __VA_ARGS__)) #define AU_GET_MACRO_6(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_6(action, ...) AU_FE_EXPAND(AU_GET_MACRO_6(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_114_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_102_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_6, AU_FE_5_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_6, AU_FE_0_6)(action,__VA_ARGS__)) +#define AU_FOR_EACH_6(action, ...) AU_FE_EXPAND(AU_GET_MACRO_6(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_114_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_102_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_66_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_60_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_30_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_12_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_6, AU_FE_5_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_6, AU_FE_0_6)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_6(action, ...) AU_FE_EXPAND(AU_GET_MACRO_6(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_103_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_79_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_67_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_FIRST_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_6, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_6(action, ...) AU_FE_EXPAND(AU_GET_MACRO_6(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_115_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_103_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_79_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_67_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_61_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_31_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_13_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_6_THAT_6, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_7(expandable) #define AU_FE_1_7(expandable, empty) #define AU_FE_1_FIRST_7(first, second) #define AU_FE_6_7(expandable) -#define AU_FE_7_7(expandable, X0, X1, X2, X3, X4, X5, X6) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_0_7(expandable)) +#define AU_FE_7_7(expandable, X0, X1, X2, X3, X4, X5, X6) expandable(X0, X1, X2, X3, X4, X5, X6) +#define AU_FE_8_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) #define AU_FE_8_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_0_7(second)) #define AU_FE_14_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_7_7(expandable, __VA_ARGS__)) +#define AU_FE_15_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_8_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_15_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_7_7(second, __VA_ARGS__)) #define AU_FE_21_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_14_7(expandable, __VA_ARGS__)) +#define AU_FE_22_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_15_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_22_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_14_7(second, __VA_ARGS__)) #define AU_FE_28_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_21_7(expandable, __VA_ARGS__)) +#define AU_FE_29_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_22_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_29_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_21_7(second, __VA_ARGS__)) #define AU_FE_35_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_28_7(expandable, __VA_ARGS__)) +#define AU_FE_36_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_29_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_36_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_28_7(second, __VA_ARGS__)) #define AU_FE_42_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_35_7(expandable, __VA_ARGS__)) +#define AU_FE_43_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_36_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_43_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_35_7(second, __VA_ARGS__)) #define AU_FE_49_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_42_7(expandable, __VA_ARGS__)) +#define AU_FE_50_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_43_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_50_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_42_7(second, __VA_ARGS__)) #define AU_FE_56_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_49_7(expandable, __VA_ARGS__)) +#define AU_FE_57_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_50_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_57_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_49_7(second, __VA_ARGS__)) #define AU_FE_63_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_56_7(expandable, __VA_ARGS__)) +#define AU_FE_64_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_57_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_64_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_56_7(second, __VA_ARGS__)) #define AU_FE_70_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_63_7(expandable, __VA_ARGS__)) +#define AU_FE_71_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_64_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_71_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_63_7(second, __VA_ARGS__)) #define AU_FE_77_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_70_7(expandable, __VA_ARGS__)) +#define AU_FE_78_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_71_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_78_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_70_7(second, __VA_ARGS__)) #define AU_FE_84_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_77_7(expandable, __VA_ARGS__)) +#define AU_FE_85_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_78_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_85_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_77_7(second, __VA_ARGS__)) #define AU_FE_91_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_84_7(expandable, __VA_ARGS__)) +#define AU_FE_92_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_85_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_92_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_84_7(second, __VA_ARGS__)) #define AU_FE_98_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_91_7(expandable, __VA_ARGS__)) +#define AU_FE_99_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_92_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_99_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_91_7(second, __VA_ARGS__)) #define AU_FE_105_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_98_7(expandable, __VA_ARGS__)) +#define AU_FE_106_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_99_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_106_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_98_7(second, __VA_ARGS__)) #define AU_FE_112_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_105_7(expandable, __VA_ARGS__)) +#define AU_FE_113_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_106_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_113_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_105_7(second, __VA_ARGS__)) #define AU_FE_119_7(expandable, X0, X1, X2, X3, X4, X5, X6, ...) expandable(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_112_7(expandable, __VA_ARGS__)) +#define AU_FE_120_THAT_7(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_113_THAT_7(expandable, ctx, __VA_ARGS__)) #define AU_FE_120_FIRST_7(first, second, X0, X1, X2, X3, X4, X5, X6, ...) first(X0, X1, X2, X3, X4, X5, X6) AU_FE_EXPAND(AU_FE_112_7(second, __VA_ARGS__)) #define AU_GET_MACRO_7(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_7(action, ...) AU_FE_EXPAND(AU_GET_MACRO_7(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_119_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_98_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_77_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_35_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_14_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_7, AU_FE_6_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_7, AU_FE_0_7)(action,__VA_ARGS__)) +#define AU_FOR_EACH_7(action, ...) AU_FE_EXPAND(AU_GET_MACRO_7(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_119_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_98_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_84_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_77_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_70_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_42_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_35_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_21_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_14_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_7, AU_FE_6_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_7, AU_FE_0_7)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_7(action, ...) AU_FE_EXPAND(AU_GET_MACRO_7(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_92_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_71_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_50_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_29_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_22_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_FIRST_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_7, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_7(action, ...) AU_FE_EXPAND(AU_GET_MACRO_7(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_106_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_92_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_85_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_78_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_71_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_50_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_43_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_29_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_22_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_15_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_7_THAT_7, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_8(expandable) #define AU_FE_1_8(expandable, empty) #define AU_FE_1_FIRST_8(first, second) #define AU_FE_7_8(expandable) -#define AU_FE_8_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_0_8(expandable)) +#define AU_FE_8_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7) expandable(X0, X1, X2, X3, X4, X5, X6, X7) +#define AU_FE_9_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) #define AU_FE_9_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_0_8(second)) #define AU_FE_16_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_8_8(expandable, __VA_ARGS__)) +#define AU_FE_17_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_9_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_17_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_8_8(second, __VA_ARGS__)) #define AU_FE_24_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_16_8(expandable, __VA_ARGS__)) +#define AU_FE_25_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_17_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_25_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_16_8(second, __VA_ARGS__)) #define AU_FE_32_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_24_8(expandable, __VA_ARGS__)) +#define AU_FE_33_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_25_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_33_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_24_8(second, __VA_ARGS__)) #define AU_FE_40_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_32_8(expandable, __VA_ARGS__)) +#define AU_FE_41_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_33_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_41_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_32_8(second, __VA_ARGS__)) #define AU_FE_48_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_40_8(expandable, __VA_ARGS__)) +#define AU_FE_49_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_41_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_49_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_40_8(second, __VA_ARGS__)) #define AU_FE_56_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_48_8(expandable, __VA_ARGS__)) +#define AU_FE_57_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_49_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_57_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_48_8(second, __VA_ARGS__)) #define AU_FE_64_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_56_8(expandable, __VA_ARGS__)) +#define AU_FE_65_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_57_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_65_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_56_8(second, __VA_ARGS__)) #define AU_FE_72_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_64_8(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_65_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_64_8(second, __VA_ARGS__)) #define AU_FE_80_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_72_8(expandable, __VA_ARGS__)) +#define AU_FE_81_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_73_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_81_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_72_8(second, __VA_ARGS__)) #define AU_FE_88_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_80_8(expandable, __VA_ARGS__)) +#define AU_FE_89_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_81_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_89_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_80_8(second, __VA_ARGS__)) #define AU_FE_96_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_88_8(expandable, __VA_ARGS__)) +#define AU_FE_97_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_89_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_97_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_88_8(second, __VA_ARGS__)) #define AU_FE_104_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_96_8(expandable, __VA_ARGS__)) +#define AU_FE_105_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_97_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_105_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_96_8(second, __VA_ARGS__)) #define AU_FE_112_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_104_8(expandable, __VA_ARGS__)) +#define AU_FE_113_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_105_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_113_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_104_8(second, __VA_ARGS__)) #define AU_FE_120_8(expandable, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_112_8(expandable, __VA_ARGS__)) +#define AU_FE_121_THAT_8(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_113_THAT_8(expandable, ctx, __VA_ARGS__)) #define AU_FE_121_FIRST_8(first, second, X0, X1, X2, X3, X4, X5, X6, X7, ...) first(X0, X1, X2, X3, X4, X5, X6, X7) AU_FE_EXPAND(AU_FE_112_8(second, __VA_ARGS__)) #define AU_GET_MACRO_8(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_8(action, ...) AU_FE_EXPAND(AU_GET_MACRO_8(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_104_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_32_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_8, AU_FE_7_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_8, AU_FE_0_8)(action,__VA_ARGS__)) +#define AU_FOR_EACH_8(action, ...) AU_FE_EXPAND(AU_GET_MACRO_8(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_120_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_112_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_104_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_96_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_88_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_80_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_56_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_48_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_40_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_32_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_24_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_16_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_8, AU_FE_7_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_8, AU_FE_0_8)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_8(action, ...) AU_FE_EXPAND(AU_GET_MACRO_8(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_89_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_17_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_FIRST_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_8, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_8(action, ...) AU_FE_EXPAND(AU_GET_MACRO_8(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_121_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_113_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_105_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_97_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_89_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_65_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_57_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_49_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_41_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_33_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_25_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_17_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_8_THAT_8, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + #define AU_FE_0_9(expandable) #define AU_FE_1_9(expandable, empty) #define AU_FE_1_FIRST_9(first, second) #define AU_FE_8_9(expandable) -#define AU_FE_9_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_0_9(expandable)) +#define AU_FE_9_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) +#define AU_FE_10_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) #define AU_FE_10_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_0_9(second)) #define AU_FE_18_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_9_9(expandable, __VA_ARGS__)) +#define AU_FE_19_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_10_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_19_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_9_9(second, __VA_ARGS__)) #define AU_FE_27_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_18_9(expandable, __VA_ARGS__)) +#define AU_FE_28_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_19_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_28_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_18_9(second, __VA_ARGS__)) #define AU_FE_36_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_27_9(expandable, __VA_ARGS__)) +#define AU_FE_37_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_28_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_37_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_27_9(second, __VA_ARGS__)) #define AU_FE_45_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_36_9(expandable, __VA_ARGS__)) +#define AU_FE_46_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_37_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_46_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_36_9(second, __VA_ARGS__)) #define AU_FE_54_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_45_9(expandable, __VA_ARGS__)) +#define AU_FE_55_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_46_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_55_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_45_9(second, __VA_ARGS__)) #define AU_FE_63_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_54_9(expandable, __VA_ARGS__)) +#define AU_FE_64_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_55_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_64_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_54_9(second, __VA_ARGS__)) #define AU_FE_72_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_63_9(expandable, __VA_ARGS__)) +#define AU_FE_73_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_64_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_73_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_63_9(second, __VA_ARGS__)) #define AU_FE_81_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_72_9(expandable, __VA_ARGS__)) +#define AU_FE_82_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_73_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_82_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_72_9(second, __VA_ARGS__)) #define AU_FE_90_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_81_9(expandable, __VA_ARGS__)) +#define AU_FE_91_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_82_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_91_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_81_9(second, __VA_ARGS__)) #define AU_FE_99_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_90_9(expandable, __VA_ARGS__)) +#define AU_FE_100_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_91_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_100_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_90_9(second, __VA_ARGS__)) #define AU_FE_108_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_99_9(expandable, __VA_ARGS__)) +#define AU_FE_109_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_100_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_109_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_99_9(second, __VA_ARGS__)) #define AU_FE_117_9(expandable, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_108_9(expandable, __VA_ARGS__)) +#define AU_FE_118_THAT_9(expandable, ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) expandable(ctx, X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_109_THAT_9(expandable, ctx, __VA_ARGS__)) #define AU_FE_118_FIRST_9(first, second, X0, X1, X2, X3, X4, X5, X6, X7, X8, ...) first(X0, X1, X2, X3, X4, X5, X6, X7, X8) AU_FE_EXPAND(AU_FE_108_9(second, __VA_ARGS__)) #define AU_GET_MACRO_9(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, NAME,...) NAME -#define AU_FOR_EACH_9(action, ...) AU_FE_EXPAND(AU_GET_MACRO_9(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_27_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_9, AU_FE_8_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_9, AU_FE_0_9)(action,__VA_ARGS__)) +#define AU_FOR_EACH_9(action, ...) AU_FE_EXPAND(AU_GET_MACRO_9(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_117_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_108_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_99_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_90_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_81_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_72_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_63_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_54_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_45_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_36_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_27_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_18_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_9, AU_FE_8_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_9, AU_FE_0_9)(action,__VA_ARGS__)) #define AU_FOR_EACH_FIRST_9(action, ...) AU_FE_EXPAND(AU_GET_MACRO_9(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_118_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_82_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_10_FIRST_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_1_FIRST_9, AU_FE_ERROR)(action,__VA_ARGS__)) +#define AU_FOR_EACH_THAT_9(action, ...) AU_FE_EXPAND(AU_GET_MACRO_9(_whydoweneedthis, __VA_ARGS__, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_118_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_109_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_100_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_91_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_82_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_73_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_64_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_55_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_46_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_37_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_28_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_19_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_9_THAT_9, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR, AU_FE_ERROR)(action,__VA_ARGS__)) + diff --git a/forEach.js b/forEach.js index 46ed499..cf72edc 100644 --- a/forEach.js +++ b/forEach.js @@ -49,12 +49,12 @@ forN(kMaxPairedElements, function(nElements) { var nElementsMulNCapped = Math.min(kMacroParamLimit - 3, kWantMaxSupportedElements * nElements) var ignoreList = {} - var ignoreListFirst = {} forN(nElementsMulNCapped, function(i) { if (i == 0) { textBuffer += `#define AU_FE_0${suffix}(expandable) \n` - ignoreListFirst[`AU_FE_0_FIRST${suffix}`] = true + ignoreList[`AU_FE_0_FIRST${suffix}`] = true + ignoreList[`AU_FE_0_THAT${suffix}`] = true return } @@ -73,7 +73,7 @@ forN(kMaxPairedElements, function(nElements) { } else if (i % nElements == 0) { if (i == nElements) { // Edge case: the last element does not accept any parameters - textBuffer += `#define AU_FE_${i}${suffix}(expandable, ${X}) expandable(${X}) AU_FE_EXPAND(AU_FE_${iM1Translated}${suffix}(expandable))\n` + textBuffer += `#define AU_FE_${i}${suffix}(expandable, ${X}) expandable(${X})\n` } else { textBuffer += `#define AU_FE_${i}${suffix}(expandable, ${X}, ...) expandable(${X}) AU_FE_EXPAND(AU_FE_${iM1Translated}${suffix}(expandable, __VA_ARGS__))\n` } @@ -81,21 +81,37 @@ forN(kMaxPairedElements, function(nElements) { ignoreList[`AU_FE_${i}${suffix}`] = true } - // Similar to above var I2 = i + 1 + + // Similar to above + if (i < nElements) { + ignoreList[`AU_FE_${i}_THAT${suffix}`] = true + } else if (i % nElements == 0) { + var offByOne = iM1Translated + 1 + if (i == nElements) { + // Edge case: the last element does not accept any parameters + ignoreList[`AU_FE_${I2}_THAT${suffix}`] = true // ? dont question it + textBuffer += `#define AU_FE_${I2}_THAT${suffix}(expandable, ctx, ${X}) expandable(ctx, ${X})\n` + } else { + textBuffer += `#define AU_FE_${I2}_THAT${suffix}(expandable, ctx, ${X}, ...) expandable(ctx, ${X}) AU_FE_EXPAND(AU_FE_${offByOne}_THAT${suffix}(expandable, ctx, __VA_ARGS__))\n` + } + } else { + ignoreList[`AU_FE_${I2}_THAT${suffix}`] = true + } + if (i == 1) { textBuffer += `#define AU_FE_${i}_FIRST${suffix}(first, second) \n` } else if (i < nElements) { - ignoreListFirst[`AU_FE_${i}_FIRST${suffix}`] = true + ignoreList[`AU_FE_${i}_FIRST${suffix}`] = true } else if ((i % (nElements) == 0)) { if (i == nElements) { - ignoreListFirst[`AU_FE_${i}_FIRST${suffix}`] = true // ? dont question it + ignoreList[`AU_FE_${i}_FIRST${suffix}`] = true // ? dont question it textBuffer += `#define AU_FE_${I2}_FIRST${suffix}(first, second, ${X}) first(${X}) AU_FE_EXPAND(AU_FE_${iM1Translated}${suffix}(second))\n` } else { textBuffer += `#define AU_FE_${I2}_FIRST${suffix}(first, second, ${X}, ...) first(${X}) AU_FE_EXPAND(AU_FE_${iM1Translated}${suffix}(second, __VA_ARGS__))\n` } } else { - ignoreListFirst[`AU_FE_${I2}_FIRST${suffix}`] = true + ignoreList[`AU_FE_${I2}_FIRST${suffix}`] = true } }) @@ -106,14 +122,17 @@ forN(kMaxPairedElements, function(nElements) { // Stringify the parameter portion of the prototype var params = formatNParamPatternReverseSuffix(nElementsMulNCapped, "AU_FE_", suffix) var params2 = formatNParamPatternReverseSuffix(nElementsMulNCapped, "AU_FE_", "_FIRST" + suffix) + var params3 = formatNParamPatternReverseSuffix(nElementsMulNCapped, "AU_FE_", "_THAT" + suffix) // Replace missing macro paramaters with the AU_FE_ERROR macro - params = params.split(", ").map((str) => { return ignoreList[str] ? "AU_FE_ERROR" : str}).join(", ") - params2 = params2.split(", ").map((str) => { return ignoreListFirst[str] ? "AU_FE_ERROR" : str}).join(", ") - - textBuffer += `#define AU_FOR_EACH${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params})(action,__VA_ARGS__))\n` - textBuffer += `#define AU_FOR_EACH_FIRST${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params2})(action,__VA_ARGS__))` + params = params .split(", ").map((str) => { return ignoreList[str] ? "AU_FE_ERROR" : str}).join(", ") + params2 = params2.split(", ").map((str) => { return ignoreList[str] ? "AU_FE_ERROR" : str}).join(", ") + params3 = params3.split(", ").map((str) => { return ignoreList[str] ? "AU_FE_ERROR" : str}).join(", ") + textBuffer += `#define AU_FOR_EACH${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params})(action,__VA_ARGS__))\n` + textBuffer += `#define AU_FOR_EACH_FIRST${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params2})(action,__VA_ARGS__))\n` + textBuffer += `#define AU_FOR_EACH_THAT${suffix}(action, ...) AU_FE_EXPAND(AU_GET_MACRO${suffix}(_whydoweneedthis, __VA_ARGS__, ${params3})(action,__VA_ARGS__))\n` + textBuffer += "\n\n" })