diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,106 @@
+0.7
+---
+* Move absRel and fileDir out of their classes.
+  A problem would arise if someone writes
+    import System.Path (AbsRelClass(absRel))
+  He would have to replace it by
+    import System.Path (AbsRelClass, absRel)
+
+* Monoid instance for Path.RelDir
+  Requires helper classes IsRel, IsDir.
+  IsAbs and IsFile added for completeness.
+
+* Declare infix precedences of </>, <.> and <++> such that we can write:
+    dir0 </> dir1 </> dir2 </> base <++> "-foo" <++> "-bar" <.> "tar" <.> "gz"
+  This is similar to the fixities in the 'filepath' package,
+  but differs slightly
+  since in our package paths and extensions have different types.
+
+* Import packages 'transformers' and 'utility-ht'
+  that allow for some simplifications.
+
+* Deprecate asPath,
+    asRelFile, asRelDir, asAbsFile, asAbsDir,
+    asRelPath, asAbsPath, asFilePath, asDirPath
+
+* Recommended are now the checking constructors 'path', maybePath, parsePath,
+    relFile, relDir, absFile, absDir,
+    relPath, absPath, filePath, dirPath
+
+* replace IsString instance for OverloadedStrings
+  by an instance that cannot be implemented.
+
+* getDirectoryContents is no longer synonym to relDirectoryContents.
+  Instead it returns the list of all directory objects as RelFileOrDir.
+  This is closer to the getDirectoryContents function
+  from the 'directory' package.
+
+* clarify meaning of AbsRel and FileDir tags of a path
+
+* clarify meaning of drive-relative paths on Windows
+
+* clarify handling of file system links
+
+0.6
+---
+* joinPath: restrict to RelPath and atomic path components
+
+* Add type class constraints and restrict types
+  in order to make the functions work with the new datatype.
+  E.g. we need to fix the type to FilePath
+  wherever a function requires a non-empty path.
+
+* Add support for MS Windows paths with leading drive labels
+
+0.5.5
+-----
+* AbsRelClass, FileDirClass: turn into closed-world classes.
+  Strict accordance to PVP would require to bump version to 0.6,
+  but since the user cannot write instances of this class,
+  we can hardly break code.
+
+* instance {Show, Read} Path now emit and parse valid Haskell expressions
+
+* IO.withFile restricted to FilePath
+  This changes API but it should only break buggy code.
+
+0.5.4.3
+-------
+* Make test suite static part of the source code,
+  but maintain a program to update the test suite to changed tests.
+
+0.5.4.1
+-------
+* Merge git back to darcs, continue on hub.darcs.net
+
+0.5.4
+-----
+* Migrated from darcs to git (on GitHub)
+
+0.5.3
+-----
+* Upgrades + changes for GHC 7.6.1 - by Ben Millwood
+
+0.5.0
+-----
+* Added System.Path.Windows and System.Path.Posix modules. These are modelled on the System.FilePath approach to supporting the two styles of path.
+
+0.0.2
+-----
+* Split System.Path.Directory into its own module
+* Implemented covers for all the remaining System.Directory functions
+* Renamed 'hasExtension' to 'hasAnExtension', and added new 'hasExtension' fn which checks for a given extension
+* Renamed the '...FileOrDir...' functions to be 'generic...' (thanks to Neil Mitchell for the suggestion!)
+* Added support for OverloadedStrings
+* Renamed the 'mk...' unchecked construction functions to 'as...' to better reflect what they do
+* Added: makeAbsolute, makeAbsoluteFromCwd, genericMakeAbsolute, genericMakeAbsoluteFromCwd
+* Added: mkAbsPath, mkAbsPathFromCwd
+* Added System.Path.IO to cover System.IO
+* Made the internal 'Path' type strict
+* Removed 'splitDirectories' as it serves no purpose not covered by 'splitPath'
+* Changed behaviour of 'getDirectoryContents' to return relative paths
+* Fixed the type of 'setCurrentDirectory'
+
+0.0.1
+-----
+Initial Release
diff --git a/pathtype.cabal b/pathtype.cabal
--- a/pathtype.cabal
+++ b/pathtype.cabal
@@ -1,5 +1,5 @@
 Name:                pathtype
-Version:             0.7
+Version:             0.7.0.1
 Synopsis:            Type-safe replacement for System.FilePath etc
 Description:
   This package provides type-safe access to filepath manipulations.
@@ -209,6 +209,7 @@
 Build-Type:          Simple
 Cabal-Version:       >=1.8
 Extra-Source-Files:
+  CHANGELOG
   test/TestTemplate.hs
   posix/System/Path/Host.hs
   windows/System/Path/Host.hs
@@ -220,7 +221,7 @@
   Location: http://hub.darcs.net/thielema/pathtype/
 
 Source-Repository this
-  Tag:      0.7
+  Tag:      0.7.0.1
   Type:     darcs
   Location: http://hub.darcs.net/thielema/pathtype/
 
diff --git a/test/TestResult.hs b/test/TestResult.hs
--- a/test/TestResult.hs
+++ b/test/TestResult.hs
@@ -12,553 +12,553 @@
 results ::
   (Path.AbsRelClass ar) => Char -> Posix.FilePath ar -> [(String, Bool)]
 results a x =
