const TValue get(const TId id) const final { try { const TValue& value = m_vector.at(id); if (value == osmium::index::empty_value<TValue>()) { not_found_error(id); } return value; } catch (std::out_of_range&) { not_found_error(id); } }