Could we combine the dup/delete by just using reject? I think that reads a little cleaner.