introduced --cache_file option to avoid unnecessary API calls