final version of quick union