Pipeline driver implementation : where exactly is the sequences response FIFO?

Hi All,
I was going thru the examples mentioned here :
https://verificationacademy.com/cookbook/driver/pipelined#

I see this mentioned on the website:
“In the example sequence, there is no response handling, the assumption is that checks on the data validity will be done by a scoreboard. However, with the get() and put() driver implementation, there is a response FIFO in the sequence which must be managed. In the example, the response_handler is enabled using the use_response_handler() method, and then the response_handler function is called everytime a response is available, keeping the sequences response FIFO empty. In this case the response handler keeps cound of the number of transactions to ensure that the sequence only exist when the last transaction is complete.”

Questions:

  1. Where is the response FIFO? I do not see an instance of the same? Is this the same as the FIFO in the sequencer?
  2. What is the need to keep sequences response FIFO empty?
  3. How does keeping an count ensures that the sequence only exist when the last transaction is complete?

Can someone please clarify? Thanks !!