public static ITraversable Find(this ITraversable item, EpubPath path) { ITraversable result = item; while (path.ContainsKeys && result != null) { result = result.Child(path.FirstKey); path = path.Rest; } return(result); }