directory traversal and file finding code