implemented recursive file getting