private static List<RouteArrivalsSummary> ToRouteArrivalsSummaries(List<string> routeNames,
Dictionary<string, List<BusArrivalTime>> stopArrivals, DateTimeOffset currentTime)
{
var arrivalsSummaries =
routeNames.Select(routeName =>
new KeyValuePair<string, List<BusArrivalTime>>(routeName,
stopArrivals.ContainsKey(routeName) ? stopArrivals[routeName] : new List<BusArrivalTime>()))
.OrderBy(kvp => kvp.Value.DefaultIfEmpty(ARRIVAL_TIME_SEED).Min())
.Select(kvp => new RouteArrivalsSummary(routeName: kvp.Key,
routeArrivalTimes: kvp.Value, currentTime: currentTime))
.ToList();
return arrivalsSummaries;
}
}