diff --git a/include/ndnboost/typeof/typeof.hpp b/include/ndnboost/typeof/typeof.hpp
index 98505d9..4847baf 100644
--- a/include/ndnboost/typeof/typeof.hpp
+++ b/include/ndnboost/typeof/typeof.hpp
@@ -2,29 +2,29 @@
 // Distributed under the Boost Software License, Version 1.0. (See accompanying
 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-#ifndef BOOST_TYPEOF_TYPEOF_HPP_INCLUDED
-#define BOOST_TYPEOF_TYPEOF_HPP_INCLUDED
+#ifndef NDNBOOST_TYPEOF_TYPEOF_HPP_INCLUDED
+#define NDNBOOST_TYPEOF_TYPEOF_HPP_INCLUDED
 
-#if defined(BOOST_TYPEOF_COMPLIANT)
-#   define BOOST_TYPEOF_EMULATION
+#if defined(NDNBOOST_TYPEOF_COMPLIANT)
+#   define NDNBOOST_TYPEOF_EMULATION
 #endif
 
-#if defined(BOOST_TYPEOF_EMULATION) && defined(BOOST_TYPEOF_NATIVE)
+#if defined(NDNBOOST_TYPEOF_EMULATION) && defined(NDNBOOST_TYPEOF_NATIVE)
 #   error both typeof emulation and native mode requested
 #endif
 
 #if defined(__COMO__)
 #   ifdef __GNUG__
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
-#               define BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
+#               define NDNBOOST_TYPEOF_NATIVE
 #           endif
-#           define BOOST_TYPEOF_KEYWORD typeof
+#           define NDNBOOST_TYPEOF_KEYWORD typeof
 #       endif
 #   else
-#       ifndef BOOST_TYPEOF_NATIVE
-#           ifndef BOOST_TYPEOF_EMULATION
-#               define BOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           ifndef NDNBOOST_TYPEOF_EMULATION
+#               define NDNBOOST_TYPEOF_EMULATION
 #           endif
 #       else
 #           error native typeof is not supported
@@ -33,16 +33,16 @@
 
 #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC)
 #   ifdef __GNUC__
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
-#               define BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
+#               define NDNBOOST_TYPEOF_NATIVE
 #           endif
-#           define BOOST_TYPEOF_KEYWORD __typeof__
+#           define NDNBOOST_TYPEOF_KEYWORD __typeof__
 #       endif
 #   else
-#       ifndef BOOST_TYPEOF_NATIVE
-#           ifndef BOOST_TYPEOF_EMULATION
-#               define BOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           ifndef NDNBOOST_TYPEOF_EMULATION
+#               define NDNBOOST_TYPEOF_EMULATION
 #           endif
 #       else
 #           error native typeof is not supported
@@ -50,60 +50,60 @@
 #   endif
 
 #elif defined(__GNUC__)
-#   ifndef BOOST_TYPEOF_EMULATION
-#       ifndef BOOST_TYPEOF_NATIVE
-#           define BOOST_TYPEOF_NATIVE
+#   ifndef NDNBOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           define NDNBOOST_TYPEOF_NATIVE
 #       endif
-#       define BOOST_TYPEOF_KEYWORD __typeof__
+#       define NDNBOOST_TYPEOF_KEYWORD __typeof__
 #   endif
 
 #elif defined(__MWERKS__)
 #   if(__MWERKS__ <= 0x3003)  // 8.x
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
-#               define BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
+#               define NDNBOOST_TYPEOF_NATIVE
 #           endif
-#           define BOOST_TYPEOF_KEYWORD __typeof__
+#           define NDNBOOST_TYPEOF_KEYWORD __typeof__
 #       else
-#           define BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#           define NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #       endif
 #   else // 9.x
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
-#               define BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
+#               define NDNBOOST_TYPEOF_NATIVE
 #           endif
-#           define BOOST_TYPEOF_KEYWORD __typeof__
+#           define NDNBOOST_TYPEOF_KEYWORD __typeof__
 #       endif
 #   endif
 #elif defined __CODEGEARC__
-#   ifndef BOOST_TYPEOF_EMULATION
-#       ifndef BOOST_TYPEOF_NATIVE
-#           define BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#   ifndef NDNBOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           define NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #       endif
 #   else
