public String GetWidestComponent() { GoRN gorn = new GoRN(); double minWidth = this.Elements.OrderBy(_ => - _.Value.Width).First().Value.Width; var smallestComponents = this.Elements .Where(kvp => Math.Abs(kvp.Value.Width - minWidth) < Interval.MinWidth) .Select(kvp => kvp.Key) .ToList(); return(gorn.GetFromSeries(smallestComponents, 1, false).First()); }