no need for local file