refinement: pushUnique should be like sort.