public Instance GetInstance(string path) { var instances = getInstances(); return instances.Where(x => isSameInstance(x.Key, path) && canConnectTo(x)) .OrderByDescending(x => x.Key.Length) .FirstOrDefault(); }