You can capture callback arguments by providing objects to place values inside. Pass these into the this in the same order of your callback. If your callback takes in callback(data, protocol) then provide this(data, protocol), ensuring that data and prtocol are objects. This feature is not the most reliable and still needs a better solution.

In this example, all the callbacks return one argument which is then available for callbacks that follow.