using combined traceback and register-exchange