updated ranges and the Cmp type