#pragma once #include #include template struct std::hash> { auto operator() (const std::array& key) const { auto hasher = std::hash{}; auto result = std::size_t{}; for (const auto& element : key) { result = result * 31 + hasher(element); } return result; } };