changed signature of sign_extend()