1 # /* Copyright (C) 2001
2 #  * Housemarque Oy
3 #  * http://www.housemarque.com
4 #  *
5 #  * Distributed under the Boost Software License, Version 1.0. (See
6 #  * accompanying file LICENSE_1_0.txt or copy at
7 #  * http://www.boost.org/LICENSE_1_0.txt)
8 #  */
9 #
10 # /* Revised by Paul Mensonides (2002) */
11 # /* Revised by Edward Diener (2020) */
12 #
13 #
14 # /* See http://www.boost.org for most recent version. */
15 #
16 # ifndef BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_512_HPP
17 # define BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_512_HPP
18 #
19 # define BOOST_PP_LIST_FOLD_LEFT_257(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_258, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(258, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
20 # define BOOST_PP_LIST_FOLD_LEFT_258(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_259, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(259, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
21 # define BOOST_PP_LIST_FOLD_LEFT_259(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_260, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(260, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
22 # define BOOST_PP_LIST_FOLD_LEFT_260(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_261, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(261, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
23 # define BOOST_PP_LIST_FOLD_LEFT_261(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_262, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(262, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
24 # define BOOST_PP_LIST_FOLD_LEFT_262(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_263, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(263, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
25 # define BOOST_PP_LIST_FOLD_LEFT_263(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_264, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(264, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
26 # define BOOST_PP_LIST_FOLD_LEFT_264(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_265, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(265, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
27 # define BOOST_PP_LIST_FOLD_LEFT_265(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_266, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(266, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
28 # define BOOST_PP_LIST_FOLD_LEFT_266(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_267, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(267, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
29 # define BOOST_PP_LIST_FOLD_LEFT_267(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_268, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(268, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
30 # define BOOST_PP_LIST_FOLD_LEFT_268(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_269, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(269, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
31 # define BOOST_PP_LIST_FOLD_LEFT_269(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_270, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(270, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
32 # define BOOST_PP_LIST_FOLD_LEFT_270(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_271, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(271, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
33 # define BOOST_PP_LIST_FOLD_LEFT_271(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_272, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(272, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
34 # define BOOST_PP_LIST_FOLD_LEFT_272(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_273, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(273, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
35 # define BOOST_PP_LIST_FOLD_LEFT_273(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_274, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(274, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
36 # define BOOST_PP_LIST_FOLD_LEFT_274(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_275, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(275, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
37 # define BOOST_PP_LIST_FOLD_LEFT_275(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_276, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(276, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
38 # define BOOST_PP_LIST_FOLD_LEFT_276(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_277, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(277, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
39 # define BOOST_PP_LIST_FOLD_LEFT_277(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_278, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(278, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
40 # define BOOST_PP_LIST_FOLD_LEFT_278(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_279, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(279, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
41 # define BOOST_PP_LIST_FOLD_LEFT_279(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_280, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(280, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
42 # define BOOST_PP_LIST_FOLD_LEFT_280(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_281, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(281, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
43 # define BOOST_PP_LIST_FOLD_LEFT_281(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_282, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(282, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
44 # define BOOST_PP_LIST_FOLD_LEFT_282(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_283, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(283, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
45 # define BOOST_PP_LIST_FOLD_LEFT_283(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_284, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(284, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
46 # define BOOST_PP_LIST_FOLD_LEFT_284(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_285, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(285, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
47 # define BOOST_PP_LIST_FOLD_LEFT_285(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_286, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(286, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
48 # define BOOST_PP_LIST_FOLD_LEFT_286(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_287, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(287, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
49 # define BOOST_PP_LIST_FOLD_LEFT_287(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_288, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(288, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
50 # define BOOST_PP_LIST_FOLD_LEFT_288(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_289, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(289, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
51 # define BOOST_PP_LIST_FOLD_LEFT_289(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_290, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(290, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
52 # define BOOST_PP_LIST_FOLD_LEFT_290(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_291, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(291, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
53 # define BOOST_PP_LIST_FOLD_LEFT_291(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_292, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(292, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
54 # define BOOST_PP_LIST_FOLD_LEFT_292(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_293, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(293, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
55 # define BOOST_PP_LIST_FOLD_LEFT_293(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_294, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(294, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
56 # define BOOST_PP_LIST_FOLD_LEFT_294(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_295, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(295, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
57 # define BOOST_PP_LIST_FOLD_LEFT_295(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_296, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(296, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
58 # define BOOST_PP_LIST_FOLD_LEFT_296(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_297, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(297, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
59 # define BOOST_PP_LIST_FOLD_LEFT_297(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_298, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(298, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
60 # define BOOST_PP_LIST_FOLD_LEFT_298(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_299, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(299, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
61 # define BOOST_PP_LIST_FOLD_LEFT_299(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_300, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(300, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
62 # define BOOST_PP_LIST_FOLD_LEFT_300(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_301, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(301, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
63 # define BOOST_PP_LIST_FOLD_LEFT_301(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_302, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(302, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
64 # define BOOST_PP_LIST_FOLD_LEFT_302(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_303, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(303, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
65 # define BOOST_PP_LIST_FOLD_LEFT_303(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_304, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(304, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
66 # define BOOST_PP_LIST_FOLD_LEFT_304(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_305, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(305, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
67 # define BOOST_PP_LIST_FOLD_LEFT_305(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_306, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(306, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
68 # define BOOST_PP_LIST_FOLD_LEFT_306(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_307, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(307, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
69 # define BOOST_PP_LIST_FOLD_LEFT_307(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_308, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(308, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
70 # define BOOST_PP_LIST_FOLD_LEFT_308(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_309, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(309, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
71 # define BOOST_PP_LIST_FOLD_LEFT_309(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_310, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(310, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
72 # define BOOST_PP_LIST_FOLD_LEFT_310(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_311, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(311, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
73 # define BOOST_PP_LIST_FOLD_LEFT_311(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_312, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(312, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
74 # define BOOST_PP_LIST_FOLD_LEFT_312(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_313, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(313, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
75 # define BOOST_PP_LIST_FOLD_LEFT_313(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_314, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(314, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
76 # define BOOST_PP_LIST_FOLD_LEFT_314(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_315, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(315, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
77 # define BOOST_PP_LIST_FOLD_LEFT_315(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_316, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(316, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
78 # define BOOST_PP_LIST_FOLD_LEFT_316(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_317, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(317, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
79 # define BOOST_PP_LIST_FOLD_LEFT_317(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_318, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(318, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
80 # define BOOST_PP_LIST_FOLD_LEFT_318(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_319, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(319, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
81 # define BOOST_PP_LIST_FOLD_LEFT_319(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_320, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(320, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
82 # define BOOST_PP_LIST_FOLD_LEFT_320(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_321, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(321, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
83 # define BOOST_PP_LIST_FOLD_LEFT_321(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_322, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(322, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
84 # define BOOST_PP_LIST_FOLD_LEFT_322(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_323, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(323, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
85 # define BOOST_PP_LIST_FOLD_LEFT_323(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_324, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(324, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
86 # define BOOST_PP_LIST_FOLD_LEFT_324(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_325, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(325, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
87 # define BOOST_PP_LIST_FOLD_LEFT_325(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_326, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(326, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
88 # define BOOST_PP_LIST_FOLD_LEFT_326(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_327, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(327, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
89 # define BOOST_PP_LIST_FOLD_LEFT_327(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_328, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(328, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
90 # define BOOST_PP_LIST_FOLD_LEFT_328(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_329, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(329, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
91 # define BOOST_PP_LIST_FOLD_LEFT_329(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_330, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(330, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
92 # define BOOST_PP_LIST_FOLD_LEFT_330(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_331, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(331, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
93 # define BOOST_PP_LIST_FOLD_LEFT_331(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_332, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(332, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
94 # define BOOST_PP_LIST_FOLD_LEFT_332(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_333, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(333, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
95 # define BOOST_PP_LIST_FOLD_LEFT_333(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_334, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(334, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
96 # define BOOST_PP_LIST_FOLD_LEFT_334(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_335, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(335, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
97 # define BOOST_PP_LIST_FOLD_LEFT_335(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_336, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(336, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
98 # define BOOST_PP_LIST_FOLD_LEFT_336(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_337, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(337, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
99 # define BOOST_PP_LIST_FOLD_LEFT_337(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_338, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(338, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
100 # define BOOST_PP_LIST_FOLD_LEFT_338(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_339, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(339, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
101 # define BOOST_PP_LIST_FOLD_LEFT_339(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_340, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(340, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
102 # define BOOST_PP_LIST_FOLD_LEFT_340(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_341, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(341, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
103 # define BOOST_PP_LIST_FOLD_LEFT_341(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_342, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(342, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
104 # define BOOST_PP_LIST_FOLD_LEFT_342(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_343, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(343, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
105 # define BOOST_PP_LIST_FOLD_LEFT_343(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_344, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(344, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
106 # define BOOST_PP_LIST_FOLD_LEFT_344(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_345, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(345, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
107 # define BOOST_PP_LIST_FOLD_LEFT_345(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_346, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(346, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
108 # define BOOST_PP_LIST_FOLD_LEFT_346(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_347, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(347, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
109 # define BOOST_PP_LIST_FOLD_LEFT_347(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_348, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(348, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
110 # define BOOST_PP_LIST_FOLD_LEFT_348(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_349, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(349, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
111 # define BOOST_PP_LIST_FOLD_LEFT_349(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_350, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(350, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
112 # define BOOST_PP_LIST_FOLD_LEFT_350(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_351, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(351, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
113 # define BOOST_PP_LIST_FOLD_LEFT_351(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_352, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(352, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
114 # define BOOST_PP_LIST_FOLD_LEFT_352(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_353, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(353, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
115 # define BOOST_PP_LIST_FOLD_LEFT_353(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_354, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(354, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
116 # define BOOST_PP_LIST_FOLD_LEFT_354(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_355, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(355, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
117 # define BOOST_PP_LIST_FOLD_LEFT_355(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_356, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(356, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
118 # define BOOST_PP_LIST_FOLD_LEFT_356(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_357, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(357, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
119 # define BOOST_PP_LIST_FOLD_LEFT_357(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_358, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(358, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
120 # define BOOST_PP_LIST_FOLD_LEFT_358(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_359, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(359, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
121 # define BOOST_PP_LIST_FOLD_LEFT_359(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_360, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(360, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
122 # define BOOST_PP_LIST_FOLD_LEFT_360(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_361, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(361, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
123 # define BOOST_PP_LIST_FOLD_LEFT_361(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_362, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(362, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
124 # define BOOST_PP_LIST_FOLD_LEFT_362(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_363, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(363, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
125 # define BOOST_PP_LIST_FOLD_LEFT_363(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_364, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(364, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
126 # define BOOST_PP_LIST_FOLD_LEFT_364(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_365, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(365, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
127 # define BOOST_PP_LIST_FOLD_LEFT_365(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_366, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(366, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
128 # define BOOST_PP_LIST_FOLD_LEFT_366(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_367, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(367, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
129 # define BOOST_PP_LIST_FOLD_LEFT_367(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_368, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(368, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
130 # define BOOST_PP_LIST_FOLD_LEFT_368(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_369, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(369, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
131 # define BOOST_PP_LIST_FOLD_LEFT_369(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_370, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(370, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
132 # define BOOST_PP_LIST_FOLD_LEFT_370(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_371, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(371, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
133 # define BOOST_PP_LIST_FOLD_LEFT_371(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_372, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(372, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
134 # define BOOST_PP_LIST_FOLD_LEFT_372(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_373, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(373, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
135 # define BOOST_PP_LIST_FOLD_LEFT_373(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_374, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(374, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
136 # define BOOST_PP_LIST_FOLD_LEFT_374(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_375, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(375, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
137 # define BOOST_PP_LIST_FOLD_LEFT_375(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_376, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(376, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
138 # define BOOST_PP_LIST_FOLD_LEFT_376(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_377, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(377, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
139 # define BOOST_PP_LIST_FOLD_LEFT_377(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_378, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(378, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
140 # define BOOST_PP_LIST_FOLD_LEFT_378(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_379, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(379, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
141 # define BOOST_PP_LIST_FOLD_LEFT_379(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_380, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(380, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
142 # define BOOST_PP_LIST_FOLD_LEFT_380(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_381, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(381, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
143 # define BOOST_PP_LIST_FOLD_LEFT_381(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_382, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(382, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
144 # define BOOST_PP_LIST_FOLD_LEFT_382(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_383, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(383, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
145 # define BOOST_PP_LIST_FOLD_LEFT_383(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_384, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(384, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
146 # define BOOST_PP_LIST_FOLD_LEFT_384(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_385, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(385, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
147 # define BOOST_PP_LIST_FOLD_LEFT_385(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_386, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(386, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
148 # define BOOST_PP_LIST_FOLD_LEFT_386(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_387, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(387, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
149 # define BOOST_PP_LIST_FOLD_LEFT_387(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_388, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(388, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
150 # define BOOST_PP_LIST_FOLD_LEFT_388(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_389, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(389, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
151 # define BOOST_PP_LIST_FOLD_LEFT_389(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_390, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(390, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
152 # define BOOST_PP_LIST_FOLD_LEFT_390(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_391, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(391, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
153 # define BOOST_PP_LIST_FOLD_LEFT_391(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_392, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(392, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
154 # define BOOST_PP_LIST_FOLD_LEFT_392(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_393, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(393, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
155 # define BOOST_PP_LIST_FOLD_LEFT_393(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_394, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(394, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
156 # define BOOST_PP_LIST_FOLD_LEFT_394(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_395, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(395, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
157 # define BOOST_PP_LIST_FOLD_LEFT_395(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_396, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(396, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
158 # define BOOST_PP_LIST_FOLD_LEFT_396(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_397, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(397, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
159 # define BOOST_PP_LIST_FOLD_LEFT_397(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_398, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(398, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
160 # define BOOST_PP_LIST_FOLD_LEFT_398(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_399, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(399, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
161 # define BOOST_PP_LIST_FOLD_LEFT_399(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_400, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(400, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
162 # define BOOST_PP_LIST_FOLD_LEFT_400(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_401, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(401, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
163 # define BOOST_PP_LIST_FOLD_LEFT_401(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_402, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(402, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
164 # define BOOST_PP_LIST_FOLD_LEFT_402(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_403, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(403, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
165 # define BOOST_PP_LIST_FOLD_LEFT_403(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_404, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(404, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
166 # define BOOST_PP_LIST_FOLD_LEFT_404(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_405, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(405, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
167 # define BOOST_PP_LIST_FOLD_LEFT_405(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_406, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(406, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
168 # define BOOST_PP_LIST_FOLD_LEFT_406(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_407, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(407, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
169 # define BOOST_PP_LIST_FOLD_LEFT_407(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_408, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(408, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
170 # define BOOST_PP_LIST_FOLD_LEFT_408(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_409, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(409, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
171 # define BOOST_PP_LIST_FOLD_LEFT_409(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_410, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(410, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
172 # define BOOST_PP_LIST_FOLD_LEFT_410(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_411, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(411, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
173 # define BOOST_PP_LIST_FOLD_LEFT_411(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_412, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(412, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
174 # define BOOST_PP_LIST_FOLD_LEFT_412(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_413, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(413, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
175 # define BOOST_PP_LIST_FOLD_LEFT_413(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_414, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(414, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
176 # define BOOST_PP_LIST_FOLD_LEFT_414(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_415, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(415, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
177 # define BOOST_PP_LIST_FOLD_LEFT_415(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_416, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(416, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
178 # define BOOST_PP_LIST_FOLD_LEFT_416(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_417, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(417, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
179 # define BOOST_PP_LIST_FOLD_LEFT_417(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_418, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(418, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
180 # define BOOST_PP_LIST_FOLD_LEFT_418(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_419, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(419, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
181 # define BOOST_PP_LIST_FOLD_LEFT_419(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_420, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(420, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
182 # define BOOST_PP_LIST_FOLD_LEFT_420(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_421, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(421, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
183 # define BOOST_PP_LIST_FOLD_LEFT_421(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_422, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(422, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
184 # define BOOST_PP_LIST_FOLD_LEFT_422(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_423, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(423, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
185 # define BOOST_PP_LIST_FOLD_LEFT_423(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_424, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(424, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
186 # define BOOST_PP_LIST_FOLD_LEFT_424(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_425, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(425, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
187 # define BOOST_PP_LIST_FOLD_LEFT_425(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_426, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(426, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
188 # define BOOST_PP_LIST_FOLD_LEFT_426(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_427, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(427, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
189 # define BOOST_PP_LIST_FOLD_LEFT_427(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_428, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(428, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
190 # define BOOST_PP_LIST_FOLD_LEFT_428(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_429, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(429, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
191 # define BOOST_PP_LIST_FOLD_LEFT_429(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_430, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(430, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
192 # define BOOST_PP_LIST_FOLD_LEFT_430(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_431, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(431, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
193 # define BOOST_PP_LIST_FOLD_LEFT_431(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_432, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(432, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
194 # define BOOST_PP_LIST_FOLD_LEFT_432(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_433, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(433, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
195 # define BOOST_PP_LIST_FOLD_LEFT_433(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_434, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(434, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
196 # define BOOST_PP_LIST_FOLD_LEFT_434(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_435, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(435, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
197 # define BOOST_PP_LIST_FOLD_LEFT_435(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_436, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(436, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
198 # define BOOST_PP_LIST_FOLD_LEFT_436(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_437, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(437, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
199 # define BOOST_PP_LIST_FOLD_LEFT_437(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_438, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(438, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
200 # define BOOST_PP_LIST_FOLD_LEFT_438(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_439, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(439, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
201 # define BOOST_PP_LIST_FOLD_LEFT_439(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_440, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(440, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
202 # define BOOST_PP_LIST_FOLD_LEFT_440(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_441, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(441, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
203 # define BOOST_PP_LIST_FOLD_LEFT_441(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_442, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(442, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
204 # define BOOST_PP_LIST_FOLD_LEFT_442(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_443, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(443, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
205 # define BOOST_PP_LIST_FOLD_LEFT_443(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_444, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(444, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
206 # define BOOST_PP_LIST_FOLD_LEFT_444(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_445, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(445, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
207 # define BOOST_PP_LIST_FOLD_LEFT_445(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_446, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(446, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
208 # define BOOST_PP_LIST_FOLD_LEFT_446(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_447, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(447, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
209 # define BOOST_PP_LIST_FOLD_LEFT_447(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_448, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(448, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
210 # define BOOST_PP_LIST_FOLD_LEFT_448(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_449, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(449, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
211 # define BOOST_PP_LIST_FOLD_LEFT_449(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_450, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(450, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
212 # define BOOST_PP_LIST_FOLD_LEFT_450(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_451, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(451, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
213 # define BOOST_PP_LIST_FOLD_LEFT_451(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_452, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(452, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
214 # define BOOST_PP_LIST_FOLD_LEFT_452(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_453, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(453, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
215 # define BOOST_PP_LIST_FOLD_LEFT_453(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_454, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(454, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
216 # define BOOST_PP_LIST_FOLD_LEFT_454(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_455, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(455, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
217 # define BOOST_PP_LIST_FOLD_LEFT_455(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_456, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(456, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
218 # define BOOST_PP_LIST_FOLD_LEFT_456(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_457, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(457, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
219 # define BOOST_PP_LIST_FOLD_LEFT_457(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_458, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(458, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
220 # define BOOST_PP_LIST_FOLD_LEFT_458(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_459, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(459, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
221 # define BOOST_PP_LIST_FOLD_LEFT_459(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_460, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(460, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
222 # define BOOST_PP_LIST_FOLD_LEFT_460(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_461, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(461, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
223 # define BOOST_PP_LIST_FOLD_LEFT_461(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_462, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(462, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
224 # define BOOST_PP_LIST_FOLD_LEFT_462(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_463, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(463, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
225 # define BOOST_PP_LIST_FOLD_LEFT_463(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_464, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(464, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
226 # define BOOST_PP_LIST_FOLD_LEFT_464(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_465, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(465, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
227 # define BOOST_PP_LIST_FOLD_LEFT_465(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_466, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(466, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
228 # define BOOST_PP_LIST_FOLD_LEFT_466(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_467, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(467, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
229 # define BOOST_PP_LIST_FOLD_LEFT_467(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_468, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(468, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
230 # define BOOST_PP_LIST_FOLD_LEFT_468(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_469, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(469, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
231 # define BOOST_PP_LIST_FOLD_LEFT_469(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_470, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(470, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
232 # define BOOST_PP_LIST_FOLD_LEFT_470(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_471, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(471, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
233 # define BOOST_PP_LIST_FOLD_LEFT_471(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_472, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(472, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
234 # define BOOST_PP_LIST_FOLD_LEFT_472(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_473, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(473, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
235 # define BOOST_PP_LIST_FOLD_LEFT_473(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_474, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(474, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
236 # define BOOST_PP_LIST_FOLD_LEFT_474(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_475, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(475, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
237 # define BOOST_PP_LIST_FOLD_LEFT_475(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_476, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(476, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
238 # define BOOST_PP_LIST_FOLD_LEFT_476(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_477, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(477, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
239 # define BOOST_PP_LIST_FOLD_LEFT_477(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_478, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(478, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
240 # define BOOST_PP_LIST_FOLD_LEFT_478(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_479, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(479, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
241 # define BOOST_PP_LIST_FOLD_LEFT_479(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_480, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(480, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
242 # define BOOST_PP_LIST_FOLD_LEFT_480(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_481, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(481, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
243 # define BOOST_PP_LIST_FOLD_LEFT_481(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_482, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(482, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
244 # define BOOST_PP_LIST_FOLD_LEFT_482(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_483, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(483, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
245 # define BOOST_PP_LIST_FOLD_LEFT_483(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_484, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(484, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
246 # define BOOST_PP_LIST_FOLD_LEFT_484(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_485, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(485, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
247 # define BOOST_PP_LIST_FOLD_LEFT_485(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_486, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(486, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
248 # define BOOST_PP_LIST_FOLD_LEFT_486(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_487, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(487, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
249 # define BOOST_PP_LIST_FOLD_LEFT_487(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_488, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(488, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
250 # define BOOST_PP_LIST_FOLD_LEFT_488(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_489, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(489, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
251 # define BOOST_PP_LIST_FOLD_LEFT_489(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_490, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(490, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
252 # define BOOST_PP_LIST_FOLD_LEFT_490(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_491, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(491, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
253 # define BOOST_PP_LIST_FOLD_LEFT_491(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_492, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(492, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
254 # define BOOST_PP_LIST_FOLD_LEFT_492(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_493, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(493, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
255 # define BOOST_PP_LIST_FOLD_LEFT_493(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_494, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(494, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
256 # define BOOST_PP_LIST_FOLD_LEFT_494(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_495, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(495, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
257 # define BOOST_PP_LIST_FOLD_LEFT_495(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_496, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(496, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
258 # define BOOST_PP_LIST_FOLD_LEFT_496(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_497, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(497, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
259 # define BOOST_PP_LIST_FOLD_LEFT_497(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_498, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(498, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
260 # define BOOST_PP_LIST_FOLD_LEFT_498(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_499, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(499, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
261 # define BOOST_PP_LIST_FOLD_LEFT_499(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_500, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(500, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
262 # define BOOST_PP_LIST_FOLD_LEFT_500(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_501, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(501, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
263 # define BOOST_PP_LIST_FOLD_LEFT_501(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_502, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(502, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
264 # define BOOST_PP_LIST_FOLD_LEFT_502(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_503, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(503, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
265 # define BOOST_PP_LIST_FOLD_LEFT_503(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_504, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(504, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
266 # define BOOST_PP_LIST_FOLD_LEFT_504(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_505, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(505, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
267 # define BOOST_PP_LIST_FOLD_LEFT_505(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_506, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(506, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
268 # define BOOST_PP_LIST_FOLD_LEFT_506(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_507, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(507, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
269 # define BOOST_PP_LIST_FOLD_LEFT_507(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_508, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(508, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
270 # define BOOST_PP_LIST_FOLD_LEFT_508(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_509, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(509, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
271 # define BOOST_PP_LIST_FOLD_LEFT_509(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_510, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(510, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
272 # define BOOST_PP_LIST_FOLD_LEFT_510(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_511, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(511, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
273 # define BOOST_PP_LIST_FOLD_LEFT_511(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_512, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(512, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
274 # define BOOST_PP_LIST_FOLD_LEFT_512(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_513, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(513, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l))
275 #
276 # endif
277