>std::ostream &operator<<(std::ostream &, const std::pair<int, int> &)
こんな多重定義をしてはならんと思うのは漏れだけ?