let wrap x =
    let tag = !current_tag in
    let new_i =
      { h = Unhashconsed_Int_Intervals.hash x;
        v = x;
        tag = tag}
    in
    let result = IntIntervalsHashtbl.merge table new_i in
    if result == new_i then current_tag := succ tag;
    result