FULLY-ADAPTIVE finish randomly select intermediate group, compute path. forward() unfinish.