-#       define BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#       define NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #   endif
 #elif defined __BORLANDC__
-#   ifndef BOOST_TYPEOF_EMULATION
-#       ifndef BOOST_TYPEOF_NATIVE
-#           define BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#   ifndef NDNBOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           define NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #       endif
 #   else
-#       define BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#       define NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #   endif
 #elif defined __DMC__
-#   ifndef BOOST_TYPEOF_EMULATION
-#       ifndef BOOST_TYPEOF_NATIVE
-#           define BOOST_TYPEOF_NATIVE
+#   ifndef NDNBOOST_TYPEOF_EMULATION
+#       ifndef NDNBOOST_TYPEOF_NATIVE
+#           define NDNBOOST_TYPEOF_NATIVE
 #       endif
 #       include <ndnboost/typeof/dmc/typeof_impl.hpp>
 #       define MSVC_TYPEOF_HACK
 #   endif
 #elif defined(_MSC_VER)
 #   if (_MSC_VER <= 1300)  // 6.5, 7.0
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
-#               define BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
+#               define NDNBOOST_TYPEOF_NATIVE
 #           endif
 #           include <ndnboost/typeof/msvc/typeof_impl.hpp>
 #           define MSVC_TYPEOF_HACK
@@ -111,33 +111,33 @@
 #           error typeof emulation is not supported
 #       endif
 #   elif (_MSC_VER >= 1310)  // 7.1 ->
-#       ifndef BOOST_TYPEOF_EMULATION
-#           ifndef BOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           ifndef NDNBOOST_TYPEOF_NATIVE
 #               ifndef _MSC_EXTENSIONS
-#                   define BOOST_TYPEOF_EMULATION
+#                   define NDNBOOST_TYPEOF_EMULATION
 #               else
-#                   define BOOST_TYPEOF_NATIVE
+#                   define NDNBOOST_TYPEOF_NATIVE
 #               endif
 #           endif
 #       endif
-#       ifdef BOOST_TYPEOF_NATIVE
+#       ifdef NDNBOOST_TYPEOF_NATIVE
 #           include <ndnboost/typeof/msvc/typeof_impl.hpp>
 #           define MSVC_TYPEOF_HACK
 #       endif
 #   endif
 #elif defined(__HP_aCC)
-#   ifndef BOOST_TYPEOF_NATIVE
-#       ifndef BOOST_TYPEOF_EMULATION
-#           define BOOST_TYPEOF_EMULATION
+#   ifndef NDNBOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           define NDNBOOST_TYPEOF_EMULATION
 #       endif
 #   else
 #       error native typeof is not supported
 #   endif
 
 #elif defined(__DECCXX)
-#   ifndef BOOST_TYPEOF_NATIVE
-#       ifndef BOOST_TYPEOF_EMULATION
-#           define BOOST_TYPEOF_EMULATION
+#   ifndef NDNBOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           define NDNBOOST_TYPEOF_EMULATION
 #       endif
 #   else
 #       error native typeof is not supported
@@ -145,55 +145,55 @@
 
 #elif defined(__BORLANDC__)
 #   if (__BORLANDC__ < 0x590)
-#       define BOOST_TYPEOF_NO_FUNCTION_TYPES
-#       define BOOST_TYPEOF_NO_MEMBER_FUNCTION_TYPES
+#       define NDNBOOST_TYPEOF_NO_FUNCTION_TYPES
+#       define NDNBOOST_TYPEOF_NO_MEMBER_FUNCTION_TYPES
 #   endif
-#   ifndef BOOST_TYPEOF_NATIVE
-#       ifndef BOOST_TYPEOF_EMULATION
-#           define BOOST_TYPEOF_EMULATION
+#   ifndef NDNBOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           define NDNBOOST_TYPEOF_EMULATION
 #       endif
 #   else
 #       error native typeof is not supported
 #   endif
 #elif defined(__SUNPRO_CC)
 #   if (__SUNPRO_CC < 0x590 )
-#     ifdef BOOST_TYPEOF_NATIVE
+#     ifdef NDNBOOST_TYPEOF_NATIVE
 #         error native typeof is not supported
 #     endif
