anchor.diff:          String.Join(Environment.NewLine, all |> List.map (fun s -> s.TrimEnd()))
   
   module LockFileParser =
  -
       type ParseState = { 
           GroupName : GroupName
           RepositoryType : string option
  
positive.code: 
  
                        if s = "" then 
                            yield sprintf "    %O %s" package.Name versionStr 
                        else
                            yield sprintf "    %O %s - %s" package.Name versionStr s
  
                        for name,v,restrictions in package.Dependencies do
                            let versionStr = 
  
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"
  