7     template<
class T> 
inline void hash_combine(std::size_t& 
seed, 
const T& v)
 
    9       seed ^= std::hash<T>()(v) + 0x9e3779b9 + (seed<<6) + (seed>>2);
 
   16       static void apply(
size_t& 
seed, 
const Tuple& tuple)
 
   18         HashValueImpl<Tuple, Index-1>::apply(seed, tuple);
 
   19         hash_combine(seed, std::get<Index>(tuple));
 
   23     template<
class Tuple> 
struct HashValueImpl<
Tuple, 0>
 
   25       static void apply(
size_t& 
seed, 
const Tuple& tuple)
 
   27         hash_combine(seed, std::get<0>(tuple));
 
   32   template<
class... TT> 
struct hash<
std::tuple<TT...>>
 
   37       HashValueImpl<std::tuple<TT...> >::apply(seed, tt);
 
double std(const std::vector< short > &wf, const double ped_mean, size_t start, size_t nsample)
size_t operator()(const std::tuple< TT...> &tt) const