anchor.diff:              exploredPackages.Add((dependency.Name,version),explored)
               explored
   
  -    let rec step (filteredVersions:Map<PackageName, (SemVerInfo list * bool)>,selectedPackageVersions:ResolvedPackage list,closedRequirements:Set<PackageRequirement>,openRequirements:Set<PackageRequirement>) =
  +    let rec step (filteredVersions:Map<PackageName, (SemVerInfo list * bool)>,selectedPackageVersions:Set<ResolvedPackage>,closedRequirements:Set<PackageRequirement>,openRequirements:Set<PackageRequirement>) =
           if Set.isEmpty openRequirements then
               // we're done. re-check if we have a valid resolution and return it
               let isOk =
  
positive.code:             | true,Resolution.Conflict(_) -> tryToImprove true |> snd
              | _,x-> x
  
      step (Map.empty, [], Set.empty, rootDependencies)
negative.code: [<RequireQualifiedAccess>]
  type Resolution =
  | Ok of PackageResolution
  | Conflict of Set<ResolvedPackage> * Set<PackageRequirement> * Set<PackageRequirement> * (PackageName -> SemVerInfo seq)
      with
      member this.GetModelOrFail() =
          match this with
  