handle none existing files gracefully