anchor.diff:            getFileFolders target installModel.LegacyReferenceFileFolders (function Reference.Library lib -> Some lib | _ -> None)
           else results
   
  -    let getTargetsFiles (target : TargetProfile) (installModel:InstallModel) = 
  -        getFileFolders target installModel.TargetsFileFolders 
  +    let getTargetsFiles (target : TargetProfile) (installModel:InstallModel) =
  +        getFileFolders target installModel.TargetsFileFolders
               (function Reference.TargetsFile targetsFile -> Some targetsFile | _ -> None)
   
  -    let getPlatformReferences frameworkIdentifier installModel = 
  +    let getPlatformReferences frameworkIdentifier installModel =
           getLibReferences (SinglePlatform frameworkIdentifier) installModel
   
  -    let getFrameworkAssembliesLazy installModel = 
  +    let getFrameworkAssembliesLazy installModel =
           lazy ([ for lib in getReferenceFolders installModel do
                       yield! lib.Files.GetFrameworkAssemblies()]
                 |> Set.ofList)
   
  -    let getLibReferencesLazy installModel = 
  +    let getLibReferencesLazy installModel =
           lazy ([ for lib in getReferenceFolders installModel do
  -                    yield! lib.Files.References] 
  +                    yield! lib.Files.References]
                 |> Set.ofList)
   
  -    let getTargetsFilesLazy (installModel:InstallModel) = 
  +    let getTargetsFilesLazy (installModel:InstallModel) =
           lazy ([ for lib in installModel.TargetsFileFolders do
  -                    yield! lib.Files.References] 
  +                    yield! lib.Files.References]
                 |> Set.ofList)
   
  -    let removeIfCompletelyEmpty (this:InstallModel) = 
  -        if Set.isEmpty (getFrameworkAssembliesLazy this |> force) 
  +    let removeIfCompletelyEmpty (this:InstallModel) =
  +        if Set.isEmpty (getFrameworkAssembliesLazy this |> force)
            && Set.isEmpty (getLibReferencesLazy this |> force)
  -         && Set.isEmpty (getTargetsFilesLazy this |> force) 
  +         && Set.isEmpty (getTargetsFilesLazy this |> force)
            && List.isEmpty this.Analyzers then
               emptyModel this.PackageName this.PackageVersion
           else
               this
   
       let calcLibFoldersG extract packageName libs =
  -       libs 
  +       libs
           |> List.choose (extract packageName)
  -        |> List.distinct 
  -        |> List.sort 
  -        |> PlatformMatching.getSupportedTargetProfiles 
  +        |> List.distinct
  +        |> List.sort
  +        |> PlatformMatching.getSupportedTargetProfiles
           |> Seq.map (fun entry -> { Name = entry.Key; Targets = entry.Value; Files = InstallFiles.empty })
           |> Seq.toList
   
  
positive.code:         |> Set.map (fun r -> r.FrameworkReferenceName)
          |> Seq.choose id
  
      let mergeWith (that:InstallFiles) (installFiles:InstallFiles) = 
          { installFiles with 
              References = Set.union that.References installFiles.References
              ContentFiles = Set.union that.ContentFiles installFiles.ContentFiles }
  
  type InstallFiles with
      member this.AddReference lib = InstallFiles.addReference  lib this
      member this.AddTargetsFile targetsFile = InstallFiles.addTargetsFile targetsFile this
      member this.AddFrameworkAssemblyReference assemblyName = InstallFiles.addFrameworkAssemblyReference assemblyName this 
      member this.GetFrameworkAssemblies() = InstallFiles.getFrameworkAssemblies this
      member this.MergeWith that = InstallFiles.mergeWith that this
  
  
negative.code:         }
  
  /// Represents the contents of a particular package at a particular version.  Any install-specific actions like Content files, References, Roslyn Analyzers, MsBuild targets are represented here.
  type InstallModel =
      { PackageName : PackageName
        PackageVersion : SemVerInfo
        LegacyReferenceFileFolders : LibFolder list
  