changed interface to only accept s3 locations