reworked how alpha_sweep is passed around