## 🐛 Bug Report

I am intercepting traffic using the org.openqa.selenium.devtools.v93.fetch.Fetch class.
In rare cases a TimeoutException ``Unable to process: {"method":"Fetch.requestPaused", ...`` is raised while calling Fetch.continueRequest.

I would suspect there an concurrency issue in the DevTools. The command is send and Selenium is waiting for the "okay" answer from the browser. Concurrently the browser is sending another "Fetch.requestPaused" event that can not be processed at this time.

```
[WARNING] 00:00:30 Unable to process: {"method":"Fetch.requestPaused","params":{"requestId":"interception-job-35.0","request":{"url":"https://**removed**","method":"GET","headers":{**removed**}]},"sessionId":"0DC762612D7CDDB09AB67995EB18CC02"}
[WARNING]          org.openqa.selenium.TimeoutException: java.util.concurrent.TimeoutException
[WARNING]          Build info: version: '4.0.0-rc-2', revision: '8d1e4aa5ae'
[WARNING]          System info: host: '**removed**', ip: '**removed**', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '11.0.12'
[WARNING]          Driver info: driver.version: unknown
[WARNING]          	at org.openqa.selenium.devtools.Connection.sendAndWait(Connection.java:161)
[WARNING]          	at org.openqa.selenium.devtools.DevTools.send(DevTools.java:70)
[WARNING]          	at **removed**.TestCase.lambda$__register_devtools$3(TestCase.java:146)
[WARNING]          	at org.openqa.selenium.devtools.Connection.lambda$handle$6(Connection.java:288)
[WARNING]          	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
[WARNING]          	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
[WARNING]          	at java.base/java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:442)
[WARNING]          	at java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1603)
[WARNING]          	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
[WARNING]          	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
[WARNING]          	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
[WARNING]          	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
[WARNING]          	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[WARNING]          	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
[WARNING]          	at org.openqa.selenium.devtools.Connection.handle(Connection.java:257)
[WARNING]          	at org.openqa.selenium.devtools.Connection.access$200(Connection.java:58)
[WARNING]          	at org.openqa.selenium.devtools.Connection$Listener.lambda$onText$0(Connection.java:199)
[WARNING]          	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[WARNING]          	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[WARNING]          	at java.base/java.lang.Thread.run(Thread.java:829)
[WARNING]          	... 1 skipped
[WARNING]          Caused by: java.util.concurrent.TimeoutException
[WARNING]          	at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886)
[WARNING]          	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021)
[WARNING]          	at org.openqa.selenium.devtools.Connection.sendAndWait(Connection.java:150)
[WARNING]          	... 19 more
```

The code in the TestCase.java is:
```
line 145:            // continuing the request 
line 146:            devTools.send(Fetch.continueRequest(
line 147:                    requestId, Optional.empty(), Optional.empty(),
line 148:                    Optional.empty(), Optional.empty()
line 149:            ));
```

## To Reproduce

I am not able to reproduce, i will try when i am back to office in a view days.

## Environment

OS: Windows 10 x64
Browser: Chrome
Browser version: 94.0.4606.71
Browser Driver version: 94.0.4606.61
Language Bindings version: Java, Selenium 4 rc2
Selenium Grid version (if applicable): <!-- e.g.: 3.141.59 --> 

break;
            default:
              input.skipValue();
          }
        }
        input.endObject();
      }
    } else if (raw.get("method") instanceof String && raw.get("params") instanceof Map) {
      LOG.log(
        getDebugLogLevel(),
        String.format("Method %s called with %d callbacks available", raw.get("method"), eventCallbacks.keySet().size()));
      Lock lock = callbacksLock.readLock();
      lock.lock();
      try {
        
        eventCallbacks.keySet().stream()
          .peek(event -> LOG.log(
            getDebugLogLevel(),
            String.format("Matching %s with %s", raw.get("method"), event.getMethod())))
          .filter(event -> raw.get("method").equals(event.getMethod()))
          .forEach(event -> {
            
            try (StringReader reader = new StringReader(asString);
                 JsonInput input = JSON.newInput(reader)) {
              Object value = null;
              input.beginObject();
              while (input.hasNext()) {
                switch (input.nextName()) {
                  case "params":
                    value = event.getMapper().apply(input);