anchor.diff:  
                             let restrictions = filterRestrictions options.Settings.FrameworkRestrictions restrictions |> getExplicitRestriction
                             if FrameworkRestriction.NoRestriction = restrictions || restrictions = getExplicitRestriction options.Settings.FrameworkRestrictions then
  -                            yield sprintf "      %O %s" name versionStr
  +                            yield sprintf "      %s %s" (writePackageName name) versionStr
                             else
  -                            yield sprintf "      %O %s - restriction: %O" name versionStr restrictions]
  +                            yield sprintf "      %s %s - restriction: %O" (writePackageName name) versionStr restrictions]
       
           String.Join(Environment.NewLine, all |> List.map (fun s -> s.TrimEnd()))
   
  
positive.code:         String.Join(Environment.NewLine, all |> List.map (fun s -> s.TrimEnd()))
  
  module LockFileParser =
  
      type ParseState = { 
          GroupName : GroupName
          RepositoryType : string option
  
negative.code:         | Some r ->
              Some (PackageInfo.from r x.Options.Settings)
          | None -> None
  
  module LockFileSerializer =
      let packageNames = System.Collections.Concurrent.ConcurrentDictionary<string,string>()
      let writePackageName (name:PackageName) =
          let packageName = name.ToString()
          match packageNames.TryGetValue(packageName.ToLower()) with
          | true, x -> x
          | _ -> packageName
  
      /// [omit]
      let serializeOptionsAsLines options = [
          if options.Strict then yield "REFERENCES: STRICT"
  