handle very large directories