-  {-# LINE 355 "src/System/Path/Internal.hs" #-}
+  {-# LINE 353 "src/System/Path/Internal.hs" #-}
   ("Path.pathMap (map toLower) (absDir \"/tmp/Reports/SpreadSheets\") == Posix.absDir \"/tmp/reports/spreadsheets\"",
       Path.pathMap (map toLower) (absDir "/tmp/Reports/SpreadSheets") == Posix.absDir "/tmp/reports/spreadsheets") :
-  {-# LINE 485 "src/System/Path/Internal.hs" #-}
-  ("show (Posix.rootDir </> relDir \"bla\" </> relFile \"blub\") == \"rootDir </> relDir \\\"bla\\\" </> relFile \\\"blub\\\"\"",
-      show (Posix.rootDir </> relDir "bla" </> relFile "blub") == "rootDir </> relDir \"bla\" </> relFile \"blub\"") :
-  {-# LINE 486 "src/System/Path/Internal.hs" #-}
-  ("show (Just (Posix.rootDir </> relDir \"bla\" </> relFile \"blub\")) == \"Just (rootDir </> relDir \\\"bla\\\" </> relFile \\\"blub\\\")\"",
-      show (Just (Posix.rootDir </> relDir "bla" </> relFile "blub")) == "Just (rootDir </> relDir \"bla\" </> relFile \"blub\")") :
-  {-# LINE 487 "src/System/Path/Internal.hs" #-}
-  ("show (Posix.currentDir </> relDir \"bla\" </> relFile \"blub\") == \"currentDir </> relDir \\\"bla\\\" </> relFile \\\"blub\\\"\"",
-      show (Posix.currentDir </> relDir "bla" </> relFile "blub") == "currentDir </> relDir \"bla\" </> relFile \"blub\"") :
-  {-# LINE 488 "src/System/Path/Internal.hs" #-}
-  ("show (Just (Posix.currentDir </> relDir \"bla\" </> relFile \"blub\")) == \"Just (currentDir </> relDir \\\"bla\\\" </> relFile \\\"blub\\\")\"",
-      show (Just (Posix.currentDir </> relDir "bla" </> relFile "blub")) == "Just (currentDir </> relDir \"bla\" </> relFile \"blub\")") :
-  {-# LINE 489 "src/System/Path/Internal.hs" #-}
-  ("show (Windows.absDir \"c:\" </> relDir \"bla\" </> relFile \"blub\") == \"absDir \\\"c:\\\" </> relDir \\\"bla\\\" </> relFile \\\"blub\\\"\"",
-      show (Windows.absDir "c:" </> relDir "bla" </> relFile "blub") == "absDir \"c:\" </> relDir \"bla\" </> relFile \"blub\"") :
   {-# LINE 490 "src/System/Path/Internal.hs" #-}
-  ("show (Just (Windows.absDir \"c:\\\\\" </> relDir \"bla\" </> relFile \"blub\")) == \"Just (absDir \\\"c:\\\\\\\\\\\" </> relDir \\\"bla\\\" </> relFile \\\"blub\\\")\"",
-      show (Just (Windows.absDir "c:\\" </> relDir "bla" </> relFile "blub")) == "Just (absDir \"c:\\\\\" </> relDir \"bla\" </> relFile \"blub\")") :
-  {-# LINE 520 "src/System/Path/Internal.hs" #-}
+  ("show (Posix.rootDir </> relDir \"bla\" </> relFile \"blub\") == \"rootDir </> relPath \\\"bla\\\" </> relPath \\\"blub\\\"\"",
+      show (Posix.rootDir </> relDir "bla" </> relFile "blub") == "rootDir </> relPath \"bla\" </> relPath \"blub\"") :
+  {-# LINE 491 "src/System/Path/Internal.hs" #-}
+  ("show (Just (Posix.rootDir </> relDir \"bla\" </> relFile \"blub\")) == \"Just (rootDir </> relPath \\\"bla\\\" </> relPath \\\"blub\\\")\"",
+      show (Just (Posix.rootDir </> relDir "bla" </> relFile "blub")) == "Just (rootDir </> relPath \"bla\" </> relPath \"blub\")") :
+  {-# LINE 492 "src/System/Path/Internal.hs" #-}
+  ("show (Posix.currentDir </> relDir \"bla\" </> relFile \"blub\") == \"currentDir </> relPath \\\"bla\\\" </> relPath \\\"blub\\\"\"",
+      show (Posix.currentDir </> relDir "bla" </> relFile "blub") == "currentDir </> relPath \"bla\" </> relPath \"blub\"") :
+  {-# LINE 493 "src/System/Path/Internal.hs" #-}
+  ("show (Just (Posix.currentDir </> relDir \"bla\" </> relFile \"blub\")) == \"Just (currentDir </> relPath \\\"bla\\\" </> relPath \\\"blub\\\")\"",
+      show (Just (Posix.currentDir </> relDir "bla" </> relFile "blub")) == "Just (currentDir </> relPath \"bla\" </> relPath \"blub\")") :
+  {-# LINE 494 "src/System/Path/Internal.hs" #-}
+  ("show (Windows.absDir \"c:\" </> relDir \"bla\" </> relFile \"blub\") == \"absDir \\\"c:\\\" </> relPath \\\"bla\\\" </> relPath \\\"blub\\\"\"",
+      show (Windows.absDir "c:" </> relDir "bla" </> relFile "blub") == "absDir \"c:\" </> relPath \"bla\" </> relPath \"blub\"") :
+  {-# LINE 495 "src/System/Path/Internal.hs" #-}
+  ("show (Just (Windows.absDir \"c:\\\\\" </> relDir \"bla\" </> relFile \"blub\")) == \"Just (absDir \\\"c:\\\\\\\\\\\" </> relPath \\\"bla\\\" </> relPath \\\"blub\\\")\"",
+      show (Just (Windows.absDir "c:\\" </> relDir "bla" </> relFile "blub")) == "Just (absDir \"c:\\\\\" </> relPath \"bla\" </> relPath \"blub\")") :
+  {-# LINE 527 "src/System/Path/Internal.hs" #-}
   ("read \"rootDir\" == Posix.rootDir",
       read "rootDir" == Posix.rootDir) :
-  {-# LINE 521 "src/System/Path/Internal.hs" #-}
+  {-# LINE 528 "src/System/Path/Internal.hs" #-}
   ("read \"rootDir\" == Windows.rootDir",
       read "rootDir" == Windows.rootDir) :
-  {-# LINE 522 "src/System/Path/Internal.hs" #-}
+  {-# LINE 529 "src/System/Path/Internal.hs" #-}
   ("read \"currentDir\" == Posix.currentDir",
       read "currentDir" == Posix.currentDir) :
-  {-# LINE 523 "src/System/Path/Internal.hs" #-}
+  {-# LINE 530 "src/System/Path/Internal.hs" #-}
   ("read \"currentDir\" == Windows.currentDir",
       read "currentDir" == Windows.currentDir) :
-  {-# LINE 524 "src/System/Path/Internal.hs" #-}
+  {-# LINE 531 "src/System/Path/Internal.hs" #-}
   ("let path = Posix.rootDir </> relDir \"bla\" </> relFile \"blub\" in read (show path) == path",
       let path = Posix.rootDir </> relDir "bla" </> relFile "blub" in read (show path) == path) :
-  {-# LINE 525 "src/System/Path/Internal.hs" #-}
+  {-# LINE 532 "src/System/Path/Internal.hs" #-}
   ("let path = Just (Posix.rootDir </> relDir \"bla\" </> relFile \"blub\") in read (show path) == path",
       let path = Just (Posix.rootDir </> relDir "bla" </> relFile "blub") in read (show path) == path) :
-  {-# LINE 526 "src/System/Path/Internal.hs" #-}
+  {-# LINE 533 "src/System/Path/Internal.hs" #-}
   ("let path = Posix.currentDir </> relDir \"bla\" </> relFile \"blub\" in read (show path) == path",
       let path = Posix.currentDir </> relDir "bla" </> relFile "blub" in read (show path) == path) :
-  {-# LINE 527 "src/System/Path/Internal.hs" #-}
+  {-# LINE 534 "src/System/Path/Internal.hs" #-}
   ("let path = Just (Posix.currentDir </> relDir \"bla\" </> relFile \"blub\") in read (show path) == path",
       let path = Just (Posix.currentDir </> relDir "bla" </> relFile "blub") in read (show path) == path) :
-  {-# LINE 528 "src/System/Path/Internal.hs" #-}
+  {-# LINE 535 "src/System/Path/Internal.hs" #-}
   ("let path = Windows.rootDir </> relDir \"bla\" </> relFile \"blub\" in read (show path) == path",
       let path = Windows.rootDir </> relDir "bla" </> relFile "blub" in read (show path) == path) :
-  {-# LINE 529 "src/System/Path/Internal.hs" #-}
+  {-# LINE 536 "src/System/Path/Internal.hs" #-}
   ("let path = Just (Windows.rootDir </> relDir \"bla\" </> relFile \"blub\") in read (show path) == path",
       let path = Just (Windows.rootDir </> relDir "bla" </> relFile "blub") in read (show path) == path) :
-  {-# LINE 530 "src/System/Path/Internal.hs" #-}
+  {-# LINE 537 "src/System/Path/Internal.hs" #-}
   ("let path = Windows.absDir \"c:\" </> relDir \"bla\" </> relFile \"blub\" in read (show path) == path",
       let path = Windows.absDir "c:" </> relDir "bla" </> relFile "blub" in read (show path) == path) :
-  {-# LINE 619 "src/System/Path/Internal.hs" #-}
+  {-# LINE 632 "src/System/Path/Internal.hs" #-}
   ("Posix.toString Path.rootDir == \"/\"",
       Posix.toString Path.rootDir == "/") :
-  {-# LINE 620 "src/System/Path/Internal.hs" #-}
+  {-# LINE 633 "src/System/Path/Internal.hs" #-}
   ("Windows.toString Path.rootDir == \"\\\\\"",
       Windows.toString Path.rootDir == "\\") :
-  {-# LINE 630 "src/System/Path/Internal.hs" #-}
+  {-# LINE 643 "src/System/Path/Internal.hs" #-}
   ("Posix.toString Path.currentDir == \".\"",
       Posix.toString Path.currentDir == ".") :
-  {-# LINE 631 "src/System/Path/Internal.hs" #-}
+  {-# LINE 644 "src/System/Path/Internal.hs" #-}
   ("Windows.toString Path.currentDir == \".\"",
       Windows.toString Path.currentDir == ".") :
-  {-# LINE 673 "src/System/Path/Internal.hs" #-}
+  {-# LINE 683 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/\" :: Maybe Posix.AbsDir) == Just \"/\"",
       fmap Posix.toString (Posix.maybePath "/" :: Maybe Posix.AbsDir) == Just "/") :
-  {-# LINE 674 "src/System/Path/Internal.hs" #-}
+  {-# LINE 684 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/\" :: Maybe Posix.AbsFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "/" :: Maybe Posix.AbsFile) == Nothing) :
-  {-# LINE 675 "src/System/Path/Internal.hs" #-}
+  {-# LINE 685 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/\" :: Maybe Posix.RelDir) == Nothing",
       fmap Posix.toString (Posix.maybePath "/" :: Maybe Posix.RelDir) == Nothing) :
-  {-# LINE 676 "src/System/Path/Internal.hs" #-}
+  {-# LINE 686 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/\" :: Maybe Posix.RelFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "/" :: Maybe Posix.RelFile) == Nothing) :
-  {-# LINE 677 "src/System/Path/Internal.hs" #-}
+  {-# LINE 687 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp\" :: Maybe Posix.AbsDir) == Just \"/tmp\"",
       fmap Posix.toString (Posix.maybePath "/tmp" :: Maybe Posix.AbsDir) == Just "/tmp") :
-  {-# LINE 678 "src/System/Path/Internal.hs" #-}
+  {-# LINE 688 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp\" :: Maybe Posix.AbsFile) == Just \"/tmp\"",
       fmap Posix.toString (Posix.maybePath "/tmp" :: Maybe Posix.AbsFile) == Just "/tmp") :
-  {-# LINE 679 "src/System/Path/Internal.hs" #-}
+  {-# LINE 689 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp\" :: Maybe Posix.RelDir) == Nothing",
       fmap Posix.toString (Posix.maybePath "/tmp" :: Maybe Posix.RelDir) == Nothing) :
-  {-# LINE 680 "src/System/Path/Internal.hs" #-}
+  {-# LINE 690 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp\" :: Maybe Posix.RelFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "/tmp" :: Maybe Posix.RelFile) == Nothing) :
-  {-# LINE 681 "src/System/Path/Internal.hs" #-}
+  {-# LINE 691 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp/\" :: Maybe Posix.AbsDir) == Just \"/tmp\"",
       fmap Posix.toString (Posix.maybePath "/tmp/" :: Maybe Posix.AbsDir) == Just "/tmp") :
-  {-# LINE 682 "src/System/Path/Internal.hs" #-}
+  {-# LINE 692 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp/\" :: Maybe Posix.AbsFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "/tmp/" :: Maybe Posix.AbsFile) == Nothing) :
-  {-# LINE 683 "src/System/Path/Internal.hs" #-}
+  {-# LINE 693 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp/\" :: Maybe Posix.RelDir) == Nothing",
       fmap Posix.toString (Posix.maybePath "/tmp/" :: Maybe Posix.RelDir) == Nothing) :
-  {-# LINE 684 "src/System/Path/Internal.hs" #-}
+  {-# LINE 694 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp/\" :: Maybe Posix.RelFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "/tmp/" :: Maybe Posix.RelFile) == Nothing) :
-  {-# LINE 685 "src/System/Path/Internal.hs" #-}
+  {-# LINE 695 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp\" :: Maybe Posix.AbsOrRelFileOrDir) == Just \"/tmp\"",
       fmap Posix.toString (Posix.maybePath "/tmp" :: Maybe Posix.AbsOrRelFileOrDir) == Just "/tmp") :
-  {-# LINE 686 "src/System/Path/Internal.hs" #-}
+  {-# LINE 696 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"/tmp/\" :: Maybe Posix.AbsOrRelFileOrDir) == Just \"/tmp\"",
       fmap Posix.toString (Posix.maybePath "/tmp/" :: Maybe Posix.AbsOrRelFileOrDir) == Just "/tmp") :
-  {-# LINE 687 "src/System/Path/Internal.hs" #-}
+  {-# LINE 697 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"file.txt\" :: Maybe Posix.RelFile) == Just \"file.txt\"",
       fmap Posix.toString (Posix.maybePath "file.txt" :: Maybe Posix.RelFile) == Just "file.txt") :
-  {-# LINE 688 "src/System/Path/Internal.hs" #-}
+  {-# LINE 698 "src/System/Path/Internal.hs" #-}
   ("fmap Posix.toString (Posix.maybePath \"file.txt\" :: Maybe Posix.AbsFile) == Nothing",
       fmap Posix.toString (Posix.maybePath "file.txt" :: Maybe Posix.AbsFile) == Nothing) :
-  {-# LINE 689 "src/System/Path/Internal.hs" #-}
+  {-# LINE 699 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"\\\\tmp\" :: Maybe Windows.AbsDir) == Just \"\\\\tmp\"",
       fmap Windows.toString (Windows.maybePath "\\tmp" :: Maybe Windows.AbsDir) == Just "\\tmp") :
-  {-# LINE 690 "src/System/Path/Internal.hs" #-}
+  {-# LINE 700 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:\\\\tmp\" :: Maybe Windows.AbsDir) == Just \"a:\\\\tmp\"",
       fmap Windows.toString (Windows.maybePath "a:\\tmp" :: Maybe Windows.AbsDir) == Just "a:\\tmp") :
-  {-# LINE 691 "src/System/Path/Internal.hs" #-}
+  {-# LINE 701 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:tmp\" :: Maybe Windows.AbsDir) == Just \"a:tmp\"",
       fmap Windows.toString (Windows.maybePath "a:tmp" :: Maybe Windows.AbsDir) == Just "a:tmp") :
-  {-# LINE 692 "src/System/Path/Internal.hs" #-}
+  {-# LINE 702 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:\\\\\" :: Maybe Windows.AbsDir) == Just \"a:\\\\\"",
       fmap Windows.toString (Windows.maybePath "a:\\" :: Maybe Windows.AbsDir) == Just "a:\\") :
-  {-# LINE 693 "src/System/Path/Internal.hs" #-}
+  {-# LINE 703 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:\" :: Maybe Windows.AbsDir) == Just \"a:\"",
       fmap Windows.toString (Windows.maybePath "a:" :: Maybe Windows.AbsDir) == Just "a:") :
-  {-# LINE 694 "src/System/Path/Internal.hs" #-}
+  {-# LINE 704 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"tmp\" :: Maybe Windows.RelDir) == Just \"tmp\"",
       fmap Windows.toString (Windows.maybePath "tmp" :: Maybe Windows.RelDir) == Just "tmp") :
-  {-# LINE 695 "src/System/Path/Internal.hs" #-}
+  {-# LINE 705 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"\\\\tmp\" :: Maybe Windows.RelDir) == Nothing",
       fmap Windows.toString (Windows.maybePath "\\tmp" :: Maybe Windows.RelDir) == Nothing) :
-  {-# LINE 696 "src/System/Path/Internal.hs" #-}
+  {-# LINE 706 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:\\\\tmp\" :: Maybe Windows.RelDir) == Nothing",
       fmap Windows.toString (Windows.maybePath "a:\\tmp" :: Maybe Windows.RelDir) == Nothing) :
-  {-# LINE 697 "src/System/Path/Internal.hs" #-}
+  {-# LINE 707 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"a:tmp\" :: Maybe Windows.RelDir) == Nothing",
       fmap Windows.toString (Windows.maybePath "a:tmp" :: Maybe Windows.RelDir) == Nothing) :
-  {-# LINE 698 "src/System/Path/Internal.hs" #-}
+  {-# LINE 708 "src/System/Path/Internal.hs" #-}
   ("fmap Windows.toString (Windows.maybePath \"tmp\" :: Maybe Windows.AbsDir) == Nothing",
       fmap Windows.toString (Windows.maybePath "tmp" :: Maybe Windows.AbsDir) == Nothing) :
-  {-# LINE 747 "src/System/Path/Internal.hs" #-}
+  {-# LINE 757 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relFile \"file.txt\") == \"file.txt\"",
       Posix.toString (Posix.relFile "file.txt") == "file.txt") :
-  {-# LINE 748 "src/System/Path/Internal.hs" #-}
+  {-# LINE 758 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relFile \"tmp\") == \"tmp\"",
       Posix.toString (Posix.relFile "tmp") == "tmp") :
-  {-# LINE 754 "src/System/Path/Internal.hs" #-}
+  {-# LINE 764 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relDir \".\") == \".\"",
       Posix.toString (Posix.relDir ".") == ".") :
-  {-# LINE 755 "src/System/Path/Internal.hs" #-}
+  {-# LINE 765 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relDir \"file.txt\") == \"file.txt\"",
       Posix.toString (Posix.relDir "file.txt") == "file.txt") :
-  {-# LINE 756 "src/System/Path/Internal.hs" #-}
+  {-# LINE 766 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relDir \"tmp\") == \"tmp\"",
       Posix.toString (Posix.relDir "tmp") == "tmp") :
-  {-# LINE 762 "src/System/Path/Internal.hs" #-}
+  {-# LINE 772 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absFile \"/file.txt\") == \"/file.txt\"",
       Posix.toString (Posix.absFile "/file.txt") == "/file.txt") :
-  {-# LINE 763 "src/System/Path/Internal.hs" #-}
+  {-# LINE 773 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absFile \"/tmp\") == \"/tmp\"",
       Posix.toString (Posix.absFile "/tmp") == "/tmp") :
-  {-# LINE 769 "src/System/Path/Internal.hs" #-}
+  {-# LINE 779 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absDir \"/file.txt\") == \"/file.txt\"",
       Posix.toString (Posix.absDir "/file.txt") == "/file.txt") :
-  {-# LINE 770 "src/System/Path/Internal.hs" #-}
+  {-# LINE 780 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absDir \"/tmp\") == \"/tmp\"",
       Posix.toString (Posix.absDir "/tmp") == "/tmp") :
-  {-# LINE 835 "src/System/Path/Internal.hs" #-}
+  {-# LINE 845 "src/System/Path/Internal.hs" #-}
   ("Posix.asPath \"/tmp\" == Posix.absDir \"/tmp\"",
       Posix.asPath "/tmp" == Posix.absDir "/tmp") :
-  {-# LINE 836 "src/System/Path/Internal.hs" #-}
+  {-# LINE 846 "src/System/Path/Internal.hs" #-}
   ("Posix.asPath \"file.txt\" == Posix.relFile \"file.txt\"",
       Posix.asPath "file.txt" == Posix.relFile "file.txt") :
-  {-# LINE 837 "src/System/Path/Internal.hs" #-}
+  {-# LINE 847 "src/System/Path/Internal.hs" #-}
   ("Path.isAbsolute (Posix.asAbsDir \"/tmp\")",
       Path.isAbsolute (Posix.asAbsDir "/tmp")) :
-  {-# LINE 838 "src/System/Path/Internal.hs" #-}
+  {-# LINE 848 "src/System/Path/Internal.hs" #-}
   ("Path.isRelative (Posix.asRelDir \"/tmp\")",
       Path.isRelative (Posix.asRelDir "/tmp")) :
-  {-# LINE 839 "src/System/Path/Internal.hs" #-}
+  {-# LINE 849 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asPath \"/tmp\" :: Posix.AbsDir) == \"/tmp\"",
       Posix.toString (Posix.asPath "/tmp" :: Posix.AbsDir) == "/tmp") :
-  {-# LINE 840 "src/System/Path/Internal.hs" #-}
+  {-# LINE 850 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asPath \"/tmp\" :: Posix.RelDir) == \"tmp\"",
       Posix.toString (Posix.asPath "/tmp" :: Posix.RelDir) == "tmp") :
-  {-# LINE 841 "src/System/Path/Internal.hs" #-}
+  {-# LINE 851 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.asPath \"\\\\tmp\" :: Windows.AbsDir) == \"\\\\tmp\"",
       Windows.toString (Windows.asPath "\\tmp" :: Windows.AbsDir) == "\\tmp") :
-  {-# LINE 842 "src/System/Path/Internal.hs" #-}
+  {-# LINE 852 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.asPath \"a:\\\\tmp\" :: Windows.AbsDir) == \"a:\\\\tmp\"",
       Windows.toString (Windows.asPath "a:\\tmp" :: Windows.AbsDir) == "a:\\tmp") :
-  {-# LINE 843 "src/System/Path/Internal.hs" #-}
+  {-# LINE 853 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.asPath \"a:tmp\" :: Windows.AbsDir) == \"a:tmp\"",
       Windows.toString (Windows.asPath "a:tmp" :: Windows.AbsDir) == "a:tmp") :
-  {-# LINE 844 "src/System/Path/Internal.hs" #-}
+  {-# LINE 854 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.asPath \"tmp\" :: Windows.RelDir) == \"tmp\"",
       Windows.toString (Windows.asPath "tmp" :: Windows.RelDir) == "tmp") :
-  {-# LINE 852 "src/System/Path/Internal.hs" #-}
+  {-# LINE 862 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelFile \"file.txt\") == \"file.txt\"",
       Posix.toString (Posix.asRelFile "file.txt") == "file.txt") :
-  {-# LINE 853 "src/System/Path/Internal.hs" #-}
+  {-# LINE 863 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelFile \"/file.txt\") == \"file.txt\"",
       Posix.toString (Posix.asRelFile "/file.txt") == "file.txt") :
-  {-# LINE 854 "src/System/Path/Internal.hs" #-}
+  {-# LINE 864 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelFile \"tmp\") == \"tmp\"",
       Posix.toString (Posix.asRelFile "tmp") == "tmp") :
-  {-# LINE 855 "src/System/Path/Internal.hs" #-}
+  {-# LINE 865 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelFile \"/tmp\") == \"tmp\"",
       Posix.toString (Posix.asRelFile "/tmp") == "tmp") :
-  {-# LINE 861 "src/System/Path/Internal.hs" #-}
+  {-# LINE 871 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelDir \".\") == \".\"",
       Posix.toString (Posix.asRelDir ".") == ".") :
-  {-# LINE 862 "src/System/Path/Internal.hs" #-}
+  {-# LINE 872 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelDir \"file.txt\") == \"file.txt\"",
       Posix.toString (Posix.asRelDir "file.txt") == "file.txt") :
-  {-# LINE 863 "src/System/Path/Internal.hs" #-}
+  {-# LINE 873 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelDir \"/file.txt\") == \"file.txt\"",
       Posix.toString (Posix.asRelDir "/file.txt") == "file.txt") :
-  {-# LINE 864 "src/System/Path/Internal.hs" #-}
+  {-# LINE 874 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelDir \"tmp\") == \"tmp\"",
       Posix.toString (Posix.asRelDir "tmp") == "tmp") :
-  {-# LINE 865 "src/System/Path/Internal.hs" #-}
+  {-# LINE 875 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asRelDir \"/tmp\") == \"tmp\"",
       Posix.toString (Posix.asRelDir "/tmp") == "tmp") :
-  {-# LINE 871 "src/System/Path/Internal.hs" #-}
+  {-# LINE 881 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asAbsFile \"/file.txt\") == \"/file.txt\"",
       Posix.toString (Posix.asAbsFile "/file.txt") == "/file.txt") :
-  {-# LINE 872 "src/System/Path/Internal.hs" #-}
+  {-# LINE 882 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asAbsFile \"/tmp\") == \"/tmp\"",
       Posix.toString (Posix.asAbsFile "/tmp") == "/tmp") :
-  {-# LINE 878 "src/System/Path/Internal.hs" #-}
+  {-# LINE 888 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asAbsDir \"/file.txt\") == \"/file.txt\"",
       Posix.toString (Posix.asAbsDir "/file.txt") == "/file.txt") :
-  {-# LINE 879 "src/System/Path/Internal.hs" #-}
+  {-# LINE 889 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.asAbsDir \"/tmp\") == \"/tmp\"",
       Posix.toString (Posix.asAbsDir "/tmp") == "/tmp") :
-  {-# LINE 916 "src/System/Path/Internal.hs" #-}
+  {-# LINE 926 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel \"/tmp\" == Left (Posix.absDir \"/tmp\")",
       Path.mkPathAbsOrRel "/tmp" == Left (Posix.absDir "/tmp")) :
-  {-# LINE 917 "src/System/Path/Internal.hs" #-}
+  {-# LINE 927 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel  \"tmp\" == Right (Posix.relDir \"tmp\")",
       Path.mkPathAbsOrRel  "tmp" == Right (Posix.relDir "tmp")) :
-  {-# LINE 918 "src/System/Path/Internal.hs" #-}
+  {-# LINE 928 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel \"\\\\tmp\" == Left (Windows.absDir \"\\\\tmp\")",
       Path.mkPathAbsOrRel "\\tmp" == Left (Windows.absDir "\\tmp")) :
-  {-# LINE 919 "src/System/Path/Internal.hs" #-}
+  {-# LINE 929 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel \"d:\\\\tmp\" == Left (Windows.absDir \"d:\\\\tmp\")",
       Path.mkPathAbsOrRel "d:\\tmp" == Left (Windows.absDir "d:\\tmp")) :
-  {-# LINE 920 "src/System/Path/Internal.hs" #-}
+  {-# LINE 930 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel \"d:tmp\" == Left (Windows.absDir \"d:tmp\")",
       Path.mkPathAbsOrRel "d:tmp" == Left (Windows.absDir "d:tmp")) :
-  {-# LINE 921 "src/System/Path/Internal.hs" #-}
+  {-# LINE 931 "src/System/Path/Internal.hs" #-}
   ("Path.mkPathAbsOrRel \"tmp\" == Right (Windows.relDir \"tmp\")",
       Path.mkPathAbsOrRel "tmp" == Right (Windows.relDir "tmp")) :
-  {-# LINE 951 "src/System/Path/Internal.hs" #-}
+  {-# LINE 961 "src/System/Path/Internal.hs" #-}
   ("Path.mkAbsPath (absDir \"/tmp\") \"foo.txt\" == Posix.absFile \"/tmp/foo.txt\"",
       Path.mkAbsPath (absDir "/tmp") "foo.txt" == Posix.absFile "/tmp/foo.txt") :
-  {-# LINE 952 "src/System/Path/Internal.hs" #-}
+  {-# LINE 962 "src/System/Path/Internal.hs" #-}
   ("Path.mkAbsPath (absDir \"/tmp\") \"/etc/foo.txt\" == Posix.absFile \"/etc/foo.txt\"",
       Path.mkAbsPath (absDir "/tmp") "/etc/foo.txt" == Posix.absFile "/etc/foo.txt") :
-  {-# LINE 1089 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1099 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absDir \"/tmp\" </> Posix.relFile \"file.txt\") == \"/tmp/file.txt\"",
       Posix.toString (Posix.absDir "/tmp" </> Posix.relFile "file.txt") == "/tmp/file.txt") :
-  {-# LINE 1090 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1100 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.absDir \"/tmp\" </> Posix.relDir \"dir\" </> Posix.relFile \"file.txt\") == \"/tmp/dir/file.txt\"",
       Posix.toString (Posix.absDir "/tmp" </> Posix.relDir "dir" </> Posix.relFile "file.txt") == "/tmp/dir/file.txt") :
-  {-# LINE 1091 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1101 "src/System/Path/Internal.hs" #-}
   ("Posix.toString (Posix.relDir \"dir\" </> Posix.relFile \"file.txt\") == \"dir/file.txt\"",
       Posix.toString (Posix.relDir "dir" </> Posix.relFile "file.txt") == "dir/file.txt") :
-  {-# LINE 1092 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1102 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.absDir \"\\\\tmp\" </> Windows.relFile \"file.txt\") == \"\\\\tmp\\\\file.txt\"",
       Windows.toString (Windows.absDir "\\tmp" </> Windows.relFile "file.txt") == "\\tmp\\file.txt") :
-  {-# LINE 1093 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1103 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.absDir \"c:\\\\tmp\" </> Windows.relFile \"file.txt\") == \"c:\\\\tmp\\\\file.txt\"",
       Windows.toString (Windows.absDir "c:\\tmp" </> Windows.relFile "file.txt") == "c:\\tmp\\file.txt") :
-  {-# LINE 1094 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1104 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.absDir \"c:tmp\" </> Windows.relFile \"file.txt\") == \"c:tmp\\\\file.txt\"",
       Windows.toString (Windows.absDir "c:tmp" </> Windows.relFile "file.txt") == "c:tmp\\file.txt") :
-  {-# LINE 1095 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1105 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.absDir \"c:\\\\\" </> Windows.relDir \"tmp\" </> Windows.relFile \"file.txt\") == \"c:\\\\tmp\\\\file.txt\"",
       Windows.toString (Windows.absDir "c:\\" </> Windows.relDir "tmp" </> Windows.relFile "file.txt") == "c:\\tmp\\file.txt") :
-  {-# LINE 1096 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1106 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.absDir \"c:\" </> Windows.relDir \"tmp\" </> Windows.relFile \"file.txt\") == \"c:tmp\\\\file.txt\"",
       Windows.toString (Windows.absDir "c:" </> Windows.relDir "tmp" </> Windows.relFile "file.txt") == "c:tmp\\file.txt") :
-  {-# LINE 1097 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1107 "src/System/Path/Internal.hs" #-}
   ("Windows.toString (Windows.relDir \"dir\" </> Windows.relFile \"file.txt\") == \"dir\\\\file.txt\"",
       Windows.toString (Windows.relDir "dir" </> Windows.relFile "file.txt") == "dir\\file.txt") :
-  {-# LINE 1124 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1134 "src/System/Path/Internal.hs" #-}
   ("Path.addExtension (relFile \"file.txt\") \"bib\" == Posix.relFile \"file.txt.bib\"",
       Path.addExtension (relFile "file.txt") "bib" == Posix.relFile "file.txt.bib") :
-  {-# LINE 1125 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1135 "src/System/Path/Internal.hs" #-}
   ("Path.addExtension (relFile \"file.\") \".bib\" == Posix.relFile \"file..bib\"",
       Path.addExtension (relFile "file.") ".bib" == Posix.relFile "file..bib") :
-  {-# LINE 1126 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1136 "src/System/Path/Internal.hs" #-}
   ("Path.addExtension (relFile \"file\") \".bib\" == Posix.relFile \"file.bib\"",
       Path.addExtension (relFile "file") ".bib" == Posix.relFile "file.bib") :
-  {-# LINE 1127 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1137 "src/System/Path/Internal.hs" #-}
   ("Path.addExtension Path.emptyFile \"bib\" == Posix.relFile \".bib\"",
       Path.addExtension Path.emptyFile "bib" == Posix.relFile ".bib") :
-  {-# LINE 1128 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1138 "src/System/Path/Internal.hs" #-}
   ("Path.addExtension Path.emptyFile \".bib\" == Posix.relFile \".bib\"",
       Path.addExtension Path.emptyFile ".bib" == Posix.relFile ".bib") :
-  {-# LINE 1129 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1139 "src/System/Path/Internal.hs" #-}
   ("Path.takeFileName (Path.addExtension Path.emptyFile \"ext\") == Posix.relFile \".ext\"",
       Path.takeFileName (Path.addExtension Path.emptyFile "ext") == Posix.relFile ".ext") :
-  {-# LINE 1144 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1154 "src/System/Path/Internal.hs" #-}
   ("Path.dropExtension x == fst (Path.splitExtension x)",
       Path.dropExtension x == fst (Path.splitExtension x)) :
-  {-# LINE 1150 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1160 "src/System/Path/Internal.hs" #-}
   ("not $ Path.hasAnExtension (Path.dropExtensions x)",
       not $ Path.hasAnExtension (Path.dropExtensions x)) :
-  {-# LINE 1161 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1171 "src/System/Path/Internal.hs" #-}
   ("Path.replaceExtension (relFile \"file.txt\") \".bob\" == Posix.relFile \"file.bob\"",
       Path.replaceExtension (relFile "file.txt") ".bob" == Posix.relFile "file.bob") :
-  {-# LINE 1162 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1172 "src/System/Path/Internal.hs" #-}
   ("Path.replaceExtension (relFile \"file.txt\") \"bob\" == Posix.relFile \"file.bob\"",
       Path.replaceExtension (relFile "file.txt") "bob" == Posix.relFile "file.bob") :
-  {-# LINE 1163 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1173 "src/System/Path/Internal.hs" #-}
   ("Path.replaceExtension (relFile \"file\") \".bob\" == Posix.relFile \"file.bob\"",
       Path.replaceExtension (relFile "file") ".bob" == Posix.relFile "file.bob") :
-  {-# LINE 1164 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1174 "src/System/Path/Internal.hs" #-}
   ("Path.replaceExtension (relFile \"file.txt\") \"\" == Posix.relFile \"file\"",
       Path.replaceExtension (relFile "file.txt") "" == Posix.relFile "file") :
-  {-# LINE 1165 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1175 "src/System/Path/Internal.hs" #-}
   ("Path.replaceExtension (relFile \"file.fred.bob\") \"txt\" == Posix.relFile \"file.fred.txt\"",
       Path.replaceExtension (relFile "file.fred.bob") "txt" == Posix.relFile "file.fred.txt") :
-  {-# LINE 1182 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1192 "src/System/Path/Internal.hs" #-}
   ("uncurry (<.>) (Path.splitExtension x) == x",
       uncurry (<.>) (Path.splitExtension x) == x) :
-  {-# LINE 1183 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1193 "src/System/Path/Internal.hs" #-}
   ("uncurry Path.addExtension (Path.splitExtension x) == x",
       uncurry Path.addExtension (Path.splitExtension x) == x) :
-  {-# LINE 1184 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1194 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file.txt\") == (Posix.relFile \"file\",\".txt\")",
       Path.splitExtension (relFile "file.txt") == (Posix.relFile "file",".txt")) :
-  {-# LINE 1185 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1195 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \".bashrc\") == (Posix.emptyFile, \".bashrc\")",
       Path.splitExtension (relFile ".bashrc") == (Posix.emptyFile, ".bashrc")) :
-  {-# LINE 1186 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1196 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file\") == (Posix.relFile \"file\",\"\")",
       Path.splitExtension (relFile "file") == (Posix.relFile "file","")) :
-  {-# LINE 1187 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1197 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file/file.txt\") == (Posix.relFile \"file/file\",\".txt\")",
       Path.splitExtension (relFile "file/file.txt") == (Posix.relFile "file/file",".txt")) :
-  {-# LINE 1188 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1198 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file.txt/boris\") == (Posix.relFile \"file.txt/boris\",\"\")",
       Path.splitExtension (relFile "file.txt/boris") == (Posix.relFile "file.txt/boris","")) :
-  {-# LINE 1189 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1199 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file.txt/boris.ext\") == (Posix.relFile \"file.txt/boris\",\".ext\")",
       Path.splitExtension (relFile "file.txt/boris.ext") == (Posix.relFile "file.txt/boris",".ext")) :
-  {-# LINE 1190 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1200 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtension (relFile \"file/path.txt.bob.fred\") == (Posix.relFile \"file/path.txt.bob\",\".fred\")",
       Path.splitExtension (relFile "file/path.txt.bob.fred") == (Posix.relFile "file/path.txt.bob",".fred")) :
-  {-# LINE 1196 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1206 "src/System/Path/Internal.hs" #-}
   ("Path.splitExtensions (relFile \"file.tar.gz\") == (Posix.relFile \"file\",\".tar.gz\")",
       Path.splitExtensions (relFile "file.tar.gz") == (Posix.relFile "file",".tar.gz")) :
-  {-# LINE 1212 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1222 "src/System/Path/Internal.hs" #-}
   ("Path.takeBaseName (absFile \"/tmp/somedir/myfile.txt\") == Posix.relFile \"myfile\"",
       Path.takeBaseName (absFile "/tmp/somedir/myfile.txt") == Posix.relFile "myfile") :
-  {-# LINE 1213 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1223 "src/System/Path/Internal.hs" #-}
   ("Path.takeBaseName (relFile \"./myfile.txt\") == Posix.relFile \"myfile\"",
       Path.takeBaseName (relFile "./myfile.txt") == Posix.relFile "myfile") :
-  {-# LINE 1214 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1224 "src/System/Path/Internal.hs" #-}
   ("Path.takeBaseName (relFile \"myfile.txt\") == Posix.relFile \"myfile\"",
       Path.takeBaseName (relFile "myfile.txt") == Posix.relFile "myfile") :
-  {-# LINE 1223 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1233 "src/System/Path/Internal.hs" #-}
   ("Path.takeExtension x == snd (Path.splitExtension x)",
       Path.takeExtension x == snd (Path.splitExtension x)) :
-  {-# LINE 1224 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1234 "src/System/Path/Internal.hs" #-}
   ("Path.takeExtension (Path.addExtension x \"ext\") == \".ext\"",
       Path.takeExtension (Path.addExtension x "ext") == ".ext") :
-  {-# LINE 1225 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1235 "src/System/Path/Internal.hs" #-}
   ("Path.takeExtension (Path.replaceExtension x \"ext\") == \".ext\"",
       Path.takeExtension (Path.replaceExtension x "ext") == ".ext") :
-  {-# LINE 1231 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1241 "src/System/Path/Internal.hs" #-}
   ("Path.takeExtensions (Posix.relFile \"file.tar.gz\") == \".tar.gz\"",
       Path.takeExtensions (Posix.relFile "file.tar.gz") == ".tar.gz") :
-  {-# LINE 1237 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1247 "src/System/Path/Internal.hs" #-}
   ("Path.takeFileName (absFile \"/tmp/somedir/myfile.txt\") == Posix.relFile \"myfile.txt\"",
       Path.takeFileName (absFile "/tmp/somedir/myfile.txt") == Posix.relFile "myfile.txt") :
-  {-# LINE 1238 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1248 "src/System/Path/Internal.hs" #-}
   ("Path.takeFileName (relFile \"./myfile.txt\") == Posix.relFile \"myfile.txt\"",
       Path.takeFileName (relFile "./myfile.txt") == Posix.relFile "myfile.txt") :
-  {-# LINE 1239 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1249 "src/System/Path/Internal.hs" #-}
   ("Path.takeFileName (relFile \"myfile.txt\") == Posix.relFile \"myfile.txt\"",
       Path.takeFileName (relFile "myfile.txt") == Posix.relFile "myfile.txt") :
-  {-# LINE 1256 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1266 "src/System/Path/Internal.hs" #-}
   ("      Posix.equalFilePath \"abc/def\" \"abc/def\"",
             Posix.equalFilePath "abc/def" "abc/def") :
-  {-# LINE 1257 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1267 "src/System/Path/Internal.hs" #-}
   ("      Posix.equalFilePath \"abc/def\" \"abc//def\"",
             Posix.equalFilePath "abc/def" "abc//def") :
-  {-# LINE 1258 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1268 "src/System/Path/Internal.hs" #-}
   ("      Posix.equalFilePath \"/tmp/\" \"/tmp\"",
             Posix.equalFilePath "/tmp/" "/tmp") :
-  {-# LINE 1259 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1269 "src/System/Path/Internal.hs" #-}
   ("      Posix.equalFilePath \"/tmp\" \"//tmp\"",
             Posix.equalFilePath "/tmp" "//tmp") :
-  {-# LINE 1260 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1270 "src/System/Path/Internal.hs" #-}
   ("      Posix.equalFilePath \"/tmp\" \"///tmp\"",
             Posix.equalFilePath "/tmp" "///tmp") :
-  {-# LINE 1261 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1271 "src/System/Path/Internal.hs" #-}
   ("not $ Posix.equalFilePath \"abc\" \"def\"",
       not $ Posix.equalFilePath "abc" "def") :
-  {-# LINE 1262 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1272 "src/System/Path/Internal.hs" #-}
   ("not $ Posix.equalFilePath \"/tmp\" \"tmp\"",
       not $ Posix.equalFilePath "/tmp" "tmp") :
-  {-# LINE 1263 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1273 "src/System/Path/Internal.hs" #-}
   ("      Windows.equalFilePath \"abc\\\\def\" \"abc\\\\def\"",
             Windows.equalFilePath "abc\\def" "abc\\def") :
-  {-# LINE 1264 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1274 "src/System/Path/Internal.hs" #-}
   ("      Windows.equalFilePath \"abc\\\\def\" \"abc\\\\\\\\def\"",
             Windows.equalFilePath "abc\\def" "abc\\\\def") :
-  {-# LINE 1265 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1275 "src/System/Path/Internal.hs" #-}
   ("      Windows.equalFilePath \"file\" \"File\"",
             Windows.equalFilePath "file" "File") :
-  {-# LINE 1266 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1276 "src/System/Path/Internal.hs" #-}
   ("      Windows.equalFilePath \"\\\\file\" \"\\\\\\\\file\"",
             Windows.equalFilePath "\\file" "\\\\file") :
-  {-# LINE 1267 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1277 "src/System/Path/Internal.hs" #-}
   ("      Windows.equalFilePath \"\\\\file\" \"\\\\\\\\\\\\file\"",
             Windows.equalFilePath "\\file" "\\\\\\file") :
-  {-# LINE 1268 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1278 "src/System/Path/Internal.hs" #-}
   ("not $ Windows.equalFilePath \"abc\" \"def\"",
       not $ Windows.equalFilePath "abc" "def") :
-  {-# LINE 1269 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1279 "src/System/Path/Internal.hs" #-}
   ("not $ Windows.equalFilePath \"file\" \"dir\"",
       not $ Windows.equalFilePath "file" "dir") :
-  {-# LINE 1282 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1292 "src/System/Path/Internal.hs" #-}
   ("Path.joinPath [\"tmp\",\"someDir\",\"dir\"] == Posix.relDir \"tmp/someDir/dir\"",
       Path.joinPath ["tmp","someDir","dir"] == Posix.relDir "tmp/someDir/dir") :
-  {-# LINE 1283 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1293 "src/System/Path/Internal.hs" #-}
   ("Path.joinPath [\"tmp\",\"someDir\",\"file.txt\"] == Posix.relFile \"tmp/someDir/file.txt\"",
       Path.joinPath ["tmp","someDir","file.txt"] == Posix.relFile "tmp/someDir/file.txt") :
-  {-# LINE 1289 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1299 "src/System/Path/Internal.hs" #-}
   ("Path.normalise (absFile \"/tmp/fred/./jim/./file\") == Posix.absFile \"/tmp/fred/jim/file\"",
       Path.normalise (absFile "/tmp/fred/./jim/./file") == Posix.absFile "/tmp/fred/jim/file") :
-  {-# LINE 1295 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1305 "src/System/Path/Internal.hs" #-}
   ("Path.splitPath (Posix.absDir \"/tmp/someDir/mydir.dir\") == (True, map relDir [\"tmp\",\"someDir\",\"mydir.dir\"], Nothing)",
       Path.splitPath (Posix.absDir "/tmp/someDir/mydir.dir") == (True, map relDir ["tmp","someDir","mydir.dir"], Nothing)) :
-  {-# LINE 1296 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1306 "src/System/Path/Internal.hs" #-}
   ("Path.splitPath (Posix.absFile \"/tmp/someDir/myfile.txt\") == (True, map relDir [\"tmp\",\"someDir\"], Just $ relFile \"myfile.txt\")",
       Path.splitPath (Posix.absFile "/tmp/someDir/myfile.txt") == (True, map relDir ["tmp","someDir"], Just $ relFile "myfile.txt")) :
-  {-# LINE 1315 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1325 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelative (absDir \"/tmp/somedir\") (absFile \"/tmp/somedir/anotherdir/file.txt\") == Posix.relFile \"anotherdir/file.txt\"",
       Path.makeRelative (absDir "/tmp/somedir") (absFile "/tmp/somedir/anotherdir/file.txt") == Posix.relFile "anotherdir/file.txt") :
-  {-# LINE 1316 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1326 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelative (absDir \"/tmp/somedir\") (absDir \"/tmp/somedir/anotherdir/dir\") == Posix.relDir \"anotherdir/dir\"",
       Path.makeRelative (absDir "/tmp/somedir") (absDir "/tmp/somedir/anotherdir/dir") == Posix.relDir "anotherdir/dir") :
-  {-# LINE 1317 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1327 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelative (absDir \"c:\\\\tmp\\\\somedir\") (absFile \"C:\\\\Tmp\\\\SomeDir\\\\AnotherDir\\\\File.txt\") == Windows.relFile \"AnotherDir\\\\File.txt\"",
       Path.makeRelative (absDir "c:\\tmp\\somedir") (absFile "C:\\Tmp\\SomeDir\\AnotherDir\\File.txt") == Windows.relFile "AnotherDir\\File.txt") :
-  {-# LINE 1318 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1328 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelative (absDir \"c:\\\\tmp\\\\somedir\") (absDir \"c:\\\\tmp\\\\somedir\\\\anotherdir\\\\dir\") == Windows.relDir \"anotherdir\\\\dir\"",
       Path.makeRelative (absDir "c:\\tmp\\somedir") (absDir "c:\\tmp\\somedir\\anotherdir\\dir") == Windows.relDir "anotherdir\\dir") :
-  {-# LINE 1319 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1329 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelative (absDir \"c:tmp\\\\somedir\") (absDir \"c:tmp\\\\somedir\\\\anotherdir\\\\dir\") == Windows.relDir \"anotherdir\\\\dir\"",
       Path.makeRelative (absDir "c:tmp\\somedir") (absDir "c:tmp\\somedir\\anotherdir\\dir") == Windows.relDir "anotherdir\\dir") :
-  {-# LINE 1330 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1340 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelativeMaybe (Posix.absDir \"/tmp/somedir\") (absFile \"/tmp/anotherdir/file.txt\") == Nothing",
       Path.makeRelativeMaybe (Posix.absDir "/tmp/somedir") (absFile "/tmp/anotherdir/file.txt") == Nothing) :
-  {-# LINE 1331 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1341 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelativeMaybe (Posix.absDir \"/Tmp\") (absFile \"/tmp/anotherdir/file.txt\") == Nothing",
       Path.makeRelativeMaybe (Posix.absDir "/Tmp") (absFile "/tmp/anotherdir/file.txt") == Nothing) :
-  {-# LINE 1332 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1342 "src/System/Path/Internal.hs" #-}
   ("Path.makeRelativeMaybe (Windows.absDir \"\\\\Tmp\") (absFile \"\\\\tmp\\\\anotherdir\\\\file.txt\") == Just (relFile \"anotherdir\\\\file.txt\")",
       Path.makeRelativeMaybe (Windows.absDir "\\Tmp") (absFile "\\tmp\\anotherdir\\file.txt") == Just (relFile "anotherdir\\file.txt")) :
-  {-# LINE 1346 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1356 "src/System/Path/Internal.hs" #-}
   ("Path.makeAbsolute (absDir \"/tmp\") (relFile \"file.txt\")      == Posix.absFile \"/tmp/file.txt\"",
       Path.makeAbsolute (absDir "/tmp") (relFile "file.txt")      == Posix.absFile "/tmp/file.txt") :
-  {-# LINE 1347 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1357 "src/System/Path/Internal.hs" #-}
   ("Path.makeAbsolute (absDir \"/tmp\") (relFile \"adir/file.txt\") == Posix.absFile \"/tmp/adir/file.txt\"",
       Path.makeAbsolute (absDir "/tmp") (relFile "adir/file.txt") == Posix.absFile "/tmp/adir/file.txt") :
-  {-# LINE 1348 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1358 "src/System/Path/Internal.hs" #-}
   ("Path.makeAbsolute (absDir \"/tmp\") (relDir  \"adir/dir\")      == Posix.absDir \"/tmp/adir/dir\"",
       Path.makeAbsolute (absDir "/tmp") (relDir  "adir/dir")      == Posix.absDir "/tmp/adir/dir") :
-  {-# LINE 1370 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1380 "src/System/Path/Internal.hs" #-}
   ("Path.genericMakeAbsolute (absDir \"/tmp\") (relFile \"file.txt\")       == Posix.absFile \"/tmp/file.txt\"",
       Path.genericMakeAbsolute (absDir "/tmp") (relFile "file.txt")       == Posix.absFile "/tmp/file.txt") :
-  {-# LINE 1371 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1381 "src/System/Path/Internal.hs" #-}
   ("Path.genericMakeAbsolute (absDir \"/tmp\") (relFile \"adir/file.txt\")  == Posix.absFile \"/tmp/adir/file.txt\"",
       Path.genericMakeAbsolute (absDir "/tmp") (relFile "adir/file.txt")  == Posix.absFile "/tmp/adir/file.txt") :
-  {-# LINE 1372 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1382 "src/System/Path/Internal.hs" #-}
   ("Path.genericMakeAbsolute (absDir \"/tmp\") (absFile \"/adir/file.txt\") == Posix.absFile \"/adir/file.txt\"",
       Path.genericMakeAbsolute (absDir "/tmp") (absFile "/adir/file.txt") == Posix.absFile "/adir/file.txt") :
-  {-# LINE 1457 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1467 "src/System/Path/Internal.hs" #-}
   ("Path.isAbsolute (Posix.absFile \"/fred\")",
       Path.isAbsolute (Posix.absFile "/fred")) :
-  {-# LINE 1458 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1468 "src/System/Path/Internal.hs" #-}
   ("Path.isAbsolute (Windows.absFile \"\\\\fred\")",
       Path.isAbsolute (Windows.absFile "\\fred")) :
-  {-# LINE 1459 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1469 "src/System/Path/Internal.hs" #-}
   ("Path.isAbsolute (Windows.absFile \"c:\\\\fred\")",
       Path.isAbsolute (Windows.absFile "c:\\fred")) :
-  {-# LINE 1460 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1470 "src/System/Path/Internal.hs" #-}
   ("Path.isAbsolute (Windows.absFile \"c:fred\")",
       Path.isAbsolute (Windows.absFile "c:fred")) :
-  {-# LINE 1467 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1477 "src/System/Path/Internal.hs" #-}
   ("Path.isRelative (Posix.relFile \"fred\")",
       Path.isRelative (Posix.relFile "fred")) :
-  {-# LINE 1468 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1478 "src/System/Path/Internal.hs" #-}
   ("Path.isRelative (Windows.relFile \"fred\")",
       Path.isRelative (Windows.relFile "fred")) :
-  {-# LINE 1493 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1503 "src/System/Path/Internal.hs" #-}
   ("null (Path.takeExtension x) == not (Path.hasAnExtension x)",
       null (Path.takeExtension x) == not (Path.hasAnExtension x)) :
-  {-# LINE 1499 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1509 "src/System/Path/Internal.hs" #-}
   ("Path.hasExtension \".hs\" (Posix.relFile \"MyCode.hs\")",
       Path.hasExtension ".hs" (Posix.relFile "MyCode.hs")) :
-  {-# LINE 1500 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1510 "src/System/Path/Internal.hs" #-}
   ("Path.hasExtension \".hs\" (Posix.relFile \"MyCode.bak.hs\")",
       Path.hasExtension ".hs" (Posix.relFile "MyCode.bak.hs")) :
-  {-# LINE 1501 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1511 "src/System/Path/Internal.hs" #-}
   ("not $ Path.hasExtension \".hs\" (Posix.relFile \"MyCode.hs.bak\")",
       not $ Path.hasExtension ".hs" (Posix.relFile "MyCode.hs.bak")) :
-  {-# LINE 1511 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1521 "src/System/Path/Internal.hs" #-}
   ("Posix.extSeparator == '.'",
       Posix.extSeparator == '.') :
-  {-# LINE 1522 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1532 "src/System/Path/Internal.hs" #-}
   ("Posix.isExtSeparator a == (a == Posix.extSeparator)",
       Posix.isExtSeparator a == (a == Posix.extSeparator)) :
-  {-# LINE 1528 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1538 "src/System/Path/Internal.hs" #-}
   ("Posix.isSearchPathSeparator a == (a == Posix.searchPathSeparator)",
       Posix.isSearchPathSeparator a == (a == Posix.searchPathSeparator)) :
-  {-# LINE 1544 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1554 "src/System/Path/Internal.hs" #-}
   ("Path.genericAddExtension (absDir \"/\") \"x\" == Posix.absDir \"/.x\"",
       Path.genericAddExtension (absDir "/") "x" == Posix.absDir "/.x") :
-  {-# LINE 1545 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1555 "src/System/Path/Internal.hs" #-}
   ("Path.genericAddExtension (absDir \"/a\") \"x\" == Posix.absDir \"/a.x\"",
       Path.genericAddExtension (absDir "/a") "x" == Posix.absDir "/a.x") :
-  {-# LINE 1546 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1556 "src/System/Path/Internal.hs" #-}
   ("Path.genericAddExtension Path.emptyFile \"x\" == Posix.relFile \".x\"",
       Path.genericAddExtension Path.emptyFile "x" == Posix.relFile ".x") :
-  {-# LINE 1547 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1557 "src/System/Path/Internal.hs" #-}
   ("Path.genericAddExtension Path.emptyFile \"\" == Posix.emptyFile",
       Path.genericAddExtension Path.emptyFile "" == Posix.emptyFile) :
-  {-# LINE 1685 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1695 "src/System/Path/Internal.hs" #-}
   ("Posix.isPathSeparator Posix.pathSeparator",
           Posix.isPathSeparator Posix.pathSeparator) :
-  {-# LINE 1690 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1700 "src/System/Path/Internal.hs" #-}
   ("Posix.pathSeparator `elem` Posix.pathSeparators",
           Posix.pathSeparator `elem` Posix.pathSeparators) :
-  {-# LINE 1697 "src/System/Path/Internal.hs" #-}
+  {-# LINE 1707 "src/System/Path/Internal.hs" #-}
   ("Posix.isPathSeparator a == (a `elem` Posix.pathSeparators)",
           Posix.isPathSeparator a == (a `elem` Posix.pathSeparators)) :
   []
