let compute_new_data old_zone l_zone l_dpds exact r_dpds =
if (Data.intersects old_zone l_zone) then
let zone = if exact then Data.diff old_zone l_zone else old_zone in
let zone = Data.merge zone l_dpds in
let zone = Data.merge zone r_dpds in
(true, zone)
else (false, old_zone)