diff --git a/include/ndnboost/mpl/aux_/preprocessed/dmc/shift_left.hpp b/include/ndnboost/mpl/aux_/preprocessed/dmc/shift_left.hpp
index c8df29c..2964fb8 100644
--- a/include/ndnboost/mpl/aux_/preprocessed/dmc/shift_left.hpp
+++ b/include/ndnboost/mpl/aux_/preprocessed/dmc/shift_left.hpp
@@ -18,8 +18,8 @@
     >
 struct shift_left_impl
     : if_c<
-          ( BOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag1)
-              > BOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag2)
+          ( NDNBOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag1)
+              > NDNBOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag2)
             )
 
         , aux::cast2nd_impl< shift_left_impl< Tag1,Tag1 >,Tag1, Tag2 >
@@ -34,7 +34,7 @@
     template< typename U1, typename U2 > struct apply
     {
         typedef apply type;
-        BOOST_STATIC_CONSTANT(int, value  = 0);
+        NDNBOOST_STATIC_CONSTANT(int, value  = 0);
     };
 };
 
@@ -43,7 +43,7 @@
     template< typename U1, typename U2 > struct apply
     {
         typedef apply type;
-        BOOST_STATIC_CONSTANT(int, value  = 0);
+        NDNBOOST_STATIC_CONSTANT(int, value  = 0);
     };
 };
 
@@ -52,7 +52,7 @@
     template< typename U1, typename U2 > struct apply
     {
         typedef apply type;
-        BOOST_STATIC_CONSTANT(int, value  = 0);
+        NDNBOOST_STATIC_CONSTANT(int, value  = 0);
     };
 };
 
@@ -62,8 +62,8 @@
 };
 
 template<
-      typename BOOST_MPL_AUX_NA_PARAM(N1)
-    , typename BOOST_MPL_AUX_NA_PARAM(N2)
+      typename NDNBOOST_MPL_AUX_NA_PARAM(N1)
+    , typename NDNBOOST_MPL_AUX_NA_PARAM(N2)
     >
 struct shift_left
 
@@ -72,11 +72,11 @@
         , typename shift_left_tag<N2>::type
         >::template apply< N1,N2 >::type
 {
-    BOOST_MPL_AUX_LAMBDA_SUPPORT(2, shift_left, (N1, N2))
+    NDNBOOST_MPL_AUX_LAMBDA_SUPPORT(2, shift_left, (N1, N2))
 
 };
 
-BOOST_MPL_AUX_NA_SPEC2(2, 2, shift_left)
+NDNBOOST_MPL_AUX_NA_SPEC2(2, 2, shift_left)
 
 }}
 
@@ -88,8 +88,8 @@
 
         : integral_c<
               typename N::value_type
-            , ( BOOST_MPL_AUX_VALUE_WKND(N)::value
-                  << BOOST_MPL_AUX_VALUE_WKND(S)::value
+            , ( NDNBOOST_MPL_AUX_VALUE_WKND(N)::value
+                  << NDNBOOST_MPL_AUX_VALUE_WKND(S)::value
                 )
             >
     {
