b_minus_a==-1 case has been revised