def harvest(varlist, advance):
    """Return set of best variables from list of best
    
    varlist is a list each element of which is a comma-separated
    list of variable names
    advance is how many winners to advance - at least the number
    of combinations"""
    
    # may return more or fewer variables than specified
    
    win = set()
    for vlist in varlist:
        win.update(vlist.replace(",", " ").split())
        if len(win) >= advance:
            break
    return win