Can we send response from UVM_diver to virtual seuence?

Hey,

I recently studied about the responsive stimulus and learned that a response can be sent from uvm_driver to uvm_sequence.
I understood this concept for 1:1 relation between driver and sequence. I am unable to figure out few questions I had regarding this topic and listing them below for your help.

  1. Can we send a response from driver even if we are using virtual sequencer and virtual sequence?
  2. Do item_done(rsp); always needs start_item()? if yes/no, can you explain how an out of order transactions are handled where a response can came way later after we completed driving the requests.
  3. How this req, response handled when we have multiple sequences running in parallel using fork join.