let compare_mark m1 m2 = if m1 == m2 then 0 else match m1, m2 with | Spare, Spare -> 0 | Cav d1, Cav d2 -> PdgTypes.Dpd.compare d1 d2 | Cav _, Spare -> -1 | Spare, Cav _ -> 1