static Repository toMapRepository(const HardCodedMap& map){ assert(checkRectangularity(map)); assert(map.size()<(numeric_limits<Repository::size_type>::max)()); assert(map.empty() || map[0].size()<(numeric_limits<Dimension::size_type>::max)()); assert(map.empty() || (!map[0].empty())); Repository result(map.size()); transform(map, result.begin(), [](const HardCodedMapDimension& line){ Dimension result; result.reserve(line.size()); transform(line, back_inserter(result), charToMapItem); return result; }); return result; }