save_A = A; save_B = B; if (!A) fix(A); if (!B) fix(B); return (some_expression of save_A and save_B);