Calling `new(bucket)` is going to loop over the list again to find duplicates, no?