private IList<LapTimeEntry> KeepBetterOnes(IEnumerable<LapTimeEntry> entries) {
var result = new List<LapTimeEntry>();
foreach (var entry in entries) {
var existingIndex = result.FindIndex(x => x.Same(entry));
if (existingIndex != -1) {
var existing = result[existingIndex];
if (existing.LapTime > entry.LapTime) {
result.RemoveAt(existingIndex);
} else {
continue;
}
}
result.Add(entry);
}
return result;
}