   ///   not a directory.
   ///
   public func mkpath() throws -> () {
-    #if swift(<3.0)
+    #if !swift(>=3.0)
     try Path.fileManager.createDirectoryAtPath(self.path, withIntermediateDirectories: true, attributes: nil)
     #else
     try Path.fileManager.createDirectory(atPath: self.path, withIntermediateDirectories: true, attributes: nil)

  ///
  public var isDirectory: Bool {
    var directory = ObjCBool(false)
    #if swift(<3.0)
    guard Path.fileManager.fileExistsAtPath(normalize().path, isDirectory: &directory) else {
      return false
    }

  ///   any subdirectory.
  ///
  public func recursiveChildren() throws -> [Path] {
    #if !swift(>=3.0)
    return try Path.fileManager.subpathsOfDirectoryAtPath(path).map {
      self + Path($0)
    }
