anchor.diff:                                           else if entry.FullName.StartsWith("META-INF") then entry.FullName :: acc
                                            else acc) [] archive.Entries
                                    toBeDeleted |> Seq.iter (fun res -> archive.GetEntry(res).Delete()))
  -// Generate new meta data information
  +!>"Generate new meta data information"
   loopDir TempDirectory |> Seq.iter (fun dir -> 
                                loopFiles dir |> Seq.iter (fun file -> 
                                                     let dirInfo = new DirectoryInfo(Path.GetDirectoryName(file))
                                                     let targetFileName = ConvertNamingConvention(dirInfo.Name)
                                                     let targetPath = ServicesDirectory <!!> targetFileName
                                                     File.AppendAllLines(targetPath, CreateServiceFile(file))))
  -// Create meta data jar
  +!>"Create meta data jar"
   ZipFile.CreateFromDirectory(MetaDirectory, LuceneDirectory <!!> "Metadata.jar")
   loopFiles LibSrcDirectory |> Seq.iter (fun f -> File.Copy(f, LibTargetDirectory <!!> (Path.GetFileName(f))))
  -
  -let CreateFatJar() = 
  -    loopFiles LuceneDirectory |> Seq.iter (fun x -> ZipFile.ExtractToDirectory(x, MetaDirectory))
  -    ZipFile.CreateFromDirectory(MetaDirectory, WorkDirectory <!!> "FlexLucene.jar")
  -
  -!>"Execute ProGuard pass 1"
  -!>"Move proguard.cfg to work directory"
  +!>"Execute ProGuard"
  +!>>"Move proguard.cfg to work directory"
   File.Copy(RootDirectory <!!> "proguard.cfg", WorkDirectory <!!> "proguard.cfg")
  -cmdExec """-jar ProGuard.jar @work\proguard.cfg"""
  +javaExec """-jar ProGuard.jar @work\proguard.cfg"""
   
   let GetIkvmBuildString() = 
       let sb = new System.Text.StringBuilder()
  
positive.code: #r "dll/Mono.Cecil.Rocks.dll"
  
  open Mono.Cecil
  open System
  open System.Diagnostics
  open System.IO
  open System.IO.Compression
  open System.Linq
  open System.ComponentModel
  open Mono.Cecil.Cil
  
  // Generic helpers
  let (<!!>) (path1 : string) (path2 : string) = Path.Combine([| path1; path2 |])
  
negative.code: let VersionPatchPath = RootDirectory <!!> "verpatch.exe"
  let LibSrcDirectory = RootDirectory <!!> "Lib"
  let LibTargetDirectory = WorkDirectory <!!> "Lib" |> CreateAndEmptyDirectory
  let FlexSearchJar = RootDirectory <!!> "FlexSearch.Codecs"
  let TempDirectory = WorkDirectory <!!> "Temp" |> CreateAndEmptyDirectory
  let MetaDirectory = WorkDirectory <!!> "Meta" |> CreateAndEmptyDirectory
  let ServicesDirectory = MetaDirectory <!!> @"META-INF\services" |> CreateAndEmptyDirectory
  