ndnboost: Also rename BOOST_ to NDNBOOST_
diff --git a/include/ndnboost/intrusive/detail/config_begin.hpp b/include/ndnboost/intrusive/detail/config_begin.hpp
index 5350c1c..4e7ce04 100644
--- a/include/ndnboost/intrusive/detail/config_begin.hpp
+++ b/include/ndnboost/intrusive/detail/config_begin.hpp
@@ -10,12 +10,12 @@
 //
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef BOOST_INTRUSIVE_CONFIG_INCLUDED
-#define BOOST_INTRUSIVE_CONFIG_INCLUDED
+#ifndef NDNBOOST_INTRUSIVE_CONFIG_INCLUDED
+#define NDNBOOST_INTRUSIVE_CONFIG_INCLUDED
 #include <ndnboost/config.hpp>
 #endif
 
-#ifdef BOOST_MSVC
+#ifdef NDNBOOST_MSVC
 
    #pragma warning (push)
    //
@@ -48,5 +48,5 @@
    #pragma warning (disable : 4512) //'typeid' used on polymorphic type 'ndnboost::exception' with /GR-
 #endif
 
-//#define BOOST_INTRUSIVE_USE_ITERATOR_FACADE
-//#define BOOST_INTRUSIVE_USE_ITERATOR_ENABLE_IF_CONVERTIBLE
+//#define NDNBOOST_INTRUSIVE_USE_ITERATOR_FACADE
+//#define NDNBOOST_INTRUSIVE_USE_ITERATOR_ENABLE_IF_CONVERTIBLE
diff --git a/include/ndnboost/intrusive/detail/config_end.hpp b/include/ndnboost/intrusive/detail/config_end.hpp
index d653030..6aa1214 100644
--- a/include/ndnboost/intrusive/detail/config_end.hpp
+++ b/include/ndnboost/intrusive/detail/config_end.hpp
@@ -10,6 +10,6 @@
 //
 /////////////////////////////////////////////////////////////////////////////
 
-#if defined BOOST_MSVC
+#if defined NDNBOOST_MSVC
    #pragma warning (pop)
 #endif
diff --git a/include/ndnboost/intrusive/detail/has_member_function_callable_with.hpp b/include/ndnboost/intrusive/detail/has_member_function_callable_with.hpp
index a9cdff9..56da5b9 100644
--- a/include/ndnboost/intrusive/detail/has_member_function_callable_with.hpp
+++ b/include/ndnboost/intrusive/detail/has_member_function_callable_with.hpp
@@ -10,10 +10,10 @@
 
 // sample.h
 
-#if !defined(BOOST_PP_IS_ITERATING)
+#if !defined(NDNBOOST_PP_IS_ITERATING)
 
-   #ifndef BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
-   #define BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
+   #ifndef NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
+   #define NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
 
       #include <ndnboost/intrusive/detail/config_begin.hpp>
       #include <ndnboost/intrusive/detail/workaround.hpp>
@@ -25,9 +25,9 @@
       //Mark that we don't support 0 arg calls due to compiler ICE in GCC 3.4/4.0/4.1 and
       //wrong SFINAE for GCC 4.2/4.3
       #if defined(__GNUC__) && !defined(__clang__) && ((__GNUC__*100 + __GNUC_MINOR__*10) >= 340) && ((__GNUC__*100 + __GNUC_MINOR__*10) <= 430)