-#     ifndef BOOST_TYPEOF_EMULATION
-#         define BOOST_TYPEOF_EMULATION
+#     ifndef NDNBOOST_TYPEOF_EMULATION
+#         define NDNBOOST_TYPEOF_EMULATION
 #     endif
 #   else
-#     ifndef BOOST_TYPEOF_EMULATION
-#         ifndef BOOST_TYPEOF_NATIVE
-#             define BOOST_TYPEOF_NATIVE
+#     ifndef NDNBOOST_TYPEOF_EMULATION
+#         ifndef NDNBOOST_TYPEOF_NATIVE
+#             define NDNBOOST_TYPEOF_NATIVE
 #         endif
-#         define BOOST_TYPEOF_KEYWORD __typeof__
+#         define NDNBOOST_TYPEOF_KEYWORD __typeof__
 #     endif
 #   endif
 #else //unknown compiler
-#   ifndef BOOST_TYPEOF_NATIVE
-#       ifndef BOOST_TYPEOF_EMULATION
-#           define BOOST_TYPEOF_EMULATION
+#   ifndef NDNBOOST_TYPEOF_NATIVE
+#       ifndef NDNBOOST_TYPEOF_EMULATION
+#           define NDNBOOST_TYPEOF_EMULATION
 #       endif
 #   else
-#       ifndef BOOST_TYPEOF_KEYWORD
-#           define BOOST_TYPEOF_KEYWORD typeof
+#       ifndef NDNBOOST_TYPEOF_KEYWORD
+#           define NDNBOOST_TYPEOF_KEYWORD typeof
 #       endif
 #   endif
 
 #endif
 
-#define BOOST_TYPEOF_UNIQUE_ID()\
-     BOOST_TYPEOF_REGISTRATION_GROUP * 0x10000 + __LINE__
+#define NDNBOOST_TYPEOF_UNIQUE_ID()\
+     NDNBOOST_TYPEOF_REGISTRATION_GROUP * 0x10000 + __LINE__
 
-#define BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP()\
+#define NDNBOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP()\
      <ndnboost/typeof/incr_registration_group.hpp>
 
-#ifdef BOOST_TYPEOF_EMULATION_UNSUPPORTED
+#ifdef NDNBOOST_TYPEOF_EMULATION_UNSUPPORTED
 #   include <ndnboost/typeof/unsupported.hpp>
-#elif defined BOOST_TYPEOF_EMULATION
-#   define BOOST_TYPEOF_TEXT "using typeof emulation"
+#elif defined NDNBOOST_TYPEOF_EMULATION
+#   define NDNBOOST_TYPEOF_TEXT "using typeof emulation"
 #   include <ndnboost/typeof/message.hpp>
 #   include <ndnboost/typeof/typeof_impl.hpp>
 #   include <ndnboost/typeof/type_encoding.hpp>
@@ -203,8 +203,8 @@
 #   include <ndnboost/typeof/register_functions.hpp>
 #   include <ndnboost/typeof/register_fundamental.hpp>
 
-#elif defined(BOOST_TYPEOF_NATIVE)
-#   define BOOST_TYPEOF_TEXT "using native typeof"
+#elif defined(NDNBOOST_TYPEOF_NATIVE)
+#   define NDNBOOST_TYPEOF_TEXT "using native typeof"
 #   include <ndnboost/typeof/message.hpp>
 #   include <ndnboost/typeof/native.hpp>
 #else
@@ -212,7 +212,7 @@
 #endif
 
 // auto
-#define BOOST_AUTO(Var, Expr) BOOST_TYPEOF(Expr) Var = Expr
-#define BOOST_AUTO_TPL(Var, Expr) BOOST_TYPEOF_TPL(Expr) Var = Expr
+#define NDNBOOST_AUTO(Var, Expr) NDNBOOST_TYPEOF(Expr) Var = Expr
+#define NDNBOOST_AUTO_TPL(Var, Expr) NDNBOOST_TYPEOF_TPL(Expr) Var = Expr
 
-#endif//BOOST_TYPEOF_TYPEOF_HPP_INCLUDED
+#endif//NDNBOOST_TYPEOF_TYPEOF_HPP_INCLUDED
