run the sweeper only if required