-      #define BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED
-      #elif defined(BOOST_INTEL) && (BOOST_INTEL < 1200 )
-      #define BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED
+      #define NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED
+      #elif defined(NDNBOOST_INTEL) && (NDNBOOST_INTEL < 1200 )
+      #define NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED
       #endif
 
       namespace ndnboost_intrusive_has_member_function_callable_with {
@@ -54,36 +54,36 @@
 
       #include <ndnboost/intrusive/detail/config_end.hpp>
 
-   #endif   //BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
+   #endif   //NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_DETAILS_INCLUDED
 
-#else //!BOOST_PP_IS_ITERATING
+#else //!NDNBOOST_PP_IS_ITERATING
 
-   #ifndef  BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
-   #error "BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME not defined!"
+   #ifndef  NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+   #error "NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME not defined!"
    #endif
 
-   #ifndef  BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
-   #error "BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN not defined!"
+   #ifndef  NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
+   #error "NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN not defined!"
    #endif
 
-   #ifndef  BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
-   #error "BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END not defined!"
+   #ifndef  NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
+   #error "NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END not defined!"
    #endif
 
-   #if BOOST_PP_ITERATION_START() != 0
-   #error "BOOST_PP_ITERATION_START() must be zero (0)"
+   #if NDNBOOST_PP_ITERATION_START() != 0
+   #error "NDNBOOST_PP_ITERATION_START() must be zero (0)"
    #endif
 
-   #if BOOST_PP_ITERATION() == 0
+   #if NDNBOOST_PP_ITERATION() == 0
 
-      BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
+      NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
 
       template <typename Type>
-      class BOOST_PP_CAT(has_member_function_named_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+      class NDNBOOST_PP_CAT(has_member_function_named_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
       {
          struct BaseMixin
          {
-            void BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME();
+            void NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME();
          };
 
          struct Base : public ::ndnboost::intrusive::detail::remove_cv<Type>::type, public BaseMixin { Base(); };
@@ -91,7 +91,7 @@
 
          template <typename U>
          static ndnboost_intrusive_has_member_function_callable_with::no_type  deduce
-            (U*, Helper<void (BaseMixin::*)(), &U::BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME>* = 0);
+            (U*, Helper<void (BaseMixin::*)(), &U::NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME>* = 0);
          static ndnboost_intrusive_has_member_function_callable_with::yes_type deduce(...);
 
          public:
@@ -99,16 +99,16 @@
             sizeof(ndnboost_intrusive_has_member_function_callable_with::yes_type) == sizeof(deduce((Base*)(0)));
       };
 
-      #if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
          template<typename Fun, bool HasFunc
-                  BOOST_PP_ENUM_TRAILING(BOOST_PP_ITERATION_FINISH(), BOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT, _)>
-         struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl);
+                  NDNBOOST_PP_ENUM_TRAILING(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT, _)>
+         struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl);
          //!
 
-         template<typename Fun BOOST_PP_ENUM_TRAILING_PARAMS(BOOST_PP_ITERATION_FINISH(), class P)>
-         struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
-            <Fun, false BOOST_PP_ENUM_TRAILING_PARAMS(BOOST_PP_ITERATION_FINISH(), P)>
+         template<typename Fun NDNBOOST_PP_ENUM_TRAILING_PARAMS(NDNBOOST_PP_ITERATION_FINISH(), class P)>
+         struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
+            <Fun, false NDNBOOST_PP_ENUM_TRAILING_PARAMS(NDNBOOST_PP_ITERATION_FINISH(), P)>
          {
             static const bool value = false;
          };
@@ -116,46 +116,46 @@
 
          #if !defined(_MSC_VER) || (_MSC_VER < 1600)
 
-            #if defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
+            #if defined(NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
             template<typename Fun>
-            struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
-               <Fun, true BOOST_PP_ENUM_TRAILING(BOOST_PP_SUB(BOOST_PP_ITERATION_FINISH(), BOOST_PP_ITERATION()), BOOST_INTRUSIVE_PP_IDENTITY, void)>
+            struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+               <Fun, true NDNBOOST_PP_ENUM_TRAILING(NDNBOOST_PP_SUB(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_PP_ITERATION()), NDNBOOST_INTRUSIVE_PP_IDENTITY, void)>
             {
                //Mark that we don't support 0 arg calls due to compiler ICE in GCC 3.4/4.0/4.1 and
                //wrong SFINAE for GCC 4.2/4.3
                static const bool value = true;
             };
 
-            #else //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
+            #else //defined(NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
             //Special case for 0 args
             template< class F
                   , std::size_t N =
                         sizeof((ndnboost::move_detail::declval<F>().
-                           BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME (), 0))>
-            struct BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+                           NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME (), 0))>
+            struct NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
             {
                ndnboost_intrusive_has_member_function_callable_with::yes_type dummy;
-               BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
+               NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
             };
 
             //For buggy compilers like MSVC 7.1+ ((F*)0)->func() does not
             //SFINAE-out the zeroarg_checker_ instantiation but sizeof yields to 0.
             template<class F>
-            struct BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<F, 0>
+            struct NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<F, 0>
             {
                ndnboost_intrusive_has_member_function_callable_with::no_type dummy;
-               BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
+               NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
             };
 
             template<typename Fun>
