before change, no borrow