TODO
Dir.exists -> FilePath.exists