added set_location