boost::numeric::one_or_default
// In header: <boost/accumulators/numeric/functional.hpp> template<typename T> struct one_or_default { };