-            struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
-               <Fun, true BOOST_PP_ENUM_TRAILING(BOOST_PP_SUB(BOOST_PP_ITERATION_FINISH(), BOOST_PP_ITERATION()), BOOST_INTRUSIVE_PP_IDENTITY, void)>
+            struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+               <Fun, true NDNBOOST_PP_ENUM_TRAILING(NDNBOOST_PP_SUB(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_PP_ITERATION()), NDNBOOST_INTRUSIVE_PP_IDENTITY, void)>
             {
                template<class U>
-               static BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>
-                  Test(BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>*);
+               static NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>
+                  Test(NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>*);
 
                template <class U>
                static ndnboost_intrusive_has_member_function_callable_with::no_type Test(...);
@@ -163,15 +163,15 @@
                static const bool value = sizeof(Test< Fun >(0))
                                     == sizeof(ndnboost_intrusive_has_member_function_callable_with::yes_type);
             };
-            #endif   //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
+            #endif   //defined(NDNBOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
          #else //#if !defined(_MSC_VER) || (_MSC_VER < 1600)
             template<typename Fun>
-            struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
-               <Fun, true BOOST_PP_ENUM_TRAILING(BOOST_PP_SUB(BOOST_PP_ITERATION_FINISH(), BOOST_PP_ITERATION()), BOOST_INTRUSIVE_PP_IDENTITY, void)>
+            struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+               <Fun, true NDNBOOST_PP_ENUM_TRAILING(NDNBOOST_PP_SUB(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_PP_ITERATION()), NDNBOOST_INTRUSIVE_PP_IDENTITY, void)>
             {
                template<class U>
-               static decltype( ndnboost::move_detail::declval<Fun>().BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME()
+               static decltype( ndnboost::move_detail::declval<Fun>().NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME()
                               , ndnboost_intrusive_has_member_function_callable_with::yes_type())
                   Test(Fun*);
 
@@ -183,13 +183,13 @@
             };
          #endif   //#if !defined(_MSC_VER) || (_MSC_VER < 1600)
 
-      #else   //#if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #else   //#if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
          template<typename Fun, bool HasFunc, class ...Args>
-         struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl);
+         struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl);
 
          template<typename Fun, class ...Args>
-         struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+         struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
             <Fun, false, Args...>
          {
             static const bool value = false;
@@ -199,29 +199,29 @@
          template< class F
                , std::size_t N =
                      sizeof((ndnboost::move_detail::declval<F>().
-                        BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME (), 0))>
-         struct BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+                        NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME (), 0))>
+         struct NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
          {
             ndnboost_intrusive_has_member_function_callable_with::yes_type dummy;
-            BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
+            NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
          };
 
          //For buggy compilers like MSVC 7.1+ ((F*)0)->func() does not
          //SFINAE-out the zeroarg_checker_ instantiation but sizeof yields to 0.
          template<class F>
-         struct BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<F, 0>
+         struct NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<F, 0>
          {
             ndnboost_intrusive_has_member_function_callable_with::no_type dummy;
-            BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
+            NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)(int);
          };
 
          template<typename Fun>
