anchor.diff:                      let newResolution = Map.add exploredPackage.Name exploredPackage currentResolution
   
                       state := step (newFilteredVersions,newResolution,Set.add currentRequirement closedRequirements,newOpen)
  +                    match !state with
  +                    | Resolution.Conflict (_,_,stillOpen,_)
  +                        when stillOpen |> Set.exists (fun r -> r = currentRequirement || r.Graph |> List.contains currentRequirement) |> not ->
  +                        forceBreak := true
  +                    | _ -> ()
  +
                       allUnlisted := exploredPackage.Unlisted && !allUnlisted
   
               !allUnlisted,!state
  
positive.code:             let versionsToExplore = ref !compatibleVersions
  
              let shouldTryHarder trial =
                  if isOk() || Seq.isEmpty !versionsToExplore then false else
                  if trial < 1 then true else
                  alreadyContainsConflict() |> not
  
              while shouldTryHarder !trial do
                  trial := !trial + 1
  
negative.code:         verbosefn "  %d packages in resolution. %d requirements left" currentResolution.Count openRequirements.Count
          
          let conflictStatus = Resolution.Conflict(currentResolution,closedRequirements,openRequirements,getVersionsF sources ResolverStrategy.Max groupName)
          
          let currentRequirement =
              let currentMin = ref (Seq.head openRequirements)
              let currentBoost = ref 0
  