am&gt;

////////////////////////////////////////////////////////////////////////////////

namespace stlplus
{

  template&lt;typename K, typename T, typename H, typename E, typename KS, typename TS&gt;
  void print_hash(std::ostream&amp; device,
                  const hash&lt;K,T,H,E&gt;&amp; values,
                  KS key_print_fn,
                  TS value_print_fn,
                  const std::string&amp; pair_separator = &quot;:&quot;,
                  const std::string&amp; separator = &quot;,&quo