-         struct BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+         struct NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
             <Fun, true>
          {
             template<class U>
-            static BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
-               <U> Test(BOOST_PP_CAT(zeroarg_checker_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>*);
+            static NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+               <U> Test(NDNBOOST_PP_CAT(zeroarg_checker_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<U>*);
 
             template <class U>
             static ndnboost_intrusive_has_member_function_callable_with::no_type Test(...);
@@ -231,19 +231,19 @@
          };
 
          template<typename Fun, class ...DontCares>
-         struct BOOST_PP_CAT( funwrap_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )
+         struct NDNBOOST_PP_CAT( funwrap_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )
             : Fun
          {
-            BOOST_PP_CAT( funwrap_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )();
-            using Fun::BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME;
+            NDNBOOST_PP_CAT( funwrap_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )();
+            using Fun::NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME;
 
             ndnboost_intrusive_has_member_function_callable_with::private_type
-               BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+               NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
                   ( DontCares...)  const;
          };
 
          template<typename Fun, class ...Args>
-         struct BOOST_PP_CAT( BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
+         struct NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
             <Fun, true , Args...>
          {
             template<class T>
@@ -252,106 +252,106 @@
                typedef ndnboost_intrusive_has_member_function_callable_with::dont_care type;
             };
 
-            typedef BOOST_PP_CAT( funwrap_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )
+            typedef NDNBOOST_PP_CAT( funwrap_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )
                <Fun, typename make_dontcare<Args>::type...> FunWrap;
 
             static bool const value = (sizeof(ndnboost_intrusive_has_member_function_callable_with::no_type) ==
                                        sizeof(ndnboost_intrusive_has_member_function_callable_with::is_private_type
                                                 ( (::ndnboost::move_detail::declval< FunWrap >().
-                                          BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+                                          NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
                                              ( ::ndnboost::move_detail::declval<Args>()... ), 0) )
                                              )
                                        );
          };
 
          template<typename Fun, class ...Args>
-         struct BOOST_PP_CAT( has_member_function_callable_with_
-                            , BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
-            : public BOOST_PP_CAT( BOOST_PP_CAT(has_member_function_callable_with_
-                                 , BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+         struct NDNBOOST_PP_CAT( has_member_function_callable_with_
+                            , NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+            : public NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(has_member_function_callable_with_
+                                 , NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
                < Fun
-               , BOOST_PP_CAT( has_member_function_named_
-                             , BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )<Fun>::value
+               , NDNBOOST_PP_CAT( has_member_function_named_
+                             , NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME )<Fun>::value
                , Args... >
          {};
 
-      #endif   //#if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #endif   //#if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
-      BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
+      NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
 
-   #else   //BOOST_PP_ITERATION() == 0
+   #else   //NDNBOOST_PP_ITERATION() == 0
 
-      #if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
-         BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
+         NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
 
          template<typename Fun>
-         struct BOOST_PP_CAT( BOOST_PP_CAT(funwrap, BOOST_PP_ITERATION())
-                           , BOOST_PP_CAT(_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))
+         struct NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(funwrap, NDNBOOST_PP_ITERATION())
+                           , NDNBOOST_PP_CAT(_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))
             : Fun
          {
-            BOOST_PP_CAT( BOOST_PP_CAT(funwrap, BOOST_PP_ITERATION())
-                        , BOOST_PP_CAT(_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))();
+            NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(funwrap, NDNBOOST_PP_ITERATION())
+                        , NDNBOOST_PP_CAT(_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))();
 
-            using Fun::BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME;
+            using Fun::NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME;
             ndnboost_intrusive_has_member_function_callable_with::private_type
-               BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
-                  ( BOOST_PP_ENUM(BOOST_PP_ITERATION()
-                  , BOOST_INTRUSIVE_PP_IDENTITY
+               NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+                  ( NDNBOOST_PP_ENUM(NDNBOOST_PP_ITERATION()
+                  , NDNBOOST_INTRUSIVE_PP_IDENTITY
                   , ndnboost_intrusive_has_member_function_callable_with::dont_care))  const;
          };
 
-         template<typename Fun BOOST_PP_ENUM_TRAILING_PARAMS(BOOST_PP_ITERATION(), class P)>
-         struct BOOST_PP_CAT( BOOST_PP_CAT(has_member_function_callable_with_
-                            , BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
+         template<typename Fun NDNBOOST_PP_ENUM_TRAILING_PARAMS(NDNBOOST_PP_ITERATION(), class P)>
+         struct NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(has_member_function_callable_with_
+                            , NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME),_impl)
             <Fun, true
-            BOOST_PP_ENUM_TRAILING_PARAMS(BOOST_PP_ITERATION(), P)
-            BOOST_PP_ENUM_TRAILING( BOOST_PP_SUB(BOOST_PP_ITERATION_FINISH(), BOOST_PP_ITERATION())
-                                  , BOOST_INTRUSIVE_PP_IDENTITY
+            NDNBOOST_PP_ENUM_TRAILING_PARAMS(NDNBOOST_PP_ITERATION(), P)
+            NDNBOOST_PP_ENUM_TRAILING( NDNBOOST_PP_SUB(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_PP_ITERATION())
+                                  , NDNBOOST_INTRUSIVE_PP_IDENTITY
                                   , void)>
          {
-            typedef BOOST_PP_CAT( BOOST_PP_CAT(funwrap, BOOST_PP_ITERATION())
-                              , BOOST_PP_CAT(_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))<Fun>
+            typedef NDNBOOST_PP_CAT( NDNBOOST_PP_CAT(funwrap, NDNBOOST_PP_ITERATION())
+                              , NDNBOOST_PP_CAT(_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME))<Fun>
                      FunWrap;
             static bool const value =
             (sizeof(ndnboost_intrusive_has_member_function_callable_with::no_type) ==
                sizeof(ndnboost_intrusive_has_member_function_callable_with::is_private_type
                         (  (ndnboost::move_detail::declval<FunWrap>().
-                              BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
-                                 ( BOOST_PP_ENUM( BOOST_PP_ITERATION(), BOOST_INTRUSIVE_PP_DECLVAL, _) ), 0
+                              NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+                                 ( NDNBOOST_PP_ENUM( NDNBOOST_PP_ITERATION(), NDNBOOST_INTRUSIVE_PP_DECLVAL, _) ), 0
                            )
                         )
                      )
             );
          };
 
-         BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
-      #endif   //#if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+         NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
+      #endif   //#if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
-   #endif   //BOOST_PP_ITERATION() == 0
+   #endif   //NDNBOOST_PP_ITERATION() == 0
 
-   #if BOOST_PP_ITERATION() == BOOST_PP_ITERATION_FINISH()
+   #if NDNBOOST_PP_ITERATION() == NDNBOOST_PP_ITERATION_FINISH()
 
-      #if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
-         BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
+         NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
 
          template<typename Fun
-                  BOOST_PP_ENUM_TRAILING(BOOST_PP_ITERATION_FINISH(), BOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT, _)>
-         struct BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
-            : public BOOST_PP_CAT(BOOST_PP_CAT(has_member_function_callable_with_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
-               <Fun, BOOST_PP_CAT(has_member_function_named_, BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<Fun>::value
-               BOOST_PP_ENUM_TRAILING_PARAMS(BOOST_PP_ITERATION_FINISH(), P) >
+                  NDNBOOST_PP_ENUM_TRAILING(NDNBOOST_PP_ITERATION_FINISH(), NDNBOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT, _)>
+         struct NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)
+            : public NDNBOOST_PP_CAT(NDNBOOST_PP_CAT(has_member_function_callable_with_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME), _impl)
+               <Fun, NDNBOOST_PP_CAT(has_member_function_named_, NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME)<Fun>::value
+               NDNBOOST_PP_ENUM_TRAILING_PARAMS(NDNBOOST_PP_ITERATION_FINISH(), P) >
          {};
 
-         BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
+         NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
 
-      #endif //#if !defined(BOOST_INTRUSIVE_PERFECT_FORWARDING)
+      #endif //#if !defined(NDNBOOST_INTRUSIVE_PERFECT_FORWARDING)
 
-      #undef BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
-      #undef BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
-      #undef BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
+      #undef NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME
+      #undef NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN
+      #undef NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END
 
-   #endif   //#if BOOST_PP_ITERATION() == BOOST_PP_ITERATION_FINISH()
+   #endif   //#if NDNBOOST_PP_ITERATION() == NDNBOOST_PP_ITERATION_FINISH()
 
-#endif   //!BOOST_PP_IS_ITERATING
+#endif   //!NDNBOOST_PP_IS_ITERATING
diff --git a/include/ndnboost/intrusive/detail/memory_util.hpp b/include/ndnboost/intrusive/detail/memory_util.hpp
index 81cc105..4d88ef9 100644
--- a/include/ndnboost/intrusive/detail/memory_util.hpp
+++ b/include/ndnboost/intrusive/detail/memory_util.hpp
@@ -14,8 +14,8 @@
 //
 //////////////////////////////////////////////////////////////////////////////
 
-#ifndef BOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP
-#define BOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP
+#ifndef NDNBOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP
+#define NDNBOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP
 
 #if (defined _MSC_VER) && (_MSC_VER >= 1200)
 #  pragma once
@@ -53,7 +53,7 @@
 };
 
 // Infrastructure for providing a default type for T::TNAME if absent.
-#define BOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(TNAME)              \
+#define NDNBOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(TNAME)              \
    template <typename T, typename DefaultType>                             \
    struct boost_intrusive_default_type_ ## TNAME                           \
    {                                                                       \
@@ -97,12 +97,12 @@
    };                                                                      \
 //
 
-#define BOOST_INTRUSIVE_OBTAIN_TYPE_WITH_DEFAULT(INSTANTIATION_NS_PREFIX, T, TNAME, TIMPL)   \
+#define NDNBOOST_INTRUSIVE_OBTAIN_TYPE_WITH_DEFAULT(INSTANTIATION_NS_PREFIX, T, TNAME, TIMPL)   \
       typename INSTANTIATION_NS_PREFIX                                                       \
          boost_intrusive_default_type_ ## TNAME< T, TIMPL >::type                            \
 //
 
-#define BOOST_INTRUSIVE_OBTAIN_TYPE_WITH_EVAL_DEFAULT(INSTANTIATION_NS_PREFIX, T, TNAME, TIMPL) \
+#define NDNBOOST_INTRUSIVE_OBTAIN_TYPE_WITH_EVAL_DEFAULT(INSTANTIATION_NS_PREFIX, T, TNAME, TIMPL) \
       typename INSTANTIATION_NS_PREFIX                                                          \
          boost_intrusive_eval_default_type_ ## TNAME< T, TIMPL >::type                          \
 //
@@ -111,36 +111,36 @@
 
 #include <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>
 
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME pointer_to
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
-#define BOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
-#include BOOST_PP_ITERATE()
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME pointer_to
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
+#define NDNBOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
+#include NDNBOOST_PP_ITERATE()
 
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME static_cast_from
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
-#define BOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
-#include BOOST_PP_ITERATE()
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME static_cast_from
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
+#define NDNBOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
+#include NDNBOOST_PP_ITERATE()
 
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME const_cast_from
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
-#define BOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
-#include BOOST_PP_ITERATE()
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME const_cast_from
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
+#define NDNBOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
+#include NDNBOOST_PP_ITERATE()
 
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME dynamic_cast_from
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
-#define BOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
-#define BOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
-#include BOOST_PP_ITERATE()
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_FUNCNAME dynamic_cast_from
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_BEGIN namespace ndnboost { namespace intrusive { namespace detail {
+#define NDNBOOST_INTRUSIVE_HAS_MEMBER_FUNCTION_CALLABLE_WITH_NS_END   }}}
+#define NDNBOOST_PP_ITERATION_PARAMS_1 (3, (0, 1, <ndnboost/intrusive/detail/has_member_function_callable_with.hpp>))
+#include NDNBOOST_PP_ITERATE()
 
 namespace ndnboost {
 namespace intrusive {
 namespace detail {
 
-BOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(element_type)
-BOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(difference_type)
+NDNBOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(element_type)
+NDNBOOST_INTRUSIVE_INSTANTIATE_DEFAULT_TYPE_TMPLT(difference_type)
 
 //////////////////////
 //struct first_param
@@ -149,7 +149,7 @@
 template <typename T> struct first_param
 {  typedef void type;   };
 
-#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
+#if !defined(NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES)
 
    template <template <typename, typename...> class TemplateClass, typename T, typename... Args>
    struct first_param< TemplateClass<T, Args...> >
@@ -159,21 +159,21 @@
 
 #else //C++03 compilers
 
-   #define BOOST_PP_LOCAL_MACRO(n)                                                  \
+   #define NDNBOOST_PP_LOCAL_MACRO(n)                                                  \
    template < template <typename                                                    \
-               BOOST_PP_ENUM_TRAILING(n, BOOST_INTRUSIVE_PP_IDENTITY, typename) >   \
+               NDNBOOST_PP_ENUM_TRAILING(n, NDNBOOST_INTRUSIVE_PP_IDENTITY, typename) >   \
             class TemplateClass                                                     \
-            , typename T BOOST_PP_ENUM_TRAILING_PARAMS(n, class P)>                 \
+            , typename T NDNBOOST_PP_ENUM_TRAILING_PARAMS(n, class P)>                 \
    struct first_param                                                               \
-      < TemplateClass<T BOOST_PP_ENUM_TRAILING_PARAMS(n, P)> >                      \
+      < TemplateClass<T NDNBOOST_PP_ENUM_TRAILING_PARAMS(n, P)> >                      \
    {                                                                                \
       typedef T type;                                                               \
    };                                                                               \
    //
-   #define BOOST_PP_LOCAL_LIMITS (0, BOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS)
-   #include BOOST_PP_LOCAL_ITERATE()
+   #define NDNBOOST_PP_LOCAL_LIMITS (0, NDNBOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS)
+   #include NDNBOOST_PP_LOCAL_ITERATE()
 
-#endif   //!defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
+#endif   //!defined(NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES)
 
 ///////////////////////////
 //struct type_rebind_mode
@@ -245,7 +245,7 @@
 // OtherArgs>, where OtherArgs comprises zero or more type parameters.
 // Many pointers fit this form, hence many pointers will get a
 // reasonable default for rebind.
-#if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
+#if !defined(NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES)
 
 template <template <class, class...> class Ptr, typename T, class... Tn, class U>
 struct type_rebinder<Ptr<T, Tn...>, U, 0u >
@@ -262,22 +262,22 @@
 
 #else //C++03 compilers
 
-#define BOOST_PP_LOCAL_MACRO(n)                                                  \
+#define NDNBOOST_PP_LOCAL_MACRO(n)                                                  \
 template < template <typename                                                    \
-            BOOST_PP_ENUM_TRAILING(n, BOOST_INTRUSIVE_PP_IDENTITY, typename) >   \
+            NDNBOOST_PP_ENUM_TRAILING(n, NDNBOOST_INTRUSIVE_PP_IDENTITY, typename) >   \
            class Ptr                                                             \
-         , typename T BOOST_PP_ENUM_TRAILING_PARAMS(n, class P)                  \
+         , typename T NDNBOOST_PP_ENUM_TRAILING_PARAMS(n, class P)                  \
          , class U>                                                              \
 struct type_rebinder                                                             \
-   < Ptr<T BOOST_PP_ENUM_TRAILING_PARAMS(n, P)>, U, 0u >                         \
+   < Ptr<T NDNBOOST_PP_ENUM_TRAILING_PARAMS(n, P)>, U, 0u >                         \
 {                                                                                \
-   typedef Ptr<U BOOST_PP_ENUM_TRAILING_PARAMS(n, P)> type;                      \
+   typedef Ptr<U NDNBOOST_PP_ENUM_TRAILING_PARAMS(n, P)> type;                      \
 };                                                                               \
 //
-#define BOOST_PP_LOCAL_LIMITS (0, BOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS)
-#include BOOST_PP_LOCAL_ITERATE()
+#define NDNBOOST_PP_LOCAL_LIMITS (0, NDNBOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS)
+#include NDNBOOST_PP_LOCAL_ITERATE()
 
-#endif   //!defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
+#endif   //!defined(NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES)
 
 }  //namespace detail {
 }  //namespace intrusive {
@@ -285,4 +285,4 @@
 
 #include <ndnboost/intrusive/detail/config_end.hpp>
 
-#endif // ! defined(BOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP)
+#endif // ! defined(NDNBOOST_INTRUSIVE_ALLOCATOR_MEMORY_UTIL_HPP)
diff --git a/include/ndnboost/intrusive/detail/mpl.hpp b/include/ndnboost/intrusive/detail/mpl.hpp
index 9dc637d..cfe340c 100644
--- a/include/ndnboost/intrusive/detail/mpl.hpp
+++ b/include/ndnboost/intrusive/detail/mpl.hpp
@@ -10,8 +10,8 @@
 //
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef BOOST_INTRUSIVE_DETAIL_MPL_HPP
-#define BOOST_INTRUSIVE_DETAIL_MPL_HPP
+#ifndef NDNBOOST_INTRUSIVE_DETAIL_MPL_HPP
+#define NDNBOOST_INTRUSIVE_DETAIL_MPL_HPP
 
 #include <ndnboost/intrusive/detail/config_begin.hpp>
 #include <cstddef>
@@ -124,14 +124,14 @@
    typedef T type;
 };
 
-#if defined(BOOST_MSVC) || defined(__BORLANDC_)
-#define BOOST_INTRUSIVE_TT_DECL __cdecl
+#if defined(NDNBOOST_MSVC) || defined(__BORLANDC_)
+#define NDNBOOST_INTRUSIVE_TT_DECL __cdecl
 #else
-#define BOOST_INTRUSIVE_TT_DECL
+#define NDNBOOST_INTRUSIVE_TT_DECL
 #endif
 
 #if defined(_MSC_EXTENSIONS) && !defined(__BORLAND__) && !defined(_WIN64) && !defined(UNDER_CE)
-#define BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#define NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 #endif
 
 template <typename T>
@@ -140,7 +140,7 @@
 
 // see boost ticket #4094
 // avoid duplicate definitions of is_unary_or_binary_function_impl
-#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#ifndef NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R>
 struct is_unary_or_binary_function_impl<R (*)()>
@@ -150,7 +150,7 @@
 struct is_unary_or_binary_function_impl<R (*)(...)>
 {  static const bool value = true;  };
 
-#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#else // NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R>
 struct is_unary_or_binary_function_impl<R (__stdcall*)()>
@@ -176,7 +176,7 @@
 
 // see boost ticket #4094
 // avoid duplicate definitions of is_unary_or_binary_function_impl
-#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#ifndef NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R, class T0>
 struct is_unary_or_binary_function_impl<R (*)(T0)>
@@ -186,7 +186,7 @@
 struct is_unary_or_binary_function_impl<R (*)(T0...)>
 {  static const bool value = true;  };
 
-#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#else // NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R, class T0>
 struct is_unary_or_binary_function_impl<R (__stdcall*)(T0)>
@@ -212,7 +212,7 @@
 
 // see boost ticket #4094
 // avoid duplicate definitions of is_unary_or_binary_function_impl
-#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#ifndef NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R, class T0, class T1>
 struct is_unary_or_binary_function_impl<R (*)(T0, T1)>
@@ -222,7 +222,7 @@
 struct is_unary_or_binary_function_impl<R (*)(T0, T1...)>
 {  static const bool value = true;  };
 
-#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
+#else // NDNBOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
 
 template <typename R, class T0, class T1>
 struct is_unary_or_binary_function_impl<R (__stdcall*)(T0, T1)>
@@ -380,4 +380,4 @@
 
 #include <ndnboost/intrusive/detail/config_end.hpp>
 
-#endif //BOOST_INTRUSIVE_DETAIL_MPL_HPP
+#endif //NDNBOOST_INTRUSIVE_DETAIL_MPL_HPP
diff --git a/include/ndnboost/intrusive/detail/preprocessor.hpp b/include/ndnboost/intrusive/detail/preprocessor.hpp
index b673fac..cdf8a38 100644
--- a/include/ndnboost/intrusive/detail/preprocessor.hpp
+++ b/include/ndnboost/intrusive/detail/preprocessor.hpp
@@ -8,8 +8,8 @@
 //
 //////////////////////////////////////////////////////////////////////////////
 
-#ifndef BOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
-#define BOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
+#ifndef NDNBOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
+#define NDNBOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
 
 #if (defined _MSC_VER) && (_MSC_VER >= 1200)
 #  pragma once
@@ -35,18 +35,18 @@
 #include <ndnboost/preprocessor/arithmetic/add.hpp>
 #include <ndnboost/preprocessor/iteration/iterate.hpp>
 
-#define BOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS 10
+#define NDNBOOST_INTRUSIVE_MAX_CONSTRUCTOR_PARAMETERS 10
 
-#define BOOST_INTRUSIVE_PP_IDENTITY(z, n, data) data
+#define NDNBOOST_INTRUSIVE_PP_IDENTITY(z, n, data) data
 
-#define BOOST_INTRUSIVE_PP_DECLVAL(z, n, data) \
-ndnboost::move_detail::declval< BOOST_PP_CAT(P, n) >() \
+#define NDNBOOST_INTRUSIVE_PP_DECLVAL(z, n, data) \
+ndnboost::move_detail::declval< NDNBOOST_PP_CAT(P, n) >() \
 //!
 
-#define BOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT(z, n, data)   \
-  BOOST_PP_CAT(class P, n) = void                                      \
+#define NDNBOOST_INTRUSIVE_PP_TEMPLATE_PARAM_VOID_DEFAULT(z, n, data)   \
+  NDNBOOST_PP_CAT(class P, n) = void                                      \
 //!
 
 #include <ndnboost/intrusive/detail/config_end.hpp>
 
-#endif //#ifndef BOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
+#endif //#ifndef NDNBOOST_INTRUSIVE_DETAIL_PREPROCESSOR_HPP
diff --git a/include/ndnboost/intrusive/detail/workaround.hpp b/include/ndnboost/intrusive/detail/workaround.hpp
index 6da7711..4f73b1c 100644
--- a/include/ndnboost/intrusive/detail/workaround.hpp
+++ b/include/ndnboost/intrusive/detail/workaround.hpp
@@ -8,15 +8,15 @@
 //
 //////////////////////////////////////////////////////////////////////////////
 
-#ifndef BOOST_INTRUSIVE_DETAIL_WRKRND_HPP
-#define BOOST_INTRUSIVE_DETAIL_WRKRND_HPP
+#ifndef NDNBOOST_INTRUSIVE_DETAIL_WRKRND_HPP
+#define NDNBOOST_INTRUSIVE_DETAIL_WRKRND_HPP
 
 #include <ndnboost/intrusive/detail/config_begin.hpp>
 
-#if    !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
-   #define BOOST_INTRUSIVE_PERFECT_FORWARDING
+#if    !defined(NDNBOOST_NO_CXX11_RVALUE_REFERENCES) && !defined(NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES)
+   #define NDNBOOST_INTRUSIVE_PERFECT_FORWARDING
 #endif
 
 #include <ndnboost/intrusive/detail/config_end.hpp>
 
-#endif   //#ifndef BOOST_INTRUSIVE_DETAIL_WRKRND_HPP
+#endif   //#ifndef NDNBOOST_INTRUSIVE_DETAIL_WRKRND_HPP