+# else
+#
+# /* BOOST_PP_DEDUCE_R */
+#
+# include <boost/preprocessor/arithmetic/dec.hpp>
+# include <boost/preprocessor/detail/auto_rec.hpp>
+# include <boost/preprocessor/repetition/for.hpp>
+# include <boost/preprocessor/config/limits.hpp>
+#
+# if BOOST_PP_LIMIT_FOR == 256
+# define BOOST_PP_DEDUCE_R() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_FOR_P, 256))
+# elif BOOST_PP_LIMIT_FOR == 512
+# define BOOST_PP_DEDUCE_R() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_FOR_P, 512))
+# elif BOOST_PP_LIMIT_FOR == 1024
+# define BOOST_PP_DEDUCE_R() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_FOR_P, 1024))
+# else
+# error Incorrect value for the BOOST_PP_LIMIT_FOR limit
+# endif
+#
+# endif
+#