 template <class T> inline T log_max_value(const mpl::int_<0>& BOOST_MATH_APPEND_EXPLICIT_TEMPLATE_TYPE(T)) { #ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS    BOOST_STATIC_ASSERT( ::std::numeric_limits<T>::is_specialized); #else    BOOST_ASSERT(::std::numeric_limits<T>::is_specialized); #endif    BOOST_MATH_STD_USING    static const T val = log((std::numeric_limits<T>::max)());    return val; }  template <class T> inline T log_min_value(const mpl::int_<0>& BOOST_MATH_APPEND_EXPLICIT_TEMPLATE_TYPE(T)) { #ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS    BOOST_STATIC_ASSERT( ::std::numeric_limits<T>::is_specialized); #else    BOOST_ASSERT(::std::numeric_limits<T>::is_specialized); #endif    BOOST_MATH_STD_USING    static const T val = log((std::numeric_limits<T>::min)());    return val; }  template <class T> inline T 