diff --git a/include/ndnboost/mpl/aux_/O1_size_impl.hpp b/include/ndnboost/mpl/aux_/O1_size_impl.hpp
index 2b2cf08..75da92c 100644
--- a/include/ndnboost/mpl/aux_/O1_size_impl.hpp
+++ b/include/ndnboost/mpl/aux_/O1_size_impl.hpp
@@ -1,6 +1,6 @@
 
-#ifndef BOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
-#define BOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
+#ifndef NDNBOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
+#define NDNBOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
 
 // Copyright Aleksey Gurtovoy 2000-2004
 //
@@ -29,8 +29,8 @@
 // member, and -1 otherwise; conrete sequences might override it by 
 // specializing either the 'O1_size_impl' or the primary 'O1_size' template
 
-#   if !BOOST_WORKAROUND(BOOST_MSVC, < 1300) \
-    && !BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3003))
+#   if !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, < 1300) \
+    && !NDNBOOST_WORKAROUND(__MWERKS__, NDNBOOST_TESTED_AT(0x3003))
 
 namespace aux {
 template< typename Sequence > struct O1_size_impl
@@ -43,7 +43,7 @@
 struct O1_size_impl
 {
     template< typename Sequence > struct apply
-#if !defined(BOOST_MPL_CFG_NO_NESTED_FORWARDING)
+#if !defined(NDNBOOST_MPL_CFG_NO_NESTED_FORWARDING)
         : if_<
               aux::has_size<Sequence>
             , aux::O1_size_impl<Sequence>
@@ -58,7 +58,7 @@
             , long_<-1>
             >::type type;
 
-        BOOST_STATIC_CONSTANT(long, value =
+        NDNBOOST_STATIC_CONSTANT(long, value =
               (if_<
                   aux::has_size<Sequence>
                 , aux::O1_size_impl<Sequence>
@@ -69,7 +69,7 @@
     };
 };
 
-#   else // BOOST_MSVC
+#   else // NDNBOOST_MSVC
 
 template< typename Tag >
 struct O1_size_impl
@@ -84,4 +84,4 @@
 
 }}
 
-#endif // BOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
+#endif // NDNBOOST_MPL_O1_SIZE_IMPL_HPP_INCLUDED
