anchor.diff:                  "  Please try to relax some conditions."
               |> failwithf "%s"
   
  +    member this.IsDone =
  +        match this with
  +        | Resolution.Ok _ -> true
  +        | _ -> false
  +
   let calcOpenRequirements (exploredPackage:ResolvedPackage,globalFrameworkRestrictions,(versionToExplore,_),dependency,resolverStep:ResolverStep) =
       let dependenciesByName =
           // there are packages which define multiple dependencies to the same package
  
positive.code:                                         forceBreak := true
                                  | _ -> ()                            
  
                      if not !useUnlisted && !hasUnlisted && not (isOk()) then
                          useUnlisted := true
                      else
                          ready := true
  
negative.code:                     let trial = ref 0
                      let forceBreak = ref false
              
                      let versionsToExplore = ref compatibleVersions
  
                      let shouldTryHarder trial =
                          if !forceBreak then false else
                          if (!state).IsDone || Seq.isEmpty !versionsToExplore then false else
                          if trial < 1 then true else
                          conflicts |> Set.isEmpty
  
  