Revert "Update NPM dependencies"

This reverts commit 192c3d4ee119824a0a71e3fdad5ed369589c5bbc.

Reason for revert: Puppeteer's types.d.ts is broken.
See crrev.com/c/3320453.

Original change's description:
> Update NPM dependencies
>
> Update puppeteer to version 12.0.1
>
> Change-Id: I8f2b0378458ba9867bf58c4c49c7202b8fc2a302
> Bug: none
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3317578
> Commit-Queue: Johan Bay <[email protected]>
> Reviewed-by: Tim Van der Lippe <[email protected]>

Bug: none
Change-Id: Ia73b4360e062e5cfb932ae4af96d28af32c79973
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3320462
Auto-Submit: Johan Bay <[email protected]>
Bot-Commit: Rubber Stamper <[email protected]>
Reviewed-by: Tim Van der Lippe <[email protected]>
Commit-Queue: Tim Van der Lippe <[email protected]>
diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json
index df40396..9a7af92 100644
--- a/node_modules/.package-lock.json
+++ b/node_modules/.package-lock.json
@@ -399,9 +399,9 @@
       }
     },
     "node_modules/@eslint/eslintrc/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -891,9 +891,9 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -950,9 +950,9 @@
       }
     },
     "node_modules/@typescript-eslint/parser/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -1024,9 +1024,9 @@
       }
     },
     "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -2100,9 +2100,9 @@
       }
     },
     "node_modules/devtools-protocol": {
-      "version": "0.0.937139",
-      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.937139.tgz",
-      "integrity": "sha512-daj+rzR3QSxsPRy5vjjthn58axO8c11j58uY0lG5vvlJk/EiOdCWOptGdkXDjtuRHr78emKq0udHCXM4trhoDQ==",
+      "version": "0.0.883894",
+      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.883894.tgz",
+      "integrity": "sha512-33idhm54QJzf3Q7QofMgCvIVSd2o9H3kQPWaKT/fhoZh+digc+WSiMhbkeG3iN79WY4Hwr9G05NpbhEVrsOYAg==",
       "dev": true
     },
     "node_modules/dezalgo": {
@@ -2799,9 +2799,9 @@
       "dev": true
     },
     "node_modules/eslint/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -4995,12 +4995,6 @@
         "mkdirp": "bin/cmd.js"
       }
     },
-    "node_modules/mkdirp-classic": {
-      "version": "0.5.3",
-      "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
-      "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
-      "dev": true
-    },
     "node_modules/mocha": {
       "version": "9.1.1",
       "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.1.tgz",
@@ -5252,13 +5246,10 @@
       }
     },
     "node_modules/node-fetch": {
-      "version": "2.6.5",
-      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz",
-      "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==",
+      "version": "2.6.1",
+      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
+      "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
       "dev": true,
-      "dependencies": {
-        "whatwg-url": "^5.0.0"
-      },
       "engines": {
         "node": "4.x || >=6.0.0"
       }
@@ -5804,9 +5795,9 @@
       }
     },
     "node_modules/progress": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
-      "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz",
+      "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==",
       "dev": true,
       "engines": {
         "node": ">=0.4.0"
@@ -5838,46 +5829,29 @@
       }
     },
     "node_modules/puppeteer": {
-      "version": "12.0.1",
-      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-12.0.1.tgz",
-      "integrity": "sha512-YQ3GRiyZW0ddxTW+iiQcv2/8TT5c3+FcRUCg7F8q2gHqxd5akZN400VRXr9cHQKLWGukmJLDiE72MrcLK9tFHQ==",
+      "version": "10.0.0",
+      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-10.0.0.tgz",
+      "integrity": "sha512-AxHvCb9IWmmP3gMW+epxdj92Gglii+6Z4sb+W+zc2hTTu10HF0yg6hGXot5O74uYkVqG3lfDRLfnRpi6WOwi5A==",
       "dev": true,
       "hasInstallScript": true,
       "dependencies": {
-        "debug": "4.3.2",
-        "devtools-protocol": "0.0.937139",
+        "debug": "4.3.1",
+        "devtools-protocol": "0.0.883894",
         "extract-zip": "2.0.1",
         "https-proxy-agent": "5.0.0",
-        "node-fetch": "2.6.5",
+        "node-fetch": "2.6.1",
         "pkg-dir": "4.2.0",
-        "progress": "2.0.3",
+        "progress": "2.0.1",
         "proxy-from-env": "1.1.0",
         "rimraf": "3.0.2",
-        "tar-fs": "2.1.1",
-        "unbzip2-stream": "1.4.3",
-        "ws": "8.2.3"
+        "tar-fs": "2.0.0",
+        "unbzip2-stream": "1.3.3",
+        "ws": "7.4.6"
       },
       "engines": {
         "node": ">=10.18.1"
       }
     },
-    "node_modules/puppeteer/node_modules/debug": {
-      "version": "4.3.2",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
-      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
-      "dev": true,
-      "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
-        }
-      }
-    },
     "node_modules/puppeteer/node_modules/pkg-dir": {
       "version": "4.2.0",
       "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
@@ -5891,12 +5865,12 @@
       }
     },
     "node_modules/puppeteer/node_modules/ws": {
-      "version": "8.2.3",
-      "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
-      "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+      "version": "7.4.6",
+      "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
+      "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
       "dev": true,
       "engines": {
-        "node": ">=10.0.0"
+        "node": ">=8.3.0"
       },
       "peerDependencies": {
         "bufferutil": "^4.0.1",
@@ -6496,9 +6470,9 @@
       }
     },
     "node_modules/socket.io/node_modules/@types/node": {
-      "version": "14.18.0",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.0.tgz",
-      "integrity": "sha512-0GeIl2kmVMXEnx8tg1SlG6Gg8vkqirrW752KqolYo1PHevhhZN3bhJ67qHj+bQaINhX0Ra3TlWwRvMCd9iEfNQ==",
+      "version": "14.17.34",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.34.tgz",
+      "integrity": "sha512-USUftMYpmuMzeWobskoPfzDi+vkpe0dvcOBRNOscFrGxVp4jomnRxWuVohgqBow2xyIPC0S3gjxV/5079jhmDg==",
       "dev": true
     },
     "node_modules/source-map": {
@@ -6831,9 +6805,9 @@
       "dev": true
     },
     "node_modules/stylelint/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -7093,15 +7067,15 @@
       }
     },
     "node_modules/tar-fs": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
-      "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.0.tgz",
+      "integrity": "sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==",
       "dev": true,
       "dependencies": {
         "chownr": "^1.1.1",
-        "mkdirp-classic": "^0.5.2",
+        "mkdirp": "^0.5.1",
         "pump": "^3.0.0",
-        "tar-stream": "^2.1.4"
+        "tar-stream": "^2.0.0"
       }
     },
     "node_modules/tar-stream": {
@@ -7219,12 +7193,6 @@
         "node": ">=0.6"
       }
     },
-    "node_modules/tr46": {
-      "version": "0.0.3",
-      "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
-      "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
-      "dev": true
-    },
     "node_modules/treeify": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz",
@@ -7400,9 +7368,9 @@
       }
     },
     "node_modules/unbzip2-stream": {
-      "version": "1.4.3",
-      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
-      "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz",
+      "integrity": "sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==",
       "dev": true,
       "dependencies": {
         "buffer": "^5.2.1",
@@ -7497,22 +7465,6 @@
         "node": ">=0.10.0"
       }
     },
-    "node_modules/webidl-conversions": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
-      "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=",
-      "dev": true
-    },
-    "node_modules/whatwg-url": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
-      "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
-      "dev": true,
-      "dependencies": {
-        "tr46": "~0.0.3",
-        "webidl-conversions": "^3.0.0"
-      }
-    },
     "node_modules/which": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
diff --git a/node_modules/@eslint/eslintrc/node_modules/debug/LICENSE b/node_modules/@eslint/eslintrc/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/@eslint/eslintrc/node_modules/debug/LICENSE
+++ b/node_modules/@eslint/eslintrc/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/@eslint/eslintrc/node_modules/debug/README.md b/node_modules/@eslint/eslintrc/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/@eslint/eslintrc/node_modules/debug/README.md
+++ b/node_modules/@eslint/eslintrc/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/@eslint/eslintrc/node_modules/debug/package.json b/node_modules/@eslint/eslintrc/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/@eslint/eslintrc/node_modules/debug/package.json
+++ b/node_modules/@eslint/eslintrc/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/@eslint/eslintrc/node_modules/debug/src/common.js b/node_modules/@eslint/eslintrc/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/@eslint/eslintrc/node_modules/debug/src/common.js
+++ b/node_modules/@eslint/eslintrc/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/LICENSE b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/LICENSE
+++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/README.md b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/README.md
+++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/package.json
+++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/src/common.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/src/common.js
+++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/@typescript-eslint/parser/node_modules/debug/LICENSE b/node_modules/@typescript-eslint/parser/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/@typescript-eslint/parser/node_modules/debug/LICENSE
+++ b/node_modules/@typescript-eslint/parser/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/@typescript-eslint/parser/node_modules/debug/README.md b/node_modules/@typescript-eslint/parser/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/@typescript-eslint/parser/node_modules/debug/README.md
+++ b/node_modules/@typescript-eslint/parser/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/@typescript-eslint/parser/node_modules/debug/package.json b/node_modules/@typescript-eslint/parser/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/@typescript-eslint/parser/node_modules/debug/package.json
+++ b/node_modules/@typescript-eslint/parser/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/@typescript-eslint/parser/node_modules/debug/src/common.js b/node_modules/@typescript-eslint/parser/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/@typescript-eslint/parser/node_modules/debug/src/common.js
+++ b/node_modules/@typescript-eslint/parser/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/LICENSE b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/LICENSE
+++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/README.md b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/README.md
+++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/package.json b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/package.json
+++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/src/common.js b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/src/common.js
+++ b/node_modules/@typescript-eslint/typescript-estree/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/devtools-protocol/changelog.md b/node_modules/devtools-protocol/changelog.md
new file mode 100644
index 0000000..ae08537
--- /dev/null
+++ b/node_modules/devtools-protocol/changelog.md
@@ -0,0 +1,10277 @@
+
+
+## Roll protocol to r883449
+###### _2021-05-17 06:16:08_ | Diff: [ea8402f...56b0f11](https://github.com/ChromeDevTools/devtools-protocol/compare/ea8402f...56b0f11)
+#### `DOM`: new type
+* [`DOM.CompatibilityMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-CompatibilityMode)
+#### `DOM`: modified type
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The properties's `compatibilityMode` _added_.
+
+
+## Roll protocol to r882987
+###### _2021-05-14 09:16:22_ | Diff: [96c89c5...ea8402f](https://github.com/ChromeDevTools/devtools-protocol/compare/96c89c5...ea8402f)
+#### `Page`: modified type
+* [`Page.PermissionsPolicyFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyFeature) - The enum's `autoplay` _updated_. The enum's `camera` _updated_. The enum's `ch-dpr` _updated_. The enum's `ch-device-memory` _updated_. The enum's `ch-downlink` _updated_. The enum's `ch-ect` _updated_. The enum's `ch-lang` _updated_. The enum's `ch-rtt` _updated_. The enum's `ch-ua` _updated_. The enum's `ch-ua-arch` _updated_. The enum's `ch-ua-platform` _updated_. The enum's `ch-ua-model` _updated_. The enum's `ch-ua-mobile` _updated_. The enum's `ch-ua-full-version` _updated_. The enum's `ch-ua-platform-version` _updated_. The enum's `ch-viewport-width` _updated_. The enum's `ch-width` _updated_. The enum's `clipboard-read` _updated_. The enum's `clipboard-write` _updated_. The enum's `conversion-measurement` _updated_.
+
+
+## Roll protocol to r882921
+###### _2021-05-14 02:16:15_ | Diff: [56788fe...96c89c5](https://github.com/ChromeDevTools/devtools-protocol/compare/56788fe...96c89c5)
+#### `Audits`: modified type
+* [`Audits.CorsIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-CorsIssueDetails) - The `initiatorOrigin` in the properties had `type` _removed_. The `resourceIPAddressSpace` in the properties had `$ref` _removed_. The `initiatorOrigin` in the properties had `name` _updated_. The `resourceIPAddressSpace` in the properties had `name` _updated_. The `clientSecurityState` in the properties had `name` _updated_. The `clientSecurityState` in the properties had `$ref` _updated_. The properties's `$ref` _added_. The properties's `type` _added_. The properties's `clientSecurityState` _added_.
+#### `Network`: modified type
+* [`Network.CorsError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CorsError) - The enum's `NoCorsRedirectModeNotFollow` _added_.
+
+
+## Roll protocol to r882324
+###### _2021-05-12 15:16:51_ | Diff: [9062efe...56788fe](https://github.com/ChromeDevTools/devtools-protocol/compare/9062efe...56788fe)
+#### `Audits`: new type
+* [`Audits.QuirksModeIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-QuirksModeIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `QuirksModeIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `quirksModeIssueDetails` _added_.
+
+
+## Roll protocol to r882098
+###### _2021-05-12 09:16:24_ | Diff: [8ce157a...9062efe](https://github.com/ChromeDevTools/devtools-protocol/compare/8ce157a...9062efe)
+#### `Audits`: removed type
+* [`Audits.QuirksModeIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-QuirksModeIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `QuirksModeIssue` _removed_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `quirksModeIssueDetails` _removed_.
+
+
+## Roll protocol to r881485
+###### _2021-05-11 04:16:33_ | Diff: [febcae4...8ce157a](https://github.com/ChromeDevTools/devtools-protocol/compare/febcae4...8ce157a)
+#### `Audits`: new type
+* [`Audits.QuirksModeIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-QuirksModeIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `QuirksModeIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `quirksModeIssueDetails` _added_.
+
+
+## Roll protocol to r881010
+###### _2021-05-10 09:16:13_ | Diff: [a81e89d...febcae4](https://github.com/ChromeDevTools/devtools-protocol/compare/a81e89d...febcae4)
+#### `Page`: new types
+* [`Page.OriginTrialTokenStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrialTokenStatus)
+* [`Page.OriginTrialStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrialStatus)
+* [`Page.OriginTrialUsageRestriction`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrialUsageRestriction)
+* [`Page.OriginTrialToken`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrialToken)
+* [`Page.OriginTrialTokenWithStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrialTokenWithStatus)
+* [`Page.OriginTrial`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-OriginTrial)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `originTrials` _added_.
+
+
+## Roll protocol to r880455
+###### _2021-05-07 10:16:12_ | Diff: [2dd45d5...a81e89d](https://github.com/ChromeDevTools/devtools-protocol/compare/2dd45d5...a81e89d)
+#### `Page`: modified type
+* [`Page.PermissionsPolicyFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyFeature) - The enum's `display-capture` _updated_. The enum's `document-domain` _updated_. The enum's `encrypted-media` _updated_. The enum's `execution-while-out-of-viewport` _updated_. The enum's `execution-while-not-rendered` _updated_. The enum's `focus-without-user-activation` _updated_. The enum's `fullscreen` _updated_. The enum's `frobulate` _updated_. The enum's `gamepad` _updated_. The enum's `geolocation` _updated_. The enum's `gyroscope` _updated_. The enum's `hid` _updated_. The enum's `idle-detection` _updated_. The enum's `interest-cohort` _updated_. The enum's `magnetometer` _updated_. The enum's `microphone` _updated_. The enum's `midi` _updated_. The enum's `otp-credentials` _updated_. The enum's `payment` _updated_. The enum's `picture-in-picture` _updated_. The enum's `publickey-credentials-get` _updated_. The enum's `screen-wake-lock` _updated_. The enum's `serial` _updated_. The enum's `shared-autofill` _updated_. The enum's `storage-access-api` _updated_. The enum's `sync-xhr` _updated_. The enum's `trust-token-redemption` _updated_. The enum's `usb` _updated_. The enum's `vertical-scroll` _updated_. The enum's `web-share` _updated_. The enum's `xr-spatial-tracking` _updated_. The enum's `xr-spatial-tracking` _added_.
+
+
+## Roll protocol to r878340
+###### _2021-05-03 01:16:03_ | Diff: [08981cb...2dd45d5](https://github.com/ChromeDevTools/devtools-protocol/compare/08981cb...2dd45d5)
+#### `Page`: modified command
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The parameters's `includeCommandLineAPI` _added_.
+
+
+## Roll protocol to r878026
+###### _2021-04-30 12:16:18_ | Diff: [c3a5cc5...08981cb](https://github.com/ChromeDevTools/devtools-protocol/compare/c3a5cc5...08981cb)
+#### `Network`: modified type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The `urlPattern` in the properties had `description` _updated_.
+#### `Fetch`: modified type
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern) - The `urlPattern` in the properties had `description` _updated_.
+
+
+## Roll protocol to r877890
+###### _2021-04-30 06:16:13_ | Diff: [987bbb1...c3a5cc5](https://github.com/ChromeDevTools/devtools-protocol/compare/987bbb1...c3a5cc5)
+#### `Page`: modified type
+* [`Page.PermissionsPolicyFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyFeature) - The enum's `storage-access-api` _updated_. The enum's `sync-xhr` _updated_. The enum's `trust-token-redemption` _updated_. The enum's `usb` _updated_. The enum's `vertical-scroll` _updated_. The enum's `web-share` _updated_. The enum's `xr-spatial-tracking` _updated_. The enum's `xr-spatial-tracking` _added_.
+
+
+## Roll protocol to r876958
+###### _2021-04-28 01:16:04_ | Diff: [7eb19da...987bbb1](https://github.com/ChromeDevTools/devtools-protocol/compare/7eb19da...987bbb1)
+#### `Audits`: modified type
+* [`Audits.AttributionReportingIssueType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueType) - The enum's `InvalidAttributionData` _updated_. The enum's `AttributionSourceUntrustworthyOrigin` _updated_. The enum's `AttributionSourceUntrustworthyOrigin` _added_. The enum's `AttributionUntrustworthyOrigin` _added_.
+
+
+## Roll protocol to r876535
+###### _2021-04-27 04:16:08_ | Diff: [ce4cfab...7eb19da](https://github.com/ChromeDevTools/devtools-protocol/compare/ce4cfab...7eb19da)
+#### `Audits`: modified type
+* [`Audits.AttributionReportingIssueType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueType) - The enum's `AttributionSourceUntrustworthyOrigin` _added_.
+
+
+## Roll protocol to r876073
+###### _2021-04-26 01:16:05_ | Diff: [8676f73...ce4cfab](https://github.com/ChromeDevTools/devtools-protocol/compare/8676f73...ce4cfab)
+#### `Audits`: modified type
+* [`Audits.SharedArrayBufferIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferIssueDetails) - `description` updated.
+#### `Browser`: modified command
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior) - The `downloadPath` in the parameters had `description` _updated_.
+#### `DOM`: modified event
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated) - `description` updated. The `insertionPointId` in the parameters had `description` _updated_.
+#### `Emulation`: modified commands
+* [`Emulation.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearDeviceMetricsOverride) - `description` updated.
+* [`Emulation.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearGeolocationOverride) - `description` updated.
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The `initialVirtualTime` in the parameters had `description` _updated_.
+#### `IO`: modified command
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The `eof` in the return value had `description` _updated_.
+#### `IO`: modified type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle) - `description` updated.
+#### `Network`: modified type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The `interceptionStage` in the properties had `description` _updated_.
+#### `Page`: modified commands
+* [`Page.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceMetricsOverride) - `description` updated.
+* [`Page.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearGeolocationOverride) - `description` updated.
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior) - The `downloadPath` in the parameters had `description` _updated_.
+#### `Storage`: modified command
+* [`Storage.overrideQuotaForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-overrideQuotaForOrigin) - The `quotaSize` in the parameters had `description` _updated_.
+#### `Fetch`: modified type
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern) - The `requestStage` in the properties had `description` _updated_.
+#### `WebAudio`: modified type
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData) - The `renderCapacity` in the properties had `description` _updated_.
+#### `Media`: modified event
+* [`Media.playersCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playersCreated) - `description` updated.
+
+
+## Roll protocol to r873728
+###### _2021-04-19 01:16:10_ | Diff: [3e18e97...8676f73](https://github.com/ChromeDevTools/devtools-protocol/compare/3e18e97...8676f73)
+#### `Audits`: modified types
+* [`Audits.AttributionReportingIssueType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueType) - The enum's `InvalidAttributionData` _added_.
+* [`Audits.AttributionReportingIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueDetails) - The properties's `invalidParameter` _added_.
+
+
+## Roll protocol to r873348
+###### _2021-04-16 10:16:32_ | Diff: [143b9aa...3e18e97](https://github.com/ChromeDevTools/devtools-protocol/compare/143b9aa...3e18e97)
+#### `WebAuthn`: modified type
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions) - The `automaticPresenceSimulation` in the properties had `name` _updated_. The `automaticPresenceSimulation` in the properties had `description` _updated_. The `isUserVerified` in the properties had `name` _updated_. The `isUserVerified` in the properties had `description` _updated_. The properties's `isUserVerified` _added_.
+
+
+## Roll protocol to r873231
+###### _2021-04-16 01:16:19_ | Diff: [1a49020...143b9aa](https://github.com/ChromeDevTools/devtools-protocol/compare/1a49020...143b9aa)
+#### `Page`: new event
+* [`Page.backForwardCacheNotUsed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-backForwardCacheNotUsed)
+
+
+## Roll protocol to r872298
+###### _2021-04-13 23:16:06_ | Diff: [0dacfa7...1a49020](https://github.com/ChromeDevTools/devtools-protocol/compare/0dacfa7...1a49020)
+#### `Page`: modified event
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated) - The parameters's `type` _added_.
+#### `Page`: new type
+* [`Page.NavigationType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationType)
+
+
+## Roll protocol to r871838
+###### _2021-04-13 01:16:03_ | Diff: [a45730c...0dacfa7](https://github.com/ChromeDevTools/devtools-protocol/compare/a45730c...0dacfa7)
+#### `Audits`: new types
+* [`Audits.AttributionReportingIssueType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueType)
+* [`Audits.AttributionReportingIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AttributionReportingIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `AttributionReportingIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `attributionReportingIssueDetails` _added_.
+
+
+## Roll protocol to r871615
+###### _2021-04-12 13:16:16_ | Diff: [910add1...a45730c](https://github.com/ChromeDevTools/devtools-protocol/compare/910add1...a45730c)
+#### `DOM`: modified type
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The `importedDocument` in the properties had `description` _updated_. The properties's `deprecated` _added_.
+
+
+## Roll protocol to r871496
+###### _2021-04-12 09:16:00_ | Diff: [ca9d8a4...910add1](https://github.com/ChromeDevTools/devtools-protocol/compare/ca9d8a4...910add1)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The parameters's `includeBlendedBackgroundColors` _added_. The parameters's `includeTextColorOpacities` _added_.
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The properties's `blendedBackgroundColors` _added_. The properties's `textColorOpacities` _added_.
+
+
+## Roll protocol to r871249
+###### _2021-04-10 04:16:12_ | Diff: [7dd7cbb...ca9d8a4](https://github.com/ChromeDevTools/devtools-protocol/compare/7dd7cbb...ca9d8a4)
+#### `Emulation`: modified type
+* [`Emulation.DisabledImageType`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisabledImageType) - The enum's `webp` _updated_. The enum's `webp` _added_.
+
+
+## Roll protocol to r869921
+###### _2021-04-07 01:16:07_ | Diff: [b2ed548...7dd7cbb](https://github.com/ChromeDevTools/devtools-protocol/compare/b2ed548...7dd7cbb)
+#### `Input`: new command
+* [`Input.setInterceptDrags`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-setInterceptDrags)
+#### `Input`: new event
+* [`Input.dragIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#event-dragIntercepted)
+
+
+## Roll protocol to r869754
+###### _2021-04-06 16:16:23_ | Diff: [0210b99...b2ed548](https://github.com/ChromeDevTools/devtools-protocol/compare/0210b99...b2ed548)
+#### `Browser`: modified command
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior) - The parameters's `eventsEnabled` _added_.
+#### `Browser`: new events
+* [`Browser.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#event-downloadWillBegin)
+* [`Browser.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#event-downloadProgress)
+#### `Page`: modified events
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin) - `description` updated. `deprecated` added.
+* [`Page.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadProgress) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r869402
+###### _2021-04-05 23:16:05_ | Diff: [a3a5f92...0210b99](https://github.com/ChromeDevTools/devtools-protocol/compare/a3a5f92...0210b99)
+#### `Input`: new command
+* [`Input.dispatchDragEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchDragEvent)
+#### `Input`: new types
+* [`Input.DragDataItem`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-DragDataItem)
+* [`Input.DragData`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-DragData)
+
+
+## Roll protocol to r868034
+###### _2021-03-31 03:16:20_ | Diff: [3948369...a3a5f92](https://github.com/ChromeDevTools/devtools-protocol/compare/3948369...a3a5f92)
+#### `Overlay`: new command
+* [`Overlay.setShowScrollSnapOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollSnapOverlays)
+#### `Overlay`: new types
+* [`Overlay.ScrollSnapContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapContainerHighlightConfig)
+* [`Overlay.ScrollSnapHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapHighlightConfig)
+
+
+## Roll protocol to r867593
+###### _2021-03-30 07:16:08_ | Diff: [154b166...3948369](https://github.com/ChromeDevTools/devtools-protocol/compare/154b166...3948369)
+#### `Overlay`: removed command
+* [`Overlay.setShowScrollSnapOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollSnapOverlays)
+#### `Overlay`: removed types
+* [`Overlay.ScrollSnapContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapContainerHighlightConfig)
+* [`Overlay.ScrollSnapHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapHighlightConfig)
+
+
+## Roll protocol to r867545
+###### _2021-03-30 03:16:09_ | Diff: [f7c029d...154b166](https://github.com/ChromeDevTools/devtools-protocol/compare/f7c029d...154b166)
+#### `Overlay`: new command
+* [`Overlay.setShowScrollSnapOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollSnapOverlays)
+#### `Overlay`: new types
+* [`Overlay.ScrollSnapContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapContainerHighlightConfig)
+* [`Overlay.ScrollSnapHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ScrollSnapHighlightConfig)
+
+
+## Roll protocol to r866556
+###### _2021-03-25 05:16:07_ | Diff: [70fd1b8...f7c029d](https://github.com/ChromeDevTools/devtools-protocol/compare/70fd1b8...f7c029d)
+#### `Audits`: modified type
+* [`Audits.CorsIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-CorsIssueDetails) - The `resourceIPAddressSpace` in the properties had `$ref` _removed_. The `resourceIPAddressSpace` in the properties had `name` _updated_. The `clientSecurityState` in the properties had `name` _updated_. The `clientSecurityState` in the properties had `$ref` _updated_. The properties's `type` _added_. The properties's `clientSecurityState` _added_.
+
+
+## Roll protocol to r866105
+###### _2021-03-24 07:16:09_ | Diff: [6024018...70fd1b8](https://github.com/ChromeDevTools/devtools-protocol/compare/6024018...70fd1b8)
+#### `Network`: new commands
+* [`Network.setAcceptedEncodings`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAcceptedEncodings)
+* [`Network.clearAcceptedEncodingsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearAcceptedEncodingsOverride)
+#### `Network`: new type
+* [`Network.ContentEncoding`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ContentEncoding)
+
+
+## Roll protocol to r863986
+###### _2021-03-17 16:16:09_ | Diff: [576a381...6024018](https://github.com/ChromeDevTools/devtools-protocol/compare/576a381...6024018)
+#### `Page`: modified command
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics) - The `layoutViewport` in the return value had `description` _updated_. The `visualViewport` in the return value had `description` _updated_. The `contentSize` in the return value had `description` _updated_.
+
+
+## Roll protocol to r862770
+###### _2021-03-15 04:16:04_ | Diff: [c5bd6c3...576a381](https://github.com/ChromeDevTools/devtools-protocol/compare/c5bd6c3...576a381)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The parameters's `tracingBackend` _added_.
+#### `Tracing`: new type
+* [`Tracing.TracingBackend`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TracingBackend)
+
+
+## Roll protocol to r862653
+###### _2021-03-12 20:16:21 -0800_ | Diff: [3704a77...c5bd6c3](https://github.com/ChromeDevTools/devtools-protocol/compare/3704a77...c5bd6c3)
+#### `Network`: modified type
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - The enum's `corp-not-same-site` _removed_. The enum's `collapsed-by-client` _updated_. The enum's `coep-frame-resource-needs-coep-header` _updated_. The enum's `coop-sandboxed-iframe-cannot-navigate-to-coop-page` _updated_. The enum's `corp-not-same-origin` _updated_. The enum's `corp-not-same-origin-after-defaulted-to-same-origin-by-coep` _updated_.
+
+
+## Roll protocol to r861504
+###### _2021-03-10 02:16:14 -0800_ | Diff: [7622144...3704a77](https://github.com/ChromeDevTools/devtools-protocol/compare/7622144...3704a77)
+#### `Target`: modified command
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `url` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r861447
+###### _2021-03-09 22:16:12 -0800_ | Diff: [b434e14...7622144](https://github.com/ChromeDevTools/devtools-protocol/compare/b434e14...7622144)
+#### `Page`: removed event
+* [`Page.historyNavigationOutcomeReported`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-historyNavigationOutcomeReported)
+
+
+## Roll protocol to r861373
+###### _2021-03-09 17:16:11 -0800_ | Diff: [1cdf17e...b434e14](https://github.com/ChromeDevTools/devtools-protocol/compare/1cdf17e...b434e14)
+#### `Page`: new event
+* [`Page.historyNavigationOutcomeReported`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-historyNavigationOutcomeReported)
+
+
+## Roll protocol to r860858
+###### _2021-03-08 13:16:14 -0800_ | Diff: [5fd49a5...1cdf17e](https://github.com/ChromeDevTools/devtools-protocol/compare/5fd49a5...1cdf17e)
+#### `Network`: modified type
+* [`Network.CrossOriginEmbedderPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyValue) - The enum's `RequireCorp` _updated_. The enum's `RequireCorp` _added_.
+
+
+## Roll protocol to r860658
+###### _2021-03-08 01:16:00 -0800_ | Diff: [f3a387f...4d52df1](https://github.com/ChromeDevTools/devtools-protocol/compare/f3a387f...4d52df1)
+#### `Storage`: new command
+* [`Storage.clearTrustTokens`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearTrustTokens)
+
+
+## Roll protocol to r860415
+###### _2021-03-05 15:16:15 -0800_ | Diff: [219a9d6...f3a387f](https://github.com/ChromeDevTools/devtools-protocol/compare/219a9d6...f3a387f)
+#### `Page`: modified command
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics) - The `layoutViewport` in the return value had `description` _updated_. The `visualViewport` in the return value had `description` _updated_. The `contentSize` in the return value had `description` _updated_. The return value's `deprecated` _added_ (3 times). The return value's `cssLayoutViewport` _added_. The return value's `cssVisualViewport` _added_. The return value's `cssContentSize` _added_.
+
+
+## Roll protocol to r859327
+###### _2021-03-03 04:16:01 -0800_ | Diff: [dee574b...219a9d6](https://github.com/ChromeDevTools/devtools-protocol/compare/dee574b...219a9d6)
+#### `Browser`: new command
+* [`Browser.cancelDownload`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-cancelDownload)
+
+
+## Roll protocol to r858754
+###### _2021-03-01 15:16:13 -0800_ | Diff: [78470ce...dee574b](https://github.com/ChromeDevTools/devtools-protocol/compare/78470ce...dee574b)
+#### `Page`: new command
+* [`Page.produceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-produceCompilationCache)
+#### `Page`: modified command
+* [`Page.setProduceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setProduceCompilationCache) - `description` updated.
+#### `Page`: new type
+* [`Page.CompilationCacheParams`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-CompilationCacheParams)
+
+
+## Roll protocol to r856957
+###### _2021-02-23 18:16:02 -0800_ | Diff: [fe49497...b726157](https://github.com/ChromeDevTools/devtools-protocol/compare/fe49497...b726157)
+#### `Debugger`: removed command
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator)
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `reason` in the parameters had `debugCommand` _updated_. The `reason` in the parameters had `DOM` _updated_. The `reason` in the parameters had `EventListener` _updated_. The `reason` in the parameters had `exception` _updated_. The `reason` in the parameters had `instrumentation` _updated_. The `reason` in the parameters had `OOM` _updated_. The `reason` in the parameters had `other` _updated_. The `reason` in the parameters had `promiseRejection` _updated_. The `reason` in the parameters had `XHR` _updated_. The `1` in the parameters had `XHR` _added_.
+#### `Runtime`: modified commands
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `contextId` in the parameters had `description` _updated_. The parameters's `uniqueContextId` _added_.
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding) - `description` updated. The parameters's `description` _added_. The parameters's `executionContextName` _added_.
+#### `Runtime`: modified types
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `type` in the properties had `wasm` _removed_. The `subtype` in the properties had `f32` _removed_. The `subtype` in the properties had `f64` _removed_. The `subtype` in the properties had `v128` _removed_. The `subtype` in the properties had `externref` _removed_. The `subtype` in the properties had `description` _updated_. The `subtype` in the properties had `i32` _updated_. The `subtype` in the properties had `i64` _updated_.
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview) - The `1` in the properties had `proxy` _added_. The `1` in the properties had `promise` _added_. The `1` in the properties had `typedarray` _added_. The `1` in the properties had `arraybuffer` _added_. The `1` in the properties had `dataview` _added_. The `1` in the properties had `webassemblymemory` _added_. The `1` in the properties had `wasmvalue` _added_.
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview) - The `4` in the properties had `proxy` _added_. The `4` in the properties had `promise` _added_. The `4` in the properties had `typedarray` _added_. The `4` in the properties had `arraybuffer` _added_. The `4` in the properties had `dataview` _added_. The `4` in the properties had `webassemblymemory` _added_. The `4` in the properties had `wasmvalue` _added_.
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription) - The `auxData` in the properties had `optional` _removed_. The `auxData` in the properties had `name` _updated_. The `auxData` in the properties had `description` _updated_. The `auxData` in the properties had `type` _updated_. The properties's `experimental` _added_. The properties's `auxData` _added_.
+
+
+## Roll protocol to r856702
+###### _2021-02-23 08:16:10 -0800_ | Diff: [498a1e5...fe49497](https://github.com/ChromeDevTools/devtools-protocol/compare/498a1e5...fe49497)
+#### `Audits`: modified command
+* [`Audits.checkContrast`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-checkContrast)
+
+
+## Roll protocol to r854822
+###### _2021-02-17 09:16:17 -0800_ | Diff: [13b10d1...498a1e5](https://github.com/ChromeDevTools/devtools-protocol/compare/13b10d1...498a1e5)
+#### `Page`: new command
+* [`Page.getPermissionsPolicyState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getPermissionsPolicyState)
+#### `Page`: new types
+* [`Page.PermissionsPolicyFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyFeature)
+* [`Page.PermissionsPolicyBlockReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyBlockReason)
+* [`Page.PermissionsPolicyBlockLocator`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyBlockLocator)
+* [`Page.PermissionsPolicyFeatureState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-PermissionsPolicyFeatureState)
+
+
+## Roll protocol to r854538
+###### _2021-02-16 16:16:05 -0800_ | Diff: [014525d...13b10d1](https://github.com/ChromeDevTools/devtools-protocol/compare/014525d...13b10d1)
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `url` in the parameters had `description` _updated_. The parameters's `sameParty` _added_. The parameters's `sourceScheme` _added_. The parameters's `sourcePort` _added_.
+#### `Network`: new type
+* [`Network.CookieSourceScheme`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSourceScheme)
+#### `Network`: modified types
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - The properties's `sourceScheme` _added_. The properties's `sourcePort` _added_.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The `url` in the properties had `description` _updated_. The properties's `sameParty` _added_. The properties's `sourceScheme` _added_. The properties's `sourcePort` _added_.
+
+
+## Roll protocol to r852555
+###### _2021-02-10 01:16:01 -0800_ | Diff: [5a47400...014525d](https://github.com/ChromeDevTools/devtools-protocol/compare/5a47400...014525d)
+#### `Audits`: new type
+* [`Audits.CorsIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-CorsIssueDetails)
+#### `Audits`: modified types
+* [`Audits.SharedArrayBufferIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferIssueDetails) - `description` updated.
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `CorsIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `corsIssueDetails` _added_.
+#### `Network`: modified type
+* [`Network.PrivateNetworkRequestPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PrivateNetworkRequestPolicy) - The enum's `WarnFromInsecureToMorePrivate` _added_.
+
+
+## Roll protocol to r850520
+###### _2021-02-04 02:16:11 -0800_ | Diff: [6393746...5a47400](https://github.com/ChromeDevTools/devtools-protocol/compare/6393746...5a47400)
+#### `Overlay`: new type
+* [`Overlay.FlexItemHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexItemHighlightConfig)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The `contrastAlgorithm` in the properties had `name` _updated_. The `contrastAlgorithm` in the properties had `description` _updated_. The `contrastAlgorithm` in the properties had `$ref` _updated_. The properties's `contrastAlgorithm` _added_.
+
+
+## Roll protocol to r849788
+###### _2021-02-02 14:16:09 -0800_ | Diff: [8a7c1b5...6393746](https://github.com/ChromeDevTools/devtools-protocol/compare/8a7c1b5...6393746)
+#### `Network`: modified types
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason) - The enum's `SamePartyFromCrossPartyContext` _added_. The enum's `SamePartyConflictsWithOtherAttributes` _added_.
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason) - The enum's `SamePartyFromCrossPartyContext` _added_.
+
+
+## Roll protocol to r849057
+###### _2021-02-01 03:16:00 -0800_ | Diff: [78112b8...8a7c1b5](https://github.com/ChromeDevTools/devtools-protocol/compare/78112b8...8a7c1b5)
+#### `Audits`: new command
+* [`Audits.checkContrast`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-checkContrast)
+#### `Audits`: new type
+* [`Audits.LowTextContrastIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-LowTextContrastIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `LowTextContrastIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `lowTextContrastIssueDetails` _added_.
+
+
+## Roll protocol to r848227
+###### _2021-01-28 12:16:06 -0800_ | Diff: [51065d6...78112b8](https://github.com/ChromeDevTools/devtools-protocol/compare/51065d6...78112b8)
+#### `Emulation`: modified type
+* [`Emulation.UserAgentMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentMetadata) - `description` updated. The properties's `optional` _added_ (2 times).
+
+
+## Roll protocol to r848169
+###### _2021-01-28 10:16:15 -0800_ | Diff: [0284109...51065d6](https://github.com/ChromeDevTools/devtools-protocol/compare/0284109...51065d6)
+#### `Network`: modified event
+* [`Network.responseReceivedExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceivedExtraInfo) - The `headersText` in the parameters had `optional` _removed_. The `headersText` in the parameters had `type` _removed_. The `headersText` in the parameters had `name` _updated_. The `headersText` in the parameters had `description` _updated_. The parameters's `$ref` _added_. The parameters's `headersText` _added_.
+
+
+## Roll protocol to r847576
+###### _2021-01-27 03:16:08 -0800_ | Diff: [769185f...0284109](https://github.com/ChromeDevTools/devtools-protocol/compare/769185f...0284109)
+#### `Audits`: modified type
+* [`Audits.SourceCodeLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SourceCodeLocation) - The `url` in the properties had `type` _removed_. The `url` in the properties had `name` _updated_. The `lineNumber` in the properties had `name` _updated_. The `lineNumber` in the properties had `type` _updated_. The `columnNumber` in the properties had `name` _updated_. The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `columnNumber` _added_.
+
+
+## Roll protocol to r847122
+###### _2021-01-26 04:16:07 -0800_ | Diff: [181f9b3...769185f](https://github.com/ChromeDevTools/devtools-protocol/compare/181f9b3...769185f)
+#### `Audits`: new types
+* [`Audits.SharedArrayBufferIssueType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferIssueType)
+* [`Audits.SharedArrayBufferIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferIssueDetails)
+#### `Audits`: removed type
+* [`Audits.SharedArrayBufferTransferIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferTransferIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `SharedArrayBufferTransferIssue` _updated_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The `sharedArrayBufferTransferIssueDetails` in the properties had `name` _updated_. The `sharedArrayBufferTransferIssueDetails` in the properties had `$ref` _updated_.
+
+
+## Roll protocol to r846936
+###### _2021-01-25 15:16:27 -0800_ | Diff: [d88313d...181f9b3](https://github.com/ChromeDevTools/devtools-protocol/compare/d88313d...181f9b3)
+#### `Network`: new event
+* [`Network.webTransportConnectionEstablished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportConnectionEstablished)
+#### `Network`: modified event
+* [`Network.webTransportClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportClosed) - `description` added.
+
+
+## Roll protocol to r845780
+###### _2021-01-21 12:16:08 -0800_ | Diff: [3941c7e...d88313d](https://github.com/ChromeDevTools/devtools-protocol/compare/3941c7e...d88313d)
+#### `Audits`: new types
+* [`Audits.TwaQualityEnforcementViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-TwaQualityEnforcementViolationType)
+* [`Audits.TrustedWebActivityIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-TrustedWebActivityIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `TrustedWebActivityIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `twaQualityEnforcementDetails` _added_.
+
+
+## Roll protocol to r845564
+###### _2021-01-21 01:16:18 -0800_ | Diff: [47a861d...3941c7e](https://github.com/ChromeDevTools/devtools-protocol/compare/47a861d...3941c7e)
+#### `Storage`: new command
+* [`Storage.getTrustTokens`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getTrustTokens)
+#### `Storage`: new type
+* [`Storage.TrustTokens`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-TrustTokens)
+
+
+## Roll protocol to r845301
+###### _2021-01-20 12:16:06 -0800_ | Diff: [7f780af...47a861d](https://github.com/ChromeDevTools/devtools-protocol/compare/7f780af...47a861d)
+#### `Overlay`: new command
+* [`Overlay.setShowWebVitals`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowWebVitals)
+
+
+## Roll protocol to r841965
+###### _2021-01-11 02:16:08 -0800_ | Diff: [92c0fc5...529289e](https://github.com/ChromeDevTools/devtools-protocol/compare/92c0fc5...529289e)
+#### `Network`: modified type
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - The properties's `sameParty` _added_.
+
+
+## Roll protocol to r841450
+###### _2021-01-08 04:16:13 -0800_ | Diff: [0f61a92...92c0fc5](https://github.com/ChromeDevTools/devtools-protocol/compare/0f61a92...92c0fc5)
+#### `DOM`: modified type
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType) - The enum's `first-line-inherited` _updated_. The enum's `scrollbar` _updated_. The enum's `scrollbar-thumb` _updated_. The enum's `scrollbar-button` _updated_. The enum's `scrollbar-track` _updated_. The enum's `scrollbar-track-piece` _updated_. The enum's `scrollbar-corner` _updated_. The enum's `resizer` _updated_. The enum's `input-list-button` _updated_. The enum's `resizer` _added_. The enum's `input-list-button` _added_.
+
+
+## Roll protocol to r840815
+###### _2021-01-06 15:16:17 -0800_ | Diff: [a5b6b3e...0f61a92](https://github.com/ChromeDevTools/devtools-protocol/compare/a5b6b3e...0f61a92)
+#### `PerformanceTimeline`: modified command
+* [`PerformanceTimeline.enable`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#method-enable) - `description` updated. The parameters's `description` _added_.
+#### `PerformanceTimeline`: new types
+* [`PerformanceTimeline.LayoutShiftAttribution`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-LayoutShiftAttribution)
+* [`PerformanceTimeline.LayoutShift`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-LayoutShift)
+#### `PerformanceTimeline`: modified types
+* [`PerformanceTimeline.LargestContentfulPaint`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-LargestContentfulPaint) - The `renderTime` in the properties had `type` _removed_. The `loadTime` in the properties had `type` _removed_. The properties's `$ref` _added_ (2 times).
+* [`PerformanceTimeline.TimelineEvent`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-TimelineEvent) - The properties's `description` _added_ (2 times). The properties's `layoutShiftDetails` _added_.
+
+
+## Roll protocol to r840500
+###### _2021-01-05 22:16:00 -0800_ | Diff: [e056996...a5b6b3e](https://github.com/ChromeDevTools/devtools-protocol/compare/e056996...a5b6b3e)
+#### `PerformanceTimeline`: new domain
+* [`PerformanceTimeline.PerformanceTimeline`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#domain-PerformanceTimeline)
+#### `PerformanceTimeline`: new command
+* [`PerformanceTimeline.enable`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#method-enable)
+#### `PerformanceTimeline`: new event
+* [`PerformanceTimeline.timelineEventAdded`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#event-timelineEventAdded)
+#### `PerformanceTimeline`: new types
+* [`PerformanceTimeline.LargestContentfulPaint`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-LargestContentfulPaint)
+* [`PerformanceTimeline.TimelineEvent`](https://chromedevtools.github.io/devtools-protocol/tot/PerformanceTimeline/#type-TimelineEvent)
+
+
+## Roll protocol to r839267
+###### _2020-12-24 08:16:47 -0800_ | Diff: [3f62f47...e056996](https://github.com/ChromeDevTools/devtools-protocol/compare/3f62f47...e056996)
+#### `Debugger`: modified commands
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator) - The `evaluator` in the parameters had `description` _updated_.
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource) - The `bytecode` in the return value had `description` _updated_.
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode) - The `bytecode` in the return value had `description` _updated_.
+#### `Audits`: modified command
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse) - The `body` in the return value had `description` _updated_.
+#### `Browser`: modified command
+* [`Browser.setDockTile`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDockTile) - The `image` in the parameters had `description` _updated_.
+#### `CacheStorage`: modified type
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse) - The `body` in the properties had `description` _updated_.
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The `screenshotData` in the return value had `description` _updated_.
+#### `LayerTree`: modified type
+* [`LayerTree.PictureTile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PictureTile) - The `picture` in the properties had `description` _updated_.
+#### `Network`: modified command
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The `rawResponse` in the parameters had `description` _updated_.
+#### `Page`: modified commands
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The `data` in the return value had `description` _updated_.
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The `data` in the return value had `description` _updated_.
+* [`Page.addCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addCompilationCache) - The `data` in the parameters had `description` _updated_.
+#### `Page`: modified events
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame) - The `data` in the parameters had `description` _updated_.
+* [`Page.compilationCacheProduced`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-compilationCacheProduced) - The `data` in the parameters had `description` _updated_.
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `perfettoConfig` in the parameters had `description` _updated_.
+#### `Fetch`: modified commands
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest) - The `binaryResponseHeaders` in the parameters had `description` _updated_. The `body` in the parameters had `description` _updated_.
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest) - The `postData` in the parameters had `description` _updated_.
+#### `WebAuthn`: modified type
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential) - The `privateKey` in the properties had `description` _updated_. The `userHandle` in the properties had `description` _updated_. The `largeBlob` in the properties had `description` _updated_.
+
+
+## Roll protocol to r837676
+###### _2020-12-16 11:16:09 -0800_ | Diff: [17b7d75...84b9b60](https://github.com/ChromeDevTools/devtools-protocol/compare/17b7d75...84b9b60)
+#### `Audits`: new type
+* [`Audits.SharedArrayBufferTransferIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SharedArrayBufferTransferIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `SharedArrayBufferTransferIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `sharedArrayBufferTransferIssueDetails` _added_.
+
+
+## Roll protocol to r836089
+###### _2020-12-11 05:16:22 -0800_ | Diff: [d6d3da3...17b7d75](https://github.com/ChromeDevTools/devtools-protocol/compare/d6d3da3...17b7d75)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The parameters's `perfettoConfig` _added_.
+
+
+## Roll protocol to r835626
+###### _2020-12-10 04:17:42 -0800_ | Diff: [7f3af2e...d6d3da3](https://github.com/ChromeDevTools/devtools-protocol/compare/7f3af2e...d6d3da3)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `durableStorage` _updated_. The enum's `flash` _updated_. The enum's `geolocation` _updated_. The enum's `midi` _updated_. The enum's `midiSysex` _updated_. The enum's `nfc` _updated_. The enum's `notifications` _updated_. The enum's `paymentHandler` _updated_. The enum's `periodicBackgroundSync` _updated_. The enum's `protectedMediaIdentifier` _updated_. The enum's `sensors` _updated_. The enum's `videoCapture` _updated_. The enum's `videoCapturePanTiltZoom` _updated_. The enum's `idleDetection` _updated_. The enum's `wakeLockScreen` _updated_. The enum's `wakeLockSystem` _updated_. The enum's `wakeLockSystem` _added_.
+
+
+## Roll protocol to r834467
+###### _2020-12-07 16:16:11 -0800_ | Diff: [9e09a22...53c89eb](https://github.com/ChromeDevTools/devtools-protocol/compare/9e09a22...53c89eb)
+#### `Network`: modified events
+* [`Network.webTransportCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportCreated) - The `initiator` in the parameters had `optional` _removed_. The `initiator` in the parameters had `name` _updated_. The `initiator` in the parameters had `description` _updated_. The `initiator` in the parameters had `$ref` _updated_. The parameters's `initiator` _added_.
+* [`Network.webTransportClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportClosed) - The parameters's `timestamp` _added_.
+
+
+## Roll protocol to r832784
+###### _2020-12-02 05:16:13 -0800_ | Diff: [1d63b26...9e09a22](https://github.com/ChromeDevTools/devtools-protocol/compare/1d63b26...9e09a22)
+#### `Accessibility`: new command
+* [`Accessibility.getChildAXNodes`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getChildAXNodes)
+#### `Accessibility`: modified command
+* [`Accessibility.getFullAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getFullAXTree) - `description` updated.
+
+
+## Roll protocol to r832201
+###### _2020-11-30 20:16:12 -0800_ | Diff: [30c0c44...1d63b26](https://github.com/ChromeDevTools/devtools-protocol/compare/30c0c44...1d63b26)
+#### `Accessibility`: modified type
+* [`Accessibility.AXValueNativeSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueNativeSourceType) - The enum's `tablecaption` _updated_. The enum's `title` _updated_. The enum's `other` _updated_. The enum's `other` _added_.
+
+
+## Roll protocol to r831994
+###### _2020-11-30 13:16:16 -0800_ | Diff: [ebd3663...30c0c44](https://github.com/ChromeDevTools/devtools-protocol/compare/ebd3663...30c0c44)
+#### `Network`: new event
+* [`Network.trustTokenOperationDone`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-trustTokenOperationDone)
+
+
+## Roll protocol to r831461
+###### _2020-11-26 19:16:01 -0800_ | Diff: [bf6d675...ebd3663](https://github.com/ChromeDevTools/devtools-protocol/compare/bf6d675...ebd3663)
+#### `Network`: new events
+* [`Network.webTransportCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportCreated)
+* [`Network.webTransportClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webTransportClosed)
+
+
+## Roll protocol to r831315
+###### _2020-11-26 04:16:14 -0800_ | Diff: [4829241...bf6d675](https://github.com/ChromeDevTools/devtools-protocol/compare/4829241...bf6d675)
+#### `Network`: modified types
+* [`Network.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceType) - The enum's `Other` _updated_. The enum's `Other` _added_.
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The `type` in the properties had `other` _updated_. The `0` in the properties had `other` _added_. The properties's `requestId` _added_.
+
+
+## Roll protocol to r831300
+###### _2020-11-26 02:16:17 -0800_ | Diff: [e7d16f6...4829241](https://github.com/ChromeDevTools/devtools-protocol/compare/e7d16f6...4829241)
+#### `Overlay`: modified type
+* [`Overlay.FlexContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexContainerHighlightConfig) - The properties's `crossAlignment` _added_.
+
+
+## Roll protocol to r829642
+###### _2020-11-20 06:16:14 -0800_ | Diff: [e3d5a68...e7d16f6](https://github.com/ChromeDevTools/devtools-protocol/compare/e3d5a68...e7d16f6)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `captureBeyondViewport` _added_.
+
+
+## Roll protocol to r829624
+###### _2020-11-20 04:16:20 -0800_ | Diff: [b9d4d51...e3d5a68](https://github.com/ChromeDevTools/devtools-protocol/compare/b9d4d51...e3d5a68)
+#### `Network`: modified event
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo) - The parameters's `clientSecurityState` _added_.
+#### `Network`: new types
+* [`Network.PrivateNetworkRequestPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PrivateNetworkRequestPolicy)
+* [`Network.IPAddressSpace`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-IPAddressSpace)
+* [`Network.ClientSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ClientSecurityState)
+
+
+## Roll protocol to r829612
+###### _2020-11-20 03:16:03 -0800_ | Diff: [7507a70...b9d4d51](https://github.com/ChromeDevTools/devtools-protocol/compare/7507a70...b9d4d51)
+#### `Overlay`: new type
+* [`Overlay.ContrastAlgorithm`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ContrastAlgorithm)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `contrastAlgorithm` _added_.
+
+
+## Roll protocol to r829242
+###### _2020-11-19 08:16:09 -0800_ | Diff: [2f03057...7507a70](https://github.com/ChromeDevTools/devtools-protocol/compare/2f03057...7507a70)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `captureBeyondViewport` _removed_.
+#### `Page`: new event
+* [`Page.documentOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-documentOpened)
+
+
+## Roll protocol to r829162
+###### _2020-11-19 02:16:16 -0800_ | Diff: [84c2cfc...2f03057](https://github.com/ChromeDevTools/devtools-protocol/compare/84c2cfc...2f03057)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `captureBeyondViewport` _added_.
+
+
+## Roll protocol to r828856
+###### _2020-11-18 12:16:13 -0800_ | Diff: [ae1d9fd...84c2cfc](https://github.com/ChromeDevTools/devtools-protocol/compare/ae1d9fd...84c2cfc)
+#### `Overlay`: new type
+* [`Overlay.BoxStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-BoxStyle)
+#### `Overlay`: modified type
+* [`Overlay.FlexContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexContainerHighlightConfig) - The properties's `mainDistributedSpace` _added_. The properties's `crossDistributedSpace` _added_. The properties's `rowGapSpace` _added_. The properties's `columnGapSpace` _added_.
+
+
+## Roll protocol to r828424
+###### _2020-11-17 14:16:15 -0800_ | Diff: [4a38aba...ae1d9fd](https://github.com/ChromeDevTools/devtools-protocol/compare/4a38aba...ae1d9fd)
+#### `Page`: removed event
+* [`Page.documentOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-documentOpened)
+
+
+## Roll protocol to r828217
+###### _2020-11-17 08:16:16 -0800_ | Diff: [0f382c6...4a38aba](https://github.com/ChromeDevTools/devtools-protocol/compare/0f382c6...4a38aba)
+#### `DOMDebugger`: new command
+* [`DOMDebugger.setBreakOnCSPViolation`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setBreakOnCSPViolation)
+#### `DOMDebugger`: new type
+* [`DOMDebugger.CSPViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-CSPViolationType)
+
+
+## Roll protocol to r828143
+###### _2020-11-17 03:15:46 -0800_ | Diff: [fc3a2fd...0f382c6](https://github.com/ChromeDevTools/devtools-protocol/compare/fc3a2fd...0f382c6)
+#### `Overlay`: new command
+* [`Overlay.setShowFlexOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFlexOverlays)
+#### `Overlay`: new type
+* [`Overlay.FlexNodeHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexNodeHighlightConfig)
+
+
+## Roll protocol to r828125
+###### _2020-11-17 01:16:07 -0800_ | Diff: [6614ce6...fc3a2fd](https://github.com/ChromeDevTools/devtools-protocol/compare/6614ce6...fc3a2fd)
+#### `Page`: new event
+* [`Page.documentOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-documentOpened)
+
+
+## Roll protocol to r827510
+###### _2020-11-13 17:16:11 -0800_ | Diff: [7406169...6614ce6](https://github.com/ChromeDevTools/devtools-protocol/compare/7406169...6614ce6)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `captureBeyondViewport` _removed_.
+
+
+## Roll protocol to r827467
+###### _2020-11-13 15:16:26 -0800_ | Diff: [51e7a7e...7406169](https://github.com/ChromeDevTools/devtools-protocol/compare/51e7a7e...7406169)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `captureBeyondViewport` _added_.
+
+
+## Roll protocol to r826646
+###### _2020-11-11 20:16:12 -0800_ | Diff: [433d00b...51e7a7e](https://github.com/ChromeDevTools/devtools-protocol/compare/433d00b...51e7a7e)
+#### `Page`: modified event
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached) - The parameters's `reason` _added_.
+
+
+## Roll protocol to r826264
+###### _2020-11-11 06:16:49 -0800_ | Diff: [0d4d761...433d00b](https://github.com/ChromeDevTools/devtools-protocol/compare/0d4d761...433d00b)
+#### `Overlay`: modified type
+* [`Overlay.FlexContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexContainerHighlightConfig) - The properties's `lineSeparator` _added_. The properties's `itemSeparator` _added_.
+
+
+## Roll protocol to r825619
+###### _2020-11-09 18:16:08 -0800_ | Diff: [c2862c9...0d4d761](https://github.com/ChromeDevTools/devtools-protocol/compare/c2862c9...0d4d761)
+#### `Network`: modified type
+* [`Network.TrustTokenParams`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TrustTokenParams) - `description` updated. The `refreshPolicy` in the properties had `description` _updated_.
+
+
+## Roll protocol to r825064
+###### _2020-11-06 14:16:27 -0800_ | Diff: [e944f55...c2862c9](https://github.com/ChromeDevTools/devtools-protocol/compare/e944f55...c2862c9)
+#### `Browser`: modified type
+* [`Browser.BrowserCommandId`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserCommandId) - The enum's `closeTabSearch` _added_.
+
+
+## Roll protocol to r824785
+###### _2020-11-06 01:16:19 -0800_ | Diff: [7b37fcd...e944f55](https://github.com/ChromeDevTools/devtools-protocol/compare/7b37fcd...e944f55)
+#### `Network`: modified type
+* [`Network.SecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityIsolationStatus) - The properties's `optional` _added_ (2 times).
+
+
+## Roll protocol to r824362
+###### _2020-11-05 02:16:30 -0800_ | Diff: [8c7ee2c...7b37fcd](https://github.com/ChromeDevTools/devtools-protocol/compare/8c7ee2c...7b37fcd)
+#### `Overlay`: new types
+* [`Overlay.FlexContainerHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-FlexContainerHighlightConfig)
+* [`Overlay.LineStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-LineStyle)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `flexContainerHighlightConfig` _added_.
+
+
+## Roll protocol to r823956
+###### _2020-11-04 04:16:00 -0800_ | Diff: [3f62bad...8c7ee2c](https://github.com/ChromeDevTools/devtools-protocol/compare/3f62bad...8c7ee2c)
+#### `Page`: new type
+* [`Page.GatedAPIFeatures`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-GatedAPIFeatures)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `gatedAPIFeatures` _added_.
+
+
+## Roll protocol to r823269
+###### _2020-11-02 12:16:02 -0800_ | Diff: [fcb68d1...3f62bad](https://github.com/ChromeDevTools/devtools-protocol/compare/fcb68d1...3f62bad)
+#### `Network`: modified type
+* [`Network.CorsError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CorsError) - The enum's `InsecurePrivateNetwork` _added_.
+
+
+## Roll protocol to r822788
+###### _2020-10-30 13:16:09_ | Diff: [b4c97ed...fcb68d1](https://github.com/ChromeDevTools/devtools-protocol/compare/b4c97ed...fcb68d1)
+#### `Tracing`: modified command
+* [`Tracing.requestMemoryDump`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-requestMemoryDump) - The parameters's `levelOfDetail` _added_.
+#### `Tracing`: new type
+* [`Tracing.MemoryDumpLevelOfDetail`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-MemoryDumpLevelOfDetail)
+
+
+## Roll protocol to r822651
+###### _2020-10-30 08:16:03_ | Diff: [260c66a...b4c97ed](https://github.com/ChromeDevTools/devtools-protocol/compare/260c66a...b4c97ed)
+#### `Emulation`: new command
+* [`Emulation.setDisabledImageTypes`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDisabledImageTypes)
+#### `Emulation`: new type
+* [`Emulation.DisabledImageType`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisabledImageType)
+
+
+## Roll protocol to r822096
+###### _2020-10-29 03:16:12_ | Diff: [31947f3...260c66a](https://github.com/ChromeDevTools/devtools-protocol/compare/31947f3...260c66a)
+#### `Network`: modified event
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The parameters's `corsErrorStatus` _added_.
+#### `Network`: new types
+* [`Network.CorsError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CorsError)
+* [`Network.CorsErrorStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CorsErrorStatus)
+
+
+## Roll protocol to r820307
+###### _2020-10-23 10:16:09_ | Diff: [d246615...31947f3](https://github.com/ChromeDevTools/devtools-protocol/compare/d246615...31947f3)
+#### `Network`: new command
+* [`Network.setAttachDebugStack`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugStack)
+#### `Network`: removed command
+* [`Network.setAttachDebugHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugHeader)
+
+
+## Roll protocol to r820101
+###### _2020-10-22 19:16:05_ | Diff: [d0179ab...d246615](https://github.com/ChromeDevTools/devtools-protocol/compare/d0179ab...d246615)
+#### `Browser`: new command
+* [`Browser.executeBrowserCommand`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-executeBrowserCommand)
+#### `Browser`: new type
+* [`Browser.BrowserCommandId`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserCommandId)
+
+
+## Roll protocol to r820081
+###### _2020-10-22 18:16:08_ | Diff: [109271e...d0179ab](https://github.com/ChromeDevTools/devtools-protocol/compare/109271e...d0179ab)
+#### `Input`: modified command
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `pointerType` in the parameters had `enum` _removed_. The `deltaX` in the parameters had `name` _updated_. The `deltaX` in the parameters had `description` _updated_. The `deltaY` in the parameters had `name` _updated_. The `deltaY` in the parameters had `description` _updated_. The `pointerType` in the parameters had `name` _updated_. The `pointerType` in the parameters had `description` _updated_. The `pointerType` in the parameters had `type` _updated_. The parameters's `experimental` _added_ (3 times). The parameters's `tiltY` _added_. The parameters's `twist` _added_. The parameters's `deltaX` _added_. The parameters's `deltaY` _added_. The parameters's `pointerType` _added_.
+#### `Input`: modified type
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint) - The `id` in the properties had `name` _updated_. The `id` in the properties had `description` _updated_. The properties's `experimental` _added_. The properties's `tiltX` _added_. The properties's `tiltY` _added_. The properties's `twist` _added_. The properties's `id` _added_.
+
+
+## Roll protocol to r819498
+###### _2020-10-21 13:16:11_ | Diff: [89f0fa5...109271e](https://github.com/ChromeDevTools/devtools-protocol/compare/89f0fa5...109271e)
+#### `WebAuthn`: new type
+* [`WebAuthn.Ctap2Version`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Ctap2Version)
+#### `WebAuthn`: modified types
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions) - The `hasResidentKey` in the properties had `description` _removed_. The `hasResidentKey` in the properties had `optional` _removed_. The `hasResidentKey` in the properties had `type` _removed_. The `transport` in the properties had `name` _updated_. The `transport` in the properties had `$ref` _updated_. The `hasResidentKey` in the properties had `name` _updated_. The `hasUserVerification` in the properties had `name` _updated_. The `hasLargeBlob` in the properties had `name` _updated_. The `hasLargeBlob` in the properties had `description` _updated_. The `automaticPresenceSimulation` in the properties had `name` _updated_. The `automaticPresenceSimulation` in the properties had `description` _updated_. The `isUserVerified` in the properties had `name` _updated_. The `isUserVerified` in the properties had `description` _updated_. The properties's `description` _added_. The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `isUserVerified` _added_.
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential) - The properties's `largeBlob` _added_.
+
+
+## Roll protocol to r818974
+###### _2020-10-20 10:16:05_ | Diff: [1feb204...89f0fa5](https://github.com/ChromeDevTools/devtools-protocol/compare/1feb204...89f0fa5)
+#### `DOM`: modified type
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType) - The enum's `first-line-inherited` _updated_. The enum's `scrollbar` _updated_. The enum's `scrollbar-thumb` _updated_. The enum's `scrollbar-button` _updated_. The enum's `scrollbar-track` _updated_. The enum's `scrollbar-track-piece` _updated_. The enum's `scrollbar-corner` _updated_. The enum's `resizer` _updated_. The enum's `input-list-button` _updated_. The enum's `input-list-button` _added_.
+
+
+## Roll protocol to r818844
+###### _2020-10-20 03:15:54_ | Diff: [e1b8740...1feb204](https://github.com/ChromeDevTools/devtools-protocol/compare/e1b8740...1feb204)
+#### `Audits`: modified type
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails) - The `contentSecurityPolicyViolationType` in the properties had `$ref` _removed_. The `frameAncestor` in the properties had `optional` _removed_. The `contentSecurityPolicyViolationType` in the properties had `name` _updated_. The `frameAncestor` in the properties had `name` _updated_. The `frameAncestor` in the properties had `$ref` _updated_. The `sourceCodeLocation` in the properties had `name` _updated_. The `sourceCodeLocation` in the properties had `$ref` _updated_. The `violatingNodeId` in the properties had `name` _updated_. The `violatingNodeId` in the properties had `$ref` _updated_. The properties's `type` _added_. The properties's `violatingNodeId` _added_.
+
+
+## Roll protocol to r818814
+###### _2020-10-20 00:15:59_ | Diff: [f72d9f7...e1b8740](https://github.com/ChromeDevTools/devtools-protocol/compare/f72d9f7...e1b8740)
+#### `Storage`: new command
+* [`Storage.overrideQuotaForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-overrideQuotaForOrigin)
+#### `Storage`: modified command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota) - The `usageBreakdown` in the return value had `items` _removed_. The `usageBreakdown` in the return value had `name` _updated_. The `usageBreakdown` in the return value had `description` _updated_. The `usageBreakdown` in the return value had `type` _updated_. The return value's `usageBreakdown` _added_.
+
+
+## Roll protocol to r816699
+###### _2020-10-13 12:16:04_ | Diff: [d268e57...f72d9f7](https://github.com/ChromeDevTools/devtools-protocol/compare/d268e57...f72d9f7)
+#### `Network`: modified types
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason) - The enum's `SchemefulSameSiteStrict` _added_. The enum's `SchemefulSameSiteLax` _added_. The enum's `SchemefulSameSiteUnspecifiedTreatedAsLax` _added_.
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason) - The enum's `SchemefulSameSiteStrict` _added_. The enum's `SchemefulSameSiteLax` _added_. The enum's `SchemefulSameSiteUnspecifiedTreatedAsLax` _added_.
+
+
+## Roll protocol to r816501
+###### _2020-10-13 03:16:04_ | Diff: [b72ea89...d268e57](https://github.com/ChromeDevTools/devtools-protocol/compare/b72ea89...d268e57)
+#### `Browser`: modified types
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `idleDetection` _updated_. The enum's `wakeLockScreen` _updated_. The enum's `wakeLockSystem` _updated_. The enum's `wakeLockSystem` _added_.
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor) - The properties's `panTiltZoom` _added_.
+
+
+## Roll protocol to r815575
+###### _2020-10-09 05:16:03_ | Diff: [5c44cf2...b72ea89](https://github.com/ChromeDevTools/devtools-protocol/compare/5c44cf2...b72ea89)
+#### `Network`: new types
+* [`Network.TrustTokenParams`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TrustTokenParams)
+* [`Network.TrustTokenOperationType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TrustTokenOperationType)
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The properties's `trustTokenParams` _added_.
+
+
+## Roll protocol to r814213
+###### _2020-10-06 08:18:01_ | Diff: [f99d711...5c44cf2](https://github.com/ChromeDevTools/devtools-protocol/compare/f99d711...5c44cf2)
+#### `Console`: new domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Console`: new commands
+* [`Console.clearMessages`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-clearMessages)
+* [`Console.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-disable)
+* [`Console.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-enable)
+#### `Console`: new event
+* [`Console.messageAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#event-messageAdded)
+#### `Console`: new type
+* [`Console.ConsoleMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#type-ConsoleMessage)
+#### `Debugger`: new commands
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation)
+* [`Debugger.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-disable)
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable)
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame)
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator)
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints)
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource)
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode)
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace)
+* [`Debugger.pause`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pause)
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall)
+* [`Debugger.removeBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-removeBreakpoint)
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame)
+* [`Debugger.resume`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-resume)
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent)
+* [`Debugger.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setAsyncCallStackDepth)
+* [`Debugger.setBlackboxPatterns`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxPatterns)
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges)
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint)
+* [`Debugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setInstrumentationBreakpoint)
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl)
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall)
+* [`Debugger.setBreakpointsActive`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointsActive)
+* [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions)
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue)
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource)
+* [`Debugger.setSkipAllPauses`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setSkipAllPauses)
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue)
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto)
+* [`Debugger.stepOut`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOut)
+* [`Debugger.stepOver`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOver)
+#### `Debugger`: new events
+* [`Debugger.breakpointResolved`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-breakpointResolved)
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused)
+* [`Debugger.resumed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-resumed)
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse)
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed)
+#### `Debugger`: new types
+* [`Debugger.BreakpointId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakpointId)
+* [`Debugger.CallFrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrameId)
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location)
+* [`Debugger.ScriptPosition`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptPosition)
+* [`Debugger.LocationRange`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-LocationRange)
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame)
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope)
+* [`Debugger.SearchMatch`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-SearchMatch)
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation)
+* [`Debugger.ScriptLanguage`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptLanguage)
+* [`Debugger.DebugSymbols`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-DebugSymbols)
+#### `HeapProfiler`: new commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject)
+* [`HeapProfiler.collectGarbage`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-collectGarbage)
+* [`HeapProfiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-disable)
+* [`HeapProfiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-enable)
+* [`HeapProfiler.getHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getHeapObjectId)
+* [`HeapProfiler.getObjectByHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getObjectByHeapObjectId)
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile)
+* [`HeapProfiler.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startSampling)
+* [`HeapProfiler.startTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startTrackingHeapObjects)
+* [`HeapProfiler.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopSampling)
+* [`HeapProfiler.stopTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopTrackingHeapObjects)
+* [`HeapProfiler.takeHeapSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-takeHeapSnapshot)
+#### `HeapProfiler`: new events
+* [`HeapProfiler.addHeapSnapshotChunk`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-addHeapSnapshotChunk)
+* [`HeapProfiler.heapStatsUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-heapStatsUpdate)
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId)
+* [`HeapProfiler.reportHeapSnapshotProgress`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-reportHeapSnapshotProgress)
+* [`HeapProfiler.resetProfiles`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-resetProfiles)
+#### `HeapProfiler`: new types
+* [`HeapProfiler.HeapSnapshotObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-HeapSnapshotObjectId)
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode)
+* [`HeapProfiler.SamplingHeapProfileSample`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileSample)
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile)
+#### `Profiler`: new commands
+* [`Profiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disable)
+* [`Profiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enable)
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage)
+* [`Profiler.setSamplingInterval`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-setSamplingInterval)
+* [`Profiler.start`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-start)
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage)
+* [`Profiler.startTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startTypeProfile)
+* [`Profiler.stop`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stop)
+* [`Profiler.stopPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopPreciseCoverage)
+* [`Profiler.stopTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopTypeProfile)
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage)
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile)
+* [`Profiler.enableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableCounters)
+* [`Profiler.disableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableCounters)
+* [`Profiler.getCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getCounters)
+* [`Profiler.enableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableRuntimeCallStats)
+* [`Profiler.disableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableRuntimeCallStats)
+* [`Profiler.getRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getRuntimeCallStats)
+#### `Profiler`: new events
+* [`Profiler.consoleProfileFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileFinished)
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted)
+* [`Profiler.preciseCoverageDeltaUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-preciseCoverageDeltaUpdate)
+#### `Profiler`: new types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode)
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile)
+* [`Profiler.PositionTickInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-PositionTickInfo)
+* [`Profiler.CoverageRange`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CoverageRange)
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage)
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage)
+* [`Profiler.TypeObject`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeObject)
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry)
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile)
+* [`Profiler.CounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CounterInfo)
+* [`Profiler.RuntimeCallCounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-RuntimeCallCounterInfo)
+#### `Runtime`: new commands
+* [`Runtime.awaitPromise`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-awaitPromise)
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn)
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript)
+* [`Runtime.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-disable)
+* [`Runtime.discardConsoleEntries`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-discardConsoleEntries)
+* [`Runtime.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-enable)
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate)
+* [`Runtime.getIsolateId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getIsolateId)
+* [`Runtime.getHeapUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getHeapUsage)
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties)
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames)
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects)
+* [`Runtime.releaseObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObject)
+* [`Runtime.releaseObjectGroup`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObjectGroup)
+* [`Runtime.runIfWaitingForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runIfWaitingForDebugger)
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript)
+* [`Runtime.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setAsyncCallStackDepth)
+* [`Runtime.setCustomObjectFormatterEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setCustomObjectFormatterEnabled)
+* [`Runtime.setMaxCallStackSizeToCapture`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setMaxCallStackSizeToCapture)
+* [`Runtime.terminateExecution`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-terminateExecution)
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding)
+* [`Runtime.removeBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-removeBinding)
+#### `Runtime`: new events
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled)
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled)
+* [`Runtime.exceptionRevoked`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionRevoked)
+* [`Runtime.exceptionThrown`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionThrown)
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated)
+* [`Runtime.executionContextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextDestroyed)
+* [`Runtime.executionContextsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextsCleared)
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested)
+#### `Runtime`: new types
+* [`Runtime.ScriptId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ScriptId)
+* [`Runtime.RemoteObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObjectId)
+* [`Runtime.UnserializableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UnserializableValue)
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject)
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview)
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview)
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview)
+* [`Runtime.EntryPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-EntryPreview)
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor)
+* [`Runtime.InternalPropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-InternalPropertyDescriptor)
+* [`Runtime.PrivatePropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PrivatePropertyDescriptor)
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument)
+* [`Runtime.ExecutionContextId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextId)
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription)
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails)
+* [`Runtime.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-Timestamp)
+* [`Runtime.TimeDelta`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-TimeDelta)
+* [`Runtime.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallFrame)
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace)
+* [`Runtime.UniqueDebuggerId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UniqueDebuggerId)
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId)
+#### `Schema`: new command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains)
+#### `Schema`: new type
+* [`Schema.Domain`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#type-Domain)
+#### `Accessibility`: new domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+#### `Accessibility`: new commands
+* [`Accessibility.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-disable)
+* [`Accessibility.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-enable)
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree)
+* [`Accessibility.getFullAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getFullAXTree)
+* [`Accessibility.queryAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-queryAXTree)
+#### `Accessibility`: new types
+* [`Accessibility.AXNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNodeId)
+* [`Accessibility.AXValueType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueType)
+* [`Accessibility.AXValueSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSourceType)
+* [`Accessibility.AXValueNativeSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueNativeSourceType)
+* [`Accessibility.AXValueSource`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSource)
+* [`Accessibility.AXRelatedNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelatedNode)
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty)
+* [`Accessibility.AXValue`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValue)
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName)
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode)
+#### `Animation`: new commands
+* [`Animation.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-disable)
+* [`Animation.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-enable)
+* [`Animation.getCurrentTime`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getCurrentTime)
+* [`Animation.getPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getPlaybackRate)
+* [`Animation.releaseAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-releaseAnimations)
+* [`Animation.resolveAnimation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-resolveAnimation)
+* [`Animation.seekAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-seekAnimations)
+* [`Animation.setPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPaused)
+* [`Animation.setPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPlaybackRate)
+* [`Animation.setTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setTiming)
+#### `Animation`: new events
+* [`Animation.animationCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCanceled)
+* [`Animation.animationCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCreated)
+* [`Animation.animationStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationStarted)
+#### `Animation`: new types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation)
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect)
+* [`Animation.KeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframesRule)
+* [`Animation.KeyframeStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframeStyle)
+#### `ApplicationCache`: new commands
+* [`ApplicationCache.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-enable)
+* [`ApplicationCache.getApplicationCacheForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getApplicationCacheForFrame)
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests)
+* [`ApplicationCache.getManifestForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getManifestForFrame)
+#### `ApplicationCache`: new events
+* [`ApplicationCache.applicationCacheStatusUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-applicationCacheStatusUpdated)
+* [`ApplicationCache.networkStateUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-networkStateUpdated)
+#### `ApplicationCache`: new types
+* [`ApplicationCache.ApplicationCacheResource`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCacheResource)
+* [`ApplicationCache.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCache)
+* [`ApplicationCache.FrameWithManifest`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-FrameWithManifest)
+#### `Audits`: new commands
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse)
+* [`Audits.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-disable)
+* [`Audits.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-enable)
+#### `Audits`: new event
+* [`Audits.issueAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#event-issueAdded)
+#### `Audits`: new types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie)
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.AffectedFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedFrame)
+* [`Audits.SameSiteCookieExclusionReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieExclusionReason)
+* [`Audits.SameSiteCookieWarningReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieWarningReason)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails)
+* [`Audits.MixedContentResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResolutionStatus)
+* [`Audits.MixedContentResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResourceType)
+* [`Audits.MixedContentIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentIssueDetails)
+* [`Audits.BlockedByResponseReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseReason)
+* [`Audits.BlockedByResponseIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseIssueDetails)
+* [`Audits.HeavyAdResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdResolutionStatus)
+* [`Audits.HeavyAdReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdReason)
+* [`Audits.HeavyAdIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdIssueDetails)
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.SourceCodeLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SourceCodeLocation)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode)
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails)
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue)
+#### `BackgroundService`: new commands
+* [`BackgroundService.startObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-startObserving)
+* [`BackgroundService.stopObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-stopObserving)
+* [`BackgroundService.setRecording`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-setRecording)
+* [`BackgroundService.clearEvents`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-clearEvents)
+#### `BackgroundService`: new events
+* [`BackgroundService.recordingStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-recordingStateChanged)
+* [`BackgroundService.backgroundServiceEventReceived`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-backgroundServiceEventReceived)
+#### `BackgroundService`: new types
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName)
+* [`BackgroundService.EventMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-EventMetadata)
+* [`BackgroundService.BackgroundServiceEvent`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-BackgroundServiceEvent)
+#### `Browser`: new commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission)
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions)
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions)
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior)
+* [`Browser.close`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-close)
+* [`Browser.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crash)
+* [`Browser.crashGpuProcess`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crashGpuProcess)
+* [`Browser.getVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion)
+* [`Browser.getBrowserCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getBrowserCommandLine)
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms)
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram)
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds)
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget)
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds)
+* [`Browser.setDockTile`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDockTile)
+#### `Browser`: new types
+* [`Browser.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserContextID)
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID)
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState)
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds)
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType)
+* [`Browser.PermissionSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionSetting)
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor)
+* [`Browser.Bucket`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bucket)
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram)
+#### `CSS`: new commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule)
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames)
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet)
+* [`CSS.disable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-disable)
+* [`CSS.enable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-enable)
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState)
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors)
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode)
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode)
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode)
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries)
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode)
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText)
+* [`CSS.trackComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-trackComputedStyleUpdates)
+* [`CSS.takeComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeComputedStyleUpdates)
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode)
+* [`CSS.setKeyframeKey`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setKeyframeKey)
+* [`CSS.setMediaText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setMediaText)
+* [`CSS.setRuleSelector`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setRuleSelector)
+* [`CSS.setStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleSheetText)
+* [`CSS.setStyleTexts`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleTexts)
+* [`CSS.startRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-startRuleUsageTracking)
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking)
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta)
+* [`CSS.setLocalFontsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setLocalFontsEnabled)
+#### `CSS`: new events
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated)
+* [`CSS.mediaQueryResultChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-mediaQueryResultChanged)
+* [`CSS.styleSheetAdded`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetAdded)
+* [`CSS.styleSheetChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetChanged)
+* [`CSS.styleSheetRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetRemoved)
+#### `CSS`: new types
+* [`CSS.StyleSheetId`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetId)
+* [`CSS.StyleSheetOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetOrigin)
+* [`CSS.PseudoElementMatches`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PseudoElementMatches)
+* [`CSS.InheritedStyleEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InheritedStyleEntry)
+* [`CSS.RuleMatch`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleMatch)
+* [`CSS.Value`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-Value)
+* [`CSS.SelectorList`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SelectorList)
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader)
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule)
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage)
+* [`CSS.SourceRange`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SourceRange)
+* [`CSS.ShorthandEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-ShorthandEntry)
+* [`CSS.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSComputedStyleProperty)
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle)
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty)
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia)
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery)
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression)
+* [`CSS.PlatformFontUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PlatformFontUsage)
+* [`CSS.FontVariationAxis`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontVariationAxis)
+* [`CSS.FontFace`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontFace)
+* [`CSS.CSSKeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframesRule)
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule)
+* [`CSS.StyleDeclarationEdit`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleDeclarationEdit)
+#### `CacheStorage`: new commands
+* [`CacheStorage.deleteCache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteCache)
+* [`CacheStorage.deleteEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteEntry)
+* [`CacheStorage.requestCacheNames`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCacheNames)
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse)
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries)
+#### `CacheStorage`: new types
+* [`CacheStorage.CacheId`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CacheId)
+* [`CacheStorage.CachedResponseType`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponseType)
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry)
+* [`CacheStorage.Cache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Cache)
+* [`CacheStorage.Header`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Header)
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse)
+#### `Cast`: new commands
+* [`Cast.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-enable)
+* [`Cast.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-disable)
+* [`Cast.setSinkToUse`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-setSinkToUse)
+* [`Cast.startTabMirroring`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-startTabMirroring)
+* [`Cast.stopCasting`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-stopCasting)
+#### `Cast`: new events
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated)
+* [`Cast.issueUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-issueUpdated)
+#### `Cast`: new type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+#### `DOM`: new commands
+* [`DOM.collectClassNamesFromSubtree`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-collectClassNamesFromSubtree)
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo)
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode)
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+* [`DOM.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-disable)
+* [`DOM.discardSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-discardSearchResults)
+* [`DOM.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-enable)
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus)
+* [`DOM.getAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getAttributes)
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel)
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads)
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument)
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument)
+* [`DOM.getNodesForSubtreeByStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodesForSubtreeByStyle)
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation)
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML)
+* [`DOM.getRelayoutBoundary`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getRelayoutBoundary)
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults)
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight)
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode)
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect)
+* [`DOM.markUndoableState`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-markUndoableState)
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo)
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch)
+* [`DOM.pushNodeByPathToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodeByPathToFrontend)
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend)
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector)
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll)
+* [`DOM.redo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-redo)
+* [`DOM.removeAttribute`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeAttribute)
+* [`DOM.removeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeNode)
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes)
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode)
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode)
+* [`DOM.setAttributeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributeValue)
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText)
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles)
+* [`DOM.setNodeStackTracesEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeStackTracesEnabled)
+* [`DOM.getNodeStackTraces`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeStackTraces)
+* [`DOM.getFileInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFileInfo)
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode)
+* [`DOM.setNodeName`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeName)
+* [`DOM.setNodeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeValue)
+* [`DOM.setOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setOuterHTML)
+* [`DOM.undo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-undo)
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner)
+#### `DOM`: new events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified)
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved)
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified)
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated)
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted)
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved)
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated)
+* [`DOM.documentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated)
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated)
+* [`DOM.pseudoElementAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded)
+* [`DOM.pseudoElementRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved)
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes)
+* [`DOM.shadowRootPopped`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped)
+* [`DOM.shadowRootPushed`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed)
+#### `DOM`: new types
+* [`DOM.NodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-NodeId)
+* [`DOM.BackendNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNodeId)
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode)
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType)
+* [`DOM.ShadowRootType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShadowRootType)
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node)
+* [`DOM.RGBA`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-RGBA)
+* [`DOM.Quad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Quad)
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel)
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo)
+* [`DOM.Rect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Rect)
+* [`DOM.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-CSSComputedStyleProperty)
+#### `DOMDebugger`: new commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners)
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint)
+* [`DOMDebugger.removeEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeEventListenerBreakpoint)
+* [`DOMDebugger.removeInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeInstrumentationBreakpoint)
+* [`DOMDebugger.removeXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeXHRBreakpoint)
+* [`DOMDebugger.setDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setDOMBreakpoint)
+* [`DOMDebugger.setEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setEventListenerBreakpoint)
+* [`DOMDebugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setInstrumentationBreakpoint)
+* [`DOMDebugger.setXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setXHRBreakpoint)
+#### `DOMDebugger`: new types
+* [`DOMDebugger.DOMBreakpointType`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-DOMBreakpointType)
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener)
+#### `DOMSnapshot`: new commands
+* [`DOMSnapshot.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-disable)
+* [`DOMSnapshot.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-enable)
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot)
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot)
+#### `DOMSnapshot`: new types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode)
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox)
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode)
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle)
+* [`DOMSnapshot.NameValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NameValue)
+* [`DOMSnapshot.StringIndex`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StringIndex)
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings)
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData)
+* [`DOMSnapshot.RareBooleanData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareBooleanData)
+* [`DOMSnapshot.RareIntegerData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareIntegerData)
+* [`DOMSnapshot.Rectangle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-Rectangle)
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot)
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot)
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot)
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot)
+#### `DOMStorage`: new commands
+* [`DOMStorage.clear`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-clear)
+* [`DOMStorage.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-disable)
+* [`DOMStorage.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-enable)
+* [`DOMStorage.getDOMStorageItems`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-getDOMStorageItems)
+* [`DOMStorage.removeDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-removeDOMStorageItem)
+* [`DOMStorage.setDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-setDOMStorageItem)
+#### `DOMStorage`: new events
+* [`DOMStorage.domStorageItemAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemAdded)
+* [`DOMStorage.domStorageItemRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemRemoved)
+* [`DOMStorage.domStorageItemUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemUpdated)
+* [`DOMStorage.domStorageItemsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemsCleared)
+#### `DOMStorage`: new types
+* [`DOMStorage.StorageId`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-StorageId)
+* [`DOMStorage.Item`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-Item)
+#### `Database`: new commands
+* [`Database.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-disable)
+* [`Database.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-enable)
+* [`Database.executeSQL`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-executeSQL)
+* [`Database.getDatabaseTableNames`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-getDatabaseTableNames)
+#### `Database`: new event
+* [`Database.addDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#event-addDatabase)
+#### `Database`: new types
+* [`Database.DatabaseId`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-DatabaseId)
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database)
+* [`Database.Error`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Error)
+#### `DeviceOrientation`: new commands
+* [`DeviceOrientation.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-clearDeviceOrientationOverride)
+* [`DeviceOrientation.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-setDeviceOrientationOverride)
+#### `Emulation`: new commands
+* [`Emulation.canEmulate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-canEmulate)
+* [`Emulation.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearDeviceMetricsOverride)
+* [`Emulation.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearGeolocationOverride)
+* [`Emulation.resetPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-resetPageScaleFactor)
+* [`Emulation.setFocusEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setFocusEmulationEnabled)
+* [`Emulation.setCPUThrottlingRate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setCPUThrottlingRate)
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride)
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride)
+* [`Emulation.setScrollbarsHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScrollbarsHidden)
+* [`Emulation.setDocumentCookieDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDocumentCookieDisabled)
+* [`Emulation.setEmitTouchEventsForMouse`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmitTouchEventsForMouse)
+* [`Emulation.setEmulatedMedia`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedMedia)
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+* [`Emulation.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setGeolocationOverride)
+* [`Emulation.setIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setIdleOverride)
+* [`Emulation.clearIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearIdleOverride)
+* [`Emulation.setNavigatorOverrides`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setNavigatorOverrides)
+* [`Emulation.setPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setPageScaleFactor)
+* [`Emulation.setScriptExecutionDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScriptExecutionDisabled)
+* [`Emulation.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTouchEmulationEnabled)
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy)
+* [`Emulation.setLocaleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setLocaleOverride)
+* [`Emulation.setTimezoneOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTimezoneOverride)
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize)
+* [`Emulation.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setUserAgentOverride)
+#### `Emulation`: new event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired)
+#### `Emulation`: new types
+* [`Emulation.ScreenOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-ScreenOrientation)
+* [`Emulation.DisplayFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisplayFeature)
+* [`Emulation.MediaFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-MediaFeature)
+* [`Emulation.VirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-VirtualTimePolicy)
+* [`Emulation.UserAgentBrandVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentBrandVersion)
+* [`Emulation.UserAgentMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentMetadata)
+#### `HeadlessExperimental`: new commands
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame)
+* [`HeadlessExperimental.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-disable)
+* [`HeadlessExperimental.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enable)
+#### `HeadlessExperimental`: new event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged)
+#### `HeadlessExperimental`: new type
+* [`HeadlessExperimental.ScreenshotParams`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#type-ScreenshotParams)
+#### `IO`: new commands
+* [`IO.close`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-close)
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read)
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob)
+#### `IO`: new type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle)
+#### `IndexedDB`: new commands
+* [`IndexedDB.clearObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-clearObjectStore)
+* [`IndexedDB.deleteDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteDatabase)
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries)
+* [`IndexedDB.disable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-disable)
+* [`IndexedDB.enable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-enable)
+* [`IndexedDB.requestData`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestData)
+* [`IndexedDB.getMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getMetadata)
+* [`IndexedDB.requestDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabase)
+* [`IndexedDB.requestDatabaseNames`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabaseNames)
+#### `IndexedDB`: new types
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores)
+* [`IndexedDB.ObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStore)
+* [`IndexedDB.ObjectStoreIndex`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStoreIndex)
+* [`IndexedDB.Key`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-Key)
+* [`IndexedDB.KeyRange`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyRange)
+* [`IndexedDB.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DataEntry)
+* [`IndexedDB.KeyPath`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyPath)
+#### `Input`: new commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent)
+* [`Input.insertText`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-insertText)
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent)
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent)
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent)
+* [`Input.setIgnoreInputEvents`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-setIgnoreInputEvents)
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture)
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture)
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture)
+#### `Input`: new types
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint)
+* [`Input.GestureSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-GestureSourceType)
+* [`Input.MouseButton`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-MouseButton)
+* [`Input.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TimeSinceEpoch)
+#### `Inspector`: new commands
+* [`Inspector.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-disable)
+* [`Inspector.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-enable)
+#### `Inspector`: new events
+* [`Inspector.detached`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-detached)
+* [`Inspector.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetCrashed)
+* [`Inspector.targetReloadedAfterCrash`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetReloadedAfterCrash)
+#### `LayerTree`: new commands
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons)
+* [`LayerTree.disable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-disable)
+* [`LayerTree.enable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-enable)
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot)
+* [`LayerTree.makeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-makeSnapshot)
+* [`LayerTree.profileSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-profileSnapshot)
+* [`LayerTree.releaseSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-releaseSnapshot)
+* [`LayerTree.replaySnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-replaySnapshot)
+* [`LayerTree.snapshotCommandLog`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-snapshotCommandLog)
+#### `LayerTree`: new events
+* [`LayerTree.layerPainted`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerPainted)
+* [`LayerTree.layerTreeDidChange`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerTreeDidChange)
+#### `LayerTree`: new types
+* [`LayerTree.LayerId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-LayerId)
+* [`LayerTree.SnapshotId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-SnapshotId)
+* [`LayerTree.ScrollRect`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-ScrollRect)
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint)
+* [`LayerTree.PictureTile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PictureTile)
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer)
+* [`LayerTree.PaintProfile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PaintProfile)
+#### `Log`: new commands
+* [`Log.clear`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-clear)
+* [`Log.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-disable)
+* [`Log.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-enable)
+* [`Log.startViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-startViolationsReport)
+* [`Log.stopViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-stopViolationsReport)
+#### `Log`: new event
+* [`Log.entryAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#event-entryAdded)
+#### `Log`: new types
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry)
+* [`Log.ViolationSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-ViolationSetting)
+#### `Memory`: new commands
+* [`Memory.getDOMCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getDOMCounters)
+* [`Memory.prepareForLeakDetection`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-prepareForLeakDetection)
+* [`Memory.forciblyPurgeJavaScriptMemory`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-forciblyPurgeJavaScriptMemory)
+* [`Memory.setPressureNotificationsSuppressed`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-setPressureNotificationsSuppressed)
+* [`Memory.simulatePressureNotification`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-simulatePressureNotification)
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile)
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: new types
+* [`Memory.PressureLevel`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-PressureLevel)
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+* [`Memory.Module`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-Module)
+#### `Network`: new commands
+* [`Network.canClearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCache)
+* [`Network.canClearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCookies)
+* [`Network.canEmulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canEmulateNetworkConditions)
+* [`Network.clearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCache)
+* [`Network.clearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCookies)
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest)
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies)
+* [`Network.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-disable)
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions)
+* [`Network.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enable)
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies)
+* [`Network.getCertificate`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCertificate)
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies)
+* [`Network.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBody)
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData)
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream)
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR)
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody)
+* [`Network.setBlockedURLs`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBlockedURLs)
+* [`Network.setBypassServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBypassServiceWorker)
+* [`Network.setCacheDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCacheDisabled)
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie)
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies)
+* [`Network.setDataSizeLimitsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setDataSizeLimitsForTest)
+* [`Network.setExtraHTTPHeaders`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setExtraHTTPHeaders)
+* [`Network.setAttachDebugHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugHeader)
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception)
+* [`Network.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setUserAgentOverride)
+* [`Network.getSecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getSecurityIsolationStatus)
+* [`Network.loadNetworkResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-loadNetworkResource)
+#### `Network`: new events
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived)
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived)
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed)
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished)
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted)
+* [`Network.requestServedFromCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestServedFromCache)
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent)
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority)
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived)
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived)
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed)
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated)
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError)
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived)
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent)
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived)
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest)
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo)
+* [`Network.responseReceivedExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceivedExtraInfo)
+#### `Network`: new types
+* [`Network.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceType)
+* [`Network.LoaderId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoaderId)
+* [`Network.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestId)
+* [`Network.InterceptionId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionId)
+* [`Network.ErrorReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ErrorReason)
+* [`Network.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TimeSinceEpoch)
+* [`Network.MonotonicTime`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-MonotonicTime)
+* [`Network.Headers`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Headers)
+* [`Network.ConnectionType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ConnectionType)
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite)
+* [`Network.CookiePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookiePriority)
+* [`Network.ResourceTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceTiming)
+* [`Network.ResourcePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourcePriority)
+* [`Network.PostDataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PostDataEntry)
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request)
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp)
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails)
+* [`Network.CertificateTransparencyCompliance`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CertificateTransparencyCompliance)
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason)
+* [`Network.ServiceWorkerResponseSource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ServiceWorkerResponseSource)
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response)
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest)
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse)
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame)
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource)
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator)
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie)
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason)
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason)
+* [`Network.BlockedSetCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedSetCookieWithReason)
+* [`Network.BlockedCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedCookieWithReason)
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam)
+* [`Network.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallenge)
+* [`Network.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallengeResponse)
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern)
+* [`Network.SignedExchangeSignature`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeSignature)
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader)
+* [`Network.SignedExchangeErrorField`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeErrorField)
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError)
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo)
+* [`Network.CrossOriginOpenerPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyValue)
+* [`Network.CrossOriginOpenerPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyStatus)
+* [`Network.CrossOriginEmbedderPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyValue)
+* [`Network.CrossOriginEmbedderPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyStatus)
+* [`Network.SecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityIsolationStatus)
+* [`Network.LoadNetworkResourcePageResult`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourcePageResult)
+* [`Network.LoadNetworkResourceOptions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourceOptions)
+#### `Overlay`: new commands
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+* [`Overlay.getGridHighlightObjectsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getGridHighlightObjectsForTest)
+* [`Overlay.getSourceOrderHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getSourceOrderHighlightObjectForTest)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightSourceOrder`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightSourceOrder)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.setShowAdHighlights`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowAdHighlights)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowGridOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowGridOverlays)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowLayoutShiftRegions`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowLayoutShiftRegions)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowHitTestBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHitTestBorders)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setShowHinge`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHinge)
+#### `Overlay`: new events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested)
+* [`Overlay.inspectModeCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectModeCanceled)
+#### `Overlay`: new types
+* [`Overlay.SourceOrderConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-SourceOrderConfig)
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig)
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.ColorFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ColorFormat)
+* [`Overlay.GridNodeHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridNodeHighlightConfig)
+* [`Overlay.HingeConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HingeConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `Page`: new commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad)
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument)
+* [`Page.bringToFront`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-bringToFront)
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot)
+* [`Page.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureSnapshot)
+* [`Page.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceMetricsOverride)
+* [`Page.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceOrientationOverride)
+* [`Page.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearGeolocationOverride)
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld)
+* [`Page.deleteCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-deleteCookie)
+* [`Page.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-disable)
+* [`Page.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-enable)
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest)
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors)
+* [`Page.getManifestIcons`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getManifestIcons)
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies)
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree)
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics)
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory)
+* [`Page.resetNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-resetNavigationHistory)
+* [`Page.getResourceContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceContent)
+* [`Page.getResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceTree)
+* [`Page.handleJavaScriptDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleJavaScriptDialog)
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate)
+* [`Page.navigateToHistoryEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigateToHistoryEntry)
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF)
+* [`Page.reload`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-reload)
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad)
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument)
+* [`Page.screencastFrameAck`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-screencastFrameAck)
+* [`Page.searchInResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-searchInResource)
+* [`Page.setAdBlockingEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setAdBlockingEnabled)
+* [`Page.setBypassCSP`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setBypassCSP)
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride)
+* [`Page.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceOrientationOverride)
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies)
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes)
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent)
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior)
+* [`Page.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setGeolocationOverride)
+* [`Page.setLifecycleEventsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setLifecycleEventsEnabled)
+* [`Page.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setTouchEmulationEnabled)
+* [`Page.startScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-startScreencast)
+* [`Page.stopLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopLoading)
+* [`Page.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-crash)
+* [`Page.close`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-close)
+* [`Page.setWebLifecycleState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setWebLifecycleState)
+* [`Page.stopScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopScreencast)
+* [`Page.setProduceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setProduceCompilationCache)
+* [`Page.addCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addCompilationCache)
+* [`Page.clearCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearCompilationCache)
+* [`Page.generateTestReport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-generateTestReport)
+* [`Page.waitForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-waitForDebugger)
+* [`Page.setInterceptFileChooserDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setInterceptFileChooserDialog)
+#### `Page`: new events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired)
+* [`Page.fileChooserOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-fileChooserOpened)
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached)
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation)
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached)
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated)
+* [`Page.frameResized`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameResized)
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation)
+* [`Page.frameStartedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStartedLoading)
+* [`Page.frameStoppedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStoppedLoading)
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin)
+* [`Page.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadProgress)
+* [`Page.interstitialHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialHidden)
+* [`Page.interstitialShown`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialShown)
+* [`Page.javascriptDialogClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogClosed)
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening)
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent)
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired)
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument)
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame)
+* [`Page.screencastVisibilityChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastVisibilityChanged)
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen)
+* [`Page.compilationCacheProduced`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-compilationCacheProduced)
+#### `Page`: new types
+* [`Page.FrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameId)
+* [`Page.AdFrameType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AdFrameType)
+* [`Page.SecureContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-SecureContextType)
+* [`Page.CrossOriginIsolatedContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-CrossOriginIsolatedContextType)
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame)
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource)
+* [`Page.FrameResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResourceTree)
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree)
+* [`Page.ScriptIdentifier`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScriptIdentifier)
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType)
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry)
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata)
+* [`Page.DialogType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-DialogType)
+* [`Page.AppManifestError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestError)
+* [`Page.AppManifestParsedProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestParsedProperties)
+* [`Page.LayoutViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-LayoutViewport)
+* [`Page.VisualViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-VisualViewport)
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport)
+* [`Page.FontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontFamilies)
+* [`Page.FontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontSizes)
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+* [`Page.ClientNavigationDisposition`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationDisposition)
+* [`Page.InstallabilityErrorArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityErrorArgument)
+* [`Page.InstallabilityError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityError)
+* [`Page.ReferrerPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ReferrerPolicy)
+#### `Performance`: new commands
+* [`Performance.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-disable)
+* [`Performance.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-enable)
+* [`Performance.setTimeDomain`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-setTimeDomain)
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics)
+#### `Performance`: new event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics)
+#### `Performance`: new type
+* [`Performance.Metric`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#type-Metric)
+#### `Security`: new commands
+* [`Security.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-disable)
+* [`Security.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-enable)
+* [`Security.setIgnoreCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setIgnoreCertificateErrors)
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError)
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors)
+#### `Security`: new events
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError)
+* [`Security.visibleSecurityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-visibleSecurityStateChanged)
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged)
+#### `Security`: new types
+* [`Security.CertificateId`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateId)
+* [`Security.MixedContentType`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-MixedContentType)
+* [`Security.SecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityState)
+* [`Security.CertificateSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateSecurityState)
+* [`Security.SafetyTipStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipStatus)
+* [`Security.SafetyTipInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipInfo)
+* [`Security.VisibleSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-VisibleSecurityState)
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation)
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus)
+* [`Security.CertificateErrorAction`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateErrorAction)
+#### `ServiceWorker`: new commands
+* [`ServiceWorker.deliverPushMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-deliverPushMessage)
+* [`ServiceWorker.disable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-disable)
+* [`ServiceWorker.dispatchSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchSyncEvent)
+* [`ServiceWorker.dispatchPeriodicSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchPeriodicSyncEvent)
+* [`ServiceWorker.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-enable)
+* [`ServiceWorker.inspectWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-inspectWorker)
+* [`ServiceWorker.setForceUpdateOnPageLoad`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-setForceUpdateOnPageLoad)
+* [`ServiceWorker.skipWaiting`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-skipWaiting)
+* [`ServiceWorker.startWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-startWorker)
+* [`ServiceWorker.stopAllWorkers`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopAllWorkers)
+* [`ServiceWorker.stopWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopWorker)
+* [`ServiceWorker.unregister`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-unregister)
+* [`ServiceWorker.updateRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-updateRegistration)
+#### `ServiceWorker`: new events
+* [`ServiceWorker.workerErrorReported`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerErrorReported)
+* [`ServiceWorker.workerRegistrationUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerRegistrationUpdated)
+* [`ServiceWorker.workerVersionUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerVersionUpdated)
+#### `ServiceWorker`: new types
+* [`ServiceWorker.RegistrationID`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-RegistrationID)
+* [`ServiceWorker.ServiceWorkerRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerRegistration)
+* [`ServiceWorker.ServiceWorkerVersionRunningStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionRunningStatus)
+* [`ServiceWorker.ServiceWorkerVersionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionStatus)
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion)
+* [`ServiceWorker.ServiceWorkerErrorMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerErrorMessage)
+#### `Storage`: new commands
+* [`Storage.clearDataForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearDataForOrigin)
+* [`Storage.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getCookies)
+* [`Storage.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-setCookies)
+* [`Storage.clearCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearCookies)
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+* [`Storage.trackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackCacheStorageForOrigin)
+* [`Storage.trackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackIndexedDBForOrigin)
+* [`Storage.untrackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackCacheStorageForOrigin)
+* [`Storage.untrackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackIndexedDBForOrigin)
+#### `Storage`: new events
+* [`Storage.cacheStorageContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageContentUpdated)
+* [`Storage.cacheStorageListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageListUpdated)
+* [`Storage.indexedDBContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBContentUpdated)
+* [`Storage.indexedDBListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBListUpdated)
+#### `Storage`: new types
+* [`Storage.StorageType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-StorageType)
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType)
+#### `SystemInfo`: new commands
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo)
+* [`SystemInfo.getProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getProcessInfo)
+#### `SystemInfo`: new types
+* [`SystemInfo.GPUDevice`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUDevice)
+* [`SystemInfo.Size`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-Size)
+* [`SystemInfo.VideoDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoDecodeAcceleratorCapability)
+* [`SystemInfo.VideoEncodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoEncodeAcceleratorCapability)
+* [`SystemInfo.SubsamplingFormat`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-SubsamplingFormat)
+* [`SystemInfo.ImageType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageType)
+* [`SystemInfo.ImageDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageDecodeAcceleratorCapability)
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo)
+* [`SystemInfo.ProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessInfo)
+#### `Target`: new commands
+* [`Target.activateTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-activateTarget)
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget)
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget)
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget)
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol)
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext)
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts)
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget)
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget)
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext)
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo)
+* [`Target.getTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargets)
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget)
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach)
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets)
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations)
+#### `Target`: new events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget)
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget)
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget)
+* [`Target.targetCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCreated)
+* [`Target.targetDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetDestroyed)
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed)
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged)
+#### `Target`: new types
+* [`Target.TargetID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetID)
+* [`Target.SessionID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-SessionID)
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo)
+* [`Target.RemoteLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-RemoteLocation)
+#### `Tethering`: new commands
+* [`Tethering.bind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-bind)
+* [`Tethering.unbind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-unbind)
+#### `Tethering`: new event
+* [`Tethering.accepted`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#event-accepted)
+#### `Tracing`: new commands
+* [`Tracing.end`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-end)
+* [`Tracing.getCategories`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-getCategories)
+* [`Tracing.recordClockSyncMarker`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-recordClockSyncMarker)
+* [`Tracing.requestMemoryDump`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-requestMemoryDump)
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start)
+#### `Tracing`: new events
+* [`Tracing.bufferUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-bufferUsage)
+* [`Tracing.dataCollected`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-dataCollected)
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete)
+#### `Tracing`: new types
+* [`Tracing.MemoryDumpConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-MemoryDumpConfig)
+* [`Tracing.TraceConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TraceConfig)
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+* [`Tracing.StreamCompression`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamCompression)
+#### `Fetch`: new commands
+* [`Fetch.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-disable)
+* [`Fetch.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-enable)
+* [`Fetch.failRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-failRequest)
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest)
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest)
+* [`Fetch.continueWithAuth`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueWithAuth)
+* [`Fetch.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-getResponseBody)
+* [`Fetch.takeResponseBodyAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-takeResponseBodyAsStream)
+#### `Fetch`: new events
+* [`Fetch.requestPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-requestPaused)
+* [`Fetch.authRequired`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-authRequired)
+#### `Fetch`: new types
+* [`Fetch.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestId)
+* [`Fetch.RequestStage`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestStage)
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern)
+* [`Fetch.HeaderEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-HeaderEntry)
+* [`Fetch.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallenge)
+* [`Fetch.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallengeResponse)
+#### `WebAudio`: new commands
+* [`WebAudio.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-enable)
+* [`WebAudio.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-disable)
+* [`WebAudio.getRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-getRealtimeData)
+#### `WebAudio`: new events
+* [`WebAudio.contextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextCreated)
+* [`WebAudio.contextWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextWillBeDestroyed)
+* [`WebAudio.contextChanged`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextChanged)
+* [`WebAudio.audioListenerCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerCreated)
+* [`WebAudio.audioListenerWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerWillBeDestroyed)
+* [`WebAudio.audioNodeCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeCreated)
+* [`WebAudio.audioNodeWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeWillBeDestroyed)
+* [`WebAudio.audioParamCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamCreated)
+* [`WebAudio.audioParamWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamWillBeDestroyed)
+* [`WebAudio.nodesConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesConnected)
+* [`WebAudio.nodesDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesDisconnected)
+* [`WebAudio.nodeParamConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamConnected)
+* [`WebAudio.nodeParamDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamDisconnected)
+#### `WebAudio`: new types
+* [`WebAudio.GraphObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-GraphObjectId)
+* [`WebAudio.ContextType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextType)
+* [`WebAudio.ContextState`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextState)
+* [`WebAudio.NodeType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-NodeType)
+* [`WebAudio.ChannelCountMode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelCountMode)
+* [`WebAudio.ChannelInterpretation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelInterpretation)
+* [`WebAudio.ParamType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ParamType)
+* [`WebAudio.AutomationRate`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AutomationRate)
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData)
+* [`WebAudio.BaseAudioContext`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-BaseAudioContext)
+* [`WebAudio.AudioListener`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioListener)
+* [`WebAudio.AudioNode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioNode)
+* [`WebAudio.AudioParam`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioParam)
+#### `WebAuthn`: new commands
+* [`WebAuthn.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-enable)
+* [`WebAuthn.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-disable)
+* [`WebAuthn.addVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addVirtualAuthenticator)
+* [`WebAuthn.removeVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeVirtualAuthenticator)
+* [`WebAuthn.addCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addCredential)
+* [`WebAuthn.getCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredential)
+* [`WebAuthn.getCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredentials)
+* [`WebAuthn.removeCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeCredential)
+* [`WebAuthn.clearCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-clearCredentials)
+* [`WebAuthn.setUserVerified`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setUserVerified)
+* [`WebAuthn.setAutomaticPresenceSimulation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setAutomaticPresenceSimulation)
+#### `WebAuthn`: new types
+* [`WebAuthn.AuthenticatorId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorId)
+* [`WebAuthn.AuthenticatorProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorProtocol)
+* [`WebAuthn.AuthenticatorTransport`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorTransport)
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions)
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential)
+#### `Media`: new commands
+* [`Media.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-enable)
+* [`Media.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-disable)
+#### `Media`: new events
+* [`Media.playerPropertiesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerPropertiesChanged)
+* [`Media.playerEventsAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerEventsAdded)
+* [`Media.playerMessagesLogged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerMessagesLogged)
+* [`Media.playerErrorsRaised`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerErrorsRaised)
+* [`Media.playersCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playersCreated)
+#### `Media`: new types
+* [`Media.PlayerId`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerId)
+* [`Media.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-Timestamp)
+* [`Media.PlayerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerMessage)
+* [`Media.PlayerProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerProperty)
+* [`Media.PlayerEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEvent)
+* [`Media.PlayerError`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerError)
+
+
+## Roll protocol to r814172
+###### _2020-10-06 05:15:54_ | Diff: [e736452...f99d711](https://github.com/ChromeDevTools/devtools-protocol/compare/e736452...f99d711)
+#### `Console`: removed domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Accessibility`: removed domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+
+
+## Roll protocol to r814141
+###### _2020-10-06 02:16:18_ | Diff: [46e9147...e736452](https://github.com/ChromeDevTools/devtools-protocol/compare/46e9147...e736452)
+#### `Network`: modified type
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The properties's `columnNumber` _added_.
+
+
+## Roll protocol to r814033
+###### _2020-10-05 18:16:13_ | Diff: [3e55bd0...46e9147](https://github.com/ChromeDevTools/devtools-protocol/compare/3e55bd0...46e9147)
+#### `Console`: new domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Console`: new commands
+* [`Console.clearMessages`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-clearMessages)
+* [`Console.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-disable)
+* [`Console.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-enable)
+#### `Console`: new event
+* [`Console.messageAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#event-messageAdded)
+#### `Console`: new type
+* [`Console.ConsoleMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#type-ConsoleMessage)
+#### `Debugger`: new commands
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation)
+* [`Debugger.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-disable)
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable)
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame)
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator)
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints)
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource)
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode)
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace)
+* [`Debugger.pause`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pause)
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall)
+* [`Debugger.removeBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-removeBreakpoint)
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame)
+* [`Debugger.resume`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-resume)
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent)
+* [`Debugger.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setAsyncCallStackDepth)
+* [`Debugger.setBlackboxPatterns`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxPatterns)
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges)
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint)
+* [`Debugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setInstrumentationBreakpoint)
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl)
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall)
+* [`Debugger.setBreakpointsActive`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointsActive)
+* [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions)
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue)
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource)
+* [`Debugger.setSkipAllPauses`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setSkipAllPauses)
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue)
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto)
+* [`Debugger.stepOut`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOut)
+* [`Debugger.stepOver`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOver)
+#### `Debugger`: new events
+* [`Debugger.breakpointResolved`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-breakpointResolved)
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused)
+* [`Debugger.resumed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-resumed)
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse)
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed)
+#### `Debugger`: new types
+* [`Debugger.BreakpointId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakpointId)
+* [`Debugger.CallFrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrameId)
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location)
+* [`Debugger.ScriptPosition`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptPosition)
+* [`Debugger.LocationRange`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-LocationRange)
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame)
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope)
+* [`Debugger.SearchMatch`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-SearchMatch)
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation)
+* [`Debugger.ScriptLanguage`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptLanguage)
+* [`Debugger.DebugSymbols`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-DebugSymbols)
+#### `HeapProfiler`: new commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject)
+* [`HeapProfiler.collectGarbage`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-collectGarbage)
+* [`HeapProfiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-disable)
+* [`HeapProfiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-enable)
+* [`HeapProfiler.getHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getHeapObjectId)
+* [`HeapProfiler.getObjectByHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getObjectByHeapObjectId)
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile)
+* [`HeapProfiler.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startSampling)
+* [`HeapProfiler.startTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startTrackingHeapObjects)
+* [`HeapProfiler.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopSampling)
+* [`HeapProfiler.stopTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopTrackingHeapObjects)
+* [`HeapProfiler.takeHeapSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-takeHeapSnapshot)
+#### `HeapProfiler`: new events
+* [`HeapProfiler.addHeapSnapshotChunk`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-addHeapSnapshotChunk)
+* [`HeapProfiler.heapStatsUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-heapStatsUpdate)
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId)
+* [`HeapProfiler.reportHeapSnapshotProgress`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-reportHeapSnapshotProgress)
+* [`HeapProfiler.resetProfiles`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-resetProfiles)
+#### `HeapProfiler`: new types
+* [`HeapProfiler.HeapSnapshotObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-HeapSnapshotObjectId)
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode)
+* [`HeapProfiler.SamplingHeapProfileSample`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileSample)
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile)
+#### `Profiler`: new commands
+* [`Profiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disable)
+* [`Profiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enable)
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage)
+* [`Profiler.setSamplingInterval`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-setSamplingInterval)
+* [`Profiler.start`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-start)
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage)
+* [`Profiler.startTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startTypeProfile)
+* [`Profiler.stop`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stop)
+* [`Profiler.stopPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopPreciseCoverage)
+* [`Profiler.stopTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopTypeProfile)
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage)
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile)
+* [`Profiler.enableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableCounters)
+* [`Profiler.disableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableCounters)
+* [`Profiler.getCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getCounters)
+* [`Profiler.enableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableRuntimeCallStats)
+* [`Profiler.disableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableRuntimeCallStats)
+* [`Profiler.getRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getRuntimeCallStats)
+#### `Profiler`: new events
+* [`Profiler.consoleProfileFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileFinished)
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted)
+* [`Profiler.preciseCoverageDeltaUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-preciseCoverageDeltaUpdate)
+#### `Profiler`: new types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode)
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile)
+* [`Profiler.PositionTickInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-PositionTickInfo)
+* [`Profiler.CoverageRange`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CoverageRange)
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage)
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage)
+* [`Profiler.TypeObject`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeObject)
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry)
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile)
+* [`Profiler.CounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CounterInfo)
+* [`Profiler.RuntimeCallCounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-RuntimeCallCounterInfo)
+#### `Runtime`: new commands
+* [`Runtime.awaitPromise`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-awaitPromise)
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn)
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript)
+* [`Runtime.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-disable)
+* [`Runtime.discardConsoleEntries`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-discardConsoleEntries)
+* [`Runtime.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-enable)
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate)
+* [`Runtime.getIsolateId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getIsolateId)
+* [`Runtime.getHeapUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getHeapUsage)
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties)
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames)
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects)
+* [`Runtime.releaseObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObject)
+* [`Runtime.releaseObjectGroup`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObjectGroup)
+* [`Runtime.runIfWaitingForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runIfWaitingForDebugger)
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript)
+* [`Runtime.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setAsyncCallStackDepth)
+* [`Runtime.setCustomObjectFormatterEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setCustomObjectFormatterEnabled)
+* [`Runtime.setMaxCallStackSizeToCapture`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setMaxCallStackSizeToCapture)
+* [`Runtime.terminateExecution`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-terminateExecution)
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding)
+* [`Runtime.removeBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-removeBinding)
+#### `Runtime`: new events
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled)
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled)
+* [`Runtime.exceptionRevoked`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionRevoked)
+* [`Runtime.exceptionThrown`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionThrown)
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated)
+* [`Runtime.executionContextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextDestroyed)
+* [`Runtime.executionContextsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextsCleared)
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested)
+#### `Runtime`: new types
+* [`Runtime.ScriptId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ScriptId)
+* [`Runtime.RemoteObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObjectId)
+* [`Runtime.UnserializableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UnserializableValue)
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject)
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview)
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview)
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview)
+* [`Runtime.EntryPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-EntryPreview)
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor)
+* [`Runtime.InternalPropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-InternalPropertyDescriptor)
+* [`Runtime.PrivatePropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PrivatePropertyDescriptor)
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument)
+* [`Runtime.ExecutionContextId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextId)
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription)
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails)
+* [`Runtime.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-Timestamp)
+* [`Runtime.TimeDelta`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-TimeDelta)
+* [`Runtime.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallFrame)
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace)
+* [`Runtime.UniqueDebuggerId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UniqueDebuggerId)
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId)
+#### `Schema`: new command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains)
+#### `Schema`: new type
+* [`Schema.Domain`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#type-Domain)
+#### `Accessibility`: new domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+#### `Accessibility`: new commands
+* [`Accessibility.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-disable)
+* [`Accessibility.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-enable)
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree)
+* [`Accessibility.getFullAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getFullAXTree)
+* [`Accessibility.queryAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-queryAXTree)
+#### `Accessibility`: new types
+* [`Accessibility.AXNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNodeId)
+* [`Accessibility.AXValueType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueType)
+* [`Accessibility.AXValueSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSourceType)
+* [`Accessibility.AXValueNativeSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueNativeSourceType)
+* [`Accessibility.AXValueSource`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSource)
+* [`Accessibility.AXRelatedNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelatedNode)
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty)
+* [`Accessibility.AXValue`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValue)
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName)
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode)
+#### `Animation`: new commands
+* [`Animation.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-disable)
+* [`Animation.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-enable)
+* [`Animation.getCurrentTime`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getCurrentTime)
+* [`Animation.getPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getPlaybackRate)
+* [`Animation.releaseAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-releaseAnimations)
+* [`Animation.resolveAnimation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-resolveAnimation)
+* [`Animation.seekAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-seekAnimations)
+* [`Animation.setPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPaused)
+* [`Animation.setPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPlaybackRate)
+* [`Animation.setTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setTiming)
+#### `Animation`: new events
+* [`Animation.animationCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCanceled)
+* [`Animation.animationCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCreated)
+* [`Animation.animationStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationStarted)
+#### `Animation`: new types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation)
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect)
+* [`Animation.KeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframesRule)
+* [`Animation.KeyframeStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframeStyle)
+#### `ApplicationCache`: new commands
+* [`ApplicationCache.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-enable)
+* [`ApplicationCache.getApplicationCacheForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getApplicationCacheForFrame)
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests)
+* [`ApplicationCache.getManifestForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getManifestForFrame)
+#### `ApplicationCache`: new events
+* [`ApplicationCache.applicationCacheStatusUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-applicationCacheStatusUpdated)
+* [`ApplicationCache.networkStateUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-networkStateUpdated)
+#### `ApplicationCache`: new types
+* [`ApplicationCache.ApplicationCacheResource`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCacheResource)
+* [`ApplicationCache.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCache)
+* [`ApplicationCache.FrameWithManifest`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-FrameWithManifest)
+#### `Audits`: new commands
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse)
+* [`Audits.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-disable)
+* [`Audits.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-enable)
+#### `Audits`: new event
+* [`Audits.issueAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#event-issueAdded)
+#### `Audits`: new types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie)
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.AffectedFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedFrame)
+* [`Audits.SameSiteCookieExclusionReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieExclusionReason)
+* [`Audits.SameSiteCookieWarningReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieWarningReason)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails)
+* [`Audits.MixedContentResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResolutionStatus)
+* [`Audits.MixedContentResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResourceType)
+* [`Audits.MixedContentIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentIssueDetails)
+* [`Audits.BlockedByResponseReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseReason)
+* [`Audits.BlockedByResponseIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseIssueDetails)
+* [`Audits.HeavyAdResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdResolutionStatus)
+* [`Audits.HeavyAdReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdReason)
+* [`Audits.HeavyAdIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdIssueDetails)
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.SourceCodeLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SourceCodeLocation)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode)
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails)
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue)
+#### `BackgroundService`: new commands
+* [`BackgroundService.startObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-startObserving)
+* [`BackgroundService.stopObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-stopObserving)
+* [`BackgroundService.setRecording`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-setRecording)
+* [`BackgroundService.clearEvents`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-clearEvents)
+#### `BackgroundService`: new events
+* [`BackgroundService.recordingStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-recordingStateChanged)
+* [`BackgroundService.backgroundServiceEventReceived`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-backgroundServiceEventReceived)
+#### `BackgroundService`: new types
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName)
+* [`BackgroundService.EventMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-EventMetadata)
+* [`BackgroundService.BackgroundServiceEvent`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-BackgroundServiceEvent)
+#### `Browser`: new commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission)
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions)
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions)
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior)
+* [`Browser.close`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-close)
+* [`Browser.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crash)
+* [`Browser.crashGpuProcess`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crashGpuProcess)
+* [`Browser.getVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion)
+* [`Browser.getBrowserCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getBrowserCommandLine)
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms)
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram)
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds)
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget)
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds)
+* [`Browser.setDockTile`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDockTile)
+#### `Browser`: new types
+* [`Browser.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserContextID)
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID)
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState)
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds)
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType)
+* [`Browser.PermissionSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionSetting)
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor)
+* [`Browser.Bucket`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bucket)
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram)
+#### `CSS`: new commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule)
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames)
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet)
+* [`CSS.disable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-disable)
+* [`CSS.enable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-enable)
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState)
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors)
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode)
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode)
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode)
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries)
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode)
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText)
+* [`CSS.trackComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-trackComputedStyleUpdates)
+* [`CSS.takeComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeComputedStyleUpdates)
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode)
+* [`CSS.setKeyframeKey`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setKeyframeKey)
+* [`CSS.setMediaText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setMediaText)
+* [`CSS.setRuleSelector`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setRuleSelector)
+* [`CSS.setStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleSheetText)
+* [`CSS.setStyleTexts`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleTexts)
+* [`CSS.startRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-startRuleUsageTracking)
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking)
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta)
+* [`CSS.setLocalFontsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setLocalFontsEnabled)
+#### `CSS`: new events
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated)
+* [`CSS.mediaQueryResultChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-mediaQueryResultChanged)
+* [`CSS.styleSheetAdded`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetAdded)
+* [`CSS.styleSheetChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetChanged)
+* [`CSS.styleSheetRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetRemoved)
+#### `CSS`: new types
+* [`CSS.StyleSheetId`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetId)
+* [`CSS.StyleSheetOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetOrigin)
+* [`CSS.PseudoElementMatches`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PseudoElementMatches)
+* [`CSS.InheritedStyleEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InheritedStyleEntry)
+* [`CSS.RuleMatch`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleMatch)
+* [`CSS.Value`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-Value)
+* [`CSS.SelectorList`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SelectorList)
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader)
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule)
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage)
+* [`CSS.SourceRange`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SourceRange)
+* [`CSS.ShorthandEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-ShorthandEntry)
+* [`CSS.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSComputedStyleProperty)
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle)
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty)
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia)
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery)
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression)
+* [`CSS.PlatformFontUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PlatformFontUsage)
+* [`CSS.FontVariationAxis`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontVariationAxis)
+* [`CSS.FontFace`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontFace)
+* [`CSS.CSSKeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframesRule)
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule)
+* [`CSS.StyleDeclarationEdit`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleDeclarationEdit)
+#### `CacheStorage`: new commands
+* [`CacheStorage.deleteCache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteCache)
+* [`CacheStorage.deleteEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteEntry)
+* [`CacheStorage.requestCacheNames`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCacheNames)
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse)
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries)
+#### `CacheStorage`: new types
+* [`CacheStorage.CacheId`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CacheId)
+* [`CacheStorage.CachedResponseType`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponseType)
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry)
+* [`CacheStorage.Cache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Cache)
+* [`CacheStorage.Header`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Header)
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse)
+#### `Cast`: new commands
+* [`Cast.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-enable)
+* [`Cast.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-disable)
+* [`Cast.setSinkToUse`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-setSinkToUse)
+* [`Cast.startTabMirroring`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-startTabMirroring)
+* [`Cast.stopCasting`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-stopCasting)
+#### `Cast`: new events
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated)
+* [`Cast.issueUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-issueUpdated)
+#### `Cast`: new type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+#### `DOM`: new commands
+* [`DOM.collectClassNamesFromSubtree`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-collectClassNamesFromSubtree)
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo)
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode)
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+* [`DOM.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-disable)
+* [`DOM.discardSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-discardSearchResults)
+* [`DOM.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-enable)
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus)
+* [`DOM.getAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getAttributes)
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel)
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads)
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument)
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument)
+* [`DOM.getNodesForSubtreeByStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodesForSubtreeByStyle)
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation)
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML)
+* [`DOM.getRelayoutBoundary`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getRelayoutBoundary)
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults)
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight)
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode)
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect)
+* [`DOM.markUndoableState`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-markUndoableState)
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo)
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch)
+* [`DOM.pushNodeByPathToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodeByPathToFrontend)
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend)
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector)
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll)
+* [`DOM.redo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-redo)
+* [`DOM.removeAttribute`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeAttribute)
+* [`DOM.removeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeNode)
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes)
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode)
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode)
+* [`DOM.setAttributeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributeValue)
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText)
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles)
+* [`DOM.setNodeStackTracesEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeStackTracesEnabled)
+* [`DOM.getNodeStackTraces`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeStackTraces)
+* [`DOM.getFileInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFileInfo)
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode)
+* [`DOM.setNodeName`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeName)
+* [`DOM.setNodeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeValue)
+* [`DOM.setOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setOuterHTML)
+* [`DOM.undo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-undo)
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner)
+#### `DOM`: new events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified)
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved)
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified)
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated)
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted)
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved)
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated)
+* [`DOM.documentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated)
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated)
+* [`DOM.pseudoElementAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded)
+* [`DOM.pseudoElementRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved)
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes)
+* [`DOM.shadowRootPopped`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped)
+* [`DOM.shadowRootPushed`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed)
+#### `DOM`: new types
+* [`DOM.NodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-NodeId)
+* [`DOM.BackendNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNodeId)
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode)
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType)
+* [`DOM.ShadowRootType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShadowRootType)
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node)
+* [`DOM.RGBA`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-RGBA)
+* [`DOM.Quad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Quad)
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel)
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo)
+* [`DOM.Rect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Rect)
+* [`DOM.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-CSSComputedStyleProperty)
+#### `DOMDebugger`: new commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners)
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint)
+* [`DOMDebugger.removeEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeEventListenerBreakpoint)
+* [`DOMDebugger.removeInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeInstrumentationBreakpoint)
+* [`DOMDebugger.removeXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeXHRBreakpoint)
+* [`DOMDebugger.setDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setDOMBreakpoint)
+* [`DOMDebugger.setEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setEventListenerBreakpoint)
+* [`DOMDebugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setInstrumentationBreakpoint)
+* [`DOMDebugger.setXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setXHRBreakpoint)
+#### `DOMDebugger`: new types
+* [`DOMDebugger.DOMBreakpointType`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-DOMBreakpointType)
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener)
+#### `DOMSnapshot`: new commands
+* [`DOMSnapshot.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-disable)
+* [`DOMSnapshot.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-enable)
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot)
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot)
+#### `DOMSnapshot`: new types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode)
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox)
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode)
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle)
+* [`DOMSnapshot.NameValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NameValue)
+* [`DOMSnapshot.StringIndex`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StringIndex)
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings)
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData)
+* [`DOMSnapshot.RareBooleanData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareBooleanData)
+* [`DOMSnapshot.RareIntegerData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareIntegerData)
+* [`DOMSnapshot.Rectangle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-Rectangle)
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot)
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot)
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot)
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot)
+#### `DOMStorage`: new commands
+* [`DOMStorage.clear`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-clear)
+* [`DOMStorage.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-disable)
+* [`DOMStorage.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-enable)
+* [`DOMStorage.getDOMStorageItems`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-getDOMStorageItems)
+* [`DOMStorage.removeDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-removeDOMStorageItem)
+* [`DOMStorage.setDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-setDOMStorageItem)
+#### `DOMStorage`: new events
+* [`DOMStorage.domStorageItemAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemAdded)
+* [`DOMStorage.domStorageItemRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemRemoved)
+* [`DOMStorage.domStorageItemUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemUpdated)
+* [`DOMStorage.domStorageItemsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemsCleared)
+#### `DOMStorage`: new types
+* [`DOMStorage.StorageId`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-StorageId)
+* [`DOMStorage.Item`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-Item)
+#### `Database`: new commands
+* [`Database.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-disable)
+* [`Database.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-enable)
+* [`Database.executeSQL`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-executeSQL)
+* [`Database.getDatabaseTableNames`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-getDatabaseTableNames)
+#### `Database`: new event
+* [`Database.addDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#event-addDatabase)
+#### `Database`: new types
+* [`Database.DatabaseId`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-DatabaseId)
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database)
+* [`Database.Error`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Error)
+#### `DeviceOrientation`: new commands
+* [`DeviceOrientation.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-clearDeviceOrientationOverride)
+* [`DeviceOrientation.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-setDeviceOrientationOverride)
+#### `Emulation`: new commands
+* [`Emulation.canEmulate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-canEmulate)
+* [`Emulation.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearDeviceMetricsOverride)
+* [`Emulation.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearGeolocationOverride)
+* [`Emulation.resetPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-resetPageScaleFactor)
+* [`Emulation.setFocusEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setFocusEmulationEnabled)
+* [`Emulation.setCPUThrottlingRate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setCPUThrottlingRate)
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride)
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride)
+* [`Emulation.setScrollbarsHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScrollbarsHidden)
+* [`Emulation.setDocumentCookieDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDocumentCookieDisabled)
+* [`Emulation.setEmitTouchEventsForMouse`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmitTouchEventsForMouse)
+* [`Emulation.setEmulatedMedia`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedMedia)
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+* [`Emulation.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setGeolocationOverride)
+* [`Emulation.setIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setIdleOverride)
+* [`Emulation.clearIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearIdleOverride)
+* [`Emulation.setNavigatorOverrides`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setNavigatorOverrides)
+* [`Emulation.setPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setPageScaleFactor)
+* [`Emulation.setScriptExecutionDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScriptExecutionDisabled)
+* [`Emulation.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTouchEmulationEnabled)
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy)
+* [`Emulation.setLocaleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setLocaleOverride)
+* [`Emulation.setTimezoneOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTimezoneOverride)
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize)
+* [`Emulation.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setUserAgentOverride)
+#### `Emulation`: new event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired)
+#### `Emulation`: new types
+* [`Emulation.ScreenOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-ScreenOrientation)
+* [`Emulation.DisplayFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisplayFeature)
+* [`Emulation.MediaFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-MediaFeature)
+* [`Emulation.VirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-VirtualTimePolicy)
+* [`Emulation.UserAgentBrandVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentBrandVersion)
+* [`Emulation.UserAgentMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentMetadata)
+#### `HeadlessExperimental`: new commands
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame)
+* [`HeadlessExperimental.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-disable)
+* [`HeadlessExperimental.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enable)
+#### `HeadlessExperimental`: new event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged)
+#### `HeadlessExperimental`: new type
+* [`HeadlessExperimental.ScreenshotParams`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#type-ScreenshotParams)
+#### `IO`: new commands
+* [`IO.close`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-close)
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read)
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob)
+#### `IO`: new type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle)
+#### `IndexedDB`: new commands
+* [`IndexedDB.clearObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-clearObjectStore)
+* [`IndexedDB.deleteDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteDatabase)
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries)
+* [`IndexedDB.disable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-disable)
+* [`IndexedDB.enable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-enable)
+* [`IndexedDB.requestData`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestData)
+* [`IndexedDB.getMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getMetadata)
+* [`IndexedDB.requestDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabase)
+* [`IndexedDB.requestDatabaseNames`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabaseNames)
+#### `IndexedDB`: new types
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores)
+* [`IndexedDB.ObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStore)
+* [`IndexedDB.ObjectStoreIndex`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStoreIndex)
+* [`IndexedDB.Key`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-Key)
+* [`IndexedDB.KeyRange`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyRange)
+* [`IndexedDB.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DataEntry)
+* [`IndexedDB.KeyPath`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyPath)
+#### `Input`: new commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent)
+* [`Input.insertText`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-insertText)
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent)
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent)
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent)
+* [`Input.setIgnoreInputEvents`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-setIgnoreInputEvents)
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture)
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture)
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture)
+#### `Input`: new types
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint)
+* [`Input.GestureSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-GestureSourceType)
+* [`Input.MouseButton`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-MouseButton)
+* [`Input.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TimeSinceEpoch)
+#### `Inspector`: new commands
+* [`Inspector.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-disable)
+* [`Inspector.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-enable)
+#### `Inspector`: new events
+* [`Inspector.detached`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-detached)
+* [`Inspector.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetCrashed)
+* [`Inspector.targetReloadedAfterCrash`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetReloadedAfterCrash)
+#### `LayerTree`: new commands
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons)
+* [`LayerTree.disable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-disable)
+* [`LayerTree.enable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-enable)
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot)
+* [`LayerTree.makeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-makeSnapshot)
+* [`LayerTree.profileSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-profileSnapshot)
+* [`LayerTree.releaseSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-releaseSnapshot)
+* [`LayerTree.replaySnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-replaySnapshot)
+* [`LayerTree.snapshotCommandLog`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-snapshotCommandLog)
+#### `LayerTree`: new events
+* [`LayerTree.layerPainted`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerPainted)
+* [`LayerTree.layerTreeDidChange`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerTreeDidChange)
+#### `LayerTree`: new types
+* [`LayerTree.LayerId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-LayerId)
+* [`LayerTree.SnapshotId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-SnapshotId)
+* [`LayerTree.ScrollRect`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-ScrollRect)
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint)
+* [`LayerTree.PictureTile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PictureTile)
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer)
+* [`LayerTree.PaintProfile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PaintProfile)
+#### `Log`: new commands
+* [`Log.clear`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-clear)
+* [`Log.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-disable)
+* [`Log.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-enable)
+* [`Log.startViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-startViolationsReport)
+* [`Log.stopViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-stopViolationsReport)
+#### `Log`: new event
+* [`Log.entryAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#event-entryAdded)
+#### `Log`: new types
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry)
+* [`Log.ViolationSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-ViolationSetting)
+#### `Memory`: new commands
+* [`Memory.getDOMCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getDOMCounters)
+* [`Memory.prepareForLeakDetection`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-prepareForLeakDetection)
+* [`Memory.forciblyPurgeJavaScriptMemory`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-forciblyPurgeJavaScriptMemory)
+* [`Memory.setPressureNotificationsSuppressed`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-setPressureNotificationsSuppressed)
+* [`Memory.simulatePressureNotification`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-simulatePressureNotification)
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile)
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: new types
+* [`Memory.PressureLevel`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-PressureLevel)
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+* [`Memory.Module`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-Module)
+#### `Network`: new commands
+* [`Network.canClearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCache)
+* [`Network.canClearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCookies)
+* [`Network.canEmulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canEmulateNetworkConditions)
+* [`Network.clearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCache)
+* [`Network.clearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCookies)
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest)
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies)
+* [`Network.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-disable)
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions)
+* [`Network.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enable)
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies)
+* [`Network.getCertificate`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCertificate)
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies)
+* [`Network.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBody)
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData)
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream)
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR)
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody)
+* [`Network.setBlockedURLs`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBlockedURLs)
+* [`Network.setBypassServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBypassServiceWorker)
+* [`Network.setCacheDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCacheDisabled)
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie)
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies)
+* [`Network.setDataSizeLimitsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setDataSizeLimitsForTest)
+* [`Network.setExtraHTTPHeaders`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setExtraHTTPHeaders)
+* [`Network.setAttachDebugHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugHeader)
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception)
+* [`Network.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setUserAgentOverride)
+* [`Network.getSecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getSecurityIsolationStatus)
+* [`Network.loadNetworkResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-loadNetworkResource)
+#### `Network`: new events
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived)
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived)
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed)
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished)
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted)
+* [`Network.requestServedFromCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestServedFromCache)
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent)
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority)
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived)
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived)
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed)
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated)
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError)
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived)
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent)
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived)
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest)
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo)
+* [`Network.responseReceivedExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceivedExtraInfo)
+#### `Network`: new types
+* [`Network.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceType)
+* [`Network.LoaderId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoaderId)
+* [`Network.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestId)
+* [`Network.InterceptionId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionId)
+* [`Network.ErrorReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ErrorReason)
+* [`Network.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TimeSinceEpoch)
+* [`Network.MonotonicTime`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-MonotonicTime)
+* [`Network.Headers`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Headers)
+* [`Network.ConnectionType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ConnectionType)
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite)
+* [`Network.CookiePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookiePriority)
+* [`Network.ResourceTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceTiming)
+* [`Network.ResourcePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourcePriority)
+* [`Network.PostDataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PostDataEntry)
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request)
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp)
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails)
+* [`Network.CertificateTransparencyCompliance`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CertificateTransparencyCompliance)
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason)
+* [`Network.ServiceWorkerResponseSource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ServiceWorkerResponseSource)
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response)
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest)
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse)
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame)
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource)
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator)
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie)
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason)
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason)
+* [`Network.BlockedSetCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedSetCookieWithReason)
+* [`Network.BlockedCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedCookieWithReason)
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam)
+* [`Network.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallenge)
+* [`Network.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallengeResponse)
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern)
+* [`Network.SignedExchangeSignature`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeSignature)
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader)
+* [`Network.SignedExchangeErrorField`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeErrorField)
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError)
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo)
+* [`Network.CrossOriginOpenerPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyValue)
+* [`Network.CrossOriginOpenerPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyStatus)
+* [`Network.CrossOriginEmbedderPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyValue)
+* [`Network.CrossOriginEmbedderPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyStatus)
+* [`Network.SecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityIsolationStatus)
+* [`Network.LoadNetworkResourcePageResult`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourcePageResult)
+* [`Network.LoadNetworkResourceOptions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourceOptions)
+#### `Overlay`: new commands
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+* [`Overlay.getGridHighlightObjectsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getGridHighlightObjectsForTest)
+* [`Overlay.getSourceOrderHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getSourceOrderHighlightObjectForTest)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightSourceOrder`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightSourceOrder)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.setShowAdHighlights`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowAdHighlights)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowGridOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowGridOverlays)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowLayoutShiftRegions`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowLayoutShiftRegions)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowHitTestBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHitTestBorders)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setShowHinge`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHinge)
+#### `Overlay`: new events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested)
+* [`Overlay.inspectModeCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectModeCanceled)
+#### `Overlay`: new types
+* [`Overlay.SourceOrderConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-SourceOrderConfig)
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig)
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.ColorFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ColorFormat)
+* [`Overlay.GridNodeHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridNodeHighlightConfig)
+* [`Overlay.HingeConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HingeConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `Page`: new commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad)
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument)
+* [`Page.bringToFront`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-bringToFront)
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot)
+* [`Page.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureSnapshot)
+* [`Page.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceMetricsOverride)
+* [`Page.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceOrientationOverride)
+* [`Page.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearGeolocationOverride)
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld)
+* [`Page.deleteCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-deleteCookie)
+* [`Page.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-disable)
+* [`Page.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-enable)
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest)
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors)
+* [`Page.getManifestIcons`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getManifestIcons)
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies)
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree)
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics)
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory)
+* [`Page.resetNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-resetNavigationHistory)
+* [`Page.getResourceContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceContent)
+* [`Page.getResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceTree)
+* [`Page.handleJavaScriptDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleJavaScriptDialog)
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate)
+* [`Page.navigateToHistoryEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigateToHistoryEntry)
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF)
+* [`Page.reload`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-reload)
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad)
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument)
+* [`Page.screencastFrameAck`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-screencastFrameAck)
+* [`Page.searchInResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-searchInResource)
+* [`Page.setAdBlockingEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setAdBlockingEnabled)
+* [`Page.setBypassCSP`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setBypassCSP)
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride)
+* [`Page.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceOrientationOverride)
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies)
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes)
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent)
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior)
+* [`Page.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setGeolocationOverride)
+* [`Page.setLifecycleEventsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setLifecycleEventsEnabled)
+* [`Page.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setTouchEmulationEnabled)
+* [`Page.startScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-startScreencast)
+* [`Page.stopLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopLoading)
+* [`Page.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-crash)
+* [`Page.close`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-close)
+* [`Page.setWebLifecycleState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setWebLifecycleState)
+* [`Page.stopScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopScreencast)
+* [`Page.setProduceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setProduceCompilationCache)
+* [`Page.addCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addCompilationCache)
+* [`Page.clearCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearCompilationCache)
+* [`Page.generateTestReport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-generateTestReport)
+* [`Page.waitForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-waitForDebugger)
+* [`Page.setInterceptFileChooserDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setInterceptFileChooserDialog)
+#### `Page`: new events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired)
+* [`Page.fileChooserOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-fileChooserOpened)
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached)
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation)
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached)
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated)
+* [`Page.frameResized`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameResized)
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation)
+* [`Page.frameStartedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStartedLoading)
+* [`Page.frameStoppedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStoppedLoading)
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin)
+* [`Page.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadProgress)
+* [`Page.interstitialHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialHidden)
+* [`Page.interstitialShown`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialShown)
+* [`Page.javascriptDialogClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogClosed)
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening)
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent)
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired)
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument)
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame)
+* [`Page.screencastVisibilityChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastVisibilityChanged)
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen)
+* [`Page.compilationCacheProduced`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-compilationCacheProduced)
+#### `Page`: new types
+* [`Page.FrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameId)
+* [`Page.AdFrameType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AdFrameType)
+* [`Page.SecureContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-SecureContextType)
+* [`Page.CrossOriginIsolatedContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-CrossOriginIsolatedContextType)
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame)
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource)
+* [`Page.FrameResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResourceTree)
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree)
+* [`Page.ScriptIdentifier`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScriptIdentifier)
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType)
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry)
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata)
+* [`Page.DialogType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-DialogType)
+* [`Page.AppManifestError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestError)
+* [`Page.AppManifestParsedProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestParsedProperties)
+* [`Page.LayoutViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-LayoutViewport)
+* [`Page.VisualViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-VisualViewport)
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport)
+* [`Page.FontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontFamilies)
+* [`Page.FontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontSizes)
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+* [`Page.ClientNavigationDisposition`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationDisposition)
+* [`Page.InstallabilityErrorArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityErrorArgument)
+* [`Page.InstallabilityError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityError)
+* [`Page.ReferrerPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ReferrerPolicy)
+#### `Performance`: new commands
+* [`Performance.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-disable)
+* [`Performance.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-enable)
+* [`Performance.setTimeDomain`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-setTimeDomain)
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics)
+#### `Performance`: new event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics)
+#### `Performance`: new type
+* [`Performance.Metric`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#type-Metric)
+#### `Security`: new commands
+* [`Security.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-disable)
+* [`Security.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-enable)
+* [`Security.setIgnoreCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setIgnoreCertificateErrors)
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError)
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors)
+#### `Security`: new events
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError)
+* [`Security.visibleSecurityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-visibleSecurityStateChanged)
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged)
+#### `Security`: new types
+* [`Security.CertificateId`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateId)
+* [`Security.MixedContentType`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-MixedContentType)
+* [`Security.SecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityState)
+* [`Security.CertificateSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateSecurityState)
+* [`Security.SafetyTipStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipStatus)
+* [`Security.SafetyTipInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipInfo)
+* [`Security.VisibleSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-VisibleSecurityState)
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation)
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus)
+* [`Security.CertificateErrorAction`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateErrorAction)
+#### `ServiceWorker`: new commands
+* [`ServiceWorker.deliverPushMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-deliverPushMessage)
+* [`ServiceWorker.disable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-disable)
+* [`ServiceWorker.dispatchSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchSyncEvent)
+* [`ServiceWorker.dispatchPeriodicSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchPeriodicSyncEvent)
+* [`ServiceWorker.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-enable)
+* [`ServiceWorker.inspectWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-inspectWorker)
+* [`ServiceWorker.setForceUpdateOnPageLoad`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-setForceUpdateOnPageLoad)
+* [`ServiceWorker.skipWaiting`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-skipWaiting)
+* [`ServiceWorker.startWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-startWorker)
+* [`ServiceWorker.stopAllWorkers`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopAllWorkers)
+* [`ServiceWorker.stopWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopWorker)
+* [`ServiceWorker.unregister`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-unregister)
+* [`ServiceWorker.updateRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-updateRegistration)
+#### `ServiceWorker`: new events
+* [`ServiceWorker.workerErrorReported`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerErrorReported)
+* [`ServiceWorker.workerRegistrationUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerRegistrationUpdated)
+* [`ServiceWorker.workerVersionUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerVersionUpdated)
+#### `ServiceWorker`: new types
+* [`ServiceWorker.RegistrationID`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-RegistrationID)
+* [`ServiceWorker.ServiceWorkerRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerRegistration)
+* [`ServiceWorker.ServiceWorkerVersionRunningStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionRunningStatus)
+* [`ServiceWorker.ServiceWorkerVersionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionStatus)
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion)
+* [`ServiceWorker.ServiceWorkerErrorMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerErrorMessage)
+#### `Storage`: new commands
+* [`Storage.clearDataForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearDataForOrigin)
+* [`Storage.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getCookies)
+* [`Storage.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-setCookies)
+* [`Storage.clearCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearCookies)
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+* [`Storage.trackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackCacheStorageForOrigin)
+* [`Storage.trackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackIndexedDBForOrigin)
+* [`Storage.untrackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackCacheStorageForOrigin)
+* [`Storage.untrackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackIndexedDBForOrigin)
+#### `Storage`: new events
+* [`Storage.cacheStorageContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageContentUpdated)
+* [`Storage.cacheStorageListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageListUpdated)
+* [`Storage.indexedDBContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBContentUpdated)
+* [`Storage.indexedDBListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBListUpdated)
+#### `Storage`: new types
+* [`Storage.StorageType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-StorageType)
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType)
+#### `SystemInfo`: new commands
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo)
+* [`SystemInfo.getProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getProcessInfo)
+#### `SystemInfo`: new types
+* [`SystemInfo.GPUDevice`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUDevice)
+* [`SystemInfo.Size`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-Size)
+* [`SystemInfo.VideoDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoDecodeAcceleratorCapability)
+* [`SystemInfo.VideoEncodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoEncodeAcceleratorCapability)
+* [`SystemInfo.SubsamplingFormat`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-SubsamplingFormat)
+* [`SystemInfo.ImageType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageType)
+* [`SystemInfo.ImageDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageDecodeAcceleratorCapability)
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo)
+* [`SystemInfo.ProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessInfo)
+#### `Target`: new commands
+* [`Target.activateTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-activateTarget)
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget)
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget)
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget)
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol)
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext)
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts)
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget)
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget)
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext)
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo)
+* [`Target.getTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargets)
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget)
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach)
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets)
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations)
+#### `Target`: new events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget)
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget)
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget)
+* [`Target.targetCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCreated)
+* [`Target.targetDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetDestroyed)
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed)
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged)
+#### `Target`: new types
+* [`Target.TargetID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetID)
+* [`Target.SessionID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-SessionID)
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo)
+* [`Target.RemoteLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-RemoteLocation)
+#### `Tethering`: new commands
+* [`Tethering.bind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-bind)
+* [`Tethering.unbind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-unbind)
+#### `Tethering`: new event
+* [`Tethering.accepted`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#event-accepted)
+#### `Tracing`: new commands
+* [`Tracing.end`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-end)
+* [`Tracing.getCategories`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-getCategories)
+* [`Tracing.recordClockSyncMarker`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-recordClockSyncMarker)
+* [`Tracing.requestMemoryDump`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-requestMemoryDump)
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start)
+#### `Tracing`: new events
+* [`Tracing.bufferUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-bufferUsage)
+* [`Tracing.dataCollected`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-dataCollected)
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete)
+#### `Tracing`: new types
+* [`Tracing.MemoryDumpConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-MemoryDumpConfig)
+* [`Tracing.TraceConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TraceConfig)
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+* [`Tracing.StreamCompression`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamCompression)
+#### `Fetch`: new commands
+* [`Fetch.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-disable)
+* [`Fetch.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-enable)
+* [`Fetch.failRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-failRequest)
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest)
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest)
+* [`Fetch.continueWithAuth`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueWithAuth)
+* [`Fetch.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-getResponseBody)
+* [`Fetch.takeResponseBodyAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-takeResponseBodyAsStream)
+#### `Fetch`: new events
+* [`Fetch.requestPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-requestPaused)
+* [`Fetch.authRequired`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-authRequired)
+#### `Fetch`: new types
+* [`Fetch.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestId)
+* [`Fetch.RequestStage`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestStage)
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern)
+* [`Fetch.HeaderEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-HeaderEntry)
+* [`Fetch.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallenge)
+* [`Fetch.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallengeResponse)
+#### `WebAudio`: new commands
+* [`WebAudio.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-enable)
+* [`WebAudio.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-disable)
+* [`WebAudio.getRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-getRealtimeData)
+#### `WebAudio`: new events
+* [`WebAudio.contextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextCreated)
+* [`WebAudio.contextWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextWillBeDestroyed)
+* [`WebAudio.contextChanged`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextChanged)
+* [`WebAudio.audioListenerCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerCreated)
+* [`WebAudio.audioListenerWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerWillBeDestroyed)
+* [`WebAudio.audioNodeCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeCreated)
+* [`WebAudio.audioNodeWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeWillBeDestroyed)
+* [`WebAudio.audioParamCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamCreated)
+* [`WebAudio.audioParamWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamWillBeDestroyed)
+* [`WebAudio.nodesConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesConnected)
+* [`WebAudio.nodesDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesDisconnected)
+* [`WebAudio.nodeParamConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamConnected)
+* [`WebAudio.nodeParamDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamDisconnected)
+#### `WebAudio`: new types
+* [`WebAudio.GraphObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-GraphObjectId)
+* [`WebAudio.ContextType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextType)
+* [`WebAudio.ContextState`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextState)
+* [`WebAudio.NodeType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-NodeType)
+* [`WebAudio.ChannelCountMode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelCountMode)
+* [`WebAudio.ChannelInterpretation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelInterpretation)
+* [`WebAudio.ParamType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ParamType)
+* [`WebAudio.AutomationRate`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AutomationRate)
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData)
+* [`WebAudio.BaseAudioContext`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-BaseAudioContext)
+* [`WebAudio.AudioListener`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioListener)
+* [`WebAudio.AudioNode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioNode)
+* [`WebAudio.AudioParam`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioParam)
+#### `WebAuthn`: new commands
+* [`WebAuthn.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-enable)
+* [`WebAuthn.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-disable)
+* [`WebAuthn.addVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addVirtualAuthenticator)
+* [`WebAuthn.removeVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeVirtualAuthenticator)
+* [`WebAuthn.addCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addCredential)
+* [`WebAuthn.getCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredential)
+* [`WebAuthn.getCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredentials)
+* [`WebAuthn.removeCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeCredential)
+* [`WebAuthn.clearCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-clearCredentials)
+* [`WebAuthn.setUserVerified`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setUserVerified)
+* [`WebAuthn.setAutomaticPresenceSimulation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setAutomaticPresenceSimulation)
+#### `WebAuthn`: new types
+* [`WebAuthn.AuthenticatorId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorId)
+* [`WebAuthn.AuthenticatorProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorProtocol)
+* [`WebAuthn.AuthenticatorTransport`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorTransport)
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions)
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential)
+#### `Media`: new commands
+* [`Media.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-enable)
+* [`Media.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-disable)
+#### `Media`: new events
+* [`Media.playerPropertiesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerPropertiesChanged)
+* [`Media.playerEventsAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerEventsAdded)
+* [`Media.playerMessagesLogged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerMessagesLogged)
+* [`Media.playerErrorsRaised`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerErrorsRaised)
+* [`Media.playersCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playersCreated)
+#### `Media`: new types
+* [`Media.PlayerId`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerId)
+* [`Media.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-Timestamp)
+* [`Media.PlayerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerMessage)
+* [`Media.PlayerProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerProperty)
+* [`Media.PlayerEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEvent)
+* [`Media.PlayerError`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerError)
+
+
+## Roll protocol to r813956
+###### _2020-10-05 16:16:54_ | Diff: [4ee1d5c...3e55bd0](https://github.com/ChromeDevTools/devtools-protocol/compare/4ee1d5c...3e55bd0)
+#### `Console`: removed domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Accessibility`: removed domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+
+
+## Roll protocol to r813570
+###### _2020-10-04 17:32:25_ | Diff: [874a0ee...4ee1d5c](https://github.com/ChromeDevTools/devtools-protocol/compare/874a0ee...4ee1d5c)
+#### `Console`: new domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Console`: new commands
+* [`Console.clearMessages`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-clearMessages)
+* [`Console.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-disable)
+* [`Console.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-enable)
+#### `Console`: new event
+* [`Console.messageAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#event-messageAdded)
+#### `Console`: new type
+* [`Console.ConsoleMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#type-ConsoleMessage)
+#### `Debugger`: new commands
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation)
+* [`Debugger.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-disable)
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable)
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame)
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator)
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints)
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource)
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode)
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace)
+* [`Debugger.pause`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pause)
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall)
+* [`Debugger.removeBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-removeBreakpoint)
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame)
+* [`Debugger.resume`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-resume)
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent)
+* [`Debugger.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setAsyncCallStackDepth)
+* [`Debugger.setBlackboxPatterns`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxPatterns)
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges)
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint)
+* [`Debugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setInstrumentationBreakpoint)
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl)
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall)
+* [`Debugger.setBreakpointsActive`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointsActive)
+* [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions)
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue)
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource)
+* [`Debugger.setSkipAllPauses`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setSkipAllPauses)
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue)
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto)
+* [`Debugger.stepOut`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOut)
+* [`Debugger.stepOver`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOver)
+#### `Debugger`: new events
+* [`Debugger.breakpointResolved`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-breakpointResolved)
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused)
+* [`Debugger.resumed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-resumed)
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse)
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed)
+#### `Debugger`: new types
+* [`Debugger.BreakpointId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakpointId)
+* [`Debugger.CallFrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrameId)
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location)
+* [`Debugger.ScriptPosition`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptPosition)
+* [`Debugger.LocationRange`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-LocationRange)
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame)
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope)
+* [`Debugger.SearchMatch`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-SearchMatch)
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation)
+* [`Debugger.ScriptLanguage`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptLanguage)
+* [`Debugger.DebugSymbols`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-DebugSymbols)
+#### `HeapProfiler`: new commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject)
+* [`HeapProfiler.collectGarbage`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-collectGarbage)
+* [`HeapProfiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-disable)
+* [`HeapProfiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-enable)
+* [`HeapProfiler.getHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getHeapObjectId)
+* [`HeapProfiler.getObjectByHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getObjectByHeapObjectId)
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile)
+* [`HeapProfiler.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startSampling)
+* [`HeapProfiler.startTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startTrackingHeapObjects)
+* [`HeapProfiler.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopSampling)
+* [`HeapProfiler.stopTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopTrackingHeapObjects)
+* [`HeapProfiler.takeHeapSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-takeHeapSnapshot)
+#### `HeapProfiler`: new events
+* [`HeapProfiler.addHeapSnapshotChunk`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-addHeapSnapshotChunk)
+* [`HeapProfiler.heapStatsUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-heapStatsUpdate)
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId)
+* [`HeapProfiler.reportHeapSnapshotProgress`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-reportHeapSnapshotProgress)
+* [`HeapProfiler.resetProfiles`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-resetProfiles)
+#### `HeapProfiler`: new types
+* [`HeapProfiler.HeapSnapshotObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-HeapSnapshotObjectId)
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode)
+* [`HeapProfiler.SamplingHeapProfileSample`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileSample)
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile)
+#### `Profiler`: new commands
+* [`Profiler.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disable)
+* [`Profiler.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enable)
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage)
+* [`Profiler.setSamplingInterval`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-setSamplingInterval)
+* [`Profiler.start`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-start)
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage)
+* [`Profiler.startTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startTypeProfile)
+* [`Profiler.stop`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stop)
+* [`Profiler.stopPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopPreciseCoverage)
+* [`Profiler.stopTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopTypeProfile)
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage)
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile)
+* [`Profiler.enableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableCounters)
+* [`Profiler.disableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableCounters)
+* [`Profiler.getCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getCounters)
+* [`Profiler.enableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableRuntimeCallStats)
+* [`Profiler.disableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableRuntimeCallStats)
+* [`Profiler.getRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getRuntimeCallStats)
+#### `Profiler`: new events
+* [`Profiler.consoleProfileFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileFinished)
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted)
+* [`Profiler.preciseCoverageDeltaUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-preciseCoverageDeltaUpdate)
+#### `Profiler`: new types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode)
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile)
+* [`Profiler.PositionTickInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-PositionTickInfo)
+* [`Profiler.CoverageRange`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CoverageRange)
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage)
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage)
+* [`Profiler.TypeObject`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeObject)
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry)
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile)
+* [`Profiler.CounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CounterInfo)
+* [`Profiler.RuntimeCallCounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-RuntimeCallCounterInfo)
+#### `Runtime`: new commands
+* [`Runtime.awaitPromise`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-awaitPromise)
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn)
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript)
+* [`Runtime.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-disable)
+* [`Runtime.discardConsoleEntries`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-discardConsoleEntries)
+* [`Runtime.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-enable)
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate)
+* [`Runtime.getIsolateId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getIsolateId)
+* [`Runtime.getHeapUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getHeapUsage)
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties)
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames)
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects)
+* [`Runtime.releaseObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObject)
+* [`Runtime.releaseObjectGroup`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObjectGroup)
+* [`Runtime.runIfWaitingForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runIfWaitingForDebugger)
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript)
+* [`Runtime.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setAsyncCallStackDepth)
+* [`Runtime.setCustomObjectFormatterEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setCustomObjectFormatterEnabled)
+* [`Runtime.setMaxCallStackSizeToCapture`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setMaxCallStackSizeToCapture)
+* [`Runtime.terminateExecution`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-terminateExecution)
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding)
+* [`Runtime.removeBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-removeBinding)
+#### `Runtime`: new events
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled)
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled)
+* [`Runtime.exceptionRevoked`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionRevoked)
+* [`Runtime.exceptionThrown`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionThrown)
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated)
+* [`Runtime.executionContextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextDestroyed)
+* [`Runtime.executionContextsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextsCleared)
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested)
+#### `Runtime`: new types
+* [`Runtime.ScriptId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ScriptId)
+* [`Runtime.RemoteObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObjectId)
+* [`Runtime.UnserializableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UnserializableValue)
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject)
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview)
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview)
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview)
+* [`Runtime.EntryPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-EntryPreview)
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor)
+* [`Runtime.InternalPropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-InternalPropertyDescriptor)
+* [`Runtime.PrivatePropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PrivatePropertyDescriptor)
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument)
+* [`Runtime.ExecutionContextId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextId)
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription)
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails)
+* [`Runtime.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-Timestamp)
+* [`Runtime.TimeDelta`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-TimeDelta)
+* [`Runtime.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallFrame)
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace)
+* [`Runtime.UniqueDebuggerId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UniqueDebuggerId)
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId)
+#### `Schema`: new command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains)
+#### `Schema`: new type
+* [`Schema.Domain`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#type-Domain)
+#### `Accessibility`: new domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+#### `Accessibility`: new commands
+* [`Accessibility.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-disable)
+* [`Accessibility.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-enable)
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree)
+* [`Accessibility.getFullAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getFullAXTree)
+* [`Accessibility.queryAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-queryAXTree)
+#### `Accessibility`: new types
+* [`Accessibility.AXNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNodeId)
+* [`Accessibility.AXValueType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueType)
+* [`Accessibility.AXValueSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSourceType)
+* [`Accessibility.AXValueNativeSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueNativeSourceType)
+* [`Accessibility.AXValueSource`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSource)
+* [`Accessibility.AXRelatedNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelatedNode)
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty)
+* [`Accessibility.AXValue`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValue)
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName)
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode)
+#### `Animation`: new commands
+* [`Animation.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-disable)
+* [`Animation.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-enable)
+* [`Animation.getCurrentTime`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getCurrentTime)
+* [`Animation.getPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-getPlaybackRate)
+* [`Animation.releaseAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-releaseAnimations)
+* [`Animation.resolveAnimation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-resolveAnimation)
+* [`Animation.seekAnimations`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-seekAnimations)
+* [`Animation.setPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPaused)
+* [`Animation.setPlaybackRate`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setPlaybackRate)
+* [`Animation.setTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-setTiming)
+#### `Animation`: new events
+* [`Animation.animationCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCanceled)
+* [`Animation.animationCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationCreated)
+* [`Animation.animationStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationStarted)
+#### `Animation`: new types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation)
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect)
+* [`Animation.KeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframesRule)
+* [`Animation.KeyframeStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframeStyle)
+#### `ApplicationCache`: new commands
+* [`ApplicationCache.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-enable)
+* [`ApplicationCache.getApplicationCacheForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getApplicationCacheForFrame)
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests)
+* [`ApplicationCache.getManifestForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getManifestForFrame)
+#### `ApplicationCache`: new events
+* [`ApplicationCache.applicationCacheStatusUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-applicationCacheStatusUpdated)
+* [`ApplicationCache.networkStateUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-networkStateUpdated)
+#### `ApplicationCache`: new types
+* [`ApplicationCache.ApplicationCacheResource`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCacheResource)
+* [`ApplicationCache.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCache)
+* [`ApplicationCache.FrameWithManifest`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-FrameWithManifest)
+#### `Audits`: new commands
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse)
+* [`Audits.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-disable)
+* [`Audits.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-enable)
+#### `Audits`: new event
+* [`Audits.issueAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#event-issueAdded)
+#### `Audits`: new types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie)
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.AffectedFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedFrame)
+* [`Audits.SameSiteCookieExclusionReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieExclusionReason)
+* [`Audits.SameSiteCookieWarningReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieWarningReason)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails)
+* [`Audits.MixedContentResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResolutionStatus)
+* [`Audits.MixedContentResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResourceType)
+* [`Audits.MixedContentIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentIssueDetails)
+* [`Audits.BlockedByResponseReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseReason)
+* [`Audits.BlockedByResponseIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseIssueDetails)
+* [`Audits.HeavyAdResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdResolutionStatus)
+* [`Audits.HeavyAdReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdReason)
+* [`Audits.HeavyAdIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdIssueDetails)
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.SourceCodeLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SourceCodeLocation)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode)
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails)
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue)
+#### `BackgroundService`: new commands
+* [`BackgroundService.startObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-startObserving)
+* [`BackgroundService.stopObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-stopObserving)
+* [`BackgroundService.setRecording`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-setRecording)
+* [`BackgroundService.clearEvents`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-clearEvents)
+#### `BackgroundService`: new events
+* [`BackgroundService.recordingStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-recordingStateChanged)
+* [`BackgroundService.backgroundServiceEventReceived`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-backgroundServiceEventReceived)
+#### `BackgroundService`: new types
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName)
+* [`BackgroundService.EventMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-EventMetadata)
+* [`BackgroundService.BackgroundServiceEvent`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-BackgroundServiceEvent)
+#### `Browser`: new commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission)
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions)
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions)
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior)
+* [`Browser.close`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-close)
+* [`Browser.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crash)
+* [`Browser.crashGpuProcess`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crashGpuProcess)
+* [`Browser.getVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion)
+* [`Browser.getBrowserCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getBrowserCommandLine)
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms)
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram)
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds)
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget)
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds)
+* [`Browser.setDockTile`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDockTile)
+#### `Browser`: new types
+* [`Browser.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserContextID)
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID)
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState)
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds)
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType)
+* [`Browser.PermissionSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionSetting)
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor)
+* [`Browser.Bucket`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bucket)
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram)
+#### `CSS`: new commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule)
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames)
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet)
+* [`CSS.disable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-disable)
+* [`CSS.enable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-enable)
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState)
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors)
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode)
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode)
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode)
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries)
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode)
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText)
+* [`CSS.trackComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-trackComputedStyleUpdates)
+* [`CSS.takeComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeComputedStyleUpdates)
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode)
+* [`CSS.setKeyframeKey`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setKeyframeKey)
+* [`CSS.setMediaText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setMediaText)
+* [`CSS.setRuleSelector`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setRuleSelector)
+* [`CSS.setStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleSheetText)
+* [`CSS.setStyleTexts`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleTexts)
+* [`CSS.startRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-startRuleUsageTracking)
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking)
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta)
+* [`CSS.setLocalFontsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setLocalFontsEnabled)
+#### `CSS`: new events
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated)
+* [`CSS.mediaQueryResultChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-mediaQueryResultChanged)
+* [`CSS.styleSheetAdded`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetAdded)
+* [`CSS.styleSheetChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetChanged)
+* [`CSS.styleSheetRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetRemoved)
+#### `CSS`: new types
+* [`CSS.StyleSheetId`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetId)
+* [`CSS.StyleSheetOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetOrigin)
+* [`CSS.PseudoElementMatches`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PseudoElementMatches)
+* [`CSS.InheritedStyleEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InheritedStyleEntry)
+* [`CSS.RuleMatch`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleMatch)
+* [`CSS.Value`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-Value)
+* [`CSS.SelectorList`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SelectorList)
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader)
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule)
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage)
+* [`CSS.SourceRange`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SourceRange)
+* [`CSS.ShorthandEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-ShorthandEntry)
+* [`CSS.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSComputedStyleProperty)
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle)
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty)
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia)
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery)
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression)
+* [`CSS.PlatformFontUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PlatformFontUsage)
+* [`CSS.FontVariationAxis`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontVariationAxis)
+* [`CSS.FontFace`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontFace)
+* [`CSS.CSSKeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframesRule)
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule)
+* [`CSS.StyleDeclarationEdit`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleDeclarationEdit)
+#### `CacheStorage`: new commands
+* [`CacheStorage.deleteCache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteCache)
+* [`CacheStorage.deleteEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteEntry)
+* [`CacheStorage.requestCacheNames`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCacheNames)
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse)
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries)
+#### `CacheStorage`: new types
+* [`CacheStorage.CacheId`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CacheId)
+* [`CacheStorage.CachedResponseType`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponseType)
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry)
+* [`CacheStorage.Cache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Cache)
+* [`CacheStorage.Header`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Header)
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse)
+#### `Cast`: new commands
+* [`Cast.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-enable)
+* [`Cast.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-disable)
+* [`Cast.setSinkToUse`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-setSinkToUse)
+* [`Cast.startTabMirroring`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-startTabMirroring)
+* [`Cast.stopCasting`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-stopCasting)
+#### `Cast`: new events
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated)
+* [`Cast.issueUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-issueUpdated)
+#### `Cast`: new type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+#### `DOM`: new commands
+* [`DOM.collectClassNamesFromSubtree`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-collectClassNamesFromSubtree)
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo)
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode)
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+* [`DOM.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-disable)
+* [`DOM.discardSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-discardSearchResults)
+* [`DOM.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-enable)
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus)
+* [`DOM.getAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getAttributes)
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel)
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads)
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument)
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument)
+* [`DOM.getNodesForSubtreeByStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodesForSubtreeByStyle)
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation)
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML)
+* [`DOM.getRelayoutBoundary`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getRelayoutBoundary)
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults)
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight)
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode)
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect)
+* [`DOM.markUndoableState`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-markUndoableState)
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo)
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch)
+* [`DOM.pushNodeByPathToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodeByPathToFrontend)
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend)
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector)
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll)
+* [`DOM.redo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-redo)
+* [`DOM.removeAttribute`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeAttribute)
+* [`DOM.removeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeNode)
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes)
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode)
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode)
+* [`DOM.setAttributeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributeValue)
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText)
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles)
+* [`DOM.setNodeStackTracesEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeStackTracesEnabled)
+* [`DOM.getNodeStackTraces`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeStackTraces)
+* [`DOM.getFileInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFileInfo)
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode)
+* [`DOM.setNodeName`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeName)
+* [`DOM.setNodeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeValue)
+* [`DOM.setOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setOuterHTML)
+* [`DOM.undo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-undo)
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner)
+#### `DOM`: new events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified)
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved)
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified)
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated)
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted)
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved)
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated)
+* [`DOM.documentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated)
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated)
+* [`DOM.pseudoElementAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded)
+* [`DOM.pseudoElementRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved)
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes)
+* [`DOM.shadowRootPopped`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped)
+* [`DOM.shadowRootPushed`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed)
+#### `DOM`: new types
+* [`DOM.NodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-NodeId)
+* [`DOM.BackendNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNodeId)
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode)
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType)
+* [`DOM.ShadowRootType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShadowRootType)
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node)
+* [`DOM.RGBA`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-RGBA)
+* [`DOM.Quad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Quad)
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel)
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo)
+* [`DOM.Rect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Rect)
+* [`DOM.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-CSSComputedStyleProperty)
+#### `DOMDebugger`: new commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners)
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint)
+* [`DOMDebugger.removeEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeEventListenerBreakpoint)
+* [`DOMDebugger.removeInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeInstrumentationBreakpoint)
+* [`DOMDebugger.removeXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeXHRBreakpoint)
+* [`DOMDebugger.setDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setDOMBreakpoint)
+* [`DOMDebugger.setEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setEventListenerBreakpoint)
+* [`DOMDebugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setInstrumentationBreakpoint)
+* [`DOMDebugger.setXHRBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setXHRBreakpoint)
+#### `DOMDebugger`: new types
+* [`DOMDebugger.DOMBreakpointType`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-DOMBreakpointType)
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener)
+#### `DOMSnapshot`: new commands
+* [`DOMSnapshot.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-disable)
+* [`DOMSnapshot.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-enable)
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot)
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot)
+#### `DOMSnapshot`: new types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode)
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox)
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode)
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle)
+* [`DOMSnapshot.NameValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NameValue)
+* [`DOMSnapshot.StringIndex`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StringIndex)
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings)
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData)
+* [`DOMSnapshot.RareBooleanData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareBooleanData)
+* [`DOMSnapshot.RareIntegerData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareIntegerData)
+* [`DOMSnapshot.Rectangle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-Rectangle)
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot)
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot)
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot)
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot)
+#### `DOMStorage`: new commands
+* [`DOMStorage.clear`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-clear)
+* [`DOMStorage.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-disable)
+* [`DOMStorage.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-enable)
+* [`DOMStorage.getDOMStorageItems`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-getDOMStorageItems)
+* [`DOMStorage.removeDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-removeDOMStorageItem)
+* [`DOMStorage.setDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-setDOMStorageItem)
+#### `DOMStorage`: new events
+* [`DOMStorage.domStorageItemAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemAdded)
+* [`DOMStorage.domStorageItemRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemRemoved)
+* [`DOMStorage.domStorageItemUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemUpdated)
+* [`DOMStorage.domStorageItemsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemsCleared)
+#### `DOMStorage`: new types
+* [`DOMStorage.StorageId`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-StorageId)
+* [`DOMStorage.Item`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-Item)
+#### `Database`: new commands
+* [`Database.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-disable)
+* [`Database.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-enable)
+* [`Database.executeSQL`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-executeSQL)
+* [`Database.getDatabaseTableNames`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-getDatabaseTableNames)
+#### `Database`: new event
+* [`Database.addDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#event-addDatabase)
+#### `Database`: new types
+* [`Database.DatabaseId`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-DatabaseId)
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database)
+* [`Database.Error`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Error)
+#### `DeviceOrientation`: new commands
+* [`DeviceOrientation.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-clearDeviceOrientationOverride)
+* [`DeviceOrientation.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/#method-setDeviceOrientationOverride)
+#### `Emulation`: new commands
+* [`Emulation.canEmulate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-canEmulate)
+* [`Emulation.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearDeviceMetricsOverride)
+* [`Emulation.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearGeolocationOverride)
+* [`Emulation.resetPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-resetPageScaleFactor)
+* [`Emulation.setFocusEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setFocusEmulationEnabled)
+* [`Emulation.setCPUThrottlingRate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setCPUThrottlingRate)
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride)
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride)
+* [`Emulation.setScrollbarsHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScrollbarsHidden)
+* [`Emulation.setDocumentCookieDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDocumentCookieDisabled)
+* [`Emulation.setEmitTouchEventsForMouse`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmitTouchEventsForMouse)
+* [`Emulation.setEmulatedMedia`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedMedia)
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+* [`Emulation.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setGeolocationOverride)
+* [`Emulation.setIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setIdleOverride)
+* [`Emulation.clearIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearIdleOverride)
+* [`Emulation.setNavigatorOverrides`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setNavigatorOverrides)
+* [`Emulation.setPageScaleFactor`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setPageScaleFactor)
+* [`Emulation.setScriptExecutionDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScriptExecutionDisabled)
+* [`Emulation.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTouchEmulationEnabled)
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy)
+* [`Emulation.setLocaleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setLocaleOverride)
+* [`Emulation.setTimezoneOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTimezoneOverride)
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize)
+* [`Emulation.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setUserAgentOverride)
+#### `Emulation`: new event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired)
+#### `Emulation`: new types
+* [`Emulation.ScreenOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-ScreenOrientation)
+* [`Emulation.DisplayFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisplayFeature)
+* [`Emulation.MediaFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-MediaFeature)
+* [`Emulation.VirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-VirtualTimePolicy)
+* [`Emulation.UserAgentBrandVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentBrandVersion)
+* [`Emulation.UserAgentMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentMetadata)
+#### `HeadlessExperimental`: new commands
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame)
+* [`HeadlessExperimental.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-disable)
+* [`HeadlessExperimental.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enable)
+#### `HeadlessExperimental`: new event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged)
+#### `HeadlessExperimental`: new type
+* [`HeadlessExperimental.ScreenshotParams`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#type-ScreenshotParams)
+#### `IO`: new commands
+* [`IO.close`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-close)
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read)
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob)
+#### `IO`: new type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle)
+#### `IndexedDB`: new commands
+* [`IndexedDB.clearObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-clearObjectStore)
+* [`IndexedDB.deleteDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteDatabase)
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries)
+* [`IndexedDB.disable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-disable)
+* [`IndexedDB.enable`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-enable)
+* [`IndexedDB.requestData`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestData)
+* [`IndexedDB.getMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getMetadata)
+* [`IndexedDB.requestDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabase)
+* [`IndexedDB.requestDatabaseNames`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabaseNames)
+#### `IndexedDB`: new types
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores)
+* [`IndexedDB.ObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStore)
+* [`IndexedDB.ObjectStoreIndex`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStoreIndex)
+* [`IndexedDB.Key`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-Key)
+* [`IndexedDB.KeyRange`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyRange)
+* [`IndexedDB.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DataEntry)
+* [`IndexedDB.KeyPath`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyPath)
+#### `Input`: new commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent)
+* [`Input.insertText`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-insertText)
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent)
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent)
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent)
+* [`Input.setIgnoreInputEvents`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-setIgnoreInputEvents)
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture)
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture)
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture)
+#### `Input`: new types
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint)
+* [`Input.GestureSourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-GestureSourceType)
+* [`Input.MouseButton`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-MouseButton)
+* [`Input.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TimeSinceEpoch)
+#### `Inspector`: new commands
+* [`Inspector.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-disable)
+* [`Inspector.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#method-enable)
+#### `Inspector`: new events
+* [`Inspector.detached`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-detached)
+* [`Inspector.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetCrashed)
+* [`Inspector.targetReloadedAfterCrash`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetReloadedAfterCrash)
+#### `LayerTree`: new commands
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons)
+* [`LayerTree.disable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-disable)
+* [`LayerTree.enable`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-enable)
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot)
+* [`LayerTree.makeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-makeSnapshot)
+* [`LayerTree.profileSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-profileSnapshot)
+* [`LayerTree.releaseSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-releaseSnapshot)
+* [`LayerTree.replaySnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-replaySnapshot)
+* [`LayerTree.snapshotCommandLog`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-snapshotCommandLog)
+#### `LayerTree`: new events
+* [`LayerTree.layerPainted`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerPainted)
+* [`LayerTree.layerTreeDidChange`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerTreeDidChange)
+#### `LayerTree`: new types
+* [`LayerTree.LayerId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-LayerId)
+* [`LayerTree.SnapshotId`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-SnapshotId)
+* [`LayerTree.ScrollRect`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-ScrollRect)
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint)
+* [`LayerTree.PictureTile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PictureTile)
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer)
+* [`LayerTree.PaintProfile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PaintProfile)
+#### `Log`: new commands
+* [`Log.clear`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-clear)
+* [`Log.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-disable)
+* [`Log.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-enable)
+* [`Log.startViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-startViolationsReport)
+* [`Log.stopViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-stopViolationsReport)
+#### `Log`: new event
+* [`Log.entryAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#event-entryAdded)
+#### `Log`: new types
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry)
+* [`Log.ViolationSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-ViolationSetting)
+#### `Memory`: new commands
+* [`Memory.getDOMCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getDOMCounters)
+* [`Memory.prepareForLeakDetection`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-prepareForLeakDetection)
+* [`Memory.forciblyPurgeJavaScriptMemory`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-forciblyPurgeJavaScriptMemory)
+* [`Memory.setPressureNotificationsSuppressed`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-setPressureNotificationsSuppressed)
+* [`Memory.simulatePressureNotification`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-simulatePressureNotification)
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile)
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: new types
+* [`Memory.PressureLevel`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-PressureLevel)
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+* [`Memory.Module`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-Module)
+#### `Network`: new commands
+* [`Network.canClearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCache)
+* [`Network.canClearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCookies)
+* [`Network.canEmulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canEmulateNetworkConditions)
+* [`Network.clearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCache)
+* [`Network.clearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-clearBrowserCookies)
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest)
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies)
+* [`Network.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-disable)
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions)
+* [`Network.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enable)
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies)
+* [`Network.getCertificate`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCertificate)
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies)
+* [`Network.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBody)
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData)
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream)
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR)
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody)
+* [`Network.setBlockedURLs`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBlockedURLs)
+* [`Network.setBypassServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBypassServiceWorker)
+* [`Network.setCacheDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCacheDisabled)
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie)
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies)
+* [`Network.setDataSizeLimitsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setDataSizeLimitsForTest)
+* [`Network.setExtraHTTPHeaders`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setExtraHTTPHeaders)
+* [`Network.setAttachDebugHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugHeader)
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception)
+* [`Network.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setUserAgentOverride)
+* [`Network.getSecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getSecurityIsolationStatus)
+* [`Network.loadNetworkResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-loadNetworkResource)
+#### `Network`: new events
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived)
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived)
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed)
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished)
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted)
+* [`Network.requestServedFromCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestServedFromCache)
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent)
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority)
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived)
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived)
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed)
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated)
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError)
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived)
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent)
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived)
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest)
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo)
+* [`Network.responseReceivedExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceivedExtraInfo)
+#### `Network`: new types
+* [`Network.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceType)
+* [`Network.LoaderId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoaderId)
+* [`Network.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestId)
+* [`Network.InterceptionId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionId)
+* [`Network.ErrorReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ErrorReason)
+* [`Network.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TimeSinceEpoch)
+* [`Network.MonotonicTime`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-MonotonicTime)
+* [`Network.Headers`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Headers)
+* [`Network.ConnectionType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ConnectionType)
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite)
+* [`Network.CookiePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookiePriority)
+* [`Network.ResourceTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceTiming)
+* [`Network.ResourcePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourcePriority)
+* [`Network.PostDataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PostDataEntry)
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request)
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp)
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails)
+* [`Network.CertificateTransparencyCompliance`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CertificateTransparencyCompliance)
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason)
+* [`Network.ServiceWorkerResponseSource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ServiceWorkerResponseSource)
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response)
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest)
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse)
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame)
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource)
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator)
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie)
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason)
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason)
+* [`Network.BlockedSetCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedSetCookieWithReason)
+* [`Network.BlockedCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedCookieWithReason)
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam)
+* [`Network.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallenge)
+* [`Network.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallengeResponse)
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern)
+* [`Network.SignedExchangeSignature`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeSignature)
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader)
+* [`Network.SignedExchangeErrorField`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeErrorField)
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError)
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo)
+* [`Network.CrossOriginOpenerPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyValue)
+* [`Network.CrossOriginOpenerPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyStatus)
+* [`Network.CrossOriginEmbedderPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyValue)
+* [`Network.CrossOriginEmbedderPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyStatus)
+* [`Network.SecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityIsolationStatus)
+* [`Network.LoadNetworkResourcePageResult`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourcePageResult)
+* [`Network.LoadNetworkResourceOptions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourceOptions)
+#### `Overlay`: new commands
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+* [`Overlay.getGridHighlightObjectsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getGridHighlightObjectsForTest)
+* [`Overlay.getSourceOrderHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getSourceOrderHighlightObjectForTest)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightSourceOrder`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightSourceOrder)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.setShowAdHighlights`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowAdHighlights)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowGridOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowGridOverlays)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowLayoutShiftRegions`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowLayoutShiftRegions)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowHitTestBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHitTestBorders)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setShowHinge`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHinge)
+#### `Overlay`: new events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested)
+* [`Overlay.inspectModeCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectModeCanceled)
+#### `Overlay`: new types
+* [`Overlay.SourceOrderConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-SourceOrderConfig)
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig)
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.ColorFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ColorFormat)
+* [`Overlay.GridNodeHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridNodeHighlightConfig)
+* [`Overlay.HingeConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HingeConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `Page`: new commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad)
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument)
+* [`Page.bringToFront`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-bringToFront)
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot)
+* [`Page.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureSnapshot)
+* [`Page.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceMetricsOverride)
+* [`Page.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceOrientationOverride)
+* [`Page.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearGeolocationOverride)
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld)
+* [`Page.deleteCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-deleteCookie)
+* [`Page.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-disable)
+* [`Page.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-enable)
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest)
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors)
+* [`Page.getManifestIcons`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getManifestIcons)
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies)
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree)
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics)
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory)
+* [`Page.resetNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-resetNavigationHistory)
+* [`Page.getResourceContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceContent)
+* [`Page.getResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceTree)
+* [`Page.handleJavaScriptDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleJavaScriptDialog)
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate)
+* [`Page.navigateToHistoryEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigateToHistoryEntry)
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF)
+* [`Page.reload`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-reload)
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad)
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument)
+* [`Page.screencastFrameAck`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-screencastFrameAck)
+* [`Page.searchInResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-searchInResource)
+* [`Page.setAdBlockingEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setAdBlockingEnabled)
+* [`Page.setBypassCSP`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setBypassCSP)
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride)
+* [`Page.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceOrientationOverride)
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies)
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes)
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent)
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior)
+* [`Page.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setGeolocationOverride)
+* [`Page.setLifecycleEventsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setLifecycleEventsEnabled)
+* [`Page.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setTouchEmulationEnabled)
+* [`Page.startScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-startScreencast)
+* [`Page.stopLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopLoading)
+* [`Page.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-crash)
+* [`Page.close`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-close)
+* [`Page.setWebLifecycleState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setWebLifecycleState)
+* [`Page.stopScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopScreencast)
+* [`Page.setProduceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setProduceCompilationCache)
+* [`Page.addCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addCompilationCache)
+* [`Page.clearCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearCompilationCache)
+* [`Page.generateTestReport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-generateTestReport)
+* [`Page.waitForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-waitForDebugger)
+* [`Page.setInterceptFileChooserDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setInterceptFileChooserDialog)
+#### `Page`: new events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired)
+* [`Page.fileChooserOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-fileChooserOpened)
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached)
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation)
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached)
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated)
+* [`Page.frameResized`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameResized)
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation)
+* [`Page.frameStartedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStartedLoading)
+* [`Page.frameStoppedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStoppedLoading)
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin)
+* [`Page.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadProgress)
+* [`Page.interstitialHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialHidden)
+* [`Page.interstitialShown`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-interstitialShown)
+* [`Page.javascriptDialogClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogClosed)
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening)
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent)
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired)
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument)
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame)
+* [`Page.screencastVisibilityChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastVisibilityChanged)
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen)
+* [`Page.compilationCacheProduced`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-compilationCacheProduced)
+#### `Page`: new types
+* [`Page.FrameId`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameId)
+* [`Page.AdFrameType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AdFrameType)
+* [`Page.SecureContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-SecureContextType)
+* [`Page.CrossOriginIsolatedContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-CrossOriginIsolatedContextType)
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame)
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource)
+* [`Page.FrameResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResourceTree)
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree)
+* [`Page.ScriptIdentifier`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScriptIdentifier)
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType)
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry)
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata)
+* [`Page.DialogType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-DialogType)
+* [`Page.AppManifestError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestError)
+* [`Page.AppManifestParsedProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestParsedProperties)
+* [`Page.LayoutViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-LayoutViewport)
+* [`Page.VisualViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-VisualViewport)
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport)
+* [`Page.FontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontFamilies)
+* [`Page.FontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontSizes)
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+* [`Page.ClientNavigationDisposition`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationDisposition)
+* [`Page.InstallabilityErrorArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityErrorArgument)
+* [`Page.InstallabilityError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityError)
+* [`Page.ReferrerPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ReferrerPolicy)
+#### `Performance`: new commands
+* [`Performance.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-disable)
+* [`Performance.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-enable)
+* [`Performance.setTimeDomain`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-setTimeDomain)
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics)
+#### `Performance`: new event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics)
+#### `Performance`: new type
+* [`Performance.Metric`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#type-Metric)
+#### `Security`: new commands
+* [`Security.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-disable)
+* [`Security.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-enable)
+* [`Security.setIgnoreCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setIgnoreCertificateErrors)
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError)
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors)
+#### `Security`: new events
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError)
+* [`Security.visibleSecurityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-visibleSecurityStateChanged)
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged)
+#### `Security`: new types
+* [`Security.CertificateId`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateId)
+* [`Security.MixedContentType`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-MixedContentType)
+* [`Security.SecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityState)
+* [`Security.CertificateSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateSecurityState)
+* [`Security.SafetyTipStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipStatus)
+* [`Security.SafetyTipInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipInfo)
+* [`Security.VisibleSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-VisibleSecurityState)
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation)
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus)
+* [`Security.CertificateErrorAction`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateErrorAction)
+#### `ServiceWorker`: new commands
+* [`ServiceWorker.deliverPushMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-deliverPushMessage)
+* [`ServiceWorker.disable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-disable)
+* [`ServiceWorker.dispatchSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchSyncEvent)
+* [`ServiceWorker.dispatchPeriodicSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchPeriodicSyncEvent)
+* [`ServiceWorker.enable`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-enable)
+* [`ServiceWorker.inspectWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-inspectWorker)
+* [`ServiceWorker.setForceUpdateOnPageLoad`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-setForceUpdateOnPageLoad)
+* [`ServiceWorker.skipWaiting`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-skipWaiting)
+* [`ServiceWorker.startWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-startWorker)
+* [`ServiceWorker.stopAllWorkers`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopAllWorkers)
+* [`ServiceWorker.stopWorker`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopWorker)
+* [`ServiceWorker.unregister`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-unregister)
+* [`ServiceWorker.updateRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-updateRegistration)
+#### `ServiceWorker`: new events
+* [`ServiceWorker.workerErrorReported`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerErrorReported)
+* [`ServiceWorker.workerRegistrationUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerRegistrationUpdated)
+* [`ServiceWorker.workerVersionUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerVersionUpdated)
+#### `ServiceWorker`: new types
+* [`ServiceWorker.RegistrationID`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-RegistrationID)
+* [`ServiceWorker.ServiceWorkerRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerRegistration)
+* [`ServiceWorker.ServiceWorkerVersionRunningStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionRunningStatus)
+* [`ServiceWorker.ServiceWorkerVersionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersionStatus)
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion)
+* [`ServiceWorker.ServiceWorkerErrorMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerErrorMessage)
+#### `Storage`: new commands
+* [`Storage.clearDataForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearDataForOrigin)
+* [`Storage.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getCookies)
+* [`Storage.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-setCookies)
+* [`Storage.clearCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearCookies)
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+* [`Storage.trackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackCacheStorageForOrigin)
+* [`Storage.trackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackIndexedDBForOrigin)
+* [`Storage.untrackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackCacheStorageForOrigin)
+* [`Storage.untrackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackIndexedDBForOrigin)
+#### `Storage`: new events
+* [`Storage.cacheStorageContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageContentUpdated)
+* [`Storage.cacheStorageListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageListUpdated)
+* [`Storage.indexedDBContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBContentUpdated)
+* [`Storage.indexedDBListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBListUpdated)
+#### `Storage`: new types
+* [`Storage.StorageType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-StorageType)
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType)
+#### `SystemInfo`: new commands
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo)
+* [`SystemInfo.getProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getProcessInfo)
+#### `SystemInfo`: new types
+* [`SystemInfo.GPUDevice`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUDevice)
+* [`SystemInfo.Size`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-Size)
+* [`SystemInfo.VideoDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoDecodeAcceleratorCapability)
+* [`SystemInfo.VideoEncodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoEncodeAcceleratorCapability)
+* [`SystemInfo.SubsamplingFormat`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-SubsamplingFormat)
+* [`SystemInfo.ImageType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageType)
+* [`SystemInfo.ImageDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageDecodeAcceleratorCapability)
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo)
+* [`SystemInfo.ProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessInfo)
+#### `Target`: new commands
+* [`Target.activateTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-activateTarget)
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget)
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget)
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget)
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol)
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext)
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts)
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget)
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget)
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext)
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo)
+* [`Target.getTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargets)
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget)
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach)
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets)
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations)
+#### `Target`: new events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget)
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget)
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget)
+* [`Target.targetCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCreated)
+* [`Target.targetDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetDestroyed)
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed)
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged)
+#### `Target`: new types
+* [`Target.TargetID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetID)
+* [`Target.SessionID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-SessionID)
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo)
+* [`Target.RemoteLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-RemoteLocation)
+#### `Tethering`: new commands
+* [`Tethering.bind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-bind)
+* [`Tethering.unbind`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#method-unbind)
+#### `Tethering`: new event
+* [`Tethering.accepted`](https://chromedevtools.github.io/devtools-protocol/tot/Tethering/#event-accepted)
+#### `Tracing`: new commands
+* [`Tracing.end`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-end)
+* [`Tracing.getCategories`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-getCategories)
+* [`Tracing.recordClockSyncMarker`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-recordClockSyncMarker)
+* [`Tracing.requestMemoryDump`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-requestMemoryDump)
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start)
+#### `Tracing`: new events
+* [`Tracing.bufferUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-bufferUsage)
+* [`Tracing.dataCollected`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-dataCollected)
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete)
+#### `Tracing`: new types
+* [`Tracing.MemoryDumpConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-MemoryDumpConfig)
+* [`Tracing.TraceConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TraceConfig)
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+* [`Tracing.StreamCompression`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamCompression)
+#### `Fetch`: new commands
+* [`Fetch.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-disable)
+* [`Fetch.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-enable)
+* [`Fetch.failRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-failRequest)
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest)
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest)
+* [`Fetch.continueWithAuth`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueWithAuth)
+* [`Fetch.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-getResponseBody)
+* [`Fetch.takeResponseBodyAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-takeResponseBodyAsStream)
+#### `Fetch`: new events
+* [`Fetch.requestPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-requestPaused)
+* [`Fetch.authRequired`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-authRequired)
+#### `Fetch`: new types
+* [`Fetch.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestId)
+* [`Fetch.RequestStage`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestStage)
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern)
+* [`Fetch.HeaderEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-HeaderEntry)
+* [`Fetch.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallenge)
+* [`Fetch.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallengeResponse)
+#### `WebAudio`: new commands
+* [`WebAudio.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-enable)
+* [`WebAudio.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-disable)
+* [`WebAudio.getRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-getRealtimeData)
+#### `WebAudio`: new events
+* [`WebAudio.contextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextCreated)
+* [`WebAudio.contextWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextWillBeDestroyed)
+* [`WebAudio.contextChanged`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextChanged)
+* [`WebAudio.audioListenerCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerCreated)
+* [`WebAudio.audioListenerWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerWillBeDestroyed)
+* [`WebAudio.audioNodeCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeCreated)
+* [`WebAudio.audioNodeWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeWillBeDestroyed)
+* [`WebAudio.audioParamCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamCreated)
+* [`WebAudio.audioParamWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamWillBeDestroyed)
+* [`WebAudio.nodesConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesConnected)
+* [`WebAudio.nodesDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesDisconnected)
+* [`WebAudio.nodeParamConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamConnected)
+* [`WebAudio.nodeParamDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamDisconnected)
+#### `WebAudio`: new types
+* [`WebAudio.GraphObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-GraphObjectId)
+* [`WebAudio.ContextType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextType)
+* [`WebAudio.ContextState`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextState)
+* [`WebAudio.NodeType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-NodeType)
+* [`WebAudio.ChannelCountMode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelCountMode)
+* [`WebAudio.ChannelInterpretation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelInterpretation)
+* [`WebAudio.ParamType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ParamType)
+* [`WebAudio.AutomationRate`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AutomationRate)
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData)
+* [`WebAudio.BaseAudioContext`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-BaseAudioContext)
+* [`WebAudio.AudioListener`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioListener)
+* [`WebAudio.AudioNode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioNode)
+* [`WebAudio.AudioParam`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioParam)
+#### `WebAuthn`: new commands
+* [`WebAuthn.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-enable)
+* [`WebAuthn.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-disable)
+* [`WebAuthn.addVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addVirtualAuthenticator)
+* [`WebAuthn.removeVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeVirtualAuthenticator)
+* [`WebAuthn.addCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addCredential)
+* [`WebAuthn.getCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredential)
+* [`WebAuthn.getCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredentials)
+* [`WebAuthn.removeCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeCredential)
+* [`WebAuthn.clearCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-clearCredentials)
+* [`WebAuthn.setUserVerified`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setUserVerified)
+* [`WebAuthn.setAutomaticPresenceSimulation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setAutomaticPresenceSimulation)
+#### `WebAuthn`: new types
+* [`WebAuthn.AuthenticatorId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorId)
+* [`WebAuthn.AuthenticatorProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorProtocol)
+* [`WebAuthn.AuthenticatorTransport`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorTransport)
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions)
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential)
+#### `Media`: new commands
+* [`Media.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-enable)
+* [`Media.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-disable)
+#### `Media`: new events
+* [`Media.playerPropertiesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerPropertiesChanged)
+* [`Media.playerEventsAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerEventsAdded)
+* [`Media.playerMessagesLogged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerMessagesLogged)
+* [`Media.playerErrorsRaised`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerErrorsRaised)
+* [`Media.playersCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playersCreated)
+#### `Media`: new types
+* [`Media.PlayerId`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerId)
+* [`Media.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-Timestamp)
+* [`Media.PlayerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerMessage)
+* [`Media.PlayerProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerProperty)
+* [`Media.PlayerEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEvent)
+* [`Media.PlayerError`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerError)
+
+
+## Roll protocol to r813570
+###### _2020-10-04 08:16:04_ | Diff: [e98f67b...874a0ee](https://github.com/ChromeDevTools/devtools-protocol/compare/e98f67b...874a0ee)
+#### `Console`: removed domains
+* [`Console.Console`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Console)
+* [`Console.Debugger`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Debugger)
+* [`Console.HeapProfiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-HeapProfiler)
+* [`Console.Profiler`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Profiler)
+* [`Console.Runtime`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Runtime)
+* [`Console.Schema`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#domain-Schema)
+#### `Accessibility`: removed domains
+* [`Accessibility.Accessibility`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Accessibility)
+* [`Accessibility.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Animation)
+* [`Accessibility.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ApplicationCache)
+* [`Accessibility.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Audits)
+* [`Accessibility.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-BackgroundService)
+* [`Accessibility.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Browser)
+* [`Accessibility.CSS`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CSS)
+* [`Accessibility.CacheStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-CacheStorage)
+* [`Accessibility.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Cast)
+* [`Accessibility.DOM`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOM)
+* [`Accessibility.DOMDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMDebugger)
+* [`Accessibility.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMSnapshot)
+* [`Accessibility.DOMStorage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DOMStorage)
+* [`Accessibility.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Database)
+* [`Accessibility.DeviceOrientation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-DeviceOrientation)
+* [`Accessibility.Emulation`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Emulation)
+* [`Accessibility.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-HeadlessExperimental)
+* [`Accessibility.IO`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IO)
+* [`Accessibility.IndexedDB`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-IndexedDB)
+* [`Accessibility.Input`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Input)
+* [`Accessibility.Inspector`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Inspector)
+* [`Accessibility.LayerTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-LayerTree)
+* [`Accessibility.Log`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Log)
+* [`Accessibility.Memory`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Memory)
+* [`Accessibility.Network`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Network)
+* [`Accessibility.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Overlay)
+* [`Accessibility.Page`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Page)
+* [`Accessibility.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Performance)
+* [`Accessibility.Security`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Security)
+* [`Accessibility.ServiceWorker`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-ServiceWorker)
+* [`Accessibility.Storage`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Storage)
+* [`Accessibility.SystemInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-SystemInfo)
+* [`Accessibility.Target`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Target)
+* [`Accessibility.Tethering`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tethering)
+* [`Accessibility.Tracing`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Tracing)
+* [`Accessibility.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Fetch)
+* [`Accessibility.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAudio)
+* [`Accessibility.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-WebAuthn)
+* [`Accessibility.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#domain-Media)
+
+
+## Roll protocol to r813281
+###### _2020-10-02 11:16:02_ | Diff: [81d36b6...e98f67b](https://github.com/ChromeDevTools/devtools-protocol/compare/81d36b6...e98f67b)
+#### `WebAuthn`: modified type
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions) - The `automaticPresenceSimulation` in the properties had `name` _updated_. The `automaticPresenceSimulation` in the properties had `description` _updated_. The `isUserVerified` in the properties had `name` _updated_. The `isUserVerified` in the properties had `description` _updated_. The properties's `isUserVerified` _added_.
+
+
+## Roll protocol to r812116
+###### _2020-09-30 09:16:20_ | Diff: [9f36776...81d36b6](https://github.com/ChromeDevTools/devtools-protocol/compare/9f36776...81d36b6)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The `canAccessOpener` in the properties had `description` _updated_. The `browserContextId` in the properties had `name` _updated_. The `browserContextId` in the properties had `$ref` _updated_. The properties's `description` _added_. The properties's `browserContextId` _added_.
+
+
+## Roll protocol to r810467
+###### _2020-09-24 21:16:27_ | Diff: [362b549...9f36776](https://github.com/ChromeDevTools/devtools-protocol/compare/362b549...9f36776)
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `success` in the return value had `description` _updated_. The return value's `deprecated` _added_.
+#### `Target`: modified command
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget) - The return value's `description` _added_. The return value's `deprecated` _added_.
+
+
+## Roll protocol to r810188
+###### _2020-09-24 07:16:32_ | Diff: [ea0b910...362b549](https://github.com/ChromeDevTools/devtools-protocol/compare/ea0b910...362b549)
+#### `Network`: new command
+* [`Network.loadNetworkResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-loadNetworkResource)
+#### `Network`: new types
+* [`Network.LoadNetworkResourcePageResult`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourcePageResult)
+* [`Network.LoadNetworkResourceOptions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-LoadNetworkResourceOptions)
+
+
+## Roll protocol to r809251
+###### _2020-09-22 02:16:18_ | Diff: [01dd54b...ea0b910](https://github.com/ChromeDevTools/devtools-protocol/compare/01dd54b...ea0b910)
+#### `Accessibility`: new command
+* [`Accessibility.queryAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-queryAXTree)
+
+
+## Roll protocol to r808307
+###### _2020-09-18 04:16:16_ | Diff: [9e2e943...01dd54b](https://github.com/ChromeDevTools/devtools-protocol/compare/9e2e943...01dd54b)
+#### `Network`: modified types
+* [`Network.CrossOriginOpenerPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyStatus) - The properties's `reportOnlyValue` _added_. The properties's `reportingEndpoint` _added_. The properties's `reportOnlyReportingEndpoint` _added_.
+* [`Network.CrossOriginEmbedderPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyStatus) - The properties's `reportOnlyValue` _added_. The properties's `reportingEndpoint` _added_. The properties's `reportOnlyReportingEndpoint` _added_.
+
+
+## Roll protocol to r806843
+###### _2020-09-14 19:16:32_ | Diff: [2155b85...9e2e943](https://github.com/ChromeDevTools/devtools-protocol/compare/2155b85...9e2e943)
+#### `Fetch`: modified types
+* [`Fetch.RequestStage`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestStage) - `experimental` removed.
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern) - `experimental` removed.
+* [`Fetch.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallenge) - `experimental` removed.
+* [`Fetch.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallengeResponse) - `experimental` removed.
+
+
+## Roll protocol to r806611
+###### _2020-09-14 05:16:27_ | Diff: [176b07f...2155b85](https://github.com/ChromeDevTools/devtools-protocol/compare/176b07f...2155b85)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The properties's `gridBackgroundColor` _added_.
+
+
+## Roll protocol to r806105
+###### _2020-09-11 02:16:20_ | Diff: [23323c5...176b07f](https://github.com/ChromeDevTools/devtools-protocol/compare/23323c5...176b07f)
+#### `CSS`: modified type
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The `isMutable` in the properties had `description` _updated_. The `startLine` in the properties had `name` _updated_. The `startLine` in the properties had `description` _updated_. The `startLine` in the properties had `type` _updated_. The `startColumn` in the properties had `name` _updated_. The `startColumn` in the properties had `description` _updated_. The `length` in the properties had `name` _updated_. The `length` in the properties had `description` _updated_. The `endLine` in the properties had `name` _updated_. The `endLine` in the properties had `description` _updated_. The `endColumn` in the properties had `name` _updated_. The `endColumn` in the properties had `description` _updated_. The properties's `endColumn` _added_.
+
+
+## Roll protocol to r805376
+###### _2020-09-09 10:16:20_ | Diff: [caa0ede...23323c5](https://github.com/ChromeDevTools/devtools-protocol/compare/caa0ede...23323c5)
+#### `WebAudio`: modified type
+* [`WebAudio.AudioListener`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioListener) - `description` updated.
+
+
+## Roll protocol to r805182
+###### _2020-09-08 19:16:15_ | Diff: [4f48bef...caa0ede](https://github.com/ChromeDevTools/devtools-protocol/compare/4f48bef...caa0ede)
+#### `Profiler`: new commands
+* [`Profiler.enableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableCounters)
+* [`Profiler.disableCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableCounters)
+* [`Profiler.getCounters`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getCounters)
+#### `Profiler`: modified command
+* [`Profiler.getRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getRuntimeCallStats) - The `result` in the return value had `description` _updated_. The `result` in the return value had `$ref` _updated_.
+#### `Profiler`: new type
+* [`Profiler.RuntimeCallCounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-RuntimeCallCounterInfo)
+
+
+## Roll protocol to r802093
+###### _2020-08-26 20:16:11_ | Diff: [4d26309...4f48bef](https://github.com/ChromeDevTools/devtools-protocol/compare/4d26309...4f48bef)
+#### `Network`: new command
+* [`Network.setAttachDebugHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setAttachDebugHeader)
+
+
+## Roll protocol to r801017
+###### _2020-08-24 09:16:09_ | Diff: [5ac7d2e...4d26309](https://github.com/ChromeDevTools/devtools-protocol/compare/5ac7d2e...4d26309)
+#### `Browser`: modified type
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor) - The properties's `allowWithoutSanitization` _removed_. The `type` in the properties had `name` _updated_. The `type` in the properties had `description` _updated_. The `type` in the properties had `type` _updated_.
+
+
+## Roll protocol to r799653
+###### _2020-08-19 09:16:16_ | Diff: [0e651b0...5ac7d2e](https://github.com/ChromeDevTools/devtools-protocol/compare/0e651b0...5ac7d2e)
+#### `Page`: new types
+* [`Page.SecureContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-SecureContextType)
+* [`Page.CrossOriginIsolatedContextType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-CrossOriginIsolatedContextType)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `secureContextType` _added_. The properties's `crossOriginIsolatedContextType` _added_.
+
+
+## Roll protocol to r799090
+###### _2020-08-18 07:16:17_ | Diff: [3c9bb33...0e651b0](https://github.com/ChromeDevTools/devtools-protocol/compare/3c9bb33...0e651b0)
+#### `Network`: new command
+* [`Network.getSecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getSecurityIsolationStatus)
+#### `Network`: new types
+* [`Network.CrossOriginOpenerPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyValue)
+* [`Network.CrossOriginOpenerPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginOpenerPolicyStatus)
+* [`Network.CrossOriginEmbedderPolicyValue`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyValue)
+* [`Network.CrossOriginEmbedderPolicyStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CrossOriginEmbedderPolicyStatus)
+* [`Network.SecurityIsolationStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityIsolationStatus)
+
+
+## Roll protocol to r796752
+###### _2020-08-11 02:16:15_ | Diff: [6b171b5...3c9bb33](https://github.com/ChromeDevTools/devtools-protocol/compare/6b171b5...3c9bb33)
+#### `DOM`: new command
+* [`DOM.getNodesForSubtreeByStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodesForSubtreeByStyle)
+#### `DOM`: new type
+* [`DOM.CSSComputedStyleProperty`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-CSSComputedStyleProperty)
+
+
+## Roll protocol to r795450
+###### _2020-08-06 07:16:06_ | Diff: [c89b1a6...6b171b5](https://github.com/ChromeDevTools/devtools-protocol/compare/c89b1a6...6b171b5)
+#### `Audits`: modified type
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails) - The `violatingNodeId` in the properties had `type` _removed_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r795133
+###### _2020-08-05 12:16:31_ | Diff: [40517aa...c89b1a6](https://github.com/ChromeDevTools/devtools-protocol/compare/40517aa...c89b1a6)
+#### `DOM`: modified command
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r795004
+###### _2020-08-05 07:16:20_ | Diff: [9f93887...40517aa](https://github.com/ChromeDevTools/devtools-protocol/compare/9f93887...40517aa)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The `browserContextId` in the properties had `optional` _removed_. The `browserContextId` in the properties had `$ref` _removed_. The `browserContextId` in the properties had `name` _updated_. The properties's `description` _added_. The properties's `type` _added_. The properties's `browserContextId` _added_.
+
+
+## Roll protocol to r794659
+###### _2020-08-04 12:16:29_ | Diff: [92769fe...9f93887](https://github.com/ChromeDevTools/devtools-protocol/compare/92769fe...9f93887)
+#### `Debugger`: modified commands
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto) - The parameters's `skipList` _added_.
+* [`Debugger.stepOver`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepOver)
+#### `Debugger`: new type
+* [`Debugger.LocationRange`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-LocationRange)
+
+
+## Roll protocol to r794596
+###### _2020-08-04 10:16:13_ | Diff: [8f538a9...92769fe](https://github.com/ChromeDevTools/devtools-protocol/compare/8f538a9...92769fe)
+#### `Audits`: modified type
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails) - The properties's `violatingNodeId` _added_.
+
+
+## Roll protocol to r794471
+###### _2020-08-04 04:16:10_ | Diff: [6dad424...8f538a9](https://github.com/ChromeDevTools/devtools-protocol/compare/6dad424...8f538a9)
+#### `CSS`: new commands
+* [`CSS.trackComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-trackComputedStyleUpdates)
+* [`CSS.takeComputedStyleUpdates`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeComputedStyleUpdates)
+
+
+## Roll protocol to r794453
+###### _2020-08-04 03:16:08_ | Diff: [efe2c1f...6dad424](https://github.com/ChromeDevTools/devtools-protocol/compare/efe2c1f...6dad424)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderDash` in the properties had `type` _removed_. The `cellBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `rowHatchColor` in the properties had `$ref` _removed_. The `columnGapColor` in the properties had `$ref` _removed_. The `columnHatchColor` in the properties had `$ref` _removed_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The `areaBorderColor` in the properties had `name` _updated_. The `areaBorderColor` in the properties had `description` _updated_. The properties's `deprecated` _added_ (2 times). The properties's `$ref` _added_ (2 times). The properties's `type` _added_ (4 times). The properties's `rowHatchColor` _added_. The properties's `columnGapColor` _added_. The properties's `columnHatchColor` _added_. The properties's `areaBorderColor` _added_.
+
+
+## Roll protocol to r794398
+###### _2020-08-03 22:16:06_ | Diff: [979117d...efe2c1f](https://github.com/ChromeDevTools/devtools-protocol/compare/979117d...efe2c1f)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The `unreachableUrl` in the properties had `experimental` _removed_. The `unreachableUrl` in the properties had `optional` _removed_. The `adFrameType` in the properties had `$ref` _removed_. The `securityOrigin` in the properties had `name` _updated_. The `securityOrigin` in the properties had `description` _updated_. The `mimeType` in the properties had `name` _updated_. The `mimeType` in the properties had `description` _updated_. The `unreachableUrl` in the properties had `name` _updated_. The `unreachableUrl` in the properties had `description` _updated_. The `adFrameType` in the properties had `name` _updated_. The `adFrameType` in the properties had `description` _updated_. The properties's `experimental` _added_. The properties's `type` _added_. The properties's `adFrameType` _added_.
+
+
+## Roll protocol to r793541
+###### _2020-07-31 01:16:13_ | Diff: [f67ba47...979117d](https://github.com/ChromeDevTools/devtools-protocol/compare/f67ba47...979117d)
+#### `Audits`: modified type
+* [`Audits.BlockedByResponseIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseIssueDetails) - The `frame` in the properties had `name` _updated_. The `reason` in the properties had `name` _updated_. The `reason` in the properties had `$ref` _updated_. The properties's `optional` _added_. The properties's `reason` _added_.
+
+
+## Roll protocol to r792906
+###### _2020-07-29 15:16:14_ | Diff: [158ed24...f67ba47](https://github.com/ChromeDevTools/devtools-protocol/compare/158ed24...f67ba47)
+#### `Overlay`: new commands
+* [`Overlay.getSourceOrderHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getSourceOrderHighlightObjectForTest)
+* [`Overlay.highlightSourceOrder`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightSourceOrder)
+#### `Overlay`: new type
+* [`Overlay.SourceOrderConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-SourceOrderConfig)
+
+
+## Roll protocol to r792754
+###### _2020-07-29 10:16:33_ | Diff: [25ef76c...158ed24](https://github.com/ChromeDevTools/devtools-protocol/compare/25ef76c...158ed24)
+#### `Emulation`: new commands
+* [`Emulation.setIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setIdleOverride)
+* [`Emulation.clearIdleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearIdleOverride)
+
+
+## Roll protocol to r792702
+###### _2020-07-29 08:16:16_ | Diff: [6404206...25ef76c](https://github.com/ChromeDevTools/devtools-protocol/compare/6404206...25ef76c)
+#### `Audits`: modified type
+* [`Audits.SameSiteCookieExclusionReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieExclusionReason) - The enum's `ExcludeSameSiteLax` _added_. The enum's `ExcludeSameSiteStrict` _added_.
+
+
+## Roll protocol to r792050
+###### _2020-07-27 16:16:18_ | Diff: [5b2db53...6404206](https://github.com/ChromeDevTools/devtools-protocol/compare/5b2db53...6404206)
+#### `Debugger`: modified events
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse) - The parameters's `embedderName` _added_.
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The parameters's `embedderName` _added_.
+
+
+## Roll protocol to r791394
+###### _2020-07-25 02:16:14_ | Diff: [c5d82e9...5b2db53](https://github.com/ChromeDevTools/devtools-protocol/compare/c5d82e9...5b2db53)
+#### `Network`: modified command
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - The `urls` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r790520
+###### _2020-07-21 13:16:17_ | Diff: [bfd8ad7...7f76206](https://github.com/ChromeDevTools/devtools-protocol/compare/bfd8ad7...7f76206)
+#### `Network`: new type
+* [`Network.PostDataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-PostDataEntry)
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `mixedContentType` in the properties had `$ref` _removed_. The `referrerPolicy` in the properties had `type` _removed_. The `referrerPolicy` in the properties had `enum` _removed_. The `isLinkPreload` in the properties had `optional` _removed_. The `mixedContentType` in the properties had `name` _updated_. The `mixedContentType` in the properties had `description` _updated_. The `initialPriority` in the properties had `name` _updated_. The `initialPriority` in the properties had `description` _updated_. The `initialPriority` in the properties had `$ref` _updated_. The `referrerPolicy` in the properties had `name` _updated_. The `referrerPolicy` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `name` _updated_. The `isLinkPreload` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `type` _updated_. The properties's `experimental` _added_. The properties's `type` _added_. The properties's `items` _added_. The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `enum` _added_. The properties's `isLinkPreload` _added_.
+
+
+## Roll protocol to r789877
+###### _2020-07-20 03:16:15_ | Diff: [2dc3bb9...294ad98](https://github.com/ChromeDevTools/devtools-protocol/compare/2dc3bb9...294ad98)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderColor` in the properties had `$ref` _removed_. The `gridBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `gridBorderColor` in the properties had `name` _updated_. The `gridBorderColor` in the properties had `description` _updated_. The `cellBorderColor` in the properties had `name` _updated_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The `areaBorderColor` in the properties had `name` _updated_. The `areaBorderColor` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `areaBorderColor` _added_.
+
+
+## Roll protocol to r789773
+###### _2020-07-18 03:16:27_ | Diff: [ffbd7f9...2dc3bb9](https://github.com/ChromeDevTools/devtools-protocol/compare/ffbd7f9...2dc3bb9)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderColor` in the properties had `$ref` _removed_. The `gridBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `gridBorderColor` in the properties had `name` _updated_. The `gridBorderColor` in the properties had `description` _updated_. The `cellBorderColor` in the properties had `name` _updated_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The `areaBorderColor` in the properties had `name` _updated_. The `areaBorderColor` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `areaBorderColor` _added_.
+
+
+## Roll protocol to r788664
+###### _2020-07-15 09:16:17_ | Diff: [1e13543...ffbd7f9](https://github.com/ChromeDevTools/devtools-protocol/compare/1e13543...ffbd7f9)
+#### `Audits`: new type
+* [`Audits.SourceCodeLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SourceCodeLocation)
+#### `Audits`: modified type
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails) - The properties's `sourceCodeLocation` _added_.
+
+
+## Roll protocol to r788135
+###### _2020-07-14 06:16:33_ | Diff: [40acafd...1e13543](https://github.com/ChromeDevTools/devtools-protocol/compare/40acafd...1e13543)
+#### `Page`: new type
+* [`Page.AdFrameType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AdFrameType)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `adFrameType` _added_.
+
+
+## Roll protocol to r787341
+###### _2020-07-10 13:16:13_ | Diff: [65755e2...370db8f](https://github.com/ChromeDevTools/devtools-protocol/compare/65755e2...370db8f)
+#### `Overlay`: new commands
+* [`Overlay.getGridHighlightObjectsForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getGridHighlightObjectsForTest)
+* [`Overlay.setShowGridOverlays`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowGridOverlays)
+#### `Overlay`: new type
+* [`Overlay.GridNodeHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridNodeHighlightConfig)
+
+
+## Roll protocol to r787108
+###### _2020-07-09 23:16:07_ | Diff: [88c2dab...65755e2](https://github.com/ChromeDevTools/devtools-protocol/compare/88c2dab...65755e2)
+#### `CSS`: new type
+* [`CSS.FontVariationAxis`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontVariationAxis)
+#### `CSS`: modified type
+* [`CSS.FontFace`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontFace) - `description` updated. The properties's `fontVariationAxes` _added_.
+
+
+## Roll protocol to r786951
+###### _2020-07-09 15:16:05_ | Diff: [3e005aa...88c2dab](https://github.com/ChromeDevTools/devtools-protocol/compare/3e005aa...88c2dab)
+#### `Emulation`: modified command
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `displayFeature` _added_.
+#### `Emulation`: new type
+* [`Emulation.DisplayFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-DisplayFeature)
+
+
+## Roll protocol to r786047
+###### _2020-07-07 16:16:12_ | Diff: [448edcd...d0d50cd](https://github.com/ChromeDevTools/devtools-protocol/compare/448edcd...d0d50cd)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderColor` in the properties had `$ref` _removed_. The `gridBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `gridBorderColor` in the properties had `name` _updated_. The `gridBorderColor` in the properties had `description` _updated_. The `cellBorderColor` in the properties had `name` _updated_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `columnHatchColor` _added_. The properties's `areaBorderColor` _added_.
+
+
+## Roll protocol to r785822
+###### _2020-07-07 10:16:29_ | Diff: [20413fc...448edcd](https://github.com/ChromeDevTools/devtools-protocol/compare/20413fc...448edcd)
+#### `WebAuthn`: new command
+* [`WebAuthn.setAutomaticPresenceSimulation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setAutomaticPresenceSimulation)
+
+
+## Roll protocol to r784747
+###### _2020-07-02 02:16:05_ | Diff: [f814796...20413fc](https://github.com/ChromeDevTools/devtools-protocol/compare/f814796...20413fc)
+#### `Audits`: new types
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `ContentSecurityPolicyIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `contentSecurityPolicyIssueDetails` _added_.
+
+
+## Roll protocol to r783643
+###### _2020-06-29 13:16:10_ | Diff: [c480f8a...cde4dcd](https://github.com/ChromeDevTools/devtools-protocol/compare/c480f8a...cde4dcd)
+#### `Audits`: removed types
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `ContentSecurityPolicyIssue` _removed_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `contentSecurityPolicyIssueDetails` _removed_.
+
+
+## Roll protocol to r783602
+###### _2020-06-29 11:16:09_ | Diff: [38c54b5...c480f8a](https://github.com/ChromeDevTools/devtools-protocol/compare/38c54b5...c480f8a)
+#### `Audits`: new types
+* [`Audits.ContentSecurityPolicyViolationType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyViolationType)
+* [`Audits.ContentSecurityPolicyIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-ContentSecurityPolicyIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `ContentSecurityPolicyIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `contentSecurityPolicyIssueDetails` _added_.
+
+
+## Roll protocol to r783554
+###### _2020-06-29 09:17:02_ | Diff: [dae56d1...38c54b5](https://github.com/ChromeDevTools/devtools-protocol/compare/dae56d1...38c54b5)
+#### `CSS`: new command
+* [`CSS.setLocalFontsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setLocalFontsEnabled)
+
+
+## Roll protocol to r780980
+###### _2020-06-22 14:16:09_ | Diff: [1ec1519...9277d63](https://github.com/ChromeDevTools/devtools-protocol/compare/1ec1519...9277d63)
+#### `Audits`: new types
+* [`Audits.HeavyAdResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdResolutionStatus)
+* [`Audits.HeavyAdReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdReason)
+* [`Audits.HeavyAdIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-HeavyAdIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `HeavyAdIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `heavyAdIssueDetails` _added_.
+
+
+## Roll protocol to r780876
+###### _2020-06-22 11:16:04_ | Diff: [2488f11...1ec1519](https://github.com/ChromeDevTools/devtools-protocol/compare/2488f11...1ec1519)
+#### `Input`: modified command
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The parameters's `commands` _added_.
+
+
+## Roll protocol to r780326
+###### _2020-06-19 09:16:14_ | Diff: [c99e7da...2488f11](https://github.com/ChromeDevTools/devtools-protocol/compare/c99e7da...2488f11)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `allowUnsafeEvalBlockedByCSP` _added_.
+
+
+## Roll protocol to r779350
+###### _2020-06-17 09:16:03_ | Diff: [447fb97...c99e7da](https://github.com/ChromeDevTools/devtools-protocol/compare/447fb97...c99e7da)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The `colorFormat` in the parameters had `description` _updated_. The parameters's `showAccessibilityInfo` _added_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The `contentColor` in the properties had `$ref` _removed_. The `showExtensionLines` in the properties had `name` _updated_. The `showExtensionLines` in the properties had `description` _updated_. The `contentColor` in the properties had `name` _updated_. The `contentColor` in the properties had `description` _updated_. The `paddingColor` in the properties had `name` _updated_. The `paddingColor` in the properties had `description` _updated_. The `borderColor` in the properties had `name` _updated_. The `borderColor` in the properties had `description` _updated_. The `marginColor` in the properties had `name` _updated_. The `marginColor` in the properties had `description` _updated_. The `eventTargetColor` in the properties had `name` _updated_. The `eventTargetColor` in the properties had `description` _updated_. The `shapeColor` in the properties had `name` _updated_. The `shapeColor` in the properties had `description` _updated_. The `shapeMarginColor` in the properties had `name` _updated_. The `shapeMarginColor` in the properties had `description` _updated_. The `cssGridColor` in the properties had `name` _updated_. The `cssGridColor` in the properties had `description` _updated_. The `colorFormat` in the properties had `name` _updated_. The `colorFormat` in the properties had `description` _updated_. The `colorFormat` in the properties had `$ref` _updated_. The `gridHighlightConfig` in the properties had `name` _updated_. The `gridHighlightConfig` in the properties had `description` _updated_. The `gridHighlightConfig` in the properties had `$ref` _updated_. The properties's `type` _added_. The properties's `gridHighlightConfig` _added_.
+
+
+## Roll protocol to r778922
+###### _2020-06-16 12:16:05_ | Diff: [2049521...447fb97](https://github.com/ChromeDevTools/devtools-protocol/compare/2049521...447fb97)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The parameters's `showAccessibilityInfo` _removed_. The `colorFormat` in the parameters had `description` _updated_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `gridHighlightConfig` _removed_. The `showExtensionLines` in the properties had `type` _removed_. The `showAccessibilityInfo` in the properties had `name` _updated_. The `showAccessibilityInfo` in the properties had `description` _updated_. The `showExtensionLines` in the properties had `name` _updated_. The `showExtensionLines` in the properties had `description` _updated_. The `contentColor` in the properties had `name` _updated_. The `contentColor` in the properties had `description` _updated_. The `paddingColor` in the properties had `name` _updated_. The `paddingColor` in the properties had `description` _updated_. The `borderColor` in the properties had `name` _updated_. The `borderColor` in the properties had `description` _updated_. The `marginColor` in the properties had `name` _updated_. The `marginColor` in the properties had `description` _updated_. The `eventTargetColor` in the properties had `name` _updated_. The `eventTargetColor` in the properties had `description` _updated_. The `shapeColor` in the properties had `name` _updated_. The `shapeColor` in the properties had `description` _updated_. The `shapeMarginColor` in the properties had `name` _updated_. The `shapeMarginColor` in the properties had `description` _updated_. The `cssGridColor` in the properties had `name` _updated_. The `cssGridColor` in the properties had `description` _updated_. The `cssGridColor` in the properties had `$ref` _updated_. The `colorFormat` in the properties had `name` _updated_. The `colorFormat` in the properties had `description` _updated_. The `colorFormat` in the properties had `$ref` _updated_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r778805
+###### _2020-06-16 08:16:09_ | Diff: [5894100...2049521](https://github.com/ChromeDevTools/devtools-protocol/compare/5894100...2049521)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The `colorFormat` in the parameters had `description` _updated_. The parameters's `showAccessibilityInfo` _added_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The `contentColor` in the properties had `$ref` _removed_. The `showExtensionLines` in the properties had `name` _updated_. The `showExtensionLines` in the properties had `description` _updated_. The `contentColor` in the properties had `name` _updated_. The `contentColor` in the properties had `description` _updated_. The `paddingColor` in the properties had `name` _updated_. The `paddingColor` in the properties had `description` _updated_. The `borderColor` in the properties had `name` _updated_. The `borderColor` in the properties had `description` _updated_. The `marginColor` in the properties had `name` _updated_. The `marginColor` in the properties had `description` _updated_. The `eventTargetColor` in the properties had `name` _updated_. The `eventTargetColor` in the properties had `description` _updated_. The `shapeColor` in the properties had `name` _updated_. The `shapeColor` in the properties had `description` _updated_. The `shapeMarginColor` in the properties had `name` _updated_. The `shapeMarginColor` in the properties had `description` _updated_. The `cssGridColor` in the properties had `name` _updated_. The `cssGridColor` in the properties had `description` _updated_. The `colorFormat` in the properties had `name` _updated_. The `colorFormat` in the properties had `description` _updated_. The `colorFormat` in the properties had `$ref` _updated_. The `gridHighlightConfig` in the properties had `name` _updated_. The `gridHighlightConfig` in the properties had `description` _updated_. The `gridHighlightConfig` in the properties had `$ref` _updated_. The properties's `type` _added_. The properties's `gridHighlightConfig` _added_.
+
+
+## Roll protocol to r778734
+###### _2020-06-16 04:16:09_ | Diff: [65bf0bb...5894100](https://github.com/ChromeDevTools/devtools-protocol/compare/65bf0bb...5894100)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderColor` in the properties had `$ref` _removed_. The `gridBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `gridBorderColor` in the properties had `name` _updated_. The `gridBorderColor` in the properties had `description` _updated_. The `cellBorderColor` in the properties had `name` _updated_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `columnHatchColor` _added_.
+
+
+## Roll protocol to r777489
+###### _2020-06-11 14:16:12_ | Diff: [6e822e3...65bf0bb](https://github.com/ChromeDevTools/devtools-protocol/compare/6e822e3...65bf0bb)
+#### `Overlay`: modified type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig) - The `gridBorderColor` in the properties had `$ref` _removed_. The `gridBorderDash` in the properties had `type` _removed_. The `rowGapColor` in the properties had `$ref` _removed_. The `gridBorderColor` in the properties had `name` _updated_. The `gridBorderColor` in the properties had `description` _updated_. The `cellBorderColor` in the properties had `name` _updated_. The `cellBorderColor` in the properties had `description` _updated_. The `gridBorderDash` in the properties had `name` _updated_. The `gridBorderDash` in the properties had `description` _updated_. The `cellBorderDash` in the properties had `name` _updated_. The `cellBorderDash` in the properties had `description` _updated_. The `rowGapColor` in the properties had `name` _updated_. The `rowGapColor` in the properties had `description` _updated_. The `rowHatchColor` in the properties had `name` _updated_. The `rowHatchColor` in the properties had `description` _updated_. The `columnGapColor` in the properties had `name` _updated_. The `columnGapColor` in the properties had `description` _updated_. The `columnHatchColor` in the properties had `name` _updated_. The `columnHatchColor` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `columnHatchColor` _added_.
+
+
+## Roll protocol to r776922
+###### _2020-06-10 06:16:14_ | Diff: [c5f2d31...6e822e3](https://github.com/ChromeDevTools/devtools-protocol/compare/c5f2d31...6e822e3)
+#### `Runtime`: modified type
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `subtype` in the properties had `anyref` _updated_.
+
+
+## Roll protocol to r776422
+###### _2020-06-09 00:16:08_ | Diff: [bca028b...c5f2d31](https://github.com/ChromeDevTools/devtools-protocol/compare/bca028b...c5f2d31)
+#### `CSS`: modified type
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The `startLine` in the properties had `name` _updated_. The `startLine` in the properties had `description` _updated_. The `startLine` in the properties had `type` _updated_. The `startColumn` in the properties had `name` _updated_. The `startColumn` in the properties had `description` _updated_. The `length` in the properties had `name` _updated_. The `length` in the properties had `description` _updated_. The `endLine` in the properties had `name` _updated_. The `endLine` in the properties had `description` _updated_. The `endColumn` in the properties had `name` _updated_. The `endColumn` in the properties had `description` _updated_. The properties's `endColumn` _added_.
+
+
+## Roll protocol to r774686
+###### _2020-06-03 10:15:57_ | Diff: [3386102...8d9fa2d](https://github.com/ChromeDevTools/devtools-protocol/compare/3386102...8d9fa2d)
+#### `Target`: modified command
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - The parameters's `proxyServer` _added_. The parameters's `proxyBypassList` _added_.
+
+
+## Roll protocol to r772852
+###### _2020-05-28 13:16:11_ | Diff: [69d3d03...3386102](https://github.com/ChromeDevTools/devtools-protocol/compare/69d3d03...3386102)
+#### `Network`: new type
+* [`Network.ServiceWorkerResponseSource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ServiceWorkerResponseSource)
+#### `Network`: modified type
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `protocol` in the properties had `type` _removed_. The `securityDetails` in the properties had `$ref` _removed_. The `protocol` in the properties had `name` _updated_. The `protocol` in the properties had `description` _updated_. The `securityState` in the properties had `name` _updated_. The `securityState` in the properties had `description` _updated_. The `securityState` in the properties had `$ref` _updated_. The `securityDetails` in the properties had `name` _updated_. The `securityDetails` in the properties had `description` _updated_. The properties's `$ref` _added_. The properties's `optional` _added_. The properties's `type` _added_. The properties's `protocol` _added_. The properties's `securityState` _added_. The properties's `securityDetails` _added_.
+
+
+## Roll protocol to r770484
+###### _2020-05-20 00:16:02_ | Diff: [2cb3356...69d3d03](https://github.com/ChromeDevTools/devtools-protocol/compare/2cb3356...69d3d03)
+#### `Network`: modified type
+* [`Network.ResourceTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceTiming) - The `pushStart` in the properties had `experimental` _removed_. The `pushEnd` in the properties had `experimental` _removed_. The `sendStart` in the properties had `name` _updated_. The `sendStart` in the properties had `description` _updated_. The `sendEnd` in the properties had `name` _updated_. The `sendEnd` in the properties had `description` _updated_. The `pushStart` in the properties had `name` _updated_. The `pushStart` in the properties had `description` _updated_. The `pushEnd` in the properties had `name` _updated_. The `pushEnd` in the properties had `description` _updated_. The `receiveHeadersEnd` in the properties had `name` _updated_. The `receiveHeadersEnd` in the properties had `description` _updated_. The properties's `experimental` _added_ (3 times). The properties's `pushEnd` _added_. The properties's `receiveHeadersEnd` _added_.
+
+
+## Roll protocol to r770080
+###### _2020-05-19 05:16:05_ | Diff: [c669e10...2cb3356](https://github.com/ChromeDevTools/devtools-protocol/compare/c669e10...2cb3356)
+#### `Audits`: new types
+* [`Audits.BlockedByResponseReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseReason)
+* [`Audits.BlockedByResponseIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-BlockedByResponseIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `BlockedByResponseIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `blockedByResponseIssueDetails` _added_.
+
+
+## Roll protocol to r767361
+###### _2020-05-11 10:16:19_ | Diff: [76c859e...0a94929](https://github.com/ChromeDevTools/devtools-protocol/compare/76c859e...0a94929)
+#### `Audits`: modified type
+* [`Audits.SameSiteCookieWarningReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieWarningReason) - The enum's `WarnSameSiteCrossSchemeInsecureUrlStrict` _removed_. The enum's `WarnSameSiteCrossSchemeSecureUrlMethodUnsafe` _updated_. The enum's `WarnSameSiteCrossSchemeSecureUrlLax` _updated_. The enum's `WarnSameSiteCrossSchemeSecureUrlStrict` _updated_. The enum's `WarnSameSiteCrossSchemeInsecureUrlMethodUnsafe` _updated_. The enum's `WarnSameSiteCrossSchemeInsecureUrlLax` _updated_.
+
+
+## Roll protocol to r767035
+###### _2020-05-08 16:17:20_ | Diff: [08a3c82...76c859e](https://github.com/ChromeDevTools/devtools-protocol/compare/08a3c82...76c859e)
+#### `Page`: modified event
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin) - The `filename` in the parameters had `name` _updated_. The `filename` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r766630
+###### _2020-05-07 16:16:09_ | Diff: [0e007a5...08a3c82](https://github.com/ChromeDevTools/devtools-protocol/compare/0e007a5...08a3c82)
+#### `Page`: modified event
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin) - The parameters's `filename` _added_.
+
+
+## Roll protocol to r766603
+###### _2020-05-07 15:16:08_ | Diff: [795f478...0e007a5](https://github.com/ChromeDevTools/devtools-protocol/compare/795f478...0e007a5)
+#### `Overlay`: new type
+* [`Overlay.GridHighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-GridHighlightConfig)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `gridHighlightConfig` _added_.
+
+
+## Roll protocol to r766377
+###### _2020-05-07 05:15:58_ | Diff: [4577b7f...795f478](https://github.com/ChromeDevTools/devtools-protocol/compare/4577b7f...795f478)
+#### `Network`: modified event
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo) - The `blockedCookies` in the parameters had `name` _updated_. The `blockedCookies` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r766017
+###### _2020-05-06 09:17:41_ | Diff: [90a2227...4577b7f](https://github.com/ChromeDevTools/devtools-protocol/compare/90a2227...4577b7f)
+#### `Debugger`: new command
+* [`Debugger.executeWasmEvaluator`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-executeWasmEvaluator)
+#### `Debugger`: modified event
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The parameters's `debugSymbols` _added_.
+#### `Debugger`: new type
+* [`Debugger.DebugSymbols`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-DebugSymbols)
+
+
+## Roll protocol to r765803
+###### _2020-05-05 16:16:02_ | Diff: [6b310c4...90a2227](https://github.com/ChromeDevTools/devtools-protocol/compare/6b310c4...90a2227)
+#### `Emulation`: modified command
+* [`Emulation.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setUserAgentOverride) - The parameters's `userAgentMetadata` _added_.
+#### `Emulation`: new types
+* [`Emulation.UserAgentBrandVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentBrandVersion)
+* [`Emulation.UserAgentMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-UserAgentMetadata)
+#### `Network`: modified command
+* [`Network.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setUserAgentOverride) - The parameters's `userAgentMetadata` _added_.
+
+
+## Roll protocol to r765004
+###### _2020-05-04 01:16:14_ | Diff: [61f90ac...6b310c4](https://github.com/ChromeDevTools/devtools-protocol/compare/61f90ac...6b310c4)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The parameters's `colorFormat` _added_.
+#### `Overlay`: new type
+* [`Overlay.ColorFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-ColorFormat)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `colorFormat` _added_.
+
+
+## Roll protocol to r764791
+###### _2020-05-01 14:16:14_ | Diff: [fb81f45...61f90ac](https://github.com/ChromeDevTools/devtools-protocol/compare/fb81f45...61f90ac)
+#### `Overlay`: new command
+* [`Overlay.setShowHinge`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHinge)
+#### `Overlay`: new type
+* [`Overlay.HingeConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HingeConfig)
+
+
+## Roll protocol to r762508
+###### _2020-04-24 14:16:30_ | Diff: [37db537...fb81f45](https://github.com/ChromeDevTools/devtools-protocol/compare/37db537...fb81f45)
+#### `Page`: modified event
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation) - The parameters's `disposition` _added_.
+#### `Page`: new type
+* [`Page.ClientNavigationDisposition`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationDisposition)
+
+
+## Roll protocol to r762397
+###### _2020-04-24 10:17:12_ | Diff: [a7f028b...37db537](https://github.com/ChromeDevTools/devtools-protocol/compare/a7f028b...37db537)
+#### `Media`: new events
+* [`Media.playerMessagesLogged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerMessagesLogged)
+* [`Media.playerErrorsRaised`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerErrorsRaised)
+#### `Media`: new types
+* [`Media.PlayerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerMessage)
+* [`Media.PlayerError`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerError)
+#### `Media`: removed type
+* [`Media.PlayerEventType`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEventType)
+#### `Media`: modified types
+* [`Media.PlayerProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerProperty) - The `value` in the properties had `optional` _removed_. `description` updated.
+* [`Media.PlayerEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEvent) - The properties's `name` _removed_. The properties's `value` _removed_. The `timestamp` in the properties had `description` _removed_. The `timestamp` in the properties had `$ref` _removed_. The `type` in the properties had `name` _updated_. The `type` in the properties had `$ref` _updated_. The `timestamp` in the properties had `name` _updated_. `description` added. The properties's `type` _added_.
+
+
+## Roll protocol to r761827
+###### _2020-04-23 00:16:09_ | Diff: [65061a8...a7f028b](https://github.com/ChromeDevTools/devtools-protocol/compare/65061a8...a7f028b)
+#### `Audits`: new types
+* [`Audits.AffectedFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedFrame)
+* [`Audits.MixedContentResolutionStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResolutionStatus)
+* [`Audits.MixedContentResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentResourceType)
+* [`Audits.MixedContentIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-MixedContentIssueDetails)
+#### `Audits`: modified types
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - The enum's `MixedContentIssue` _added_.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - The properties's `mixedContentIssueDetails` _added_.
+
+
+## Roll protocol to r760817
+###### _2020-04-20 21:16:08_ | Diff: [f973935...65061a8](https://github.com/ChromeDevTools/devtools-protocol/compare/f973935...65061a8)
+#### `Runtime`: modified type
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `1` in the properties had `anyref` _added_.
+
+
+## Roll protocol to r758979
+###### _2020-04-14 13:16:08_ | Diff: [fc07ba2...4b02082](https://github.com/ChromeDevTools/devtools-protocol/compare/fc07ba2...4b02082)
+#### `Browser`: modified commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission) - The `origin` in the parameters had `optional` _removed_. The `origin` in the parameters had `type` _removed_. The `setting` in the parameters had `$ref` _removed_. The `origin` in the parameters had `name` _updated_. The `origin` in the parameters had `description` _updated_. The `permission` in the parameters had `name` _updated_. The `permission` in the parameters had `description` _updated_. The `permission` in the parameters had `$ref` _updated_. The `setting` in the parameters had `name` _updated_. The `setting` in the parameters had `description` _updated_. The parameters's `$ref` _added_. The parameters's `optional` _added_. The parameters's `type` _added_.
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions) - The `origin` in the parameters had `description` _removed_. The `origin` in the parameters had `optional` _removed_. The `permissions` in the parameters had `items` _removed_. The `origin` in the parameters had `name` _updated_. The `origin` in the parameters had `type` _updated_. The `permissions` in the parameters had `name` _updated_. The `permissions` in the parameters had `type` _updated_. The parameters's `items` _added_. The parameters's `description` _added_. The parameters's `optional` _added_.
+
+
+## Merge pull request #209 from ChromeDevTools/bug-report-template
+###### _2020-04-09 12:55:10 +0200_ | Diff: [d0bcd8d...b53777c](https://github.com/ChromeDevTools/devtools-protocol/compare/d0bcd8d...b53777c)
+#### `Audits`: new types
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+#### `Audits`: removed type
+* [`Audits.AffectedResources`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedResources)
+#### `Audits`: modified types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie) - The properties's `siteForCookies` _removed_.
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails) - The `cookieWarningReasons` in the properties had `type` _removed_. The `cookieWarningReasons` in the properties had `items` _removed_. The `cookieWarningReasons` in the properties had `name` _updated_. The `cookieExclusionReasons` in the properties had `name` _updated_. The `cookieExclusionReasons` in the properties had `$ref` _updated_. The properties's `$ref` _added_. The properties's `cookieExclusionReasons` _added_. The properties's `operation` _added_. The properties's `siteForCookies` _added_. The properties's `cookieUrl` _added_. The properties's `request` _added_.
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - `description` updated.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - `description` updated.
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue) - The properties's `resources` _removed_.
+
+
+## Update bug report guidance to point to CRBug
+###### _2020-04-09 11:51:30 +0100_ | Diff: [7f53fbc...d0bcd8d](https://github.com/ChromeDevTools/devtools-protocol/compare/7f53fbc...d0bcd8d)
+#### `Audits`: new type
+* [`Audits.AffectedResources`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedResources)
+#### `Audits`: removed types
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+#### `Audits`: modified types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie) - The properties's `siteForCookies` _added_.
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails) - The properties's `cookieExclusionReasons` _removed_. The properties's `operation` _removed_. The properties's `siteForCookies` _removed_. The properties's `cookieUrl` _removed_. The properties's `request` _removed_. The `cookie` in the properties had `$ref` _removed_. The `cookie` in the properties had `name` _updated_. The `cookieWarningReasons` in the properties had `name` _updated_. The `cookieWarningReasons` in the properties had `$ref` _updated_. The properties's `type` _added_. The properties's `items` _added_.
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - `description` updated.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - `description` updated.
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue) - The properties's `resources` _added_.
+
+
+## Roll protocol to r757450
+###### _2020-04-08 09:16:24_ | Diff: [93daff4...7f53fbc](https://github.com/ChromeDevTools/devtools-protocol/compare/93daff4...7f53fbc)
+#### `Audits`: new types
+* [`Audits.AffectedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedRequest)
+* [`Audits.SameSiteCookieOperation`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieOperation)
+#### `Audits`: removed type
+* [`Audits.AffectedResources`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedResources)
+#### `Audits`: modified types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie) - The properties's `siteForCookies` _removed_.
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails) - The `cookieWarningReasons` in the properties had `type` _removed_. The `cookieWarningReasons` in the properties had `items` _removed_. The `cookieWarningReasons` in the properties had `name` _updated_. The `cookieExclusionReasons` in the properties had `name` _updated_. The `cookieExclusionReasons` in the properties had `$ref` _updated_. The properties's `$ref` _added_. The properties's `cookieExclusionReasons` _added_. The properties's `operation` _added_. The properties's `siteForCookies` _added_. The properties's `cookieUrl` _added_. The properties's `request` _added_.
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode) - `description` updated.
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails) - `description` updated.
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue) - The properties's `resources` _removed_.
+
+
+## Roll protocol to r754670
+###### _2020-03-30 15:16:08_ | Diff: [3a31fb9...93daff4](https://github.com/ChromeDevTools/devtools-protocol/compare/3a31fb9...93daff4)
+#### `Browser`: new command
+* [`Browser.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDownloadBehavior)
+#### `Page`: modified command
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior) - `deprecated` added.
+#### `Page`: new event
+* [`Page.downloadProgress`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadProgress)
+#### `Page`: modified event
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin) - The `url` in the parameters had `name` _updated_. The `url` in the parameters had `description` _updated_. The parameters's `url` _added_.
+
+
+## Roll protocol to r753577
+###### _2020-03-26 04:16:32_ | Diff: [54331b7...3a31fb9](https://github.com/ChromeDevTools/devtools-protocol/compare/54331b7...3a31fb9)
+#### `Debugger`: modified type
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope) - The `0` in the properties had `wasm-expression-stack` _added_.
+
+
+## Roll protocol to r753371
+###### _2020-03-25 14:16:15_ | Diff: [fb19e63...54331b7](https://github.com/ChromeDevTools/devtools-protocol/compare/fb19e63...54331b7)
+#### `Runtime`: modified type
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `subtype` in the properties had `description` _updated_. The `0` in the properties had `wasm` _added_. The `1` in the properties had `i32` _added_. The `1` in the properties had `i64` _added_. The `1` in the properties had `f32` _added_. The `1` in the properties had `f64` _added_. The `1` in the properties had `v128` _added_.
+
+
+## Roll protocol to r753288
+###### _2020-03-25 11:16:18_ | Diff: [0d94fba...fb19e63](https://github.com/ChromeDevTools/devtools-protocol/compare/0d94fba...fb19e63)
+#### `Fetch`: modified command
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest) - The `headers` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r752415
+###### _2020-03-23 05:16:00_ | Diff: [4b21417...0d94fba](https://github.com/ChromeDevTools/devtools-protocol/compare/4b21417...0d94fba)
+#### `Audits`: modified event
+* [`Audits.issueAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#event-issueAdded) - The `issue` in the parameters had `$ref` _updated_.
+#### `Audits`: new types
+* [`Audits.AffectedCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedCookie)
+* [`Audits.SameSiteCookieExclusionReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieExclusionReason)
+* [`Audits.SameSiteCookieWarningReason`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieWarningReason)
+* [`Audits.SameSiteCookieIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-SameSiteCookieIssueDetails)
+* [`Audits.AffectedResources`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-AffectedResources)
+* [`Audits.InspectorIssueCode`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueCode)
+* [`Audits.InspectorIssueDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssueDetails)
+* [`Audits.InspectorIssue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-InspectorIssue)
+#### `Audits`: removed type
+* [`Audits.Issue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-Issue)
+
+
+## Roll protocol to r751783
+###### _2020-03-19 13:16:05_ | Diff: [702b3cd...f8b3800](https://github.com/ChromeDevTools/devtools-protocol/compare/702b3cd...f8b3800)
+#### `Emulation`: modified command
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency) - The `type` in the parameters had `protanomaly` _removed_. The `type` in the parameters had `protanopia` _removed_. The `type` in the parameters had `tritanomaly` _removed_. The `type` in the parameters had `tritanopia` _removed_. The `type` in the parameters had `achromatomaly` _updated_. The `type` in the parameters had `achromatopsia` _updated_. The `type` in the parameters had `blurredVision` _updated_. The `type` in the parameters had `deuteranomaly` _updated_. The `type` in the parameters had `deuteranopia` _updated_.
+
+
+## Roll protocol to r751145
+###### _2020-03-17 15:16:22_ | Diff: [41bfd0c...702b3cd](https://github.com/ChromeDevTools/devtools-protocol/compare/41bfd0c...702b3cd)
+#### `Debugger`: modified events
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse) - The parameters's `codeOffset` _added_. The parameters's `scriptLanguage` _added_.
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The parameters's `codeOffset` _added_. The parameters's `scriptLanguage` _added_.
+#### `Debugger`: new type
+* [`Debugger.ScriptLanguage`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-ScriptLanguage)
+
+
+## Roll protocol to r750324
+###### _2020-03-13 15:17:35_ | Diff: [2ad8c1b...41bfd0c](https://github.com/ChromeDevTools/devtools-protocol/compare/2ad8c1b...41bfd0c)
+#### `Browser`: modified commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission) - The `origin` in the parameters had `description` _updated_. The parameters's `optional` _added_.
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions) - The parameters's `description` _added_. The parameters's `optional` _added_.
+
+
+## Roll protocol to r747773
+###### _2020-03-06 10:15:59 -0800_ | Diff: [be5771f...b79c621](https://github.com/ChromeDevTools/devtools-protocol/compare/be5771f...b79c621)
+#### `Emulation`: new command
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+
+
+## Roll protocol to r746878
+###### _2020-03-04 11:15:58 -0800_ | Diff: [951d841...be5771f](https://github.com/ChromeDevTools/devtools-protocol/compare/951d841...be5771f)
+#### `Emulation`: removed command
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+
+
+## Roll protocol to r746715
+###### _2020-03-04 02:15:58 -0800_ | Diff: [1226014...951d841](https://github.com/ChromeDevTools/devtools-protocol/compare/1226014...951d841)
+#### `Emulation`: new command
+* [`Emulation.setEmulatedVisionDeficiency`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedVisionDeficiency)
+
+
+## Roll protocol to r746007
+###### _2020-03-02 10:15:56 -0800_ | Diff: [d446869...1226014](https://github.com/ChromeDevTools/devtools-protocol/compare/d446869...1226014)
+#### `Performance`: modified commands
+* [`Performance.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-enable)
+* [`Performance.setTimeDomain`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-setTimeDomain) - `deprecated` added.
+
+
+## Roll protocol to r745916
+###### _2020-03-02 05:15:52 -0800_ | Diff: [2251a98...d446869](https://github.com/ChromeDevTools/devtools-protocol/compare/2251a98...d446869)
+#### `Network`: modified type
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - The enum's `coep-frame-resource-needs-coep-header` _added_. The enum's `coop-sandboxed-iframe-cannot-navigate-to-coop-page` _added_. The enum's `corp-not-same-origin` _added_. The enum's `corp-not-same-origin-after-defaulted-to-same-origin-by-coep` _added_. The enum's `corp-not-same-site` _added_.
+
+
+## Roll protocol to r744719
+###### _2020-02-26 10:16:06 -0800_ | Diff: [a54f251...ecd17e2](https://github.com/ChromeDevTools/devtools-protocol/compare/a54f251...ecd17e2)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `replMode` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r743773
+###### _2020-02-21 19:15:58 -0800_ | Diff: [34b27ba...a54f251](https://github.com/ChromeDevTools/devtools-protocol/compare/34b27ba...a54f251)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The parameters's `referrerPolicy` _added_.
+#### `Page`: new type
+* [`Page.ReferrerPolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ReferrerPolicy)
+
+
+## Roll protocol to r741364
+###### _2020-02-13 22:15:58 -0800_ | Diff: [7b97e49...34b27ba](https://github.com/ChromeDevTools/devtools-protocol/compare/7b97e49...34b27ba)
+#### `Target`: modified command
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - The parameters's `windowOpen` _removed_.
+
+
+## Roll protocol to r740866
+###### _2020-02-12 15:15:59 -0800_ | Diff: [23be539...7b97e49](https://github.com/ChromeDevTools/devtools-protocol/compare/23be539...7b97e49)
+#### `Emulation`: new command
+* [`Emulation.setLocaleOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setLocaleOverride)
+
+
+## Roll protocol to r740745
+###### _2020-02-12 10:16:48 -0800_ | Diff: [2369f6b...23be539](https://github.com/ChromeDevTools/devtools-protocol/compare/2369f6b...23be539)
+#### `Profiler`: modified command
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage) - The parameters's `allowTriggeredUpdates` _added_.
+
+
+## Roll protocol to r740289
+###### _2020-02-11 06:17:02 -0800_ | Diff: [395db8b...2369f6b](https://github.com/ChromeDevTools/devtools-protocol/compare/395db8b...2369f6b)
+#### `DOM`: new command
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+
+
+## Roll protocol to r739602
+###### _2020-02-07 15:16:33 -0800_ | Diff: [1dfb8a8...00269c7](https://github.com/ChromeDevTools/devtools-protocol/compare/1dfb8a8...00269c7)
+#### `DOM`: removed command
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+
+
+## Roll protocol to r739234
+###### _2020-02-06 18:15:56 -0800_ | Diff: [b442932...1dfb8a8](https://github.com/ChromeDevTools/devtools-protocol/compare/b442932...1dfb8a8)
+#### `Target`: modified command
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext)
+
+
+## Roll protocol to r739180
+###### _2020-02-06 16:15:54 -0800_ | Diff: [13d0d9d...b442932](https://github.com/ChromeDevTools/devtools-protocol/compare/13d0d9d...b442932)
+#### `Page`: modified command
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors) - The return value's `installabilityErrors` _removed_. The `errors` in the return value had `deprecated` _removed_. The `errors` in the return value had `type` _removed_. The `errors` in the return value had `name` _updated_. The `0` in the return value had `$ref` _added_.
+
+
+## Roll protocol to r738996
+###### _2020-02-06 09:16:41 -0800_ | Diff: [44116de...4675295](https://github.com/ChromeDevTools/devtools-protocol/compare/44116de...4675295)
+#### `DOM`: new command
+* [`DOM.scrollIntoViewIfNeeded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-scrollIntoViewIfNeeded)
+
+
+## Roll protocol to r738234
+###### _2020-02-04 10:16:09 -0800_ | Diff: [28602ab...c48e06f](https://github.com/ChromeDevTools/devtools-protocol/compare/28602ab...c48e06f)
+#### `Debugger`: modified command
+* [`Debugger.resume`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-resume)
+
+
+## Roll protocol to r737833
+###### _2020-02-03 10:16:52 -0800_ | Diff: [807de1a...6d0f4a7](https://github.com/ChromeDevTools/devtools-protocol/compare/807de1a...6d0f4a7)
+#### `Audits`: new commands
+* [`Audits.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-disable)
+* [`Audits.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-enable)
+#### `Audits`: new event
+* [`Audits.issueAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#event-issueAdded)
+#### `Audits`: new type
+* [`Audits.Issue`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#type-Issue)
+
+
+## Roll protocol to r736603
+###### _2020-01-29 15:15:58 -0800_ | Diff: [b9fb38a...807de1a](https://github.com/ChromeDevTools/devtools-protocol/compare/b9fb38a...807de1a)
+#### `LayerTree`: modified command
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons) - The return value's `deprecated` _added_. The return value's `compositingReasonIds` _added_.
+
+
+## Roll protocol to r734741
+###### _2020-01-23 16:16:00 -0800_ | Diff: [b28dfe5...48ffb48](https://github.com/ChromeDevTools/devtools-protocol/compare/b28dfe5...48ffb48)
+#### `Media`: modified type
+* [`Media.PlayerEventType`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEventType) - The enum's `playbackEvent` _updated_. The enum's `systemEvent` _updated_.
+
+
+## Roll protocol to r734342
+###### _2020-01-22 20:16:01 -0800_ | Diff: [887b29e...36518ec](https://github.com/ChromeDevTools/devtools-protocol/compare/887b29e...36518ec)
+#### `Page`: modified command
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors) - The return value's `deprecated` _added_. The return value's `installabilityErrors` _added_.
+#### `Page`: new types
+* [`Page.InstallabilityErrorArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityErrorArgument)
+* [`Page.InstallabilityError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-InstallabilityError)
+
+
+## Roll protocol to r733814
+###### _2020-01-21 16:16:31 -0800_ | Diff: [b801714...34770ad](https://github.com/ChromeDevTools/devtools-protocol/compare/b801714...34770ad)
+#### `Profiler`: new event
+* [`Profiler.preciseCoverageDeltaUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-preciseCoverageDeltaUpdate)
+
+
+## Roll protocol to r733150
+###### _2020-01-17 23:16:18 -0800_ | Diff: [e147044...b801714](https://github.com/ChromeDevTools/devtools-protocol/compare/e147044...b801714)
+#### `Page`: modified event
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The `reason` in the parameters had `type` _removed_. The `reason` in the parameters had `enum` _removed_. The parameters's `$ref` _added_.
+#### `Page`: modified type
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason) - The enum's `anchorClick` _added_.
+
+
+## Roll protocol to r731173
+###### _2020-01-14 01:15:59 -0800_ | Diff: [a88e2e8...a8ab994](https://github.com/ChromeDevTools/devtools-protocol/compare/a88e2e8...a8ab994)
+#### `CSS`: modified command
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta) - The return value's `timestamp` _added_.
+
+
+## Roll protocol to r730699
+###### _2020-01-13 11:16:22 -0800_ | Diff: [b8266f8...a88e2e8](https://github.com/ChromeDevTools/devtools-protocol/compare/b8266f8...a88e2e8)
+#### `Profiler`: modified commands
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage) - The `timestamp` in the return value had `description` _updated_.
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - The `timestamp` in the return value had `description` _updated_.
+
+
+## Roll protocol to r730280
+###### _2020-01-10 12:16:05 -0800_ | Diff: [e4ef206...b8266f8](https://github.com/ChromeDevTools/devtools-protocol/compare/e4ef206...b8266f8)
+#### `Profiler`: modified commands
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage)
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - The return value's `timestamp` _added_.
+
+
+## Roll protocol to r726364
+###### _2019-12-19 06:16:08 -0800_ | Diff: [1d614ea...db57660](https://github.com/ChromeDevTools/devtools-protocol/compare/1d614ea...db57660)
+#### `HeapProfiler`: modified commands
+* [`HeapProfiler.stopTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopTrackingHeapObjects) - The parameters's `treatGlobalObjectsAsRoots` _added_.
+* [`HeapProfiler.takeHeapSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-takeHeapSnapshot) - The parameters's `treatGlobalObjectsAsRoots` _added_.
+
+
+## Roll protocol to r725087 724985 724981
+###### _2019-12-16 05:16:11 -0800_ | Diff: [4e63e49...05cef16](https://github.com/ChromeDevTools/devtools-protocol/compare/4e63e49...05cef16)
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The parameters's `experimental` _added_.
+
+
+## Roll protocol to r725056
+###### _2019-12-16 02:16:13 -0800_ | Diff: [7e60474...4e63e49](https://github.com/ChromeDevTools/devtools-protocol/compare/7e60474...4e63e49)
+#### `Network`: modified type
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The properties's `experimental` _added_.
+
+
+## Roll protocol to r724935
+###### _2019-12-14 01:16:01 -0800_ | Diff: [1e81930...7e60474](https://github.com/ChromeDevTools/devtools-protocol/compare/1e81930...7e60474)
+#### `Page`: new command
+* [`Page.getManifestIcons`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getManifestIcons)
+
+
+## Roll protocol to r724701
+###### _2019-12-13 10:16:09 -0800_ | Diff: [7c8e4c5...2559025](https://github.com/ChromeDevTools/devtools-protocol/compare/7c8e4c5...2559025)
+#### `Page`: modified command
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest) - The return value's `parsed` _added_.
+#### `Page`: new type
+* [`Page.AppManifestParsedProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestParsedProperties)
+
+
+## Roll protocol to r724596
+###### _2019-12-13 04:15:55 -0800_ | Diff: [cc1ba9f...7c8e4c5](https://github.com/ChromeDevTools/devtools-protocol/compare/cc1ba9f...7c8e4c5)
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The parameters's `priority` _added_.
+#### `Network`: new type
+* [`Network.CookiePriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookiePriority)
+#### `Network`: modified types
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - The properties's `priority` _added_.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The properties's `priority` _added_.
+
+
+## Roll protocol to r724568
+###### _2019-12-13 02:15:57 -0800_ | Diff: [5c57d0d...cc1ba9f](https://github.com/ChromeDevTools/devtools-protocol/compare/5c57d0d...cc1ba9f)
+#### `Input`: modified commands
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `button` in the parameters had `type` _removed_. The `button` in the parameters had `enum` _removed_. The parameters's `$ref` _added_.
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `button` in the parameters had `type` _removed_. The `button` in the parameters had `enum` _removed_. The `button` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+#### `Input`: new type
+* [`Input.MouseButton`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-MouseButton)
+
+
+## Roll protocol to r724110
+###### _2019-12-11 18:15:58 -0800_ | Diff: [0ad933c...6130de0](https://github.com/ChromeDevTools/devtools-protocol/compare/0ad933c...6130de0)
+#### `DOM`: modified type
+* [`DOM.PseudoType`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-PseudoType) - The enum's `backdrop` _updated_. The enum's `selection` _updated_. The enum's `first-line-inherited` _updated_. The enum's `scrollbar` _updated_. The enum's `scrollbar-thumb` _updated_. The enum's `scrollbar-button` _updated_. The enum's `scrollbar-track` _updated_. The enum's `scrollbar-track-piece` _updated_. The enum's `scrollbar-corner` _updated_. The enum's `resizer` _updated_. The enum's `input-list-button` _updated_. The enum's `input-list-button` _added_.
+
+
+## Roll protocol to r723051
+###### _2019-12-09 12:16:02 -0800_ | Diff: [f747da9...0ad933c](https://github.com/ChromeDevTools/devtools-protocol/compare/f747da9...0ad933c)
+#### `Runtime`: modified type
+* [`Runtime.PrivatePropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PrivatePropertyDescriptor) - The properties's `optional` _added_. The properties's `get` _added_. The properties's `set` _added_.
+
+
+## Roll protocol to r722700
+###### _2019-12-06 16:16:07 -0800_ | Diff: [7f775e3...f747da9](https://github.com/ChromeDevTools/devtools-protocol/compare/7f775e3...f747da9)
+#### `Browser`: modified types
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `clipboardRead` _updated_. The enum's `clipboardWrite` _updated_.
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor) - The properties's `allowWithoutSanitization` _added_.
+
+
+## Roll protocol to r719330
+###### _2019-11-26 13:16:17 -0800_ | Diff: [13ccbfe...14ad3ca](https://github.com/ChromeDevTools/devtools-protocol/compare/13ccbfe...14ad3ca)
+#### `Page`: removed command
+* [`Page.handleFileChooser`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleFileChooser)
+#### `Page`: modified command
+* [`Page.setInterceptFileChooserDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setInterceptFileChooserDialog) - `description` updated.
+#### `Page`: modified event
+* [`Page.fileChooserOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-fileChooserOpened) - The `mode` in the parameters had `type` _removed_. The `mode` in the parameters had `enum` _removed_. The `mode` in the parameters had `name` _updated_. The parameters's `description` _added_. The parameters's `experimental` _added_. The parameters's `$ref` _added_. The parameters's `backendNodeId` _added_. The parameters's `mode` _added_.
+
+
+## Roll protocol to r717480
+###### _2019-11-20 20:15:58 -0800_ | Diff: [38fbc08...146c682](https://github.com/ChromeDevTools/devtools-protocol/compare/38fbc08...146c682)
+#### `Security`: modified type
+* [`Security.CertificateSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateSecurityState) - The `certifcateHasWeakSignature` in the properties had `name` _updated_. The `certifcateHasWeakSignature` in the properties had `description` _updated_. The `certifcateHasWeakSignature` in the properties had `type` _updated_. The `modernSSL` in the properties had `name` _updated_. The `modernSSL` in the properties had `description` _updated_. The `obsoleteSslProtocol` in the properties had `name` _updated_. The `obsoleteSslProtocol` in the properties had `description` _updated_. The `obsoleteSslKeyExchange` in the properties had `name` _updated_. The `obsoleteSslKeyExchange` in the properties had `description` _updated_. The `obsoleteSslCipher` in the properties had `name` _updated_. The `obsoleteSslCipher` in the properties had `description` _updated_. The `obsoleteSslSignature` in the properties had `name` _updated_. The `obsoleteSslSignature` in the properties had `description` _updated_. The properties's `optional` _added_. The properties's `obsoleteSslCipher` _added_. The properties's `obsoleteSslSignature` _added_.
+
+
+## Roll protocol to r717360
+###### _2019-11-20 16:15:59 -0800_ | Diff: [e794044...38fbc08](https://github.com/ChromeDevTools/devtools-protocol/compare/e794044...38fbc08)
+#### `Browser`: modified commands
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission) - The `browserContextId` in the parameters had `$ref` _updated_.
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions) - The `browserContextId` in the parameters had `$ref` _updated_.
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions) - The `browserContextId` in the parameters had `$ref` _updated_.
+#### `Browser`: new type
+* [`Browser.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-BrowserContextID)
+#### `Storage`: new commands
+* [`Storage.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getCookies)
+* [`Storage.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-setCookies)
+* [`Storage.clearCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearCookies)
+#### `Target`: modified commands
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - The `browserContextId` in the return value had `$ref` _updated_.
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts) - The `browserContextIds` in the return value had `$ref` _updated_.
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `browserContextId` in the parameters had `$ref` _updated_.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - The `browserContextId` in the parameters had `$ref` _updated_.
+#### `Target`: removed type
+* [`Target.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-BrowserContextID)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The `browserContextId` in the properties had `$ref` _updated_.
+
+
+## Roll protocol to r717319
+###### _2019-11-20 15:15:58 -0800_ | Diff: [0da6eeb...e794044](https://github.com/ChromeDevTools/devtools-protocol/compare/0da6eeb...e794044)
+#### `Security`: new types
+* [`Security.SafetyTipStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipStatus)
+* [`Security.SafetyTipInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SafetyTipInfo)
+#### `Security`: modified type
+* [`Security.VisibleSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-VisibleSecurityState) - The `securityStateIssueIds` in the properties had `type` _removed_. The `securityStateIssueIds` in the properties had `items` _removed_. The `securityStateIssueIds` in the properties had `name` _updated_. The `securityStateIssueIds` in the properties had `description` _updated_. The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `securityStateIssueIds` _added_.
+
+
+## Roll protocol to r715684
+###### _2019-11-15 07:16:23 -0800_ | Diff: [2f6e00a...241adc5](https://github.com/ChromeDevTools/devtools-protocol/compare/2f6e00a...241adc5)
+#### `Debugger`: modified commands
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource) - The `scriptSource` in the return value had `description` _updated_. The return value's `bytecode` _added_.
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r712820
+###### _2019-11-05 16:16:33 -0800_ | Diff: [66e3abc...87a8f04](https://github.com/ChromeDevTools/devtools-protocol/compare/66e3abc...87a8f04)
+#### `Profiler`: new commands
+* [`Profiler.enableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-enableRuntimeCallStats)
+* [`Profiler.disableRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-disableRuntimeCallStats)
+* [`Profiler.getRuntimeCallStats`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getRuntimeCallStats)
+#### `Profiler`: new type
+* [`Profiler.CounterInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CounterInfo)
+
+
+## Roll protocol to r712476
+###### _2019-11-04 23:16:15 -0800_ | Diff: [7bbe86e...66e3abc](https://github.com/ChromeDevTools/devtools-protocol/compare/7bbe86e...66e3abc)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `notifications` _updated_. The enum's `paymentHandler` _updated_. The enum's `periodicBackgroundSync` _updated_. The enum's `protectedMediaIdentifier` _updated_. The enum's `sensors` _updated_. The enum's `videoCapture` _updated_. The enum's `idleDetection` _updated_. The enum's `wakeLockScreen` _updated_. The enum's `wakeLockSystem` _updated_. The enum's `wakeLockSystem` _added_.
+
+
+## Roll protocol to r712350
+###### _2019-11-04 16:16:27 -0800_ | Diff: [450eb90...7bbe86e](https://github.com/ChromeDevTools/devtools-protocol/compare/450eb90...7bbe86e)
+#### `Network`: modified types
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason) - The enum's `UnknownError` _removed_. The enum's `SameSiteExtended` _updated_. The enum's `SameSiteUnspecifiedTreatedAsLax` _updated_. The enum's `SameSiteNoneInsecure` _updated_. The enum's `UserPreferences` _updated_. The enum's `SyntaxError` _updated_. The enum's `SchemeNotSupported` _updated_. The enum's `OverwriteSecure` _updated_. The enum's `InvalidDomain` _updated_. The enum's `InvalidPrefix` _updated_.
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason) - The enum's `UnknownError` _removed_. The enum's `SameSiteExtended` _updated_. The enum's `SameSiteUnspecifiedTreatedAsLax` _updated_. The enum's `SameSiteNoneInsecure` _updated_. The enum's `UserPreferences` _updated_.
+
+
+## Roll protocol to r710913
+###### _2019-10-30 12:16:27_ | Diff: [b315ec7...450eb90](https://github.com/ChromeDevTools/devtools-protocol/compare/b315ec7...450eb90)
+#### `Network`: modified type
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite) - The enum's `None` _removed_. The enum's `Extended` _updated_.
+
+
+## Roll protocol to r709494
+###### _2019-10-25 09:19:12_ | Diff: [cc0ccbf...cc2df42](https://github.com/ChromeDevTools/devtools-protocol/compare/cc0ccbf...cc2df42)
+#### `CacheStorage`: modified command
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries) - The parameters's `optional` _added_ (2 times).
+#### `Security`: modified type
+* [`Security.SecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityState) - The enum's `insecure-broken` _added_.
+
+
+## Roll protocol to r708320
+###### _2019-10-22 13:16:41_ | Diff: [0eb89cb...cc0ccbf](https://github.com/ChromeDevTools/devtools-protocol/compare/0eb89cb...cc0ccbf)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `replMode` _added_.
+
+
+## Roll protocol to r704542
+###### _2019-10-10 03:15:57_ | Diff: [6db8af2...176dc88](https://github.com/ChromeDevTools/devtools-protocol/compare/6db8af2...176dc88)
+#### `CSS`: modified type
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The properties's `endLine` _added_. The properties's `endColumn` _added_.
+
+
+## Roll protocol to r703825
+###### _2019-10-08 11:16:23_ | Diff: [1b9bba2...6db8af2](https://github.com/ChromeDevTools/devtools-protocol/compare/1b9bba2...6db8af2)
+#### `Debugger`: modified command
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable) - The parameters's `supportsWasmDwarf` _removed_.
+
+
+## Roll protocol to r703432
+###### _2019-10-07 13:16:21_ | Diff: [9458ee4...1b9bba2](https://github.com/ChromeDevTools/devtools-protocol/compare/9458ee4...1b9bba2)
+#### `Security`: new event
+* [`Security.visibleSecurityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-visibleSecurityStateChanged)
+#### `Security`: new types
+* [`Security.CertificateSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateSecurityState)
+* [`Security.VisibleSecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-VisibleSecurityState)
+
+
+## Roll protocol to r702485
+###### _2019-10-03 11:15:58_ | Diff: [848e8db...9458ee4](https://github.com/ChromeDevTools/devtools-protocol/compare/848e8db...9458ee4)
+#### `WebAuthn`: modified type
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions) - The properties's `description` _added_ (2 times). The properties's `optional` _added_ (2 times). The properties's `isUserVerified` _added_.
+
+
+## Roll protocol to r701341
+###### _2019-09-30 16:15:58_ | Diff: [b9558e4...848e8db](https://github.com/ChromeDevTools/devtools-protocol/compare/b9558e4...848e8db)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The `scrollOffsetX` in the properties had `optional` _removed_. The `scrollOffsetX` in the properties had `type` _removed_. The `baseURL` in the properties had `name` _updated_. The `baseURL` in the properties had `description` _updated_. The `contentLanguage` in the properties had `name` _updated_. The `contentLanguage` in the properties had `description` _updated_. The `encodingName` in the properties had `name` _updated_. The `encodingName` in the properties had `description` _updated_. The `publicId` in the properties had `name` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `name` _updated_. The `systemId` in the properties had `description` _updated_. The `frameId` in the properties had `name` _updated_. The `frameId` in the properties had `description` _updated_. The `nodes` in the properties had `name` _updated_. The `nodes` in the properties had `description` _updated_. The `nodes` in the properties had `$ref` _updated_. The `layout` in the properties had `name` _updated_. The `layout` in the properties had `description` _updated_. The `layout` in the properties had `$ref` _updated_. The `textBoxes` in the properties had `name` _updated_. The `textBoxes` in the properties had `description` _updated_. The `textBoxes` in the properties had `$ref` _updated_. The `scrollOffsetX` in the properties had `name` _updated_. The `scrollOffsetX` in the properties had `description` _updated_. The `scrollOffsetY` in the properties had `name` _updated_. The `scrollOffsetY` in the properties had `description` _updated_. The properties's `$ref` _added_. The properties's `scrollOffsetY` _added_. The properties's `contentWidth` _added_. The properties's `contentHeight` _added_.
+
+
+## Roll protocol to r701085
+###### _2019-09-30 06:16:15_ | Diff: [52e455c...b9558e4](https://github.com/ChromeDevTools/devtools-protocol/compare/52e455c...b9558e4)
+#### `Emulation`: modified command
+* [`Emulation.setEmulatedMedia`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmulatedMedia) - `description` updated. The parameters's `optional` _added_. The parameters's `features` _added_.
+#### `Emulation`: new type
+* [`Emulation.MediaFeature`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-MediaFeature)
+
+
+## Roll protocol to r700880
+###### _2019-09-27 15:16:00_ | Diff: [1bafeca...52e455c](https://github.com/ChromeDevTools/devtools-protocol/compare/1bafeca...52e455c)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `throwOnSideEffect` in the parameters had `description` _updated_. The parameters's `disableBreaks` _added_.
+
+
+## Roll protocol to r700642
+###### _2019-09-27 03:15:57_ | Diff: [fc7a6b7...1bafeca](https://github.com/ChromeDevTools/devtools-protocol/compare/fc7a6b7...1bafeca)
+#### `Tracing`: modified command
+* [`Tracing.requestMemoryDump`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-requestMemoryDump)
+
+
+## Roll protocol to r700528
+###### _2019-09-26 18:16:06_ | Diff: [6af45a3...fc7a6b7](https://github.com/ChromeDevTools/devtools-protocol/compare/6af45a3...fc7a6b7)
+#### `Target`: modified command
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - The parameters's `windowOpen` _added_.
+
+
+## Roll protocol to r700421
+###### _2019-09-26 14:16:16_ | Diff: [324d30c...6af45a3](https://github.com/ChromeDevTools/devtools-protocol/compare/324d30c...6af45a3)
+#### `Target`: modified commands
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget) - The `flatten` in the parameters had `experimental` _removed_. The `flatten` in the parameters had `description` _updated_.
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - `description` updated. `deprecated` added.
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - The `flatten` in the parameters had `experimental` _removed_. The `flatten` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r700395
+###### _2019-09-26 13:16:11_ | Diff: [4b981c0...324d30c](https://github.com/ChromeDevTools/devtools-protocol/compare/4b981c0...324d30c)
+#### `SystemInfo`: modified type
+* [`SystemInfo.GPUDevice`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUDevice) - The `vendorString` in the properties had `name` _updated_. The `vendorString` in the properties had `description` _updated_. The `vendorString` in the properties had `type` _updated_. The `deviceString` in the properties had `name` _updated_. The `deviceString` in the properties had `description` _updated_. The `deviceString` in the properties had `type` _updated_. The `driverVendor` in the properties had `name` _updated_. The `driverVendor` in the properties had `description` _updated_. The `driverVersion` in the properties had `name` _updated_. The `driverVersion` in the properties had `description` _updated_. The properties's `optional` _added_ (2 times). The properties's `driverVendor` _added_. The properties's `driverVersion` _added_.
+
+
+## Roll protocol to r699881
+###### _2019-09-25 11:16:02_ | Diff: [d1cec58...4b981c0](https://github.com/ChromeDevTools/devtools-protocol/compare/d1cec58...4b981c0)
+#### `Debugger`: new command
+* [`Debugger.getWasmBytecode`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getWasmBytecode)
+#### `Debugger`: modified command
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable) - The parameters's `supportsWasmDwarf` _added_.
+
+
+## Roll protocol to r698331
+###### _2019-09-19 20:16:05_ | Diff: [86165c9...d1cec58](https://github.com/ChromeDevTools/devtools-protocol/compare/86165c9...d1cec58)
+#### `Fetch`: modified command
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest) - The `body` in the parameters had `name` _updated_. The `body` in the parameters had `description` _updated_. The `responsePhrase` in the parameters had `name` _updated_. The `responsePhrase` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `responsePhrase` _added_.
+
+
+## Roll protocol to r696576
+###### _2019-09-13 16:16:04_ | Diff: [2103701...86165c9](https://github.com/ChromeDevTools/devtools-protocol/compare/2103701...86165c9)
+#### `Network`: modified types
+* [`Network.BlockedSetCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedSetCookieWithReason) - The `blockedReason` in the properties had `$ref` _removed_. The `blockedReason` in the properties had `name` _updated_. The `blockedReason` in the properties had `description` _updated_. The properties's `type` _added_. The properties's `items` _added_.
+* [`Network.BlockedCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedCookieWithReason) - The `blockedReason` in the properties had `$ref` _removed_. The `blockedReason` in the properties had `name` _updated_. The `blockedReason` in the properties had `description` _updated_. The properties's `type` _added_. The properties's `items` _added_.
+
+
+## Roll protocol to r696317
+###### _2019-09-13 01:16:13_ | Diff: [ca69194...2103701](https://github.com/ChromeDevTools/devtools-protocol/compare/ca69194...2103701)
+#### `Debugger`: modified commands
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall) - `deprecated` added.
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto) - The `breakOnAsyncCall` in the parameters had `description` _updated_.
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `asyncCallStackTraceId` in the parameters had `description` _updated_. The parameters's `deprecated` _added_.
+
+
+## Roll protocol to r694415
+###### _2019-09-06 14:15:53_ | Diff: [308aa38...81a5ef8](https://github.com/ChromeDevTools/devtools-protocol/compare/308aa38...81a5ef8)
+#### `DOM`: modified command
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation) - `experimental` removed. The `nodeId` in the return value had `optional` _removed_. The `nodeId` in the return value had `name` _updated_. The `nodeId` in the return value had `description` _updated_. The `nodeId` in the return value had `$ref` _updated_. The parameters's `ignorePointerEventsNone` _added_. The return value's `nodeId` _added_.
+
+
+## Roll protocol to r694293
+###### _2019-09-06 10:16:24_ | Diff: [a6f7aeb...308aa38](https://github.com/ChromeDevTools/devtools-protocol/compare/a6f7aeb...308aa38)
+#### `HeadlessExperimental`: modified event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r692805
+###### _2019-09-03 13:15:58_ | Diff: [108d389...a6f7aeb](https://github.com/ChromeDevTools/devtools-protocol/compare/108d389...a6f7aeb)
+#### `HeadlessExperimental`: modified event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged) - `deprecated` removed. `description` updated.
+
+
+## Roll protocol to r692736
+###### _2019-09-03 11:16:12_ | Diff: [82e6b82...108d389](https://github.com/ChromeDevTools/devtools-protocol/compare/82e6b82...108d389)
+#### `HeadlessExperimental`: modified event
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r689523
+###### _2019-08-22 10:15:59_ | Diff: [78e5621...e1fb93b](https://github.com/ChromeDevTools/devtools-protocol/compare/78e5621...e1fb93b)
+#### `WebAuthn`: new command
+* [`WebAuthn.removeCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeCredential)
+
+
+## Roll protocol to r687122 686719
+###### _2019-08-14 19:15:58_ | Diff: [13e7205...443c7a4](https://github.com/ChromeDevTools/devtools-protocol/compare/13e7205...443c7a4)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The `includeDOMRects` in the parameters had `name` _updated_. The `includeDOMRects` in the parameters had `description` _updated_. The parameters's `includeDOMRects` _added_.
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The `offsetRects` in the properties had `$ref` _removed_. The `offsetRects` in the properties had `name` _updated_. The `offsetRects` in the properties had `description` _updated_. The `scrollRects` in the properties had `name` _updated_. The `scrollRects` in the properties had `description` _updated_. The `clientRects` in the properties had `name` _updated_. The `clientRects` in the properties had `description` _updated_. The `5` in the properties had `type` _added_. The properties's `clientRects` _added_.
+
+
+## Roll protocol to r685550
+###### _2019-08-09 07:15:54_ | Diff: [dd87c1c...13e7205](https://github.com/ChromeDevTools/devtools-protocol/compare/dd87c1c...13e7205)
+#### `ServiceWorker`: new command
+* [`ServiceWorker.dispatchPeriodicSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchPeriodicSyncEvent)
+
+
+## Roll protocol to r685049
+###### _2019-08-07 18:16:05_ | Diff: [8ab49c8...dd87c1c](https://github.com/ChromeDevTools/devtools-protocol/compare/8ab49c8...dd87c1c)
+#### `WebAudio`: modified command
+* [`WebAudio.getRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-getRealtimeData) - The `contextId` in the parameters had `$ref` _updated_.
+#### `WebAudio`: new events
+* [`WebAudio.audioListenerCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerCreated)
+* [`WebAudio.audioListenerWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioListenerWillBeDestroyed)
+* [`WebAudio.audioNodeCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeCreated)
+* [`WebAudio.audioNodeWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioNodeWillBeDestroyed)
+* [`WebAudio.audioParamCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamCreated)
+* [`WebAudio.audioParamWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-audioParamWillBeDestroyed)
+* [`WebAudio.nodesConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesConnected)
+* [`WebAudio.nodesDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodesDisconnected)
+* [`WebAudio.nodeParamConnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamConnected)
+* [`WebAudio.nodeParamDisconnected`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-nodeParamDisconnected)
+#### `WebAudio`: modified event
+* [`WebAudio.contextWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextWillBeDestroyed) - The `contextId` in the parameters had `$ref` _updated_.
+#### `WebAudio`: new types
+* [`WebAudio.GraphObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-GraphObjectId)
+* [`WebAudio.NodeType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-NodeType)
+* [`WebAudio.ChannelCountMode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelCountMode)
+* [`WebAudio.ChannelInterpretation`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ChannelInterpretation)
+* [`WebAudio.ParamType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ParamType)
+* [`WebAudio.AutomationRate`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AutomationRate)
+* [`WebAudio.AudioListener`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioListener)
+* [`WebAudio.AudioNode`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioNode)
+* [`WebAudio.AudioParam`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-AudioParam)
+#### `WebAudio`: removed type
+* [`WebAudio.ContextId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextId)
+#### `WebAudio`: modified type
+* [`WebAudio.BaseAudioContext`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-BaseAudioContext) - The `contextId` in the properties had `$ref` _updated_.
+
+
+## Roll protocol to r684999
+###### _2019-08-07 16:16:04_ | Diff: [3be7296...8ab49c8](https://github.com/ChromeDevTools/devtools-protocol/compare/3be7296...8ab49c8)
+#### `Browser`: new command
+* [`Browser.setPermission`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setPermission)
+#### `Browser`: new types
+* [`Browser.PermissionSetting`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionSetting)
+* [`Browser.PermissionDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionDescriptor)
+
+
+## Roll protocol to r684970
+###### _2019-08-07 15:16:04_ | Diff: [0433fdf...3be7296](https://github.com/ChromeDevTools/devtools-protocol/compare/0433fdf...3be7296)
+#### `WebAuthn`: new command
+* [`WebAuthn.getCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredential)
+
+
+## Roll protocol to r684601
+###### _2019-08-06 18:16:06_ | Diff: [64b5368...0433fdf](https://github.com/ChromeDevTools/devtools-protocol/compare/64b5368...0433fdf)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The `id` in the properties had `type` _removed_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r684555
+###### _2019-08-06 16:16:01_ | Diff: [5856a13...64b5368](https://github.com/ChromeDevTools/devtools-protocol/compare/5856a13...64b5368)
+#### `Media`: new domain
+* [`Media.Media`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#domain-Media)
+#### `Media`: new commands
+* [`Media.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-enable)
+* [`Media.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#method-disable)
+#### `Media`: new events
+* [`Media.playerPropertiesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerPropertiesChanged)
+* [`Media.playerEventsAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playerEventsAdded)
+* [`Media.playersCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#event-playersCreated)
+#### `Media`: new types
+* [`Media.PlayerId`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerId)
+* [`Media.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-Timestamp)
+* [`Media.PlayerProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerProperty)
+* [`Media.PlayerEventType`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEventType)
+* [`Media.PlayerEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Media/#type-PlayerEvent)
+
+
+## Roll protocol to r683290
+###### _2019-08-01 13:16:10_ | Diff: [8e07b77...5856a13](https://github.com/ChromeDevTools/devtools-protocol/compare/8e07b77...5856a13)
+#### `WebAuthn`: modified type
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential) - The `rpIdHash` in the properties had `description` _removed_. The `rpIdHash` in the properties had `name` _updated_. The `rpIdHash` in the properties had `type` _updated_. The `privateKey` in the properties had `name` _updated_. The `privateKey` in the properties had `description` _updated_. The `signCount` in the properties had `name` _updated_. The `signCount` in the properties had `description` _updated_. The `signCount` in the properties had `type` _updated_. The properties's `optional` _added_. The properties's `userHandle` _added_. The properties's `signCount` _added_.
+
+
+## Roll protocol to r682524
+###### _2019-07-30 17:16:09_ | Diff: [0712e15...497b3f8](https://github.com/ChromeDevTools/devtools-protocol/compare/0712e15...497b3f8)
+#### `WebAudio`: new event
+* [`WebAudio.contextWillBeDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextWillBeDestroyed)
+#### `WebAudio`: removed event
+* [`WebAudio.contextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextDestroyed)
+
+
+## Roll protocol to r681549
+###### _2019-07-26 17:15:55_ | Diff: [ccba565...0712e15](https://github.com/ChromeDevTools/devtools-protocol/compare/ccba565...0712e15)
+#### `DOM`: new commands
+* [`DOM.setNodeStackTracesEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeStackTracesEnabled)
+* [`DOM.getNodeStackTraces`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeStackTraces)
+
+
+## Roll protocol to r680546 678539
+###### _2019-07-24 12:15:59_ | Diff: [0334ffc...f2a777d](https://github.com/ChromeDevTools/devtools-protocol/compare/0334ffc...f2a777d)
+#### `BackgroundService`: modified type
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName) - The enum's `periodicBackgroundSync` _added_.
+
+
+## Roll protocol to r680180
+###### _2019-07-23 15:16:11_ | Diff: [06d8e60...0334ffc](https://github.com/ChromeDevTools/devtools-protocol/compare/06d8e60...0334ffc)
+#### `SystemInfo`: new type
+* [`SystemInfo.ImageType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageType)
+#### `SystemInfo`: modified type
+* [`SystemInfo.ImageDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageDecodeAcceleratorCapability) - The `imageType` in the properties had `type` _removed_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r678025
+###### _2019-07-16 16:15:58_ | Diff: [15eb83b...436e5f2](https://github.com/ChromeDevTools/devtools-protocol/compare/15eb83b...436e5f2)
+#### `Network`: new events
+* [`Network.requestWillBeSentExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSentExtraInfo)
+* [`Network.responseReceivedExtraInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceivedExtraInfo)
+#### `Network`: new types
+* [`Network.SetCookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SetCookieBlockedReason)
+* [`Network.CookieBlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieBlockedReason)
+* [`Network.BlockedSetCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedSetCookieWithReason)
+* [`Network.BlockedCookieWithReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedCookieWithReason)
+
+
+## Roll protocol to r676164
+###### _2019-07-10 16:16:22_ | Diff: [eabfde3...783cc86](https://github.com/ChromeDevTools/devtools-protocol/compare/eabfde3...783cc86)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The parameters's `includeStyle` _added_.
+
+
+## Roll protocol to r674615 641719
+###### _2019-07-03 14:16:20_ | Diff: [b44b935...e639d55](https://github.com/ChromeDevTools/devtools-protocol/compare/b44b935...e639d55)
+#### `BackgroundService`: modified type
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName) - The enum's `paymentHandler` _added_.
+
+
+## Roll protocol to r673641
+###### _2019-06-30 22:16:04_ | Diff: [7eda722...8282023](https://github.com/ChromeDevTools/devtools-protocol/compare/7eda722...8282023)
+#### `Network`: modified type
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader) - The properties's `headerIntegrity` _added_.
+
+
+## Roll protocol to r673382
+###### _2019-06-28 10:16:01_ | Diff: [55a3386...c27026e](https://github.com/ChromeDevTools/devtools-protocol/compare/55a3386...c27026e)
+#### `Network`: modified commands
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - `description` updated. `deprecated` added.
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception) - `description` updated. `deprecated` added.
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r673135
+###### _2019-06-27 17:16:12_ | Diff: [fb3f546...c137a23](https://github.com/ChromeDevTools/devtools-protocol/compare/fb3f546...c137a23)
+#### `Page`: new commands
+* [`Page.setInterceptFileChooserDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setInterceptFileChooserDialog)
+* [`Page.handleFileChooser`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleFileChooser)
+#### `Page`: new event
+* [`Page.fileChooserOpened`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-fileChooserOpened)
+
+
+## Roll protocol to r670852
+###### _2019-06-20 04:15:55_ | Diff: [927ebde...fef5eb9](https://github.com/ChromeDevTools/devtools-protocol/compare/927ebde...fef5eb9)
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The `stream` in the parameters had `optional` _removed_. The `stream` in the parameters had `$ref` _removed_. The `stream` in the parameters had `name` _updated_. The `stream` in the parameters had `description` _updated_. The `traceFormat` in the parameters had `name` _updated_. The `traceFormat` in the parameters had `description` _updated_. The `traceFormat` in the parameters had `$ref` _updated_. The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `description` _updated_. The `streamCompression` in the parameters had `$ref` _updated_. The parameters's `type` _added_. The parameters's `streamCompression` _added_.
+
+
+## Roll protocol to r670335
+###### _2019-06-18 18:16:11_ | Diff: [471ce93...927ebde](https://github.com/ChromeDevTools/devtools-protocol/compare/471ce93...927ebde)
+#### `Security`: modified event
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged) - The parameters's `deprecated` _added_.
+
+
+## Roll protocol to r670203
+###### _2019-06-18 14:15:55_ | Diff: [fd73e0c...471ce93](https://github.com/ChromeDevTools/devtools-protocol/compare/fd73e0c...471ce93)
+#### `WebAuthn`: new command
+* [`WebAuthn.setUserVerified`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-setUserVerified)
+
+
+## Roll protocol to r670021
+###### _2019-06-18 02:15:55_ | Diff: [7fc59b2...fd73e0c](https://github.com/ChromeDevTools/devtools-protocol/compare/7fc59b2...fd73e0c)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `wakeLockScreen` _added_. The enum's `wakeLockSystem` _added_.
+
+
+## Roll protocol to r669732
+###### _2019-06-17 11:16:03_ | Diff: [d9cb7e4...de8b6d9](https://github.com/ChromeDevTools/devtools-protocol/compare/d9cb7e4...de8b6d9)
+#### `WebAuthn`: modified type
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions) - The properties's `automaticPresenceSimulation` _added_.
+
+
+## Roll protocol to r668850 668434
+###### _2019-06-13 09:16:01_ | Diff: [a40fe3f...b24d4a4](https://github.com/ChromeDevTools/devtools-protocol/compare/a40fe3f...b24d4a4)
+#### `SystemInfo`: new types
+* [`SystemInfo.Size`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-Size)
+* [`SystemInfo.VideoDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoDecodeAcceleratorCapability)
+* [`SystemInfo.VideoEncodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-VideoEncodeAcceleratorCapability)
+* [`SystemInfo.SubsamplingFormat`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-SubsamplingFormat)
+* [`SystemInfo.ImageDecodeAcceleratorCapability`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ImageDecodeAcceleratorCapability)
+#### `SystemInfo`: modified type
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo) - The properties's `videoDecoding` _added_. The properties's `videoEncoding` _added_. The properties's `imageDecoding` _added_.
+
+
+## Roll protocol to r668114
+###### _2019-06-11 13:15:52_ | Diff: [937d75e...a40fe3f](https://github.com/ChromeDevTools/devtools-protocol/compare/937d75e...a40fe3f)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The `data` in the return value had `description` _updated_. The parameters's `transferMode` _added_. The return value's `stream` _added_.
+
+
+## Roll protocol to r667807
+###### _2019-06-10 17:15:38_ | Diff: [c42a81a...a4a807c](https://github.com/ChromeDevTools/devtools-protocol/compare/c42a81a...a4a807c)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The `unreachableUrl` in the properties had `experimental` _removed_. The `unreachableUrl` in the properties had `optional` _removed_. The `url` in the properties had `description` _updated_. The `securityOrigin` in the properties had `name` _updated_. The `securityOrigin` in the properties had `description` _updated_. The `mimeType` in the properties had `name` _updated_. The `mimeType` in the properties had `description` _updated_. The `unreachableUrl` in the properties had `name` _updated_. The `unreachableUrl` in the properties had `description` _updated_. The properties's `experimental` _added_. The properties's `optional` _added_. The properties's `unreachableUrl` _added_.
+
+
+## Roll protocol to r667801
+###### _2019-06-10 16:16:30_ | Diff: [cd76fe0...c42a81a](https://github.com/ChromeDevTools/devtools-protocol/compare/cd76fe0...c42a81a)
+#### `WebAuthn`: new commands
+* [`WebAuthn.addCredential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addCredential)
+* [`WebAuthn.getCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-getCredentials)
+* [`WebAuthn.clearCredentials`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-clearCredentials)
+#### `WebAuthn`: new type
+* [`WebAuthn.Credential`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-Credential)
+
+
+## Roll protocol to r667155
+###### _2019-06-07 09:16:15_ | Diff: [047f15a...cd76fe0](https://github.com/ChromeDevTools/devtools-protocol/compare/047f15a...cd76fe0)
+#### `Overlay`: new command
+* [`Overlay.setShowLayoutShiftRegions`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowLayoutShiftRegions)
+
+
+## Roll protocol to r666393
+###### _2019-06-05 12:15:46_ | Diff: [30dd754...2bb413c](https://github.com/ChromeDevTools/devtools-protocol/compare/30dd754...2bb413c)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The parameters's `includeDOMRects` _added_.
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The properties's `offsetRects` _added_. The properties's `scrollRects` _added_. The properties's `clientRects` _added_.
+#### `WebAudio`: modified type
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData) - The `currentTime` in the properties had `optional` _removed_. The `renderCapacity` in the properties had `optional` _removed_. `description` updated. The properties's `callbackIntervalMean` _added_. The properties's `callbackIntervalVariance` _added_.
+
+
+## Roll protocol to r666105
+###### _2019-06-04 18:15:57_ | Diff: [abac32e...30dd754](https://github.com/ChromeDevTools/devtools-protocol/compare/abac32e...30dd754)
+#### `WebAuthn`: new commands
+* [`WebAuthn.addVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-addVirtualAuthenticator)
+* [`WebAuthn.removeVirtualAuthenticator`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-removeVirtualAuthenticator)
+#### `WebAuthn`: new types
+* [`WebAuthn.AuthenticatorId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorId)
+* [`WebAuthn.AuthenticatorProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorProtocol)
+* [`WebAuthn.AuthenticatorTransport`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-AuthenticatorTransport)
+* [`WebAuthn.VirtualAuthenticatorOptions`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#type-VirtualAuthenticatorOptions)
+
+
+## Roll protocol to r665395
+###### _2019-05-31 21:15:47_ | Diff: [fff326b...fab8221](https://github.com/ChromeDevTools/devtools-protocol/compare/fff326b...fab8221)
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The `scrollOffsetX` in the properties had `description` _updated_. The properties's `description` _added_.
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - `description` updated. The `nodeIndex` in the properties had `description` _updated_. The `styles` in the properties had `description` _updated_.
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot) - `description` updated. The `layoutIndex` in the properties had `description` _updated_.
+
+
+## Roll protocol to r664845
+###### _2019-05-30 12:15:53_ | Diff: [01a7aa9...1a6ebbc](https://github.com/ChromeDevTools/devtools-protocol/compare/01a7aa9...1a6ebbc)
+#### `Cast`: modified event
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated) - The `sinkNames` in the parameters had `type` _removed_. The `sinkNames` in the parameters had `name` _updated_. The `0` in the parameters had `$ref` _added_.
+#### `Cast`: new type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+
+
+## Roll protocol to r664634
+###### _2019-05-29 20:15:49_ | Diff: [b5a873e...9326d45](https://github.com/ChromeDevTools/devtools-protocol/compare/b5a873e...9326d45)
+#### `Cast`: modified event
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated) - The `sinks` in the parameters had `$ref` _removed_. The `sinks` in the parameters had `name` _updated_. The `0` in the parameters had `type` _added_.
+#### `Cast`: removed type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+
+
+## Roll protocol to r664496
+###### _2019-05-29 15:15:58_ | Diff: [5a1d75b...b5a873e](https://github.com/ChromeDevTools/devtools-protocol/compare/5a1d75b...b5a873e)
+#### `Cast`: modified event
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated) - The `sinkNames` in the parameters had `type` _removed_. The `sinkNames` in the parameters had `name` _updated_. The `0` in the parameters had `$ref` _added_.
+#### `Cast`: new type
+* [`Cast.Sink`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#type-Sink)
+#### `Target`: modified command
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The parameters's `newWindow` _added_. The parameters's `background` _added_.
+
+
+## Roll protocol to r664421
+###### _2019-05-29 13:15:58_ | Diff: [8246573...5a1d75b](https://github.com/ChromeDevTools/devtools-protocol/compare/8246573...5a1d75b)
+#### `WebAuthn`: new domain
+* [`WebAuthn.WebAuthn`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#domain-WebAuthn)
+#### `WebAuthn`: new commands
+* [`WebAuthn.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-enable)
+* [`WebAuthn.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAuthn/#method-disable)
+
+
+## Roll protocol to r663310
+###### _2019-05-24 16:16:12_ | Diff: [7deb3ca...9c1151e](https://github.com/ChromeDevTools/devtools-protocol/compare/7deb3ca...9c1151e)
+#### `Emulation`: new command
+* [`Emulation.setTimezoneOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTimezoneOverride)
+
+
+## Roll protocol to r662959
+###### _2019-05-23 21:16:03_ | Diff: [58c4454...7deb3ca](https://github.com/ChromeDevTools/devtools-protocol/compare/58c4454...7deb3ca)
+#### `Network`: modified type
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `timing` in the properties had `optional` _removed_. The `timing` in the properties had `$ref` _removed_. The `protocol` in the properties had `type` _removed_. The `securityState` in the properties had `$ref` _removed_. The `securityDetails` in the properties had `optional` _removed_. The `encodedDataLength` in the properties had `name` _updated_. The `encodedDataLength` in the properties had `description` _updated_. The `encodedDataLength` in the properties had `type` _updated_. The `timing` in the properties had `name` _updated_. The `timing` in the properties had `description` _updated_. The `protocol` in the properties had `name` _updated_. The `protocol` in the properties had `description` _updated_. The `securityState` in the properties had `name` _updated_. The `securityState` in the properties had `description` _updated_. The `securityDetails` in the properties had `name` _updated_. The `securityDetails` in the properties had `description` _updated_. The `securityDetails` in the properties had `$ref` _updated_. The properties's `optional` _added_ (2 times). The properties's `type` _added_ (2 times). The properties's `$ref` _added_. The properties's `securityDetails` _added_.
+
+
+## Roll protocol to r661591
+###### _2019-05-20 19:16:08_ | Diff: [d249f2d...4023d08](https://github.com/ChromeDevTools/devtools-protocol/compare/d249f2d...4023d08)
+#### `SystemInfo`: modified type
+* [`SystemInfo.GPUDevice`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUDevice) - The properties's `driverVendor` _added_. The properties's `driverVersion` _added_.
+
+
+## Roll protocol to r661407
+###### _2019-05-20 11:16:28_ | Diff: [95c7225...d249f2d](https://github.com/ChromeDevTools/devtools-protocol/compare/95c7225...d249f2d)
+#### `BackgroundService`: modified type
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName) - The enum's `pushMessaging` _added_. The enum's `notifications` _added_.
+
+
+## Roll protocol to r658716
+###### _2019-05-10 13:15:57_ | Diff: [56dd9e6...13c78cc](https://github.com/ChromeDevTools/devtools-protocol/compare/56dd9e6...13c78cc)
+#### `Overlay`: modified command
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The parameters's `includeDistance` _added_.
+
+
+## Roll protocol to r658093
+###### _2019-05-09 06:16:29_ | Diff: [25da6a0...56dd9e6](https://github.com/ChromeDevTools/devtools-protocol/compare/25da6a0...56dd9e6)
+#### `Debugger`: new command
+* [`Debugger.setInstrumentationBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setInstrumentationBreakpoint)
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `reason` in the parameters had `XHR` _updated_. The `reason` in the parameters had `DOM` _updated_. The `reason` in the parameters had `EventListener` _updated_. The `reason` in the parameters had `exception` _updated_. The `reason` in the parameters had `assert` _updated_. The `reason` in the parameters had `debugCommand` _updated_. The `reason` in the parameters had `promiseRejection` _updated_. The `reason` in the parameters had `ambiguous` _updated_. The `1` in the parameters had `XHR` _added_.
+
+
+## Roll protocol to r655971
+###### _2019-05-02 05:16:27_ | Diff: [f4514f1...2dfb37c](https://github.com/ChromeDevTools/devtools-protocol/compare/f4514f1...2dfb37c)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `protectedMediaIdentifier` _updated_. The enum's `sensors` _updated_. The enum's `videoCapture` _updated_. The enum's `idleDetection` _updated_. The enum's `idleDetection` _added_.
+
+
+## Roll protocol to r654576
+###### _2019-04-26 13:16:29_ | Diff: [52b6990...ac6e0e0](https://github.com/ChromeDevTools/devtools-protocol/compare/52b6990...ac6e0e0)
+#### `Page`: new event
+* [`Page.downloadWillBegin`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-downloadWillBegin)
+
+
+## Roll protocol to r652664
+###### _2019-04-19 15:15:54_ | Diff: [3348d18...ba2ecc6](https://github.com/ChromeDevTools/devtools-protocol/compare/3348d18...ba2ecc6)
+#### `Network`: modified type
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite) - The enum's `Extended` _added_. The enum's `None` _added_.
+
+
+## Roll protocol to r652382
+###### _2019-04-18 16:15:52_ | Diff: [7e6cca5...3348d18](https://github.com/ChromeDevTools/devtools-protocol/compare/7e6cca5...3348d18)
+#### `WebAudio`: new domain
+* [`WebAudio.WebAudio`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#domain-WebAudio)
+#### `WebAudio`: new commands
+* [`WebAudio.enable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-enable)
+* [`WebAudio.disable`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-disable)
+* [`WebAudio.getRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#method-getRealtimeData)
+#### `WebAudio`: new events
+* [`WebAudio.contextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextCreated)
+* [`WebAudio.contextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextDestroyed)
+* [`WebAudio.contextChanged`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#event-contextChanged)
+#### `WebAudio`: new types
+* [`WebAudio.ContextId`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextId)
+* [`WebAudio.ContextType`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextType)
+* [`WebAudio.ContextState`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextState)
+* [`WebAudio.ContextRealtimeData`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-ContextRealtimeData)
+* [`WebAudio.BaseAudioContext`](https://chromedevtools.github.io/devtools-protocol/tot/WebAudio/#type-BaseAudioContext)
+
+
+## Roll protocol to r652253
+###### _2019-04-18 12:15:58_ | Diff: [b97d14d...7e6cca5](https://github.com/ChromeDevTools/devtools-protocol/compare/b97d14d...7e6cca5)
+#### `Page`: modified event
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation) - The `frameId` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r651096
+###### _2019-04-15 18:15:55_ | Diff: [a5c2d16...fe5e1f5](https://github.com/ChromeDevTools/devtools-protocol/compare/a5c2d16...fe5e1f5)
+#### `Security`: modified type
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus) - The `ranMixedContent` in the properties had `description` _updated_. The `displayedMixedContent` in the properties had `description` _updated_. The `containedMixedForm` in the properties had `description` _updated_. The `ranContentWithCertErrors` in the properties had `description` _updated_. The `displayedContentWithCertErrors` in the properties had `description` _updated_. The `ranInsecureContentStyle` in the properties had `description` _updated_. The `displayedInsecureContentStyle` in the properties had `description` _updated_.
+
+
+## Roll protocol to r649764
+###### _2019-04-10 20:15:55_ | Diff: [37fb01d...20e84f7](https://github.com/ChromeDevTools/devtools-protocol/compare/37fb01d...20e84f7)
+#### `Page`: new command
+* [`Page.getInstallabilityErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getInstallabilityErrors)
+
+
+## Roll protocol to r648372 637670
+###### _2019-04-05 15:15:55_ | Diff: [9d1a903...401f203](https://github.com/ChromeDevTools/devtools-protocol/compare/9d1a903...401f203)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The parameters's `requestId` _added_.
+#### `Fetch`: modified event
+* [`Fetch.requestPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-requestPaused) - The parameters's `networkId` _added_.
+
+
+## Roll protocol to r648288
+###### _2019-04-05 12:16:00_ | Diff: [f37cb70...9d1a903](https://github.com/ChromeDevTools/devtools-protocol/compare/f37cb70...9d1a903)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `description` _updated_. The `streamCompression` in the parameters had `$ref` _updated_. The `traceConfig` in the parameters had `name` _updated_. The `traceConfig` in the parameters had `$ref` _updated_. The parameters's `description` _added_. The parameters's `traceConfig` _added_.
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `description` _updated_. The `streamCompression` in the parameters had `$ref` _updated_. The parameters's `streamCompression` _added_.
+#### `Tracing`: new type
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+
+
+## Roll protocol to r648019
+###### _2019-04-04 18:16:14_ | Diff: [aad03c0...f37cb70](https://github.com/ChromeDevTools/devtools-protocol/compare/aad03c0...f37cb70)
+#### `Network`: modified command
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception) - `description` updated.
+
+
+## Roll protocol to r647618
+###### _2019-04-03 21:16:27_ | Diff: [802c5b3...d59e473](https://github.com/ChromeDevTools/devtools-protocol/compare/802c5b3...d59e473)
+#### `Overlay`: modified type
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode) - The enum's `none` _updated_. The enum's `none` _added_.
+
+
+## Roll protocol to r646981
+###### _2019-04-02 15:16:33_ | Diff: [fb73f39...802c5b3](https://github.com/ChromeDevTools/devtools-protocol/compare/fb73f39...802c5b3)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The parameters's `traceConfig` _removed_. The `streamCompression` in the parameters had `description` _removed_. The `streamFormat` in the parameters had `name` _updated_. The `streamFormat` in the parameters had `description` _updated_. The `streamFormat` in the parameters had `$ref` _updated_. The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `$ref` _updated_.
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The parameters's `streamCompression` _removed_. The `traceFormat` in the parameters had `name` _updated_. The `traceFormat` in the parameters had `description` _updated_. The `traceFormat` in the parameters had `$ref` _updated_.
+#### `Tracing`: removed type
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+
+
+## Roll protocol to r646909
+###### _2019-04-02 12:15:55_ | Diff: [9e59fdf...fb73f39](https://github.com/ChromeDevTools/devtools-protocol/compare/9e59fdf...fb73f39)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `description` _updated_. The `streamCompression` in the parameters had `$ref` _updated_. The `traceConfig` in the parameters had `name` _updated_. The `traceConfig` in the parameters had `$ref` _updated_. The parameters's `description` _added_. The parameters's `traceConfig` _added_.
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The `streamCompression` in the parameters had `name` _updated_. The `streamCompression` in the parameters had `description` _updated_. The `streamCompression` in the parameters had `$ref` _updated_. The parameters's `streamCompression` _added_.
+#### `Tracing`: new type
+* [`Tracing.StreamFormat`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamFormat)
+
+
+## Roll protocol to r646409
+###### _2019-04-01 11:16:05_ | Diff: [87c65d3...9e59fdf](https://github.com/ChromeDevTools/devtools-protocol/compare/87c65d3...9e59fdf)
+#### `Security`: modified event
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged) - The parameters's `deprecated` _added_.
+#### `Security`: modified type
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus) - `deprecated` added.
+
+
+## Roll protocol to r646048
+###### _2019-03-29 18:16:06_ | Diff: [313a238...87c65d3](https://github.com/ChromeDevTools/devtools-protocol/compare/313a238...87c65d3)
+#### `Runtime`: modified event
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled) - The `stackTrace` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r644580
+###### _2019-03-26 16:16:03_ | Diff: [6ee35f9...b99eee8](https://github.com/ChromeDevTools/devtools-protocol/compare/6ee35f9...b99eee8)
+#### `Testing`: removed domain
+* [`Testing.Testing`](https://chromedevtools.github.io/devtools-protocol/tot/Testing/#domain-Testing)
+
+
+## Roll protocol to r644552
+###### _2019-03-26 15:16:08_ | Diff: [a019aca...6ee35f9](https://github.com/ChromeDevTools/devtools-protocol/compare/a019aca...6ee35f9)
+#### `CacheStorage`: modified command
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries) - The `hasMore` in the return value had `name` _updated_. The `hasMore` in the return value had `description` _updated_. The `hasMore` in the return value had `type` _updated_.
+
+
+## Roll protocol to r644145
+###### _2019-03-25 19:16:08_ | Diff: [19f4d92...a019aca](https://github.com/ChromeDevTools/devtools-protocol/compare/19f4d92...a019aca)
+#### `Page`: new event
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+#### `Page`: modified events
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation) - `experimental` removed. `deprecated` added.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - `experimental` removed. `deprecated` added.
+#### `Page`: new type
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+
+
+## Roll protocol to r642320
+###### _2019-03-19 19:16:03_ | Diff: [5016689...19f4d92](https://github.com/ChromeDevTools/devtools-protocol/compare/5016689...19f4d92)
+#### `Page`: removed event
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+#### `Page`: modified events
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation) - `deprecated` removed. `experimental` added.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - `deprecated` removed. `experimental` added.
+#### `Page`: removed type
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+
+
+## Roll protocol to r642280
+###### _2019-03-19 17:16:04_ | Diff: [48c725a...5016689](https://github.com/ChromeDevTools/devtools-protocol/compare/48c725a...5016689)
+#### `Page`: new event
+* [`Page.frameRequestedNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameRequestedNavigation)
+#### `Page`: modified events
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation) - `experimental` removed. `deprecated` added.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - `experimental` removed. `deprecated` added.
+#### `Page`: new type
+* [`Page.ClientNavigationReason`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ClientNavigationReason)
+
+
+## Roll protocol to r641443
+###### _2019-03-16 09:16:06_ | Diff: [dffb10a...48c725a](https://github.com/ChromeDevTools/devtools-protocol/compare/dffb10a...48c725a)
+#### `Debugger`: modified command
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable)
+
+
+## Roll protocol to r641075
+###### _2019-03-14 21:15:57_ | Diff: [ddaf4ff...dffb10a](https://github.com/ChromeDevTools/devtools-protocol/compare/ddaf4ff...dffb10a)
+#### `IndexedDB`: new command
+* [`IndexedDB.getMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getMetadata)
+#### `IndexedDB`: removed command
+* [`IndexedDB.getKeyGeneratorCurrentNumber`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getKeyGeneratorCurrentNumber)
+
+
+## Roll protocol to r641004
+###### _2019-03-14 17:15:56_ | Diff: [f3edfef...ddaf4ff](https://github.com/ChromeDevTools/devtools-protocol/compare/f3edfef...ddaf4ff)
+#### `Overlay`: removed command
+* [`Overlay.setSuspended`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setSuspended)
+
+
+## Roll protocol to r639476
+###### _2019-03-11 07:16:12_ | Diff: [a7b00e7...2d8a43c](https://github.com/ChromeDevTools/devtools-protocol/compare/a7b00e7...2d8a43c)
+#### `BackgroundService`: new command
+* [`BackgroundService.clearEvents`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-clearEvents)
+
+
+## Roll protocol to r639462
+###### _2019-03-11 06:16:12_ | Diff: [fbad7ab...a7b00e7](https://github.com/ChromeDevTools/devtools-protocol/compare/fbad7ab...a7b00e7)
+#### `BackgroundService`: new commands
+* [`BackgroundService.startObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-startObserving)
+* [`BackgroundService.stopObserving`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-stopObserving)
+#### `BackgroundService`: removed commands
+* [`BackgroundService.enable`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-enable)
+* [`BackgroundService.disable`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-disable)
+#### `BackgroundService`: new event
+* [`BackgroundService.backgroundServiceEventReceived`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-backgroundServiceEventReceived)
+#### `BackgroundService`: new types
+* [`BackgroundService.EventMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-EventMetadata)
+* [`BackgroundService.BackgroundServiceEvent`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-BackgroundServiceEvent)
+#### `ServiceWorker`: modified commands
+* [`ServiceWorker.deliverPushMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-deliverPushMessage) - The `registrationId` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+* [`ServiceWorker.dispatchSyncEvent`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-dispatchSyncEvent) - The `registrationId` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+#### `ServiceWorker`: new type
+* [`ServiceWorker.RegistrationID`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-RegistrationID)
+#### `ServiceWorker`: modified types
+* [`ServiceWorker.ServiceWorkerRegistration`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerRegistration) - The `registrationId` in the properties had `type` _removed_. The properties's `$ref` _added_.
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion) - The `registrationId` in the properties had `type` _removed_. The properties's `$ref` _added_.
+* [`ServiceWorker.ServiceWorkerErrorMessage`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerErrorMessage) - The `registrationId` in the properties had `type` _removed_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r639329
+###### _2019-03-08 23:15:55 -0800_ | Diff: [735cc58...fbad7ab](https://github.com/ChromeDevTools/devtools-protocol/compare/735cc58...fbad7ab)
+#### `Runtime`: modified command
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties) - The `exceptionDetails` in the return value had `$ref` _removed_. The `exceptionDetails` in the return value had `name` _updated_. The `exceptionDetails` in the return value had `description` _updated_. The return value's `experimental` _added_. The return value's `type` _added_. The return value's `items` _added_. The return value's `exceptionDetails` _added_.
+#### `Runtime`: new type
+* [`Runtime.PrivatePropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PrivatePropertyDescriptor)
+
+
+## Roll protocol to r637291
+###### _2019-03-04 07:16:13 -0800_ | Diff: [d305be1...6f27b14](https://github.com/ChromeDevTools/devtools-protocol/compare/d305be1...6f27b14)
+#### `BackgroundService`: new domain
+* [`BackgroundService.BackgroundService`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#domain-BackgroundService)
+#### `BackgroundService`: new commands
+* [`BackgroundService.enable`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-enable)
+* [`BackgroundService.disable`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-disable)
+* [`BackgroundService.setRecording`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#method-setRecording)
+#### `BackgroundService`: new event
+* [`BackgroundService.recordingStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#event-recordingStateChanged)
+#### `BackgroundService`: new type
+* [`BackgroundService.ServiceName`](https://chromedevtools.github.io/devtools-protocol/tot/BackgroundService/#type-ServiceName)
+
+
+## Roll protocol to r632815
+###### _2019-02-15 15:15:52 -0800_ | Diff: [3423c2d...d0cca39](https://github.com/ChromeDevTools/devtools-protocol/compare/3423c2d...d0cca39)
+#### `IndexedDB`: new command
+* [`IndexedDB.getKeyGeneratorCurrentNumber`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-getKeyGeneratorCurrentNumber)
+
+
+## Roll protocol to r630203
+###### _2019-02-07 21:15:49 -0800_ | Diff: [f02e8a5...1506d25](https://github.com/ChromeDevTools/devtools-protocol/compare/f02e8a5...1506d25)
+#### `Browser`: new command
+* [`Browser.crashGpuProcess`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crashGpuProcess)
+
+
+## Roll protocol to r630011
+###### _2019-02-07 10:16:02 -0800_ | Diff: [2a326d4...45f4bf9](https://github.com/ChromeDevTools/devtools-protocol/compare/2a326d4...45f4bf9)
+#### `CacheStorage`: modified command
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse) - The parameters's `requestHeaders` _added_.
+
+
+## Roll protocol to r628773
+###### _2019-02-04 09:15:59 -0800_ | Diff: [0af8698...e134876](https://github.com/ChromeDevTools/devtools-protocol/compare/0af8698...e134876)
+#### `Emulation`: removed events
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced)
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused)
+
+
+## Roll protocol to r626433
+###### _2019-01-27 19:15:50 -0800_ | Diff: [d4274dd...0951f55](https://github.com/ChromeDevTools/devtools-protocol/compare/d4274dd...0951f55)
+#### `Memory`: new command
+* [`Memory.forciblyPurgeJavaScriptMemory`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-forciblyPurgeJavaScriptMemory)
+
+
+## Roll protocol to r626200
+###### _2019-01-25 13:16:05 -0800_ | Diff: [039679f...d4274dd](https://github.com/ChromeDevTools/devtools-protocol/compare/039679f...d4274dd)
+#### `DOM`: modified commands
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation) - The `nodeId` in the return value had `description` _updated_.
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner) - The `nodeId` in the return value had `description` _updated_.
+
+
+## Roll protocol to r625481
+###### _2019-01-23 18:15:49 -0800_ | Diff: [130d0d8...039679f](https://github.com/ChromeDevTools/devtools-protocol/compare/130d0d8...039679f)
+#### `Network`: modified type
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader) - The properties's `signatures` _removed_. The `responseCode` in the properties had `type` _removed_. The `responseHeaders` in the properties had `$ref` _removed_. The `requestMethod` in the properties had `name` _updated_. The `requestMethod` in the properties had `description` _updated_. The `requestMethod` in the properties had `type` _updated_. The `responseCode` in the properties had `name` _updated_. The `responseCode` in the properties had `description` _updated_. The `responseHeaders` in the properties had `name` _updated_. The `responseHeaders` in the properties had `description` _updated_. The properties's `$ref` _added_. The properties's `type` _added_. The properties's `items` _added_.
+
+
+## Roll protocol to r624433
+###### _2019-01-18 19:15:57 -0800_ | Diff: [fdd58cb...130d0d8](https://github.com/ChromeDevTools/devtools-protocol/compare/fdd58cb...130d0d8)
+#### `Overlay`: modified command
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode) - The parameters's `selector` _added_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `cssGridColor` _removed_. The `selectorList` in the properties had `type` _removed_. The `selectorList` in the properties had `name` _updated_. The `selectorList` in the properties had `description` _updated_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r624373
+###### _2019-01-18 16:15:53 -0800_ | Diff: [023e7bc...fdd58cb](https://github.com/ChromeDevTools/devtools-protocol/compare/023e7bc...fdd58cb)
+#### `Overlay`: new event
+* [`Overlay.inspectModeCanceled`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectModeCanceled)
+#### `Overlay`: modified type
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode) - The enum's `none` _updated_. The enum's `none` _added_.
+
+
+## Roll protocol to r624315
+###### _2019-01-18 14:19:35 -0800_ | Diff: [99ce0ca...974d209](https://github.com/ChromeDevTools/devtools-protocol/compare/99ce0ca...974d209)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `idleDetection` _added_.
+
+
+## Roll protocol to r624253
+###### _2019-01-18 12:15:51 -0800_ | Diff: [c5eefe1...99ce0ca](https://github.com/ChromeDevTools/devtools-protocol/compare/c5eefe1...99ce0ca)
+#### `DOM`: modified command
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode) - The parameters's `executionContextId` _added_.
+
+
+## Roll protocol to r624227
+###### _2019-01-18 11:15:48 -0800_ | Diff: [c5978d7...c5eefe1](https://github.com/ChromeDevTools/devtools-protocol/compare/c5978d7...c5eefe1)
+#### `Overlay`: new command
+* [`Overlay.setShowAdHighlights`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowAdHighlights)
+
+
+## Roll protocol to r623118
+###### _2019-01-15 21:15:54 -0800_ | Diff: [912ecd4...c5978d7](https://github.com/ChromeDevTools/devtools-protocol/compare/912ecd4...c5978d7)
+#### `Overlay`: modified event
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested) - The `viewport` in the parameters had `description` _updated_.
+#### `Page`: modified types
+* [`Page.VisualViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-VisualViewport) - The properties's `zoom` _added_.
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport) - The `x` in the properties had `description` _updated_. The `y` in the properties had `description` _updated_. The `width` in the properties had `description` _updated_. The `height` in the properties had `description` _updated_.
+
+
+## Roll protocol to r622567
+###### _2019-01-14 12:15:49 -0800_ | Diff: [53050a0...44c8bde](https://github.com/ChromeDevTools/devtools-protocol/compare/53050a0...44c8bde)
+#### `CSS`: modified command
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - The return value's `computedBodyFontSize` _removed_.
+
+
+## Roll protocol to r621639
+###### _2019-01-10 10:16:08 -0800_ | Diff: [d7e10c3...53050a0](https://github.com/ChromeDevTools/devtools-protocol/compare/d7e10c3...53050a0)
+#### `IndexedDB`: modified type
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores) - The `version` in the properties had `description` _updated_. The `version` in the properties had `type` _updated_.
+
+
+## Roll protocol to r621424
+###### _2019-01-09 18:15:57 -0800_ | Diff: [ea1122f...d7e10c3](https://github.com/ChromeDevTools/devtools-protocol/compare/ea1122f...d7e10c3)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The `showRulers` in the properties had `name` _updated_. The `showRulers` in the properties had `description` _updated_. The `showExtensionLines` in the properties had `name` _updated_. The `showExtensionLines` in the properties had `description` _updated_. The `displayAsMaterial` in the properties had `name` _updated_. The properties's `description` _added_.
+
+
+## Roll protocol to r621026
+###### _2019-01-08 19:15:50 -0800_ | Diff: [727df12...ea1122f](https://github.com/ChromeDevTools/devtools-protocol/compare/727df12...ea1122f)
+#### `Cast`: new domain
+* [`Cast.Cast`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#domain-Cast)
+#### `Cast`: new commands
+* [`Cast.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-enable)
+* [`Cast.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-disable)
+* [`Cast.setSinkToUse`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-setSinkToUse)
+* [`Cast.startTabMirroring`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-startTabMirroring)
+* [`Cast.stopCasting`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#method-stopCasting)
+#### `Cast`: new events
+* [`Cast.sinksUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-sinksUpdated)
+* [`Cast.issueUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Cast/#event-issueUpdated)
+#### `Page`: removed command
+* [`Page.requestAppBanner`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-requestAppBanner)
+
+
+## Roll protocol to r619731
+###### _2019-01-03 12:15:54 -0800_ | Diff: [9ef310e...727df12](https://github.com/ChromeDevTools/devtools-protocol/compare/9ef310e...727df12)
+#### `Accessibility`: modified type
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName) - `description` updated.
+#### `Storage`: modified command
+* [`Storage.clearDataForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearDataForOrigin) - The `storageTypes` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r619477
+###### _2019-01-02 12:16:22 -0800_ | Diff: [a254142...9ef310e](https://github.com/ChromeDevTools/devtools-protocol/compare/a254142...9ef310e)
+#### `Input`: modified command
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The parameters's `pointerType` _added_.
+
+
+## Roll protocol to r616947
+###### _2018-12-14 20:15:49 -0800_ | Diff: [cae0bbe...d229bf4](https://github.com/ChromeDevTools/devtools-protocol/compare/cae0bbe...d229bf4)
+#### `DOM`: new command
+* [`DOM.getFileInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFileInfo)
+
+
+## Roll protocol to r616936
+###### _2018-12-14 19:15:51 -0800_ | Diff: [0fb03aa...cae0bbe](https://github.com/ChromeDevTools/devtools-protocol/compare/0fb03aa...cae0bbe)
+#### `Page`: new command
+* [`Page.resetNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-resetNavigationHistory)
+
+
+## Roll protocol to r616803
+###### _2018-12-14 12:15:57 -0800_ | Diff: [41590b0...0fb03aa](https://github.com/ChromeDevTools/devtools-protocol/compare/41590b0...0fb03aa)
+#### `Network`: modified type
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame) - The `payloadData` in the properties had `description` _updated_.
+
+
+## Roll protocol to r616542
+###### _2018-12-13 17:16:20 -0800_ | Diff: [7fa0f03...14070df](https://github.com/ChromeDevTools/devtools-protocol/compare/7fa0f03...14070df)
+#### `Page`: new command
+* [`Page.waitForDebugger`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-waitForDebugger)
+
+
+## Roll protocol to r616451
+###### _2018-12-13 14:15:51 -0800_ | Diff: [4e2e581...7fa0f03](https://github.com/ChromeDevTools/devtools-protocol/compare/4e2e581...7fa0f03)
+#### `Input`: modified command
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `clickCount` in the parameters had `name` _updated_. The `clickCount` in the parameters had `description` _updated_. The `deltaX` in the parameters had `name` _updated_. The `deltaX` in the parameters had `description` _updated_. The `deltaX` in the parameters had `type` _updated_. The `deltaY` in the parameters had `name` _updated_. The `deltaY` in the parameters had `description` _updated_. The `5` in the parameters had `back` _added_. The `5` in the parameters had `forward` _added_. The parameters's `deltaY` _added_.
+
+
+## Roll protocol to r613210
+###### _2018-12-03 12:15:55 -0800_ | Diff: [65909c1...2135225](https://github.com/ChromeDevTools/devtools-protocol/compare/65909c1...2135225)
+#### `CacheStorage`: modified commands
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse) - The `cacheId` in the parameters had `description` _updated_.
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries) - The parameters's `pathFilter` _added_.
+
+
+## Roll protocol to r613054
+###### _2018-12-03 04:15:51 -0800_ | Diff: [d0e8e30...65909c1](https://github.com/ChromeDevTools/devtools-protocol/compare/d0e8e30...65909c1)
+#### `Debugger`: removed command
+* [`Debugger.scheduleStepIntoAsync`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-scheduleStepIntoAsync)
+
+
+## Roll protocol to r612784 608637
+###### _2018-11-30 13:15:53 -0800_ | Diff: [cffb4e1...6fd74c5](https://github.com/ChromeDevTools/devtools-protocol/compare/cffb4e1...6fd74c5)
+#### `Network`: modified events
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError) - `description` updated. The `errorMessage` in the parameters had `description` _updated_.
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived) - `description` updated.
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent) - `description` updated.
+#### `Network`: modified type
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame) - `description` updated. The `opcode` in the properties had `description` _updated_. The `mask` in the properties had `description` _updated_. The `payloadData` in the properties had `description` _updated_.
+
+
+## Roll protocol to r610712
+###### _2018-11-24 14:15:45 -0800_ | Diff: [34cbbf0...0df7169](https://github.com/ChromeDevTools/devtools-protocol/compare/34cbbf0...0df7169)
+#### `Network`: modified command
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData) - The `postData` in the return value had `description` _updated_.
+
+
+## Roll protocol to r608591
+###### _2018-11-15 16:15:59 -0800_ | Diff: [7d7cac5...0e63cc2](https://github.com/ChromeDevTools/devtools-protocol/compare/7d7cac5...0e63cc2)
+#### `Browser`: new command
+* [`Browser.setDockTile`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setDockTile)
+
+
+## Roll protocol to r607825
+###### _2018-11-13 16:15:58 -0800_ | Diff: [be3e054...7d7cac5](https://github.com/ChromeDevTools/devtools-protocol/compare/be3e054...7d7cac5)
+#### `Browser`: modified command
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget) - The `targetId` in the parameters had `description` _updated_. The parameters's `optional` _added_.
+
+
+## Roll protocol to r607463
+###### _2018-11-12 19:15:59 -0800_ | Diff: [2a3f184...87a8e2e](https://github.com/ChromeDevTools/devtools-protocol/compare/2a3f184...87a8e2e)
+#### `Overlay`: new command
+* [`Overlay.setShowHitTestBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowHitTestBorders)
+
+
+## Roll protocol to r606267
+###### _2018-11-07 17:15:52 -0800_ | Diff: [617d045...6503624](https://github.com/ChromeDevTools/devtools-protocol/compare/617d045...6503624)
+#### `Page`: new command
+* [`Page.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureSnapshot)
+
+
+## Roll protocol to r604763
+###### _2018-11-01 17:15:48_ | Diff: [717008e...2beb582](https://github.com/ChromeDevTools/devtools-protocol/compare/717008e...2beb582)
+#### `SystemInfo`: removed type
+* [`SystemInfo.ProcessType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessType)
+#### `SystemInfo`: modified type
+* [`SystemInfo.ProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessInfo) - The `type` in the properties had `$ref` _removed_. The properties's `type` _added_.
+
+
+## Roll protocol to r604639
+###### _2018-11-01 11:15:50_ | Diff: [fe05597...717008e](https://github.com/ChromeDevTools/devtools-protocol/compare/fe05597...717008e)
+#### `Runtime`: modified type
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `1` in the properties had `arraybuffer` _added_. The `1` in the properties had `dataview` _added_.
+
+
+## Roll protocol to r604358
+###### _2018-10-31 12:15:51_ | Diff: [9801545...fe05597](https://github.com/ChromeDevTools/devtools-protocol/compare/9801545...fe05597)
+#### `Fetch`: new domain
+* [`Fetch.Fetch`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#domain-Fetch)
+#### `Fetch`: new commands
+* [`Fetch.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-disable)
+* [`Fetch.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-enable)
+* [`Fetch.failRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-failRequest)
+* [`Fetch.fulfillRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-fulfillRequest)
+* [`Fetch.continueRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueRequest)
+* [`Fetch.continueWithAuth`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-continueWithAuth)
+* [`Fetch.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-getResponseBody)
+* [`Fetch.takeResponseBodyAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-takeResponseBodyAsStream)
+#### `Fetch`: new events
+* [`Fetch.requestPaused`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-requestPaused)
+* [`Fetch.authRequired`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#event-authRequired)
+#### `Fetch`: new types
+* [`Fetch.RequestId`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestId)
+* [`Fetch.RequestStage`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestStage)
+* [`Fetch.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-RequestPattern)
+* [`Fetch.HeaderEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-HeaderEntry)
+* [`Fetch.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallenge)
+* [`Fetch.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#type-AuthChallengeResponse)
+
+
+## Roll protocol to r604014
+###### _2018-10-30 14:15:48_ | Diff: [0170df0...9801545](https://github.com/ChromeDevTools/devtools-protocol/compare/0170df0...9801545)
+#### `SystemInfo`: new command
+* [`SystemInfo.getProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getProcessInfo)
+#### `SystemInfo`: new types
+* [`SystemInfo.ProcessType`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessType)
+* [`SystemInfo.ProcessInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-ProcessInfo)
+
+
+## Roll protocol to r603097
+###### _2018-10-26 08:16:21_ | Diff: [bf71ff9...1bfc9c2](https://github.com/ChromeDevTools/devtools-protocol/compare/bf71ff9...1bfc9c2)
+#### `CacheStorage`: new type
+* [`CacheStorage.CachedResponseType`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponseType)
+#### `CacheStorage`: modified type
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `responseHeaders` in the properties had `type` _removed_. The `responseHeaders` in the properties had `items` _removed_. The `responseHeaders` in the properties had `name` _updated_. The `responseHeaders` in the properties had `description` _updated_. The properties's `$ref` _added_. The properties's `responseHeaders` _added_.
+
+
+## Roll protocol to r602583
+###### _2018-10-24 19:16:02_ | Diff: [928efbe...bf71ff9](https://github.com/ChromeDevTools/devtools-protocol/compare/928efbe...bf71ff9)
+#### `Security`: modified type
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The properties's `recommendations` _added_.
+
+
+## Roll protocol to r601846
+###### _2018-10-22 21:15:58_ | Diff: [2e4077a...f25bb99](https://github.com/ChromeDevTools/devtools-protocol/compare/2e4077a...f25bb99)
+#### `HeapProfiler`: new type
+* [`HeapProfiler.SamplingHeapProfileSample`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileSample)
+#### `HeapProfiler`: modified types
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode) - The `children` in the properties had `items` _removed_. The `children` in the properties had `name` _updated_. The `children` in the properties had `description` _updated_. The `children` in the properties had `type` _updated_. The properties's `children` _added_.
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile) - `description` updated. The properties's `samples` _added_.
+
+
+## Roll protocol to r601839
+###### _2018-10-22 20:15:59_ | Diff: [0d63470...2e4077a](https://github.com/ChromeDevTools/devtools-protocol/compare/0d63470...2e4077a)
+#### `Runtime`: modified type
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview) - The properties's `formatterObjectId` _removed_. The properties's `bindRemoteObjectFunctionId` _removed_. The properties's `configObjectId` _removed_. The `hasBody` in the properties had `type` _removed_. The `hasBody` in the properties had `name` _updated_. The properties's `description` _added_ (2 times). The properties's `optional` _added_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r599863
+###### _2018-10-15 22:16:05_ | Diff: [584d0c5...0d63470](https://github.com/ChromeDevTools/devtools-protocol/compare/584d0c5...0d63470)
+#### `Accessibility`: new commands
+* [`Accessibility.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-disable)
+* [`Accessibility.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-enable)
+
+
+## Roll protocol to r599771
+###### _2018-10-15 16:16:09_ | Diff: [3ad8e30...584d0c5](https://github.com/ChromeDevTools/devtools-protocol/compare/3ad8e30...584d0c5)
+#### `Accessibility`: modified type
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName) - The enum's `hidden` _updated_. The enum's `hiddenRoot` _updated_. The enum's `invalid` _updated_. The enum's `keyshortcuts` _updated_. The enum's `roledescription` _updated_. The enum's `live` _updated_. The enum's `atomic` _updated_. The enum's `relevant` _updated_. The enum's `root` _updated_. The enum's `autocomplete` _updated_. The enum's `hasPopup` _updated_. The enum's `level` _updated_. The enum's `multiselectable` _updated_. The enum's `orientation` _updated_. The enum's `multiline` _updated_. The enum's `readonly` _updated_. The enum's `required` _updated_. The enum's `valuemin` _updated_. The enum's `valuemax` _updated_. The enum's `valuetext` _updated_. The enum's `checked` _updated_. The enum's `expanded` _updated_. The enum's `modal` _updated_. The enum's `pressed` _updated_. The enum's `selected` _updated_. The enum's `activedescendant` _updated_. The enum's `controls` _updated_. The enum's `describedby` _updated_. The enum's `details` _updated_. The enum's `errormessage` _updated_. The enum's `flowto` _updated_. The enum's `labelledby` _updated_. The enum's `owns` _updated_. The enum's `errormessage` _added_. The enum's `flowto` _added_. The enum's `labelledby` _added_. The enum's `owns` _added_.
+
+
+## Roll protocol to r599293
+###### _2018-10-12 11:16:15_ | Diff: [5efd10a...3ad8e30](https://github.com/ChromeDevTools/devtools-protocol/compare/5efd10a...3ad8e30)
+#### `Browser`: modified type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType) - The enum's `clipboardRead` _updated_. The enum's `clipboardWrite` _updated_. The enum's `durableStorage` _updated_. The enum's `flash` _updated_. The enum's `geolocation` _updated_. The enum's `midi` _updated_. The enum's `midiSysex` _updated_. The enum's `notifications` _updated_. The enum's `paymentHandler` _updated_. The enum's `protectedMediaIdentifier` _updated_. The enum's `sensors` _updated_. The enum's `videoCapture` _updated_. The enum's `videoCapture` _added_.
+
+
+## Roll protocol to r597746
+###### _2018-10-08 17:16:03_ | Diff: [32f4ced...5efd10a](https://github.com/ChromeDevTools/devtools-protocol/compare/32f4ced...5efd10a)
+#### `DOM`: modified command
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner) - The `nodeId` in the return value had `name` _updated_. The `nodeId` in the return value had `$ref` _updated_. The return value's `description` _added_. The return value's `nodeId` _added_.
+
+
+## Roll protocol to r596435
+###### _2018-10-03 17:15:54_ | Diff: [7ad2b35...32f4ced](https://github.com/ChromeDevTools/devtools-protocol/compare/7ad2b35...32f4ced)
+#### `DOM`: modified command
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation) - `description` updated. The `nodeId` in the return value had `name` _updated_. The `nodeId` in the return value had `description` _updated_. The `nodeId` in the return value had `$ref` _updated_. The return value's `nodeId` _added_.
+
+
+## Roll protocol to r595262
+###### _2018-09-28 17:16:08_ | Diff: [7d4e024...7ad2b35](https://github.com/ChromeDevTools/devtools-protocol/compare/7d4e024...7ad2b35)
+#### `Performance`: new command
+* [`Performance.setTimeDomain`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-setTimeDomain)
+
+
+## Roll protocol to r594552
+###### _2018-09-26 18:16:07_ | Diff: [4b269f4...7d4e024](https://github.com/ChromeDevTools/devtools-protocol/compare/4b269f4...7d4e024)
+#### `Page`: modified command
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The parameters's `worldName` _added_.
+
+
+## Roll protocol to r594206
+###### _2018-09-25 20:15:47_ | Diff: [4cc8f92...4b269f4](https://github.com/ChromeDevTools/devtools-protocol/compare/4cc8f92...4b269f4)
+#### `Page`: modified command
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The parameters's `worldName` _removed_.
+
+
+## Roll protocol to r594172
+###### _2018-09-25 18:15:50_ | Diff: [b797679...4cc8f92](https://github.com/ChromeDevTools/devtools-protocol/compare/b797679...4cc8f92)
+#### `Page`: modified command
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The parameters's `worldName` _added_.
+
+
+## Roll protocol to r592922
+###### _2018-09-20 13:19:12_ | Diff: [171867f...b797679](https://github.com/ChromeDevTools/devtools-protocol/compare/171867f...b797679)
+#### `Accessibility`: new command
+* [`Accessibility.getFullAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getFullAXTree)
+
+
+## Roll protocol to r590503
+###### _2018-09-11 15:17:02_ | Diff: [fd5476b...171867f](https://github.com/ChromeDevTools/devtools-protocol/compare/fd5476b...171867f)
+#### `Emulation`: new command
+* [`Emulation.setFocusEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setFocusEmulationEnabled)
+
+
+## Roll protocol to r589586
+###### _2018-09-07 11:22:54_ | Diff: [59c4dec...fd5476b](https://github.com/ChromeDevTools/devtools-protocol/compare/59c4dec...fd5476b)
+#### `Network`: modified events
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The `type` in the parameters had `$ref` _updated_.
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `resourceType` in the parameters had `$ref` _updated_.
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `type` in the parameters had `$ref` _updated_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `type` in the parameters had `$ref` _updated_.
+#### `Network`: new type
+* [`Network.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceType)
+#### `Network`: modified types
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource) - The `type` in the properties had `$ref` _updated_.
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The `resourceType` in the properties had `$ref` _updated_.
+#### `Page`: removed type
+* [`Page.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ResourceType)
+#### `Page`: modified type
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource) - The `type` in the properties had `$ref` _updated_.
+
+
+## Roll protocol to r588752
+###### _2018-09-04 20:15:55_ | Diff: [359d29d...59c4dec](https://github.com/ChromeDevTools/devtools-protocol/compare/359d29d...59c4dec)
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `scrollOffsetX` _added_. The properties's `scrollOffsetY` _added_.
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - The `boundingBox` in the properties had `description` _updated_.
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The `boundingBox` in the properties had `description` _updated_.
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The properties's `scrollOffsetX` _added_. The properties's `scrollOffsetY` _added_.
+
+
+## Roll protocol to r588740
+###### _2018-09-04 19:16:30_ | Diff: [cb9aed5...359d29d](https://github.com/ChromeDevTools/devtools-protocol/compare/cb9aed5...359d29d)
+#### `Browser`: new command
+* [`Browser.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-crash)
+#### `Page`: modified type
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType) - The enum's `auto_bookmark` _updated_. The enum's `auto_subframe` _updated_. The enum's `manual_subframe` _updated_. The enum's `generated` _updated_. The enum's `auto_toplevel` _updated_. The enum's `form_submit` _updated_. The enum's `reload` _updated_. The enum's `keyword` _updated_. The enum's `keyword_generated` _updated_. The enum's `other` _updated_. The enum's `other` _added_.
+
+
+## Roll protocol to r588169
+###### _2018-08-31 14:15:50_ | Diff: [93338d7...352bea4](https://github.com/ChromeDevTools/devtools-protocol/compare/93338d7...352bea4)
+#### `Console`: modified event
+* [`Console.messageAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#event-messageAdded) - The `message` in the parameters had `type` _removed_.
+#### `Debugger`: modified commands
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation) - The `location` in the parameters had `type` _removed_.
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable) - The `debuggerId` in the return value had `type` _removed_.
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The `callFrameId` in the parameters had `type` _removed_. The `timeout` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - The `start` in the parameters had `type` _removed_. The `end` in the parameters had `type` _removed_. The `locations` in the return value had `type` _removed_.
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource) - The `scriptId` in the parameters had `type` _removed_.
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace) - The `stackTraceId` in the parameters had `type` _removed_. The `stackTrace` in the return value had `type` _removed_.
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall) - The `parentStackTraceId` in the parameters had `type` _removed_.
+* [`Debugger.removeBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-removeBreakpoint) - The `breakpointId` in the parameters had `type` _removed_.
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame) - The `callFrameId` in the parameters had `type` _removed_. The `callFrames` in the return value had `type` _removed_. The `asyncStackTrace` in the return value had `type` _removed_. The `asyncStackTraceId` in the return value had `type` _removed_.
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent) - The `scriptId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_.
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges) - The `scriptId` in the parameters had `type` _removed_. The `positions` in the parameters had `type` _removed_.
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint) - The `location` in the parameters had `type` _removed_. The `breakpointId` in the return value had `type` _removed_. The `actualLocation` in the return value had `type` _removed_.
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - The `breakpointId` in the return value had `type` _removed_. The `locations` in the return value had `type` _removed_.
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall) - The `objectId` in the parameters had `type` _removed_. The `breakpointId` in the return value had `type` _removed_.
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue) - The `newValue` in the parameters had `type` _removed_.
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource) - The `scriptId` in the parameters had `type` _removed_. The `callFrames` in the return value had `type` _removed_. The `asyncStackTrace` in the return value had `type` _removed_. The `asyncStackTraceId` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue) - The `newValue` in the parameters had `type` _removed_. The `callFrameId` in the parameters had `type` _removed_.
+#### `Debugger`: modified events
+* [`Debugger.breakpointResolved`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-breakpointResolved) - The `breakpointId` in the parameters had `type` _removed_. The `location` in the parameters had `type` _removed_.
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `callFrames` in the parameters had `type` _removed_. The `asyncStackTrace` in the parameters had `type` _removed_. The `asyncStackTraceId` in the parameters had `type` _removed_. The `asyncCallStackTraceId` in the parameters had `type` _removed_.
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse) - The `scriptId` in the parameters had `type` _removed_. The `executionContextId` in the parameters had `type` _removed_. The `stackTrace` in the parameters had `type` _removed_.
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The `scriptId` in the parameters had `type` _removed_. The `executionContextId` in the parameters had `type` _removed_. The `stackTrace` in the parameters had `type` _removed_.
+#### `Debugger`: modified types
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location) - The `scriptId` in the properties had `type` _removed_.
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame) - The `callFrameId` in the properties had `type` _removed_. The `functionLocation` in the properties had `type` _removed_. The `location` in the properties had `type` _removed_. The `scopeChain` in the properties had `type` _removed_. The `this` in the properties had `type` _removed_. The `returnValue` in the properties had `type` _removed_.
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope) - The `object` in the properties had `type` _removed_. The `startLocation` in the properties had `type` _removed_. The `endLocation` in the properties had `type` _removed_.
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation) - The `scriptId` in the properties had `type` _removed_.
+#### `HeapProfiler`: modified commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject) - The `heapObjectId` in the parameters had `type` _removed_.
+* [`HeapProfiler.getHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getHeapObjectId) - The `objectId` in the parameters had `type` _removed_. The `heapSnapshotObjectId` in the return value had `type` _removed_.
+* [`HeapProfiler.getObjectByHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getObjectByHeapObjectId) - The `objectId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_.
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile) - The `profile` in the return value had `type` _removed_.
+* [`HeapProfiler.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopSampling) - The `profile` in the return value had `type` _removed_.
+#### `HeapProfiler`: modified types
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode) - The `callFrame` in the properties had `type` _removed_. The `children` in the properties had `type` _removed_.
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile) - The `head` in the properties had `type` _removed_.
+#### `Profiler`: modified commands
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage) - The `result` in the return value had `type` _removed_.
+* [`Profiler.stop`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stop) - The `profile` in the return value had `type` _removed_.
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - The `result` in the return value had `type` _removed_.
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile) - The `result` in the return value had `type` _removed_.
+#### `Profiler`: modified events
+* [`Profiler.consoleProfileFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileFinished) - The `location` in the parameters had `type` _removed_. The `profile` in the parameters had `type` _removed_.
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted) - The `location` in the parameters had `type` _removed_.
+#### `Profiler`: modified types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode) - The `callFrame` in the properties had `type` _removed_. The `positionTicks` in the properties had `type` _removed_.
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile) - The `nodes` in the properties had `type` _removed_.
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage) - The `ranges` in the properties had `type` _removed_.
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage) - The `scriptId` in the properties had `type` _removed_. The `functions` in the properties had `type` _removed_.
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry) - The `types` in the properties had `type` _removed_.
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile) - The `scriptId` in the properties had `type` _removed_. The `entries` in the properties had `type` _removed_.
+#### `Runtime`: modified commands
+* [`Runtime.awaitPromise`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-awaitPromise) - The `promiseObjectId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `objectId` in the parameters had `type` _removed_. The `arguments` in the parameters had `type` _removed_. The `executionContextId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript) - The `executionContextId` in the parameters had `type` _removed_. The `scriptId` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `contextId` in the parameters had `type` _removed_. The `timeout` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties) - The `objectId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `internalProperties` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames) - The `executionContextId` in the parameters had `type` _removed_.
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects) - The `prototypeObjectId` in the parameters had `type` _removed_. The `objects` in the return value had `type` _removed_.
+* [`Runtime.releaseObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObject) - The `objectId` in the parameters had `type` _removed_.
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript) - The `scriptId` in the parameters had `type` _removed_. The `executionContextId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_. The `exceptionDetails` in the return value had `type` _removed_.
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding) - The `executionContextId` in the parameters had `type` _removed_.
+#### `Runtime`: modified events
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled) - The `executionContextId` in the parameters had `type` _removed_.
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled) - The `args` in the parameters had `type` _removed_. The `executionContextId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `stackTrace` in the parameters had `type` _removed_.
+* [`Runtime.exceptionThrown`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionThrown) - The `timestamp` in the parameters had `type` _removed_. The `exceptionDetails` in the parameters had `type` _removed_.
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated) - The `context` in the parameters had `type` _removed_.
+* [`Runtime.executionContextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextDestroyed) - The `executionContextId` in the parameters had `type` _removed_.
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested) - The `object` in the parameters had `type` _removed_.
+#### `Runtime`: modified types
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `unserializableValue` in the properties had `type` _removed_. The `objectId` in the properties had `type` _removed_. The `preview` in the properties had `type` _removed_. The `customPreview` in the properties had `type` _removed_.
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview) - The `formatterObjectId` in the properties had `type` _removed_. The `bindRemoteObjectFunctionId` in the properties had `type` _removed_. The `configObjectId` in the properties had `type` _removed_.
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview) - The `properties` in the properties had `type` _removed_. The `entries` in the properties had `type` _removed_.
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview) - The `valuePreview` in the properties had `type` _removed_.
+* [`Runtime.EntryPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-EntryPreview) - The `key` in the properties had `type` _removed_. The `value` in the properties had `type` _removed_.
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor) - The `value` in the properties had `type` _removed_. The `get` in the properties had `type` _removed_. The `set` in the properties had `type` _removed_. The `symbol` in the properties had `type` _removed_.
+* [`Runtime.InternalPropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-InternalPropertyDescriptor) - The `value` in the properties had `type` _removed_.
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - The `unserializableValue` in the properties had `type` _removed_. The `objectId` in the properties had `type` _removed_.
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription) - The `id` in the properties had `type` _removed_.
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails) - The `scriptId` in the properties had `type` _removed_. The `stackTrace` in the properties had `type` _removed_. The `exception` in the properties had `type` _removed_. The `executionContextId` in the properties had `type` _removed_.
+* [`Runtime.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallFrame) - The `scriptId` in the properties had `type` _removed_.
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace) - The `callFrames` in the properties had `type` _removed_. The `parent` in the properties had `type` _removed_. The `parentId` in the properties had `type` _removed_.
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId) - The `debuggerId` in the properties had `type` _removed_.
+#### `Schema`: modified command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains) - The `domains` in the return value had `type` _removed_.
+#### `Accessibility`: modified command
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_. The `nodes` in the return value had `type` _removed_.
+#### `Accessibility`: modified types
+* [`Accessibility.AXValueSource`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSource) - The `type` in the properties had `type` _removed_. The `value` in the properties had `type` _removed_. The `attributeValue` in the properties had `type` _removed_. The `nativeSource` in the properties had `type` _removed_. The `nativeSourceValue` in the properties had `type` _removed_.
+* [`Accessibility.AXRelatedNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelatedNode) - The `backendDOMNodeId` in the properties had `type` _removed_.
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty) - The `name` in the properties had `type` _removed_. The `value` in the properties had `type` _removed_.
+* [`Accessibility.AXValue`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValue) - The `type` in the properties had `type` _removed_. The `relatedNodes` in the properties had `type` _removed_. The `sources` in the properties had `type` _removed_.
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode) - The `nodeId` in the properties had `type` _removed_. The `ignoredReasons` in the properties had `type` _removed_. The `role` in the properties had `type` _removed_. The `name` in the properties had `type` _removed_. The `description` in the properties had `type` _removed_. The `value` in the properties had `type` _removed_. The `properties` in the properties had `type` _removed_. The `childIds` in the properties had `type` _removed_. The `backendDOMNodeId` in the properties had `type` _removed_.
+#### `Animation`: modified command
+* [`Animation.resolveAnimation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-resolveAnimation) - The `remoteObject` in the return value had `type` _removed_.
+#### `Animation`: modified event
+* [`Animation.animationStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationStarted) - The `animation` in the parameters had `type` _removed_.
+#### `Animation`: modified types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - The `source` in the properties had `type` _removed_.
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect) - The `backendNodeId` in the properties had `type` _removed_. The `keyframesRule` in the properties had `type` _removed_.
+* [`Animation.KeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframesRule) - The `keyframes` in the properties had `type` _removed_.
+#### `ApplicationCache`: modified commands
+* [`ApplicationCache.getApplicationCacheForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getApplicationCacheForFrame) - The `frameId` in the parameters had `type` _removed_. The `applicationCache` in the return value had `type` _removed_.
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests) - The `frameIds` in the return value had `type` _removed_.
+* [`ApplicationCache.getManifestForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getManifestForFrame) - The `frameId` in the parameters had `type` _removed_.
+#### `ApplicationCache`: modified event
+* [`ApplicationCache.applicationCacheStatusUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-applicationCacheStatusUpdated) - The `frameId` in the parameters had `type` _removed_.
+#### `ApplicationCache`: modified types
+* [`ApplicationCache.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCache) - The `resources` in the properties had `type` _removed_.
+* [`ApplicationCache.FrameWithManifest`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-FrameWithManifest) - The `frameId` in the properties had `type` _removed_.
+#### `Audits`: modified command
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse) - The `requestId` in the parameters had `type` _removed_.
+#### `Browser`: modified commands
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions) - The `permissions` in the parameters had `type` _removed_. The `browserContextId` in the parameters had `type` _removed_.
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions) - The `browserContextId` in the parameters had `type` _removed_.
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms) - The `histograms` in the return value had `type` _removed_.
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram) - The `histogram` in the return value had `type` _removed_.
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds) - The `windowId` in the parameters had `type` _removed_. The `bounds` in the return value had `type` _removed_.
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget) - The `targetId` in the parameters had `type` _removed_. The `windowId` in the return value had `type` _removed_. The `bounds` in the return value had `type` _removed_.
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds) - The `windowId` in the parameters had `type` _removed_. The `bounds` in the parameters had `type` _removed_.
+#### `Browser`: modified types
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds) - The `windowState` in the properties had `type` _removed_.
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram) - The `buckets` in the properties had `type` _removed_.
+#### `CSS`: modified commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule) - The `styleSheetId` in the parameters had `type` _removed_. The `location` in the parameters had `type` _removed_. The `rule` in the return value had `type` _removed_.
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames) - The `styleSheetId` in the parameters had `type` _removed_.
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet) - The `frameId` in the parameters had `type` _removed_. The `styleSheetId` in the return value had `type` _removed_.
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState) - The `nodeId` in the parameters had `type` _removed_.
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - The `nodeId` in the parameters had `type` _removed_.
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode) - The `nodeId` in the parameters had `type` _removed_. The `computedStyle` in the return value had `type` _removed_.
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode) - The `nodeId` in the parameters had `type` _removed_. The `inlineStyle` in the return value had `type` _removed_. The `attributesStyle` in the return value had `type` _removed_.
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode) - The `nodeId` in the parameters had `type` _removed_. The `inlineStyle` in the return value had `type` _removed_. The `attributesStyle` in the return value had `type` _removed_. The `matchedCSSRules` in the return value had `type` _removed_. The `pseudoElements` in the return value had `type` _removed_. The `inherited` in the return value had `type` _removed_. The `cssKeyframesRules` in the return value had `type` _removed_.
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries) - The `medias` in the return value had `type` _removed_.
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode) - The `nodeId` in the parameters had `type` _removed_. The `fonts` in the return value had `type` _removed_.
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText) - The `styleSheetId` in the parameters had `type` _removed_.
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode) - The `nodeId` in the parameters had `type` _removed_.
+* [`CSS.setKeyframeKey`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setKeyframeKey) - The `styleSheetId` in the parameters had `type` _removed_. The `range` in the parameters had `type` _removed_. The `keyText` in the return value had `type` _removed_.
+* [`CSS.setMediaText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setMediaText) - The `styleSheetId` in the parameters had `type` _removed_. The `range` in the parameters had `type` _removed_. The `media` in the return value had `type` _removed_.
+* [`CSS.setRuleSelector`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setRuleSelector) - The `styleSheetId` in the parameters had `type` _removed_. The `range` in the parameters had `type` _removed_. The `selectorList` in the return value had `type` _removed_.
+* [`CSS.setStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleSheetText) - The `styleSheetId` in the parameters had `type` _removed_.
+* [`CSS.setStyleTexts`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleTexts) - The `edits` in the parameters had `type` _removed_. The `styles` in the return value had `type` _removed_.
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking) - The `ruleUsage` in the return value had `type` _removed_.
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta) - The `coverage` in the return value had `type` _removed_.
+#### `CSS`: modified events
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated) - The `font` in the parameters had `type` _removed_.
+* [`CSS.styleSheetAdded`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetAdded) - The `header` in the parameters had `type` _removed_.
+* [`CSS.styleSheetChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetChanged) - The `styleSheetId` in the parameters had `type` _removed_.
+* [`CSS.styleSheetRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetRemoved) - The `styleSheetId` in the parameters had `type` _removed_.
+#### `CSS`: modified types
+* [`CSS.PseudoElementMatches`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PseudoElementMatches) - The `pseudoType` in the properties had `type` _removed_. The `matches` in the properties had `type` _removed_.
+* [`CSS.InheritedStyleEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InheritedStyleEntry) - The `inlineStyle` in the properties had `type` _removed_. The `matchedCSSRules` in the properties had `type` _removed_.
+* [`CSS.RuleMatch`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleMatch) - The `rule` in the properties had `type` _removed_.
+* [`CSS.Value`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-Value) - The `range` in the properties had `type` _removed_.
+* [`CSS.SelectorList`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SelectorList) - The `selectors` in the properties had `type` _removed_.
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The `styleSheetId` in the properties had `type` _removed_. The `frameId` in the properties had `type` _removed_. The `origin` in the properties had `type` _removed_. The `ownerNode` in the properties had `type` _removed_.
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule) - The `styleSheetId` in the properties had `type` _removed_. The `selectorList` in the properties had `type` _removed_. The `origin` in the properties had `type` _removed_. The `style` in the properties had `type` _removed_. The `media` in the properties had `type` _removed_.
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage) - The `styleSheetId` in the properties had `type` _removed_.
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle) - The `styleSheetId` in the properties had `type` _removed_. The `cssProperties` in the properties had `type` _removed_. The `shorthandEntries` in the properties had `type` _removed_. The `range` in the properties had `type` _removed_.
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty) - The `range` in the properties had `type` _removed_.
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia) - The `range` in the properties had `type` _removed_. The `styleSheetId` in the properties had `type` _removed_. The `mediaList` in the properties had `type` _removed_.
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery) - The `expressions` in the properties had `type` _removed_.
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression) - The `valueRange` in the properties had `type` _removed_.
+* [`CSS.CSSKeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframesRule) - The `animationName` in the properties had `type` _removed_. The `keyframes` in the properties had `type` _removed_.
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule) - The `styleSheetId` in the properties had `type` _removed_. The `origin` in the properties had `type` _removed_. The `keyText` in the properties had `type` _removed_. The `style` in the properties had `type` _removed_.
+* [`CSS.StyleDeclarationEdit`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleDeclarationEdit) - The `styleSheetId` in the properties had `type` _removed_. The `range` in the properties had `type` _removed_.
+#### `CacheStorage`: modified commands
+* [`CacheStorage.deleteCache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteCache) - The `cacheId` in the parameters had `type` _removed_.
+* [`CacheStorage.deleteEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteEntry) - The `cacheId` in the parameters had `type` _removed_.
+* [`CacheStorage.requestCacheNames`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCacheNames) - The `caches` in the return value had `type` _removed_.
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse) - The `cacheId` in the parameters had `type` _removed_. The `response` in the return value had `type` _removed_.
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries) - The `cacheId` in the parameters had `type` _removed_. The `cacheDataEntries` in the return value had `type` _removed_.
+#### `CacheStorage`: modified types
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `requestHeaders` in the properties had `type` _removed_. The `responseHeaders` in the properties had `type` _removed_.
+* [`CacheStorage.Cache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Cache) - The `cacheId` in the properties had `type` _removed_.
+#### `DOM`: modified commands
+* [`DOM.collectClassNamesFromSubtree`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-collectClassNamesFromSubtree) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo) - The `nodeId` in the parameters had `type` _removed_. The `targetNodeId` in the parameters had `type` _removed_. The `insertBeforeNodeId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_. The `node` in the return value had `type` _removed_.
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_.
+* [`DOM.getAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getAttributes) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_. The `model` in the return value had `type` _removed_.
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_. The `quads` in the return value had `type` _removed_.
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument) - The `root` in the return value had `type` _removed_.
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument) - The `nodes` in the return value had `type` _removed_.
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation) - The `nodeId` in the return value had `type` _removed_.
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_.
+* [`DOM.getRelayoutBoundary`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getRelayoutBoundary) - The `nodeId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults) - The `nodeIds` in the return value had `type` _removed_.
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo) - The `nodeId` in the parameters had `type` _removed_. The `targetNodeId` in the parameters had `type` _removed_. The `insertBeforeNodeId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.pushNodeByPathToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodeByPathToFrontend) - The `nodeId` in the return value had `type` _removed_.
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend) - The `backendNodeIds` in the parameters had `type` _removed_. The `nodeIds` in the return value had `type` _removed_.
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector) - The `nodeId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll) - The `nodeId` in the parameters had `type` _removed_. The `nodeIds` in the return value had `type` _removed_.
+* [`DOM.removeAttribute`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeAttribute) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.removeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeNode) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode) - The `objectId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `object` in the return value had `type` _removed_.
+* [`DOM.setAttributeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributeValue) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles) - The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_.
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.setNodeName`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeName) - The `nodeId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+* [`DOM.setNodeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeValue) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.setOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setOuterHTML) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner) - The `frameId` in the parameters had `type` _removed_. The `nodeId` in the return value had `type` _removed_.
+#### `DOM`: modified events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated) - The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted) - The `parentNodeId` in the parameters had `type` _removed_. The `previousNodeId` in the parameters had `type` _removed_. The `node` in the parameters had `type` _removed_.
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved) - The `parentNodeId` in the parameters had `type` _removed_. The `nodeId` in the parameters had `type` _removed_.
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated) - The `insertionPointId` in the parameters had `type` _removed_. The `distributedNodes` in the parameters had `type` _removed_.
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated) - The `nodeIds` in the parameters had `type` _removed_.
+* [`DOM.pseudoElementAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded) - The `parentId` in the parameters had `type` _removed_. The `pseudoElement` in the parameters had `type` _removed_.
+* [`DOM.pseudoElementRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved) - The `parentId` in the parameters had `type` _removed_. The `pseudoElementId` in the parameters had `type` _removed_.
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes) - The `parentId` in the parameters had `type` _removed_. The `nodes` in the parameters had `type` _removed_.
+* [`DOM.shadowRootPopped`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped) - The `hostId` in the parameters had `type` _removed_. The `rootId` in the parameters had `type` _removed_.
+* [`DOM.shadowRootPushed`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed) - The `hostId` in the parameters had `type` _removed_. The `root` in the parameters had `type` _removed_.
+#### `DOM`: modified types
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode) - The `backendNodeId` in the properties had `type` _removed_.
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The `nodeId` in the properties had `type` _removed_. The `parentId` in the properties had `type` _removed_. The `backendNodeId` in the properties had `type` _removed_. The `children` in the properties had `type` _removed_. The `pseudoType` in the properties had `type` _removed_. The `shadowRootType` in the properties had `type` _removed_. The `frameId` in the properties had `type` _removed_. The `contentDocument` in the properties had `type` _removed_. The `shadowRoots` in the properties had `type` _removed_. The `templateContent` in the properties had `type` _removed_. The `pseudoElements` in the properties had `type` _removed_. The `importedDocument` in the properties had `type` _removed_. The `distributedNodes` in the properties had `type` _removed_.
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel) - The `content` in the properties had `type` _removed_. The `padding` in the properties had `type` _removed_. The `border` in the properties had `type` _removed_. The `margin` in the properties had `type` _removed_. The `shapeOutside` in the properties had `type` _removed_.
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo) - The `bounds` in the properties had `type` _removed_.
+#### `DOMDebugger`: modified commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners) - The `objectId` in the parameters had `type` _removed_. The `listeners` in the return value had `type` _removed_.
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint) - The `nodeId` in the parameters had `type` _removed_. The `type` in the parameters had `type` _removed_.
+* [`DOMDebugger.setDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setDOMBreakpoint) - The `nodeId` in the parameters had `type` _removed_. The `type` in the parameters had `type` _removed_.
+#### `DOMDebugger`: modified type
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener) - The `scriptId` in the properties had `type` _removed_. The `handler` in the properties had `type` _removed_. The `originalHandler` in the properties had `type` _removed_. The `backendNodeId` in the properties had `type` _removed_.
+#### `DOMSnapshot`: modified commands
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - The `domNodes` in the return value had `type` _removed_. The `layoutTreeNodes` in the return value had `type` _removed_. The `computedStyles` in the return value had `type` _removed_.
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The `documents` in the return value had `type` _removed_.
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `backendNodeId` in the properties had `type` _removed_. The `attributes` in the properties had `type` _removed_. The `frameId` in the properties had `type` _removed_. The `pseudoType` in the properties had `type` _removed_. The `shadowRootType` in the properties had `type` _removed_. The `eventListeners` in the properties had `type` _removed_.
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - The `boundingBox` in the properties had `type` _removed_.
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The `boundingBox` in the properties had `type` _removed_. The `inlineTextNodes` in the properties had `type` _removed_.
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle) - The `properties` in the properties had `type` _removed_.
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings) - The items's `type` _removed_.
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData) - The `value` in the properties had `type` _removed_.
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The `documentURL` in the properties had `type` _removed_. The `baseURL` in the properties had `type` _removed_. The `contentLanguage` in the properties had `type` _removed_. The `encodingName` in the properties had `type` _removed_. The `publicId` in the properties had `type` _removed_. The `systemId` in the properties had `type` _removed_. The `frameId` in the properties had `type` _removed_. The `nodes` in the properties had `type` _removed_. The `layout` in the properties had `type` _removed_. The `textBoxes` in the properties had `type` _removed_.
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot) - The `nodeName` in the properties had `type` _removed_. The `nodeValue` in the properties had `type` _removed_. The `backendNodeId` in the properties had `type` _removed_. The `attributes` in the properties had `type` _removed_. The `textValue` in the properties had `type` _removed_. The `inputValue` in the properties had `type` _removed_. The `inputChecked` in the properties had `type` _removed_. The `optionSelected` in the properties had `type` _removed_. The `contentDocumentIndex` in the properties had `type` _removed_. The `pseudoType` in the properties had `type` _removed_. The `isClickable` in the properties had `type` _removed_. The `currentSourceURL` in the properties had `type` _removed_. The `originURL` in the properties had `type` _removed_.
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The `styles` in the properties had `type` _removed_. The `bounds` in the properties had `type` _removed_. The `text` in the properties had `type` _removed_. The `stackingContexts` in the properties had `type` _removed_.
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot) - The `bounds` in the properties had `type` _removed_.
+#### `DOMStorage`: modified commands
+* [`DOMStorage.clear`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-clear) - The `storageId` in the parameters had `type` _removed_.
+* [`DOMStorage.getDOMStorageItems`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-getDOMStorageItems) - The `storageId` in the parameters had `type` _removed_. The `entries` in the return value had `type` _removed_.
+* [`DOMStorage.removeDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-removeDOMStorageItem) - The `storageId` in the parameters had `type` _removed_.
+* [`DOMStorage.setDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-setDOMStorageItem) - The `storageId` in the parameters had `type` _removed_.
+#### `DOMStorage`: modified events
+* [`DOMStorage.domStorageItemAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemAdded) - The `storageId` in the parameters had `type` _removed_.
+* [`DOMStorage.domStorageItemRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemRemoved) - The `storageId` in the parameters had `type` _removed_.
+* [`DOMStorage.domStorageItemUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemUpdated) - The `storageId` in the parameters had `type` _removed_.
+* [`DOMStorage.domStorageItemsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemsCleared) - The `storageId` in the parameters had `type` _removed_.
+#### `Database`: modified commands
+* [`Database.executeSQL`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-executeSQL) - The `databaseId` in the parameters had `type` _removed_. The `sqlError` in the return value had `type` _removed_.
+* [`Database.getDatabaseTableNames`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-getDatabaseTableNames) - The `databaseId` in the parameters had `type` _removed_.
+#### `Database`: modified event
+* [`Database.addDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#event-addDatabase) - The `database` in the parameters had `type` _removed_.
+#### `Database`: modified type
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database) - The `id` in the properties had `type` _removed_.
+#### `Emulation`: modified commands
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride) - The `color` in the parameters had `type` _removed_.
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The `screenOrientation` in the parameters had `type` _removed_. The `viewport` in the parameters had `type` _removed_.
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The `policy` in the parameters had `type` _removed_. The `initialVirtualTime` in the parameters had `type` _removed_.
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The `screenshot` in the parameters had `type` _removed_.
+#### `IO`: modified commands
+* [`IO.close`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-close) - The `handle` in the parameters had `type` _removed_.
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The `handle` in the parameters had `type` _removed_.
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob) - The `objectId` in the parameters had `type` _removed_.
+#### `IndexedDB`: modified commands
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries) - The `keyRange` in the parameters had `type` _removed_.
+* [`IndexedDB.requestData`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestData) - The `keyRange` in the parameters had `type` _removed_. The `objectStoreDataEntries` in the return value had `type` _removed_.
+* [`IndexedDB.requestDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabase) - The `databaseWithObjectStores` in the return value had `type` _removed_.
+#### `IndexedDB`: modified types
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores) - The `objectStores` in the properties had `type` _removed_.
+* [`IndexedDB.ObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStore) - The `keyPath` in the properties had `type` _removed_. The `indexes` in the properties had `type` _removed_.
+* [`IndexedDB.ObjectStoreIndex`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStoreIndex) - The `keyPath` in the properties had `type` _removed_.
+* [`IndexedDB.Key`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-Key) - The `array` in the properties had `type` _removed_.
+* [`IndexedDB.KeyRange`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyRange) - The `lower` in the properties had `type` _removed_. The `upper` in the properties had `type` _removed_.
+* [`IndexedDB.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DataEntry) - The `key` in the properties had `type` _removed_. The `primaryKey` in the properties had `type` _removed_. The `value` in the properties had `type` _removed_.
+#### `Input`: modified commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The `timestamp` in the parameters had `type` _removed_.
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `timestamp` in the parameters had `type` _removed_.
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - The `touchPoints` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `timestamp` in the parameters had `type` _removed_.
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture) - The `gestureSourceType` in the parameters had `type` _removed_.
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture) - The `gestureSourceType` in the parameters had `type` _removed_.
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture) - The `gestureSourceType` in the parameters had `type` _removed_.
+#### `LayerTree`: modified commands
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons) - The `layerId` in the parameters had `type` _removed_.
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot) - The `tiles` in the parameters had `type` _removed_. The `snapshotId` in the return value had `type` _removed_.
+* [`LayerTree.makeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-makeSnapshot) - The `layerId` in the parameters had `type` _removed_. The `snapshotId` in the return value had `type` _removed_.
+* [`LayerTree.profileSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-profileSnapshot) - The `snapshotId` in the parameters had `type` _removed_. The `clipRect` in the parameters had `type` _removed_. The `timings` in the return value had `type` _removed_.
+* [`LayerTree.releaseSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-releaseSnapshot) - The `snapshotId` in the parameters had `type` _removed_.
+* [`LayerTree.replaySnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-replaySnapshot) - The `snapshotId` in the parameters had `type` _removed_.
+* [`LayerTree.snapshotCommandLog`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-snapshotCommandLog) - The `snapshotId` in the parameters had `type` _removed_.
+#### `LayerTree`: modified events
+* [`LayerTree.layerPainted`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerPainted) - The `layerId` in the parameters had `type` _removed_. The `clip` in the parameters had `type` _removed_.
+* [`LayerTree.layerTreeDidChange`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerTreeDidChange) - The `layers` in the parameters had `type` _removed_.
+#### `LayerTree`: modified types
+* [`LayerTree.ScrollRect`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-ScrollRect) - The `rect` in the properties had `type` _removed_.
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint) - The `stickyBoxRect` in the properties had `type` _removed_. The `containingBlockRect` in the properties had `type` _removed_. The `nearestLayerShiftingStickyBox` in the properties had `type` _removed_. The `nearestLayerShiftingContainingBlock` in the properties had `type` _removed_.
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer) - The `layerId` in the properties had `type` _removed_. The `parentLayerId` in the properties had `type` _removed_. The `backendNodeId` in the properties had `type` _removed_. The `scrollRects` in the properties had `type` _removed_. The `stickyPositionConstraint` in the properties had `type` _removed_.
+#### `Log`: modified command
+* [`Log.startViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-startViolationsReport) - The `config` in the parameters had `type` _removed_.
+#### `Log`: modified event
+* [`Log.entryAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#event-entryAdded) - The `entry` in the parameters had `type` _removed_.
+#### `Log`: modified type
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry) - The `timestamp` in the properties had `type` _removed_. The `stackTrace` in the properties had `type` _removed_. The `networkRequestId` in the properties had `type` _removed_. The `args` in the properties had `type` _removed_.
+#### `Memory`: modified commands
+* [`Memory.simulatePressureNotification`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-simulatePressureNotification) - The `level` in the parameters had `type` _removed_.
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile) - The `profile` in the return value had `type` _removed_.
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile) - The `profile` in the return value had `type` _removed_.
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile) - The `profile` in the return value had `type` _removed_.
+#### `Memory`: modified type
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile) - The `samples` in the properties had `type` _removed_. The `modules` in the properties had `type` _removed_.
+#### `Network`: modified commands
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The `interceptionId` in the parameters had `type` _removed_. The `errorReason` in the parameters had `type` _removed_. The `headers` in the parameters had `type` _removed_. The `authChallengeResponse` in the parameters had `type` _removed_.
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions) - The `connectionType` in the parameters had `type` _removed_.
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies) - The `cookies` in the return value had `type` _removed_.
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - The `cookies` in the return value had `type` _removed_.
+* [`Network.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBody) - The `requestId` in the parameters had `type` _removed_.
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData) - The `requestId` in the parameters had `type` _removed_.
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception) - The `interceptionId` in the parameters had `type` _removed_.
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream) - The `interceptionId` in the parameters had `type` _removed_. The `stream` in the return value had `type` _removed_.
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR) - The `requestId` in the parameters had `type` _removed_.
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody) - The `requestId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_.
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `sameSite` in the parameters had `type` _removed_. The `expires` in the parameters had `type` _removed_.
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies) - The `cookies` in the parameters had `type` _removed_.
+* [`Network.setExtraHTTPHeaders`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setExtraHTTPHeaders) - The `headers` in the parameters had `type` _removed_.
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception) - The `patterns` in the parameters had `type` _removed_.
+#### `Network`: modified events
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `type` in the parameters had `type` _removed_. The `blockedReason` in the parameters had `type` _removed_.
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `interceptionId` in the parameters had `type` _removed_. The `request` in the parameters had `type` _removed_. The `frameId` in the parameters had `type` _removed_. The `resourceType` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `type` _removed_. The `responseErrorReason` in the parameters had `type` _removed_. The `responseHeaders` in the parameters had `type` _removed_.
+* [`Network.requestServedFromCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestServedFromCache) - The `requestId` in the parameters had `type` _removed_.
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `requestId` in the parameters had `type` _removed_. The `loaderId` in the parameters had `type` _removed_. The `request` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `wallTime` in the parameters had `type` _removed_. The `initiator` in the parameters had `type` _removed_. The `redirectResponse` in the parameters had `type` _removed_. The `type` in the parameters had `type` _removed_. The `frameId` in the parameters had `type` _removed_.
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority) - The `requestId` in the parameters had `type` _removed_. The `newPriority` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived) - The `requestId` in the parameters had `type` _removed_. The `info` in the parameters had `type` _removed_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `requestId` in the parameters had `type` _removed_. The `loaderId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `type` in the parameters had `type` _removed_. The `response` in the parameters had `type` _removed_. The `frameId` in the parameters had `type` _removed_.
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated) - The `requestId` in the parameters had `type` _removed_. The `initiator` in the parameters had `type` _removed_.
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `response` in the parameters had `type` _removed_.
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `response` in the parameters had `type` _removed_.
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `response` in the parameters had `type` _removed_.
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest) - The `requestId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_. The `wallTime` in the parameters had `type` _removed_. The `request` in the parameters had `type` _removed_.
+#### `Network`: modified types
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `headers` in the properties had `type` _removed_. The `mixedContentType` in the properties had `type` _removed_. The `initialPriority` in the properties had `type` _removed_.
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp) - The `timestamp` in the properties had `type` _removed_.
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails) - The `certificateId` in the properties had `type` _removed_. The `validFrom` in the properties had `type` _removed_. The `validTo` in the properties had `type` _removed_. The `signedCertificateTimestampList` in the properties had `type` _removed_. The `certificateTransparencyCompliance` in the properties had `type` _removed_.
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `headers` in the properties had `type` _removed_. The `requestHeaders` in the properties had `type` _removed_. The `timing` in the properties had `type` _removed_. The `securityState` in the properties had `type` _removed_. The `securityDetails` in the properties had `type` _removed_.
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest) - The `headers` in the properties had `type` _removed_.
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse) - The `headers` in the properties had `type` _removed_. The `requestHeaders` in the properties had `type` _removed_.
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource) - The `type` in the properties had `type` _removed_. The `response` in the properties had `type` _removed_.
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The `stack` in the properties had `type` _removed_.
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - The `sameSite` in the properties had `type` _removed_.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The `sameSite` in the properties had `type` _removed_. The `expires` in the properties had `type` _removed_.
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The `resourceType` in the properties had `type` _removed_. The `interceptionStage` in the properties had `type` _removed_.
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader) - The `responseHeaders` in the properties had `type` _removed_. The `signatures` in the properties had `type` _removed_.
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError) - The `errorField` in the properties had `type` _removed_.
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo) - The `outerResponse` in the properties had `type` _removed_. The `header` in the properties had `type` _removed_. The `securityDetails` in the properties had `type` _removed_. The `errors` in the properties had `type` _removed_.
+#### `Overlay`: modified commands
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The `nodeId` in the parameters had `type` _removed_.
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame) - The `frameId` in the parameters had `type` _removed_. The `contentColor` in the parameters had `type` _removed_. The `contentOutlineColor` in the parameters had `type` _removed_.
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode) - The `highlightConfig` in the parameters had `type` _removed_. The `nodeId` in the parameters had `type` _removed_. The `backendNodeId` in the parameters had `type` _removed_. The `objectId` in the parameters had `type` _removed_.
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad) - The `quad` in the parameters had `type` _removed_. The `color` in the parameters had `type` _removed_. The `outlineColor` in the parameters had `type` _removed_.
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect) - The `color` in the parameters had `type` _removed_. The `outlineColor` in the parameters had `type` _removed_.
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode) - The `mode` in the parameters had `type` _removed_. The `highlightConfig` in the parameters had `type` _removed_.
+#### `Overlay`: modified events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested) - The `backendNodeId` in the parameters had `type` _removed_.
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested) - The `nodeId` in the parameters had `type` _removed_.
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested) - The `viewport` in the parameters had `type` _removed_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The `contentColor` in the properties had `type` _removed_. The `paddingColor` in the properties had `type` _removed_. The `borderColor` in the properties had `type` _removed_. The `marginColor` in the properties had `type` _removed_. The `eventTargetColor` in the properties had `type` _removed_. The `shapeColor` in the properties had `type` _removed_. The `shapeMarginColor` in the properties had `type` _removed_. The `cssGridColor` in the properties had `type` _removed_.
+#### `Page`: modified commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad) - The `identifier` in the return value had `type` _removed_.
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The `identifier` in the return value had `type` _removed_.
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The `clip` in the parameters had `type` _removed_.
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld) - The `frameId` in the parameters had `type` _removed_. The `executionContextId` in the return value had `type` _removed_.
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest) - The `errors` in the return value had `type` _removed_.
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies) - The `cookies` in the return value had `type` _removed_.
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree) - The `frameTree` in the return value had `type` _removed_.
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics) - The `layoutViewport` in the return value had `type` _removed_. The `visualViewport` in the return value had `type` _removed_. The `contentSize` in the return value had `type` _removed_.
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory) - The `entries` in the return value had `type` _removed_.
+* [`Page.getResourceContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceContent) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.getResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceTree) - The `frameTree` in the return value had `type` _removed_.
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The `transitionType` in the parameters had `type` _removed_. The `frameId` in the parameters had `type` _removed_. The `frameId` in the return value had `type` _removed_. The `loaderId` in the return value had `type` _removed_.
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad) - The `identifier` in the parameters had `type` _removed_.
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument) - The `identifier` in the parameters had `type` _removed_.
+* [`Page.searchInResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-searchInResource) - The `frameId` in the parameters had `type` _removed_. The `result` in the return value had `type` _removed_.
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The `screenOrientation` in the parameters had `type` _removed_. The `viewport` in the parameters had `type` _removed_.
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies) - The `fontFamilies` in the parameters had `type` _removed_.
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes) - The `fontSizes` in the parameters had `type` _removed_.
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent) - The `frameId` in the parameters had `type` _removed_.
+#### `Page`: modified events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired) - The `timestamp` in the parameters had `type` _removed_.
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached) - The `frameId` in the parameters had `type` _removed_. The `parentFrameId` in the parameters had `type` _removed_. The `stack` in the parameters had `type` _removed_.
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated) - The `frame` in the parameters had `type` _removed_.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.frameStartedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStartedLoading) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.frameStoppedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStoppedLoading) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening) - The `type` in the parameters had `type` _removed_.
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent) - The `frameId` in the parameters had `type` _removed_. The `loaderId` in the parameters had `type` _removed_. The `timestamp` in the parameters had `type` _removed_.
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired) - The `timestamp` in the parameters had `type` _removed_.
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument) - The `frameId` in the parameters had `type` _removed_.
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame) - The `metadata` in the parameters had `type` _removed_.
+#### `Page`: modified types
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The `loaderId` in the properties had `type` _removed_.
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource) - The `type` in the properties had `type` _removed_. The `lastModified` in the properties had `type` _removed_.
+* [`Page.FrameResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResourceTree) - The `frame` in the properties had `type` _removed_. The `childFrames` in the properties had `type` _removed_. The `resources` in the properties had `type` _removed_.
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree) - The `frame` in the properties had `type` _removed_. The `childFrames` in the properties had `type` _removed_.
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry) - The `transitionType` in the properties had `type` _removed_.
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata) - The `timestamp` in the properties had `type` _removed_.
+#### `Performance`: modified command
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics) - The `metrics` in the return value had `type` _removed_.
+#### `Performance`: modified event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics) - The `metrics` in the parameters had `type` _removed_.
+#### `Security`: modified command
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError) - The `action` in the parameters had `type` _removed_.
+#### `Security`: modified event
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged) - The `securityState` in the parameters had `type` _removed_. The `explanations` in the parameters had `type` _removed_. The `insecureContentStatus` in the parameters had `type` _removed_.
+#### `Security`: modified types
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The `securityState` in the properties had `type` _removed_. The `mixedContentType` in the properties had `type` _removed_.
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus) - The `ranInsecureContentStyle` in the properties had `type` _removed_. The `displayedInsecureContentStyle` in the properties had `type` _removed_.
+#### `ServiceWorker`: modified events
+* [`ServiceWorker.workerErrorReported`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerErrorReported) - The `errorMessage` in the parameters had `type` _removed_.
+* [`ServiceWorker.workerRegistrationUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerRegistrationUpdated) - The `registrations` in the parameters had `type` _removed_.
+* [`ServiceWorker.workerVersionUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerVersionUpdated) - The `versions` in the parameters had `type` _removed_.
+#### `ServiceWorker`: modified type
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion) - The `runningStatus` in the properties had `type` _removed_. The `status` in the properties had `type` _removed_. The `controlledClients` in the properties had `type` _removed_. The `targetId` in the properties had `type` _removed_.
+#### `Storage`: modified command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota) - The `usageBreakdown` in the return value had `type` _removed_.
+#### `Storage`: modified type
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType) - The `storageType` in the properties had `type` _removed_.
+#### `SystemInfo`: modified command
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo) - The `gpu` in the return value had `type` _removed_.
+#### `SystemInfo`: modified type
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo) - The `devices` in the properties had `type` _removed_.
+#### `Target`: modified commands
+* [`Target.activateTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-activateTarget) - The `targetId` in the parameters had `type` _removed_.
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget) - The `targetId` in the parameters had `type` _removed_. The `sessionId` in the return value had `type` _removed_.
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget) - The `sessionId` in the return value had `type` _removed_.
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget) - The `targetId` in the parameters had `type` _removed_.
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol) - The `targetId` in the parameters had `type` _removed_.
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - The `browserContextId` in the return value had `type` _removed_.
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts) - The `browserContextIds` in the return value had `type` _removed_.
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `browserContextId` in the parameters had `type` _removed_. The `targetId` in the return value had `type` _removed_.
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget) - The `sessionId` in the parameters had `type` _removed_. The `targetId` in the parameters had `type` _removed_.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - The `browserContextId` in the parameters had `type` _removed_.
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo) - The `targetId` in the parameters had `type` _removed_. The `targetInfo` in the return value had `type` _removed_.
+* [`Target.getTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargets) - The `targetInfos` in the return value had `type` _removed_.
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The `sessionId` in the parameters had `type` _removed_. The `targetId` in the parameters had `type` _removed_.
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations) - The `locations` in the parameters had `type` _removed_.
+#### `Target`: modified events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget) - The `sessionId` in the parameters had `type` _removed_. The `targetInfo` in the parameters had `type` _removed_.
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - The `sessionId` in the parameters had `type` _removed_. The `targetId` in the parameters had `type` _removed_.
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget) - The `sessionId` in the parameters had `type` _removed_. The `targetId` in the parameters had `type` _removed_.
+* [`Target.targetCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCreated) - The `targetInfo` in the parameters had `type` _removed_.
+* [`Target.targetDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetDestroyed) - The `targetId` in the parameters had `type` _removed_.
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed) - The `targetId` in the parameters had `type` _removed_.
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged) - The `targetInfo` in the parameters had `type` _removed_.
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The `targetId` in the properties had `type` _removed_. The `openerId` in the properties had `type` _removed_. The `browserContextId` in the properties had `type` _removed_.
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `streamCompression` in the parameters had `type` _removed_. The `traceConfig` in the parameters had `type` _removed_.
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The `stream` in the parameters had `type` _removed_. The `streamCompression` in the parameters had `type` _removed_.
+#### `Tracing`: modified type
+* [`Tracing.TraceConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TraceConfig) - The `memoryDumpConfig` in the properties had `type` _removed_.
+
+
+## Roll protocol to r587766
+###### _2018-08-30 14:16:04_ | Diff: [41333c5...e191211](https://github.com/ChromeDevTools/devtools-protocol/compare/41333c5...e191211)
+#### `Console`: modified event
+* [`Console.messageAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#event-messageAdded) - The parameters's `type` _added_.
+#### `Debugger`: modified commands
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation) - The parameters's `type` _added_.
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable) - The return value's `type` _added_.
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The parameters's `type` _added_ (2 times). The return value's `type` _added_ (2 times).
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - The parameters's `type` _added_ (2 times). The `0` in the return value had `type` _added_.
+* [`Debugger.getScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getScriptSource) - The parameters's `type` _added_.
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall) - The parameters's `type` _added_.
+* [`Debugger.removeBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-removeBreakpoint) - The parameters's `type` _added_.
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame) - The parameters's `type` _added_. The `0` in the return value had `type` _added_. The return value's `type` _added_ (2 times).
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges) - The parameters's `type` _added_. The `1` in the parameters had `type` _added_.
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint) - The parameters's `type` _added_. The return value's `type` _added_ (2 times).
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - The return value's `type` _added_. The `1` in the return value had `type` _added_.
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue) - The parameters's `type` _added_.
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource) - The parameters's `type` _added_. The `0` in the return value had `type` _added_. The return value's `type` _added_ (3 times).
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue) - The parameters's `type` _added_ (2 times).
+#### `Debugger`: modified events
+* [`Debugger.breakpointResolved`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-breakpointResolved) - The parameters's `type` _added_ (2 times).
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `0` in the parameters had `type` _added_. The parameters's `type` _added_ (3 times).
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse) - The parameters's `type` _added_ (3 times).
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The parameters's `type` _added_ (3 times).
+#### `Debugger`: modified types
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location) - The properties's `type` _added_.
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame) - The properties's `type` _added_ (5 times). The `5` in the properties had `type` _added_.
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope) - The properties's `type` _added_ (3 times).
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation) - The properties's `type` _added_.
+#### `HeapProfiler`: modified commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject) - The parameters's `type` _added_.
+* [`HeapProfiler.getHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getHeapObjectId) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`HeapProfiler.getObjectByHeapObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getObjectByHeapObjectId) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile) - The return value's `type` _added_.
+* [`HeapProfiler.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopSampling) - The return value's `type` _added_.
+#### `HeapProfiler`: modified types
+* [`HeapProfiler.SamplingHeapProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfileNode) - The properties's `type` _added_. The `2` in the properties had `type` _added_.
+* [`HeapProfiler.SamplingHeapProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#type-SamplingHeapProfile) - The properties's `type` _added_.
+#### `Profiler`: modified commands
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage) - The `0` in the return value had `type` _added_.
+* [`Profiler.stop`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stop) - The return value's `type` _added_.
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - The `0` in the return value had `type` _added_.
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile) - The `0` in the return value had `type` _added_.
+#### `Profiler`: modified events
+* [`Profiler.consoleProfileFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileFinished) - The parameters's `type` _added_ (2 times).
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted) - The parameters's `type` _added_.
+#### `Profiler`: modified types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode) - The properties's `type` _added_. The `5` in the properties had `type` _added_.
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile) - The `0` in the properties had `type` _added_.
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage) - The `1` in the properties had `type` _added_.
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage) - The properties's `type` _added_. The `2` in the properties had `type` _added_.
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry) - The `1` in the properties had `type` _added_.
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile) - The properties's `type` _added_. The `2` in the properties had `type` _added_.
+#### `Runtime`: modified commands
+* [`Runtime.awaitPromise`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-awaitPromise) - The parameters's `type` _added_. The return value's `type` _added_ (2 times).
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The parameters's `type` _added_ (2 times). The `2` in the parameters had `type` _added_. The return value's `type` _added_ (2 times).
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript) - The parameters's `type` _added_. The return value's `type` _added_ (2 times).
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `type` _added_ (2 times). The return value's `type` _added_ (2 times).
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties) - The parameters's `type` _added_. The `0` in the return value had `type` _added_. The `1` in the return value had `type` _added_. The return value's `type` _added_.
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames) - The parameters's `type` _added_.
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Runtime.releaseObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-releaseObject) - The parameters's `type` _added_.
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript) - The parameters's `type` _added_ (2 times). The return value's `type` _added_ (2 times).
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding) - The parameters's `type` _added_.
+#### `Runtime`: modified events
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled) - The parameters's `type` _added_.
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled) - The `1` in the parameters had `type` _added_. The parameters's `type` _added_ (3 times).
+* [`Runtime.exceptionThrown`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionThrown) - The parameters's `type` _added_ (2 times).
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated) - The parameters's `type` _added_.
+* [`Runtime.executionContextDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextDestroyed) - The parameters's `type` _added_.
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested) - The parameters's `type` _added_.
+#### `Runtime`: modified types
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The properties's `type` _added_ (4 times).
+* [`Runtime.CustomPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CustomPreview) - The properties's `type` _added_ (3 times).
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview) - The `4` in the properties had `type` _added_. The `5` in the properties had `type` _added_.
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview) - The properties's `type` _added_.
+* [`Runtime.EntryPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-EntryPreview) - The properties's `type` _added_ (2 times).
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor) - The properties's `type` _added_ (4 times).
+* [`Runtime.InternalPropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-InternalPropertyDescriptor) - The properties's `type` _added_.
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - The properties's `type` _added_ (2 times).
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription) - The properties's `type` _added_.
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails) - The properties's `type` _added_ (4 times).
+* [`Runtime.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallFrame) - The properties's `type` _added_.
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace) - The `1` in the properties had `type` _added_. The properties's `type` _added_ (2 times).
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId) - The properties's `type` _added_.
+#### `Schema`: modified command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains) - The `0` in the return value had `type` _added_.
+#### `Accessibility`: modified command
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree) - The parameters's `type` _added_ (3 times). The `0` in the return value had `type` _added_.
+#### `Accessibility`: modified types
+* [`Accessibility.AXValueSource`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValueSource) - The properties's `type` _added_ (5 times).
+* [`Accessibility.AXRelatedNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelatedNode) - The properties's `type` _added_.
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty) - The properties's `type` _added_ (2 times).
+* [`Accessibility.AXValue`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXValue) - The properties's `type` _added_. The `2` in the properties had `type` _added_. The `3` in the properties had `type` _added_.
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode) - The properties's `type` _added_ (6 times). The `2` in the properties had `type` _added_. The `7` in the properties had `type` _added_. The `8` in the properties had `type` _added_.
+#### `Animation`: modified command
+* [`Animation.resolveAnimation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#method-resolveAnimation) - The return value's `type` _added_.
+#### `Animation`: modified event
+* [`Animation.animationStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#event-animationStarted) - The parameters's `type` _added_.
+#### `Animation`: modified types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - The properties's `type` _added_.
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect) - The properties's `type` _added_ (2 times).
+* [`Animation.KeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframesRule) - The `1` in the properties had `type` _added_.
+#### `ApplicationCache`: modified commands
+* [`ApplicationCache.getApplicationCacheForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getApplicationCacheForFrame) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests) - The `0` in the return value had `type` _added_.
+* [`ApplicationCache.getManifestForFrame`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getManifestForFrame) - The parameters's `type` _added_.
+#### `ApplicationCache`: modified event
+* [`ApplicationCache.applicationCacheStatusUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#event-applicationCacheStatusUpdated) - The parameters's `type` _added_.
+#### `ApplicationCache`: modified types
+* [`ApplicationCache.ApplicationCache`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-ApplicationCache) - The `4` in the properties had `type` _added_.
+* [`ApplicationCache.FrameWithManifest`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#type-FrameWithManifest) - The properties's `type` _added_.
+#### `Audits`: modified command
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse) - The parameters's `type` _added_.
+#### `Browser`: modified commands
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions) - The `1` in the parameters had `type` _added_. The parameters's `type` _added_.
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions) - The parameters's `type` _added_.
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms) - The `0` in the return value had `type` _added_.
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram) - The return value's `type` _added_.
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget) - The parameters's `type` _added_. The return value's `type` _added_ (2 times).
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds) - The parameters's `type` _added_ (2 times).
+#### `Browser`: modified types
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds) - The properties's `type` _added_.
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram) - The `3` in the properties had `type` _added_.
+#### `CSS`: modified commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule) - The parameters's `type` _added_ (2 times). The return value's `type` _added_.
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames) - The parameters's `type` _added_.
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState) - The parameters's `type` _added_.
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - The parameters's `type` _added_.
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode) - The parameters's `type` _added_. The return value's `type` _added_ (2 times).
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode) - The parameters's `type` _added_. The return value's `type` _added_ (2 times). The `2` in the return value had `type` _added_. The `3` in the return value had `type` _added_. The `4` in the return value had `type` _added_. The `5` in the return value had `type` _added_.
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries) - The `0` in the return value had `type` _added_.
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText) - The parameters's `type` _added_.
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode) - The parameters's `type` _added_.
+* [`CSS.setKeyframeKey`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setKeyframeKey) - The parameters's `type` _added_ (2 times). The return value's `type` _added_.
+* [`CSS.setMediaText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setMediaText) - The parameters's `type` _added_ (2 times). The return value's `type` _added_.
+* [`CSS.setRuleSelector`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setRuleSelector) - The parameters's `type` _added_ (2 times). The return value's `type` _added_.
+* [`CSS.setStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleSheetText) - The parameters's `type` _added_.
+* [`CSS.setStyleTexts`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setStyleTexts) - The `0` in the parameters had `type` _added_. The `0` in the return value had `type` _added_.
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking) - The `0` in the return value had `type` _added_.
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta) - The `0` in the return value had `type` _added_.
+#### `CSS`: modified events
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated) - The parameters's `type` _added_.
+* [`CSS.styleSheetAdded`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetAdded) - The parameters's `type` _added_.
+* [`CSS.styleSheetChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetChanged) - The parameters's `type` _added_.
+* [`CSS.styleSheetRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-styleSheetRemoved) - The parameters's `type` _added_.
+#### `CSS`: modified types
+* [`CSS.PseudoElementMatches`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PseudoElementMatches) - The properties's `type` _added_. The `1` in the properties had `type` _added_.
+* [`CSS.InheritedStyleEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InheritedStyleEntry) - The properties's `type` _added_. The `1` in the properties had `type` _added_.
+* [`CSS.RuleMatch`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleMatch) - The properties's `type` _added_.
+* [`CSS.Value`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-Value) - The properties's `type` _added_.
+* [`CSS.SelectorList`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-SelectorList) - The `0` in the properties had `type` _added_.
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The properties's `type` _added_ (4 times).
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule) - The properties's `type` _added_ (4 times). The `4` in the properties had `type` _added_.
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage) - The properties's `type` _added_.
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle) - The properties's `type` _added_ (2 times). The `1` in the properties had `type` _added_. The `2` in the properties had `type` _added_.
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty) - The properties's `type` _added_.
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia) - The properties's `type` _added_ (2 times). The `5` in the properties had `type` _added_.
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery) - The `0` in the properties had `type` _added_.
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression) - The properties's `type` _added_.
+* [`CSS.CSSKeyframesRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframesRule) - The properties's `type` _added_. The `1` in the properties had `type` _added_.
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule) - The properties's `type` _added_ (4 times).
+* [`CSS.StyleDeclarationEdit`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleDeclarationEdit) - The properties's `type` _added_ (2 times).
+#### `CacheStorage`: modified commands
+* [`CacheStorage.deleteCache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteCache) - The parameters's `type` _added_.
+* [`CacheStorage.deleteEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-deleteEntry) - The parameters's `type` _added_.
+* [`CacheStorage.requestCacheNames`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCacheNames) - The `0` in the return value had `type` _added_.
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`CacheStorage.requestEntries`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestEntries) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+#### `CacheStorage`: modified types
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `2` in the properties had `type` _added_. The `6` in the properties had `type` _added_.
+* [`CacheStorage.Cache`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Cache) - The properties's `type` _added_.
+#### `DOM`: modified commands
+* [`DOM.collectClassNamesFromSubtree`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-collectClassNamesFromSubtree) - The parameters's `type` _added_.
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo) - The parameters's `type` _added_ (3 times). The return value's `type` _added_.
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode) - The parameters's `type` _added_ (3 times). The return value's `type` _added_.
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus) - The parameters's `type` _added_ (3 times).
+* [`DOM.getAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getAttributes) - The parameters's `type` _added_.
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel) - The parameters's `type` _added_ (3 times). The return value's `type` _added_.
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads) - The parameters's `type` _added_ (3 times). The `0` in the return value had `type` _added_.
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument) - The return value's `type` _added_.
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument) - The `0` in the return value had `type` _added_.
+* [`DOM.getNodeForLocation`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getNodeForLocation) - The return value's `type` _added_.
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML) - The parameters's `type` _added_ (3 times).
+* [`DOM.getRelayoutBoundary`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getRelayoutBoundary) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults) - The `0` in the return value had `type` _added_.
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo) - The parameters's `type` _added_ (3 times). The return value's `type` _added_.
+* [`DOM.pushNodeByPathToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodeByPathToFrontend) - The return value's `type` _added_.
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend) - The `0` in the parameters had `type` _added_. The `0` in the return value had `type` _added_.
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`DOM.removeAttribute`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeAttribute) - The parameters's `type` _added_.
+* [`DOM.removeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-removeNode) - The parameters's `type` _added_.
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes) - The parameters's `type` _added_.
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode) - The parameters's `type` _added_ (2 times). The return value's `type` _added_.
+* [`DOM.setAttributeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributeValue) - The parameters's `type` _added_.
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText) - The parameters's `type` _added_.
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles) - The parameters's `type` _added_ (3 times).
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode) - The parameters's `type` _added_.
+* [`DOM.setNodeName`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeName) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`DOM.setNodeValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setNodeValue) - The parameters's `type` _added_.
+* [`DOM.setOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setOuterHTML) - The parameters's `type` _added_.
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner) - The parameters's `type` _added_. The return value's `type` _added_.
+#### `DOM`: modified events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified) - The parameters's `type` _added_.
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved) - The parameters's `type` _added_.
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified) - The parameters's `type` _added_.
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated) - The parameters's `type` _added_.
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted) - The parameters's `type` _added_ (3 times).
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved) - The parameters's `type` _added_ (2 times).
+* [`DOM.distributedNodesUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated) - The parameters's `type` _added_. The `1` in the parameters had `type` _added_.
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated) - The `0` in the parameters had `type` _added_.
+* [`DOM.pseudoElementAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded) - The parameters's `type` _added_ (2 times).
+* [`DOM.pseudoElementRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved) - The parameters's `type` _added_ (2 times).
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes) - The parameters's `type` _added_. The `1` in the parameters had `type` _added_.
+* [`DOM.shadowRootPopped`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped) - The parameters's `type` _added_ (2 times).
+* [`DOM.shadowRootPushed`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed) - The parameters's `type` _added_ (2 times).
+#### `DOM`: modified types
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode) - The properties's `type` _added_.
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The properties's `type` _added_ (9 times). The `8` in the properties had `type` _added_. The `22` in the properties had `type` _added_. The `24` in the properties had `type` _added_. The `26` in the properties had `type` _added_.
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel) - The properties's `type` _added_ (5 times).
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo) - The properties's `type` _added_.
+#### `DOMDebugger`: modified commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint) - The parameters's `type` _added_ (2 times).
+* [`DOMDebugger.setDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setDOMBreakpoint) - The parameters's `type` _added_ (2 times).
+#### `DOMDebugger`: modified type
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener) - The properties's `type` _added_ (4 times).
+#### `DOMSnapshot`: modified commands
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - The `0` in the return value had `type` _added_. The `1` in the return value had `type` _added_. The `2` in the return value had `type` _added_.
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The `0` in the return value had `type` _added_.
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `type` _added_ (4 times). The `9` in the properties had `type` _added_. The `23` in the properties had `type` _added_.
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - The properties's `type` _added_.
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The properties's `type` _added_. The `3` in the properties had `type` _added_.
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle) - The `0` in the properties had `type` _added_.
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings) - The items's `type` _added_.
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData) - The `1` in the properties had `type` _added_.
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The properties's `type` _added_ (10 times).
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot) - The `2` in the properties had `type` _added_. The `3` in the properties had `type` _added_. The `4` in the properties had `type` _added_. The `5` in the properties had `type` _added_. The properties's `type` _added_ (9 times).
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The `1` in the properties had `type` _added_. The `2` in the properties had `type` _added_. The `3` in the properties had `type` _added_. The properties's `type` _added_.
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot) - The `1` in the properties had `type` _added_.
+#### `DOMStorage`: modified commands
+* [`DOMStorage.clear`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-clear) - The parameters's `type` _added_.
+* [`DOMStorage.getDOMStorageItems`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-getDOMStorageItems) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`DOMStorage.removeDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-removeDOMStorageItem) - The parameters's `type` _added_.
+* [`DOMStorage.setDOMStorageItem`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#method-setDOMStorageItem) - The parameters's `type` _added_.
+#### `DOMStorage`: modified events
+* [`DOMStorage.domStorageItemAdded`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemAdded) - The parameters's `type` _added_.
+* [`DOMStorage.domStorageItemRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemRemoved) - The parameters's `type` _added_.
+* [`DOMStorage.domStorageItemUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemUpdated) - The parameters's `type` _added_.
+* [`DOMStorage.domStorageItemsCleared`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#event-domStorageItemsCleared) - The parameters's `type` _added_.
+#### `Database`: modified commands
+* [`Database.executeSQL`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-executeSQL) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Database.getDatabaseTableNames`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#method-getDatabaseTableNames) - The parameters's `type` _added_.
+#### `Database`: modified event
+* [`Database.addDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#event-addDatabase) - The parameters's `type` _added_.
+#### `Database`: modified type
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database) - The properties's `type` _added_.
+#### `Emulation`: modified commands
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride) - The parameters's `type` _added_.
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `type` _added_ (2 times).
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The parameters's `type` _added_ (2 times).
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The parameters's `type` _added_.
+#### `IO`: modified commands
+* [`IO.close`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-close) - The parameters's `type` _added_.
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The parameters's `type` _added_.
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob) - The parameters's `type` _added_.
+#### `IndexedDB`: modified commands
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries) - The parameters's `type` _added_.
+* [`IndexedDB.requestData`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestData) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`IndexedDB.requestDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-requestDatabase) - The return value's `type` _added_.
+#### `IndexedDB`: modified types
+* [`IndexedDB.DatabaseWithObjectStores`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DatabaseWithObjectStores) - The `2` in the properties had `type` _added_.
+* [`IndexedDB.ObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStore) - The properties's `type` _added_. The `3` in the properties had `type` _added_.
+* [`IndexedDB.ObjectStoreIndex`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-ObjectStoreIndex) - The properties's `type` _added_.
+* [`IndexedDB.Key`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-Key) - The `4` in the properties had `type` _added_.
+* [`IndexedDB.KeyRange`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-KeyRange) - The properties's `type` _added_ (2 times).
+* [`IndexedDB.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#type-DataEntry) - The properties's `type` _added_ (3 times).
+#### `Input`: modified commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The parameters's `type` _added_.
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The parameters's `type` _added_.
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - The `1` in the parameters had `type` _added_. The parameters's `type` _added_.
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The parameters's `type` _added_.
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture) - The parameters's `type` _added_.
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture) - The parameters's `type` _added_.
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture) - The parameters's `type` _added_.
+#### `LayerTree`: modified commands
+* [`LayerTree.compositingReasons`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-compositingReasons) - The parameters's `type` _added_.
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot) - The `0` in the parameters had `type` _added_. The return value's `type` _added_.
+* [`LayerTree.makeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-makeSnapshot) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`LayerTree.profileSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-profileSnapshot) - The parameters's `type` _added_ (2 times). The `0` in the return value had `type` _added_.
+* [`LayerTree.releaseSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-releaseSnapshot) - The parameters's `type` _added_.
+* [`LayerTree.replaySnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-replaySnapshot) - The parameters's `type` _added_.
+* [`LayerTree.snapshotCommandLog`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-snapshotCommandLog) - The parameters's `type` _added_.
+#### `LayerTree`: modified events
+* [`LayerTree.layerPainted`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerPainted) - The parameters's `type` _added_ (2 times).
+* [`LayerTree.layerTreeDidChange`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#event-layerTreeDidChange) - The `0` in the parameters had `type` _added_.
+#### `LayerTree`: modified types
+* [`LayerTree.ScrollRect`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-ScrollRect) - The properties's `type` _added_.
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint) - The properties's `type` _added_ (4 times).
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer) - The properties's `type` _added_ (4 times). The `14` in the properties had `type` _added_.
+#### `Log`: modified command
+* [`Log.startViolationsReport`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-startViolationsReport) - The `0` in the parameters had `type` _added_.
+#### `Log`: modified event
+* [`Log.entryAdded`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#event-entryAdded) - The parameters's `type` _added_.
+#### `Log`: modified type
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry) - The properties's `type` _added_ (3 times). The `9` in the properties had `type` _added_.
+#### `Memory`: modified commands
+* [`Memory.simulatePressureNotification`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-simulatePressureNotification) - The parameters's `type` _added_.
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile) - The return value's `type` _added_.
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile) - The return value's `type` _added_.
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile) - The return value's `type` _added_.
+#### `Memory`: modified type
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile) - The `0` in the properties had `type` _added_. The `1` in the properties had `type` _added_.
+#### `Network`: modified commands
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The parameters's `type` _added_ (4 times).
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions) - The parameters's `type` _added_.
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies) - The `0` in the return value had `type` _added_.
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - The `0` in the return value had `type` _added_.
+* [`Network.getResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBody) - The parameters's `type` _added_.
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData) - The parameters's `type` _added_.
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception) - The parameters's `type` _added_.
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR) - The parameters's `type` _added_.
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The parameters's `type` _added_ (2 times).
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies) - The `0` in the parameters had `type` _added_.
+* [`Network.setExtraHTTPHeaders`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setExtraHTTPHeaders) - The parameters's `type` _added_.
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception) - The `0` in the parameters had `type` _added_.
+#### `Network`: modified events
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived) - The parameters's `type` _added_ (2 times).
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived) - The parameters's `type` _added_ (2 times).
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The parameters's `type` _added_ (4 times).
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished) - The parameters's `type` _added_ (2 times).
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The parameters's `type` _added_ (7 times).
+* [`Network.requestServedFromCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestServedFromCache) - The parameters's `type` _added_.
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The parameters's `type` _added_ (9 times).
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority) - The parameters's `type` _added_ (3 times).
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived) - The parameters's `type` _added_ (2 times).
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The parameters's `type` _added_ (6 times).
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed) - The parameters's `type` _added_ (2 times).
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated) - The parameters's `type` _added_ (2 times).
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError) - The parameters's `type` _added_ (2 times).
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived) - The parameters's `type` _added_ (3 times).
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent) - The parameters's `type` _added_ (3 times).
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived) - The parameters's `type` _added_ (3 times).
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest) - The parameters's `type` _added_ (4 times).
+#### `Network`: modified types
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The properties's `type` _added_ (3 times).
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp) - The properties's `type` _added_.
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails) - The properties's `type` _added_ (4 times). The `11` in the properties had `type` _added_.
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The properties's `type` _added_ (5 times).
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest) - The properties's `type` _added_.
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse) - The properties's `type` _added_ (2 times).
+* [`Network.CachedResource`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CachedResource) - The properties's `type` _added_ (2 times).
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The properties's `type` _added_.
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - The properties's `type` _added_.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The properties's `type` _added_ (2 times).
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The properties's `type` _added_ (2 times).
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader) - The properties's `type` _added_. The `4` in the properties had `type` _added_.
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError) - The properties's `type` _added_.
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo) - The properties's `type` _added_ (3 times). The `3` in the properties had `type` _added_.
+#### `Overlay`: modified commands
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest) - The parameters's `type` _added_.
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame) - The parameters's `type` _added_ (3 times).
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode) - The parameters's `type` _added_ (4 times).
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad) - The parameters's `type` _added_ (3 times).
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect) - The parameters's `type` _added_ (2 times).
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode) - The parameters's `type` _added_ (2 times).
+#### `Overlay`: modified events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested) - The parameters's `type` _added_.
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested) - The parameters's `type` _added_.
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested) - The parameters's `type` _added_.
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `type` _added_ (8 times).
+#### `Page`: modified commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad) - The return value's `type` _added_.
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - The return value's `type` _added_.
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The parameters's `type` _added_.
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest) - The `1` in the return value had `type` _added_.
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies) - The `0` in the return value had `type` _added_.
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree) - The return value's `type` _added_.
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics) - The return value's `type` _added_ (3 times).
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory) - The `1` in the return value had `type` _added_.
+* [`Page.getResourceContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceContent) - The parameters's `type` _added_.
+* [`Page.getResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getResourceTree) - The return value's `type` _added_.
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The parameters's `type` _added_ (2 times). The return value's `type` _added_ (2 times).
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad) - The parameters's `type` _added_.
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument) - The parameters's `type` _added_.
+* [`Page.searchInResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-searchInResource) - The parameters's `type` _added_. The `0` in the return value had `type` _added_.
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The parameters's `type` _added_ (2 times).
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies) - The parameters's `type` _added_.
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes) - The parameters's `type` _added_.
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent) - The parameters's `type` _added_.
+#### `Page`: modified events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired) - The parameters's `type` _added_.
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached) - The parameters's `type` _added_ (3 times).
+* [`Page.frameClearedScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameClearedScheduledNavigation) - The parameters's `type` _added_.
+* [`Page.frameDetached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameDetached) - The parameters's `type` _added_.
+* [`Page.frameNavigated`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameNavigated) - The parameters's `type` _added_.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The parameters's `type` _added_.
+* [`Page.frameStartedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStartedLoading) - The parameters's `type` _added_.
+* [`Page.frameStoppedLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameStoppedLoading) - The parameters's `type` _added_.
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening) - The parameters's `type` _added_.
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent) - The parameters's `type` _added_ (3 times).
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired) - The parameters's `type` _added_.
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument) - The parameters's `type` _added_.
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame) - The parameters's `type` _added_.
+#### `Page`: modified types
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `type` _added_.
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource) - The properties's `type` _added_ (2 times).
+* [`Page.FrameResourceTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResourceTree) - The properties's `type` _added_. The `1` in the properties had `type` _added_. The `2` in the properties had `type` _added_.
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree) - The properties's `type` _added_. The `1` in the properties had `type` _added_.
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry) - The properties's `type` _added_.
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata) - The properties's `type` _added_.
+#### `Performance`: modified command
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics) - The `0` in the return value had `type` _added_.
+#### `Performance`: modified event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics) - The `0` in the parameters had `type` _added_.
+#### `Security`: modified command
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError) - The parameters's `type` _added_.
+#### `Security`: modified event
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged) - The parameters's `type` _added_ (2 times). The `2` in the parameters had `type` _added_.
+#### `Security`: modified types
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The properties's `type` _added_ (2 times).
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus) - The properties's `type` _added_ (2 times).
+#### `ServiceWorker`: modified events
+* [`ServiceWorker.workerErrorReported`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerErrorReported) - The parameters's `type` _added_.
+* [`ServiceWorker.workerRegistrationUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerRegistrationUpdated) - The `0` in the parameters had `type` _added_.
+* [`ServiceWorker.workerVersionUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#event-workerVersionUpdated) - The `0` in the parameters had `type` _added_.
+#### `ServiceWorker`: modified type
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion) - The properties's `type` _added_ (3 times). The `7` in the properties had `type` _added_.
+#### `Storage`: modified command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota) - The `2` in the return value had `type` _added_.
+#### `Storage`: modified type
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType) - The properties's `type` _added_.
+#### `SystemInfo`: modified command
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo) - The return value's `type` _added_.
+#### `SystemInfo`: modified type
+* [`SystemInfo.GPUInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#type-GPUInfo) - The `0` in the properties had `type` _added_.
+#### `Target`: modified commands
+* [`Target.activateTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-activateTarget) - The parameters's `type` _added_.
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget) - The return value's `type` _added_.
+* [`Target.closeTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-closeTarget) - The parameters's `type` _added_.
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol) - The parameters's `type` _added_.
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - The return value's `type` _added_.
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts) - The `0` in the return value had `type` _added_.
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget) - The parameters's `type` _added_ (2 times).
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - The parameters's `type` _added_.
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo) - The parameters's `type` _added_. The return value's `type` _added_.
+* [`Target.getTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargets) - The `0` in the return value had `type` _added_.
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The parameters's `type` _added_ (2 times).
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations) - The `0` in the parameters had `type` _added_.
+#### `Target`: modified events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget) - The parameters's `type` _added_ (2 times).
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - The parameters's `type` _added_ (2 times).
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget) - The parameters's `type` _added_ (2 times).
+* [`Target.targetCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCreated) - The parameters's `type` _added_.
+* [`Target.targetDestroyed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetDestroyed) - The parameters's `type` _added_.
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed) - The parameters's `type` _added_.
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged) - The parameters's `type` _added_.
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The properties's `type` _added_ (3 times).
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The parameters's `type` _added_ (2 times).
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The parameters's `type` _added_ (2 times).
+#### `Tracing`: modified type
+* [`Tracing.TraceConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-TraceConfig) - The properties's `type` _added_.
+
+
+## Roll protocol to r586443
+###### _2018-08-27 15:15:57_ | Diff: [cafc591...41333c5](https://github.com/ChromeDevTools/devtools-protocol/compare/cafc591...41333c5)
+#### `Testing`: new domain
+* [`Testing.Testing`](https://chromedevtools.github.io/devtools-protocol/tot/Testing/#domain-Testing)
+#### `Testing`: new command
+* [`Testing.generateTestReport`](https://chromedevtools.github.io/devtools-protocol/tot/Testing/#method-generateTestReport)
+
+
+## Roll protocol to r586417
+###### _2018-08-27 14:15:56_ | Diff: [fbe2ce1...cafc591](https://github.com/ChromeDevTools/devtools-protocol/compare/fbe2ce1...cafc591)
+#### `Page`: new command
+* [`Page.generateTestReport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-generateTestReport)
+
+
+## Roll protocol to r585632
+###### _2018-08-23 15:15:44_ | Diff: [d4361d7...fbe2ce1](https://github.com/ChromeDevTools/devtools-protocol/compare/d4361d7...fbe2ce1)
+#### `Browser`: new commands
+* [`Browser.grantPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-grantPermissions)
+* [`Browser.resetPermissions`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-resetPermissions)
+#### `Browser`: new type
+* [`Browser.PermissionType`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-PermissionType)
+
+
+## Roll protocol to r584873
+###### _2018-08-21 12:15:50_ | Diff: [5fd6859...d4361d7](https://github.com/ChromeDevTools/devtools-protocol/compare/5fd6859...d4361d7)
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The properties's `isStackingContext` _added_.
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The properties's `stackingContexts` _added_.
+
+
+## Roll protocol to r581326
+###### _2018-08-07 13:15:57_ | Diff: [45146f8...5fd6859](https://github.com/ChromeDevTools/devtools-protocol/compare/45146f8...5fd6859)
+#### `Memory`: new type
+* [`Memory.Module`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-Module)
+#### `Memory`: modified type
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile) - The properties's `modules` _added_.
+
+
+## Roll protocol to r579242
+###### _2018-07-30 17:16:01_ | Diff: [501e985...45146f8](https://github.com/ChromeDevTools/devtools-protocol/compare/501e985...45146f8)
+#### `Target`: modified command
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - The parameters's `flatten` _added_.
+
+
+## Roll protocol to r578934
+###### _2018-07-28 13:15:43_ | Diff: [5c95923...501e985](https://github.com/ChromeDevTools/devtools-protocol/compare/5c95923...501e985)
+#### `Input`: new command
+* [`Input.insertText`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-insertText)
+
+
+## Roll protocol to r576560
+###### _2018-07-19 11:16:22_ | Diff: [05a3c0e...5c95923](https://github.com/ChromeDevTools/devtools-protocol/compare/05a3c0e...5c95923)
+#### `Page`: new commands
+* [`Page.setProduceCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setProduceCompilationCache)
+* [`Page.addCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addCompilationCache)
+* [`Page.clearCompilationCache`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearCompilationCache)
+#### `Page`: new event
+* [`Page.compilationCacheProduced`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-compilationCacheProduced)
+
+
+## Roll protocol to r575147
+###### _2018-07-13 21:15:43_ | Diff: [090126c...05a3c0e](https://github.com/ChromeDevTools/devtools-protocol/compare/090126c...05a3c0e)
+#### `Target`: new command
+* [`Target.attachToBrowserTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToBrowserTarget)
+
+
+## Roll protocol to r574367
+###### _2018-07-11 15:15:44_ | Diff: [26e4e07...090126c](https://github.com/ChromeDevTools/devtools-protocol/compare/26e4e07...090126c)
+#### `DOMSnapshot`: new type
+* [`DOMSnapshot.NodeTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NodeTreeSnapshot)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot) - The properties's `documentURL` _removed_. The properties's `baseURL` _removed_. The properties's `contentLanguage` _removed_. The properties's `documentEncoding` _removed_. The properties's `publicId` _removed_. The properties's `systemId` _removed_. The properties's `frameId` _removed_. The properties's `contentDocumentIndex` _removed_. The properties's `pseudoType` _removed_. The properties's `isClickable` _removed_. The properties's `currentSourceURL` _removed_. The properties's `originURL` _removed_. The properties's `layoutSnapshot` _removed_. The properties's `textBoxSnapshot` _removed_. The `parentIndex` in the properties had `optional` _removed_. The `parentIndex` in the properties had `type` _removed_. The `parentIndex` in the properties had `items` _removed_. The `nodeType` in the properties had `optional` _removed_. The `nodeType` in the properties had `type` _removed_. The `nodeType` in the properties had `items` _removed_. The `nodeName` in the properties had `optional` _removed_. The `nodeName` in the properties had `type` _removed_. The `nodeName` in the properties had `items` _removed_. The `nodeValue` in the properties had `optional` _removed_. The `nodeValue` in the properties had `type` _removed_. The `nodeValue` in the properties had `items` _removed_. The `backendNodeId` in the properties had `optional` _removed_. The `backendNodeId` in the properties had `type` _removed_. The `backendNodeId` in the properties had `items` _removed_. The `attributes` in the properties had `optional` _removed_. The `attributes` in the properties had `type` _removed_. The `attributes` in the properties had `items` _removed_. The `textValue` in the properties had `optional` _removed_. The `inputValue` in the properties had `optional` _removed_. The `inputChecked` in the properties had `optional` _removed_. The `optionSelected` in the properties had `optional` _removed_. `description` updated. The `parentIndex` in the properties had `name` _updated_. The `parentIndex` in the properties had `description` _updated_. The `nodeType` in the properties had `name` _updated_. The `nodeType` in the properties had `description` _updated_. The `nodeName` in the properties had `name` _updated_. The `nodeName` in the properties had `description` _updated_. The `nodeValue` in the properties had `name` _updated_. The `nodeValue` in the properties had `description` _updated_. The `backendNodeId` in the properties had `name` _updated_. The `backendNodeId` in the properties had `description` _updated_. The `attributes` in the properties had `name` _updated_. The `attributes` in the properties had `description` _updated_. The `textValue` in the properties had `name` _updated_. The `textValue` in the properties had `description` _updated_. The `textValue` in the properties had `$ref` _updated_. The `inputValue` in the properties had `name` _updated_. The `inputValue` in the properties had `description` _updated_. The `inputValue` in the properties had `$ref` _updated_. The `inputChecked` in the properties had `name` _updated_. The `inputChecked` in the properties had `description` _updated_. The `inputChecked` in the properties had `$ref` _updated_. The `optionSelected` in the properties had `name` _updated_. The `optionSelected` in the properties had `description` _updated_. The `optionSelected` in the properties had `$ref` _updated_. The properties's `$ref` _added_ (6 times).
+
+
+## Roll protocol to r574025
+###### _2018-07-10 18:15:41_ | Diff: [1aa7b31...26e4e07](https://github.com/ChromeDevTools/devtools-protocol/compare/1aa7b31...26e4e07)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot) - The return value's `strings` _removed_. The `nodes` in the return value had `$ref` _removed_. The `layout` in the return value had `$ref` _removed_. The `nodes` in the return value had `name` _updated_. The `layout` in the return value had `name` _updated_. The `layout` in the return value had `description` _updated_. The return value's `type` _added_ (2 times). The return value's `items` _added_ (2 times).
+#### `DOMSnapshot`: new type
+* [`DOMSnapshot.DocumentSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DocumentSnapshot)
+#### `DOMSnapshot`: removed types
+* [`DOMSnapshot.DOMTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMTreeSnapshot)
+* [`DOMSnapshot.StylesSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StylesSnapshot)
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `currentSourceURL` _removed_. The properties's `originURL` _removed_. The `importedDocumentIndex` in the properties had `type` _removed_. The `templateContentIndex` in the properties had `type` _removed_. The `pseudoType` in the properties had `$ref` _removed_. The `shadowRootType` in the properties had `$ref` _removed_. The `eventListeners` in the properties had `items` _removed_. The `importedDocumentIndex` in the properties had `name` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `name` _updated_. The `templateContentIndex` in the properties had `description` _updated_. The `pseudoType` in the properties had `name` _updated_. The `pseudoType` in the properties had `description` _updated_. The `shadowRootType` in the properties had `name` _updated_. The `shadowRootType` in the properties had `description` _updated_. The `isClickable` in the properties had `name` _updated_. The `isClickable` in the properties had `description` _updated_. The `isClickable` in the properties had `type` _updated_. The `eventListeners` in the properties had `name` _updated_. The `eventListeners` in the properties had `description` _updated_. The `eventListeners` in the properties had `type` _updated_. The properties's `$ref` _added_ (2 times). The properties's `type` _added_ (2 times). The properties's `items` _added_.
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot) - The properties's `textBoxes` _removed_.
+
+
+## Roll protocol to r572598
+###### _2018-07-04 09:15:41_ | Diff: [19fb3d2...1aa7b31](https://github.com/ChromeDevTools/devtools-protocol/compare/19fb3d2...1aa7b31)
+#### `Target`: modified command
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget) - The parameters's `flatten` _added_.
+
+
+## Roll protocol to r572401
+###### _2018-07-03 17:15:50_ | Diff: [be1ed43...19fb3d2](https://github.com/ChromeDevTools/devtools-protocol/compare/be1ed43...19fb3d2)
+#### `Target`: modified command
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo) - The parameters's `optional` _added_.
+
+
+## Roll protocol to r572389
+###### _2018-07-03 16:15:52_ | Diff: [7388b4b...be1ed43](https://github.com/ChromeDevTools/devtools-protocol/compare/7388b4b...be1ed43)
+#### `Browser`: modified commands
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms) - The parameters's `delta` _added_.
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram) - The parameters's `delta` _added_.
+
+
+## Roll protocol to r572315
+###### _2018-07-03 12:15:46_ | Diff: [a63ed5b...7388b4b](https://github.com/ChromeDevTools/devtools-protocol/compare/a63ed5b...7388b4b)
+#### `DOMSnapshot`: new command
+* [`DOMSnapshot.captureSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-captureSnapshot)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - `deprecated` added.
+#### `DOMSnapshot`: new types
+* [`DOMSnapshot.StringIndex`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StringIndex)
+* [`DOMSnapshot.ArrayOfStrings`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ArrayOfStrings)
+* [`DOMSnapshot.RareStringData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareStringData)
+* [`DOMSnapshot.RareBooleanData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareBooleanData)
+* [`DOMSnapshot.RareIntegerData`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-RareIntegerData)
+* [`DOMSnapshot.Rectangle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-Rectangle)
+* [`DOMSnapshot.DOMTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMTreeSnapshot)
+* [`DOMSnapshot.TextBoxSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-TextBoxSnapshot)
+* [`DOMSnapshot.LayoutTreeSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeSnapshot)
+* [`DOMSnapshot.StylesSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-StylesSnapshot)
+
+
+## Roll protocol to r571238
+###### _2018-06-28 13:16:10_ | Diff: [ca7022c...a63ed5b](https://github.com/ChromeDevTools/devtools-protocol/compare/ca7022c...a63ed5b)
+#### `DOM`: new command
+* [`DOM.getContentQuads`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getContentQuads)
+
+
+## Roll protocol to r568337
+###### _2018-06-18 21:15:42_ | Diff: [6e2dac6...0905e28](https://github.com/ChromeDevTools/devtools-protocol/compare/6e2dac6...0905e28)
+#### `Network`: modified type
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - The enum's `collapsed-by-client` _added_.
+
+
+## Roll protocol to r567107
+###### _2018-06-13 20:15:40_ | Diff: [b8a5362...6e2dac6](https://github.com/ChromeDevTools/devtools-protocol/compare/b8a5362...6e2dac6)
+#### `Target`: new command
+* [`Target.exposeDevToolsProtocol`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-exposeDevToolsProtocol)
+
+
+## Roll protocol to r565882
+###### _2018-06-09 08:15:49_ | Diff: [034b051...b8a5362](https://github.com/ChromeDevTools/devtools-protocol/compare/034b051...b8a5362)
+#### `Page`: modified type
+* [`Page.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ResourceType) - The enum's `Other` _updated_. The enum's `CSPViolationReport` _added_. The enum's `Other` _added_.
+
+
+## Roll protocol to r565873
+###### _2018-06-09 01:15:38_ | Diff: [ef21b44...034b051](https://github.com/ChromeDevTools/devtools-protocol/compare/ef21b44...034b051)
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `headers` in the properties had `$ref` _removed_. The `postData` in the properties had `optional` _removed_. The `postData` in the properties had `type` _removed_. The `mixedContentType` in the properties had `$ref` _removed_. The `referrerPolicy` in the properties had `type` _removed_. The `referrerPolicy` in the properties had `enum` _removed_. The `isLinkPreload` in the properties had `optional` _removed_. The `url` in the properties had `description` _updated_. The `method` in the properties had `name` _updated_. The `method` in the properties had `description` _updated_. The `headers` in the properties had `name` _updated_. The `headers` in the properties had `description` _updated_. The `postData` in the properties had `name` _updated_. The `postData` in the properties had `description` _updated_. The `hasPostData` in the properties had `name` _updated_. The `hasPostData` in the properties had `description` _updated_. The `hasPostData` in the properties had `type` _updated_. The `mixedContentType` in the properties had `name` _updated_. The `mixedContentType` in the properties had `description` _updated_. The `initialPriority` in the properties had `name` _updated_. The `initialPriority` in the properties had `description` _updated_. The `initialPriority` in the properties had `$ref` _updated_. The `referrerPolicy` in the properties had `name` _updated_. The `referrerPolicy` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `name` _updated_. The `isLinkPreload` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `type` _updated_. The properties's `optional` _added_ (2 times). The properties's `type` _added_ (2 times). The properties's `$ref` _added_ (2 times). The properties's `enum` _added_. The properties's `isLinkPreload` _added_.
+
+
+## Roll protocol to r565161
+###### _2018-06-06 20:15:42_ | Diff: [e6b9650...ef21b44](https://github.com/ChromeDevTools/devtools-protocol/compare/e6b9650...ef21b44)
+#### `Page`: new command
+* [`Page.setFontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontSizes)
+#### `Page`: modified command
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies) - `description` updated. The `fontFamilies` in the parameters had `description` _updated_.
+#### `Page`: new type
+* [`Page.FontSizes`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontSizes)
+
+
+## Roll protocol to r564968
+###### _2018-06-06 11:15:47_ | Diff: [78ab8c3...e6b9650](https://github.com/ChromeDevTools/devtools-protocol/compare/78ab8c3...e6b9650)
+#### `Network`: modified event
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished) - The `blockedCrossSiteDocument` in the parameters had `name` _updated_. The `blockedCrossSiteDocument` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r564939
+###### _2018-06-06 10:16:18_ | Diff: [8cc61c7...78ab8c3](https://github.com/ChromeDevTools/devtools-protocol/compare/8cc61c7...78ab8c3)
+#### `Page`: new command
+* [`Page.setFontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setFontFamilies)
+#### `Page`: new type
+* [`Page.FontFamilies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FontFamilies)
+
+
+## Roll protocol to r564874
+###### _2018-06-06 07:16:13_ | Diff: [3bb6299...8cc61c7](https://github.com/ChromeDevTools/devtools-protocol/compare/3bb6299...8cc61c7)
+#### `Runtime`: modified command
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding) - `description` updated. The parameters's `executionContextId` _added_.
+
+
+## Roll protocol to r564725
+###### _2018-06-05 17:15:41_ | Diff: [2c9e648...3bb6299](https://github.com/ChromeDevTools/devtools-protocol/compare/2c9e648...3bb6299)
+#### `Emulation`: new command
+* [`Emulation.setDocumentCookieDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDocumentCookieDisabled)
+
+
+## Roll protocol to r564347
+###### _2018-06-04 19:15:53_ | Diff: [e5023ab...2c9e648](https://github.com/ChromeDevTools/devtools-protocol/compare/e5023ab...2c9e648)
+#### `Runtime`: new command
+* [`Runtime.setMaxCallStackSizeToCapture`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setMaxCallStackSizeToCapture)
+
+
+## Roll protocol to r563930 554653 554626
+###### _2018-06-01 22:15:40_ | Diff: [92b6b49...170e987](https://github.com/ChromeDevTools/devtools-protocol/compare/92b6b49...170e987)
+#### `Runtime`: new commands
+* [`Runtime.addBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-addBinding)
+* [`Runtime.removeBinding`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-removeBinding)
+#### `Runtime`: new event
+* [`Runtime.bindingCalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-bindingCalled)
+
+
+## Roll protocol to r563694
+###### _2018-06-01 10:15:46_ | Diff: [686864e...38129ec](https://github.com/ChromeDevTools/devtools-protocol/compare/686864e...38129ec)
+#### `Runtime`: new command
+* [`Runtime.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-setAsyncCallStackDepth)
+
+
+## Roll protocol to r563547
+###### _2018-05-31 23:15:35_ | Diff: [8490a4e...686864e](https://github.com/ChromeDevTools/devtools-protocol/compare/8490a4e...686864e)
+#### `Target`: new event
+* [`Target.targetCrashed`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetCrashed)
+
+
+## Roll protocol to r563180
+###### _2018-05-31 01:15:44_ | Diff: [a53449b...8490a4e](https://github.com/ChromeDevTools/devtools-protocol/compare/a53449b...8490a4e)
+#### `Network`: new types
+* [`Network.SignedExchangeErrorField`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeErrorField)
+* [`Network.SignedExchangeError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeError)
+#### `Network`: modified type
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo) - The `errors` in the properties had `type` _removed_. The `3` in the properties had `$ref` _added_.
+
+
+## Roll protocol to r562716
+###### _2018-05-29 20:15:40_ | Diff: [1c585c3...a53449b](https://github.com/ChromeDevTools/devtools-protocol/compare/1c585c3...a53449b)
+#### `Emulation`: new command
+* [`Emulation.setScrollbarsHidden`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScrollbarsHidden)
+
+
+## Roll protocol to r562010
+###### _2018-05-25 14:17:24_ | Diff: [05729d1...1c585c3](https://github.com/ChromeDevTools/devtools-protocol/compare/05729d1...1c585c3)
+#### `Emulation`: new command
+* [`Emulation.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setUserAgentOverride)
+#### `Emulation`: modified command
+* [`Emulation.setNavigatorOverrides`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setNavigatorOverrides) - `deprecated` added.
+#### `Network`: modified command
+* [`Network.setUserAgentOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setUserAgentOverride) - `redirect` added. The parameters's `acceptLanguage` _added_. The parameters's `platform` _added_.
+
+
+## Roll protocol to r561764
+###### _2018-05-24 21:16:41_ | Diff: [7369468...05729d1](https://github.com/ChromeDevTools/devtools-protocol/compare/7369468...05729d1)
+#### `Network`: modified type
+* [`Network.SignedExchangeSignature`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeSignature) - The `integrity` in the properties had `name` _updated_. The `integrity` in the properties had `description` _updated_. The `certUrl` in the properties had `name` _updated_. The `certUrl` in the properties had `description` _updated_. The `validityUrl` in the properties had `name` _updated_. The `validityUrl` in the properties had `description` _updated_. The `date` in the properties had `name` _updated_. The `date` in the properties had `description` _updated_. The `date` in the properties had `type` _updated_. The `expires` in the properties had `name` _updated_. The `expires` in the properties had `description` _updated_. The `expires` in the properties had `type` _updated_. The properties's `optional` _added_ (2 times). The properties's `date` _added_. The properties's `expires` _added_. The properties's `certificates` _added_.
+
+
+## Roll protocol to r560325
+###### _2018-05-21 12:16:45_ | Diff: [375788c...7369468](https://github.com/ChromeDevTools/devtools-protocol/compare/375788c...7369468)
+#### `DOMSnapshot`: new commands
+* [`DOMSnapshot.disable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-disable)
+* [`DOMSnapshot.enable`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-enable)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `originURL` _added_.
+
+
+## Roll protocol to r560288
+###### _2018-05-21 10:16:32_ | Diff: [9ba7e8e...375788c](https://github.com/ChromeDevTools/devtools-protocol/compare/9ba7e8e...375788c)
+#### `Network`: modified type
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The `type` in the properties had `other` _updated_. The `url` in the properties had `description` _updated_. The `0` in the properties had `other` _added_.
+
+
+## Roll protocol to r559758
+###### _2018-05-17 18:17:25_ | Diff: [f1dbfcc...9ba7e8e](https://github.com/ChromeDevTools/devtools-protocol/compare/f1dbfcc...9ba7e8e)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The return value's `virtualTimeTicksBase` _removed_. The `virtualTimeBase` in the return value had `$ref` _removed_. The `virtualTimeBase` in the return value had `name` _updated_. The `virtualTimeBase` in the return value had `description` _updated_. The return value's `type` _added_.
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The parameters's `interval` _removed_. The parameters's `noDisplayUpdates` _removed_. The parameters's `screenshot` _removed_. The `frameTime` in the parameters had `$ref` _removed_. The `deadline` in the parameters had `$ref` _removed_. The `deadlineTicks` in the parameters had `type` _removed_. The `frameTime` in the parameters had `name` _updated_. The `frameTime` in the parameters had `description` _updated_. The `frameTimeTicks` in the parameters had `name` _updated_. The `frameTimeTicks` in the parameters had `description` _updated_. The `deadline` in the parameters had `name` _updated_. The `deadline` in the parameters had `description` _updated_. The `deadlineTicks` in the parameters had `name` _updated_. The `deadlineTicks` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_.
+
+
+## Roll protocol to r559378
+###### _2018-05-16 18:17:29_ | Diff: [fbaebb8...f1dbfcc](https://github.com/ChromeDevTools/devtools-protocol/compare/fbaebb8...f1dbfcc)
+#### `Network`: new types
+* [`Network.SignedExchangeSignature`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeSignature)
+* [`Network.SignedExchangeHeader`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeHeader)
+#### `Network`: modified type
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo) - The properties's `header` _added_. The properties's `securityDetails` _added_. The properties's `errors` _added_.
+
+
+## Roll protocol to r558951
+###### _2018-05-15 20:17:16_ | Diff: [089aa20...fbaebb8](https://github.com/ChromeDevTools/devtools-protocol/compare/089aa20...fbaebb8)
+#### `Network`: modified type
+* [`Network.ErrorReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ErrorReason) - The enum's `BlockedByClient` _added_. The enum's `BlockedByResponse` _added_.
+
+
+## Roll protocol to r558587
+###### _2018-05-14 19:17:03_ | Diff: [981276a...089aa20](https://github.com/ChromeDevTools/devtools-protocol/compare/981276a...089aa20)
+#### `HeadlessExperimental`: removed command
+* [`HeadlessExperimental.enterDeterministicMode`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enterDeterministicMode)
+
+
+## Roll protocol to r558111
+###### _2018-05-11 21:17:36_ | Diff: [50de366...981276a](https://github.com/ChromeDevTools/devtools-protocol/compare/50de366...981276a)
+#### `Network`: modified type
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - The enum's `csp` _updated_. The enum's `mixed-content` _updated_. The enum's `origin` _updated_. The enum's `inspector` _updated_. The enum's `subresource-filter` _updated_. The enum's `content-type` _updated_. The enum's `other` _updated_.
+
+
+## Roll protocol to r557426
+###### _2018-05-09 19:16:30_ | Diff: [2dd2129...50de366](https://github.com/ChromeDevTools/devtools-protocol/compare/2dd2129...50de366)
+#### `Page`: modified type
+* [`Page.ResourceType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ResourceType) - The enum's `Other` _updated_. The enum's `Other` _added_.
+
+
+## Roll protocol to r557245
+###### _2018-05-09 11:16:32_ | Diff: [fe1ebc7...2dd2129](https://github.com/ChromeDevTools/devtools-protocol/compare/fe1ebc7...2dd2129)
+#### `Network`: new event
+* [`Network.signedExchangeReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-signedExchangeReceived)
+#### `Network`: new type
+* [`Network.SignedExchangeInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedExchangeInfo)
+
+
+## Roll protocol to r556981
+###### _2018-05-08 15:17:35_ | Diff: [eef9084...fe1ebc7](https://github.com/ChromeDevTools/devtools-protocol/compare/eef9084...fe1ebc7)
+#### `Target`: new command
+* [`Target.getBrowserContexts`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getBrowserContexts)
+
+
+## Roll protocol to r556911
+###### _2018-05-08 12:17:45_ | Diff: [c3f4857...eef9084](https://github.com/ChromeDevTools/devtools-protocol/compare/c3f4857...eef9084)
+#### `Target`: modified commands
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `browserContextId` in the parameters had `description` _updated_.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - `description` updated.
+
+
+## Roll protocol to r556284
+###### _2018-05-04 18:16:12_ | Diff: [e638d2b...c3f4857](https://github.com/ChromeDevTools/devtools-protocol/compare/e638d2b...c3f4857)
+#### `Target`: modified commands
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `browserContextId` in the parameters had `description` _updated_.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - `description` updated.
+
+
+## Roll protocol to r555991
+###### _2018-05-03 22:17:28_ | Diff: [7fff91e...e638d2b](https://github.com/ChromeDevTools/devtools-protocol/compare/7fff91e...e638d2b)
+#### `Network`: modified type
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - The enum's `other` _updated_. The enum's `other` _added_.
+
+
+## Roll protocol to r555920
+###### _2018-05-03 17:17:33_ | Diff: [71093c0...7fff91e](https://github.com/ChromeDevTools/devtools-protocol/compare/71093c0...7fff91e)
+#### `Accessibility`: modified type
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName) - The enum's `haspopup` _updated_.
+
+
+## Roll protocol to r555642
+###### _2018-05-02 18:17:15_ | Diff: [1bac408...71093c0](https://github.com/ChromeDevTools/devtools-protocol/compare/1bac408...71093c0)
+#### `Target`: modified commands
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `browserContextId` in the parameters had `description` _updated_.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - `description` updated.
+
+
+## Roll protocol to r555444
+###### _2018-05-02 10:16:49_ | Diff: [3db7418...847cc8f](https://github.com/ChromeDevTools/devtools-protocol/compare/3db7418...847cc8f)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The parameters's `initialVirtualTime` _added_.
+
+
+## Roll protocol to r555290
+###### _2018-05-01 19:36:15_ | Diff: [a4e1551...3f3afae](https://github.com/ChromeDevTools/devtools-protocol/compare/a4e1551...3f3afae)
+#### `Debugger`: modified command
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The parameters's `timeout` _added_.
+#### `IO`: modified command
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The `offset` in the parameters had `description` _updated_.
+#### `Network`: new command
+* [`Network.takeResponseBodyForInterceptionAsStream`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-takeResponseBodyForInterceptionAsStream)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `authChallenge` in the parameters had `$ref` _removed_. The `responseStatusCode` in the parameters had `type` _removed_. The `responseHeaders` in the parameters had `$ref` _removed_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `type` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The `responseErrorReason` in the parameters had `name` _updated_. The `responseErrorReason` in the parameters had `description` _updated_. The `responseErrorReason` in the parameters had `$ref` _updated_. The `responseStatusCode` in the parameters had `name` _updated_. The `responseStatusCode` in the parameters had `description` _updated_. The `responseHeaders` in the parameters had `name` _updated_. The `responseHeaders` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_. The parameters's `responseHeaders` _added_.
+#### `Page`: new commands
+* [`Page.close`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-close)
+* [`Page.setWebLifecycleState`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setWebLifecycleState)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The properties's `browserContextId` _added_.
+
+
+## Roll protocol to r552984
+###### _2018-04-23 20:15:56_ | Diff: [be9625a...f92b9bc](https://github.com/ChromeDevTools/devtools-protocol/compare/be9625a...f92b9bc)
+#### `Debugger`: new command
+* [`Debugger.setBreakpointOnFunctionCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointOnFunctionCall)
+
+
+## Roll protocol to r551066
+###### _2018-04-16 12:16:51_ | Diff: [fcfcf97...be9625a](https://github.com/ChromeDevTools/devtools-protocol/compare/fcfcf97...be9625a)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - The parameters's `includeUserAgentShadowTree` _added_.
+
+
+## Roll protocol to r550912
+###### _2018-04-14 21:15:26_ | Diff: [3d34c50...fcfcf97](https://github.com/ChromeDevTools/devtools-protocol/compare/3d34c50...fcfcf97)
+#### `CSS`: modified command
+* [`CSS.getStyleSheetText`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getStyleSheetText) - `description` updated.
+
+
+## Roll protocol to r550912
+###### _2018-04-14 20:16:17_ | Diff: [82883de...4e76695](https://github.com/ChromeDevTools/devtools-protocol/compare/82883de...4e76695)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `timeout` _added_.
+#### `Runtime`: new type
+* [`Runtime.TimeDelta`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-TimeDelta)
+
+
+## Roll protocol to r549285
+###### _2018-04-09 14:42:08_ | Diff: [269e3b9...d3103cb](https://github.com/ChromeDevTools/devtools-protocol/compare/269e3b9...d3103cb)
+#### `Accessibility`: modified command
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree) - The `fetchRelatives` in the parameters had `type` _removed_. The `nodeId` in the parameters had `description` _updated_. The `fetchRelatives` in the parameters had `name` _updated_. The `fetchRelatives` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `$ref` _added_. The parameters's `objectId` _added_. The parameters's `fetchRelatives` _added_.
+
+
+## Roll protocol to r548694 546310
+###### _2018-04-05 23:16:18_ | Diff: [8dcb075...b4e9799](https://github.com/ChromeDevTools/devtools-protocol/compare/8dcb075...b4e9799)
+#### `Page`: new event
+* [`Page.navigatedWithinDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigatedWithinDocument)
+
+
+## Roll protocol to r548678
+###### _2018-04-05 22:16:22_ | Diff: [1c8a690...8dcb075](https://github.com/ChromeDevTools/devtools-protocol/compare/1c8a690...8dcb075)
+#### `Network`: new type
+* [`Network.CertificateTransparencyCompliance`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CertificateTransparencyCompliance)
+#### `Network`: modified type
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails) - The properties's `certificateTransparencyCompliance` _added_.
+
+
+## Roll protocol to r548607
+###### _2018-04-05 16:16:34_ | Diff: [9ce98fd...1c8a690](https://github.com/ChromeDevTools/devtools-protocol/compare/9ce98fd...1c8a690)
+#### `Page`: new command
+* [`Page.setBypassCSP`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setBypassCSP)
+
+
+## Roll protocol to r548385
+###### _2018-04-05 04:15:56_ | Diff: [028a567...9ce98fd](https://github.com/ChromeDevTools/devtools-protocol/compare/028a567...9ce98fd)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The return value's `virtualTimeTicksBase` _added_.
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The `deadline` in the parameters had `$ref` _removed_. The `interval` in the parameters had `type` _removed_. The `screenshot` in the parameters had `$ref` _removed_. The `frameTime` in the parameters had `description` _updated_. The `deadline` in the parameters had `name` _updated_. The `deadline` in the parameters had `description` _updated_. The `interval` in the parameters had `name` _updated_. The `interval` in the parameters had `description` _updated_. The `noDisplayUpdates` in the parameters had `name` _updated_. The `noDisplayUpdates` in the parameters had `description` _updated_. The `noDisplayUpdates` in the parameters had `type` _updated_. The `screenshot` in the parameters had `name` _updated_. The `screenshot` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_. The parameters's `noDisplayUpdates` _added_. The parameters's `screenshot` _added_.
+
+
+## Roll protocol to r548216
+###### _2018-04-04 15:17:24_ | Diff: [20d9703...86650dd](https://github.com/ChromeDevTools/devtools-protocol/compare/20d9703...86650dd)
+#### `Page`: modified event
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening) - The `defaultPrompt` in the parameters had `optional` _removed_. The `defaultPrompt` in the parameters had `name` _updated_. The `defaultPrompt` in the parameters had `description` _updated_. The `defaultPrompt` in the parameters had `type` _updated_. The parameters's `defaultPrompt` _added_.
+
+
+## Roll protocol to r547073
+###### _2018-03-29 19:17:03_ | Diff: [e367b98...914920e](https://github.com/ChromeDevTools/devtools-protocol/compare/e367b98...914920e)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The `headerTemplate` in the parameters had `description` _updated_.
+#### `Security`: modified command
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors) - `description` updated.
+#### `Security`: modified event
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError) - `description` updated.
+
+
+## Roll protocol to r544660
+###### _2018-03-21 03:16:20_ | Diff: [e4fc001...f5b1e8d](https://github.com/ChromeDevTools/devtools-protocol/compare/e4fc001...f5b1e8d)
+#### `Runtime`: new commands
+* [`Runtime.getIsolateId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getIsolateId)
+* [`Runtime.getHeapUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getHeapUsage)
+
+
+## Roll protocol to r544006
+###### _2018-03-19 04:16:53_ | Diff: [250bac6...e4fc001](https://github.com/ChromeDevTools/devtools-protocol/compare/250bac6...e4fc001)
+#### `Runtime`: new command
+* [`Runtime.terminateExecution`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-terminateExecution)
+
+
+## Roll protocol to r543304
+###### _2018-03-14 21:16:19_ | Diff: [792ac23...250bac6](https://github.com/ChromeDevTools/devtools-protocol/compare/792ac23...250bac6)
+#### `Runtime`: modified command
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects) - The parameters's `objectGroup` _added_.
+
+
+## Roll protocol to r542783
+###### _2018-03-13 06:16:56_ | Diff: [73a2c13...792ac23](https://github.com/ChromeDevTools/devtools-protocol/compare/73a2c13...792ac23)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - The parameters's `includePaintOrder` _added_.
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - The `startCharacterIndex` in the properties had `description` _updated_. The `numCharacters` in the properties had `description` _updated_.
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The properties's `paintOrder` _added_.
+
+
+## Roll protocol to r542397
+###### _2018-03-11 03:15:46_ | Diff: [551a1eb...73a2c13](https://github.com/ChromeDevTools/devtools-protocol/compare/551a1eb...73a2c13)
+#### `Runtime`: modified types
+* [`Runtime.UnserializableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UnserializableValue) - `description` updated.
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `0` in the properties had `bigint` _added_.
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview) - The `0` in the properties had `bigint` _added_.
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview) - The `1` in the properties had `bigint` _added_.
+
+
+## Roll protocol to r541521
+###### _2018-03-07 11:15:56 -0800_ | Diff: [6ddf2d1...551a1eb](https://github.com/ChromeDevTools/devtools-protocol/compare/6ddf2d1...551a1eb)
+#### `Network`: modified event
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The parameters's `hasUserGesture` _added_.
+
+
+## Roll protocol to r541407
+###### _2018-03-07 03:17:31 -0800_ | Diff: [3941055...6ddf2d1](https://github.com/ChromeDevTools/devtools-protocol/compare/3941055...6ddf2d1)
+#### `Browser`: new command
+* [`Browser.getBrowserCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getBrowserCommandLine)
+#### `Browser`: removed command
+* [`Browser.getCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getCommandLine)
+
+
+## Roll protocol to r540852
+###### _2018-03-05 09:16:30 -0800_ | Diff: [9aebc2d...7fc80c6](https://github.com/ChromeDevTools/devtools-protocol/compare/9aebc2d...7fc80c6)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `throwOnSideEffect` _added_.
+
+
+## Roll protocol to r540814
+###### _2018-03-05 06:16:48 -0800_ | Diff: [3834095...9aebc2d](https://github.com/ChromeDevTools/devtools-protocol/compare/3834095...9aebc2d)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `throwOnSideEffect` _removed_.
+
+
+## Roll protocol to r540805
+###### _2018-03-05 04:16:24 -0800_ | Diff: [e392c1f...3834095](https://github.com/ChromeDevTools/devtools-protocol/compare/e392c1f...3834095)
+#### `HeadlessExperimental`: new command
+* [`HeadlessExperimental.enterDeterministicMode`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enterDeterministicMode)
+
+
+## Roll protocol to r540693
+###### _2018-03-02 16:16:14 -0800_ | Diff: [0a8b4ea...e392c1f](https://github.com/ChromeDevTools/devtools-protocol/compare/0a8b4ea...e392c1f)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `throwOnSideEffect` _added_.
+
+
+## Roll protocol to r540265
+###### _2018-03-01 12:17:20 -0800_ | Diff: [dd5f03d...0a8b4ea](https://github.com/ChromeDevTools/devtools-protocol/compare/dd5f03d...0a8b4ea)
+#### `Memory`: modified type
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode) - The `count` in the properties had `name` _updated_. The `count` in the properties had `description` _updated_.
+
+
+## Roll protocol to r540157
+###### _2018-03-01 07:16:55 -0800_ | Diff: [392d86b...dd5f03d](https://github.com/ChromeDevTools/devtools-protocol/compare/392d86b...dd5f03d)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `throwOnSideEffect` _removed_.
+
+
+## Roll protocol to r540149
+###### _2018-03-01 06:17:13 -0800_ | Diff: [7b87f78...392d86b](https://github.com/ChromeDevTools/devtools-protocol/compare/7b87f78...392d86b)
+#### `CSS`: modified event
+* [`CSS.fontsUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-fontsUpdated) - `description` updated.
+#### `CSS`: new type
+* [`CSS.FontFace`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-FontFace)
+
+
+## Roll protocol to r540130
+###### _2018-03-01 04:16:43 -0800_ | Diff: [215f116...7b87f78](https://github.com/ChromeDevTools/devtools-protocol/compare/215f116...7b87f78)
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The return value's `screenshotData` _removed_. `description` updated. The `screenshot` in the parameters had `description` _updated_. The `hasDamage` in the return value had `description` _updated_. The `mainFrameContentUpdated` in the return value had `name` _updated_. The `mainFrameContentUpdated` in the return value had `description` _updated_. The `mainFrameContentUpdated` in the return value had `type` _updated_. The return value's `optional` _added_.
+#### `HeadlessExperimental`: removed event
+* [`HeadlessExperimental.mainFrameReadyForScreenshots`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-mainFrameReadyForScreenshots)
+
+
+## Roll protocol to r540125
+###### _2018-03-01 03:17:08 -0800_ | Diff: [5ef5fe2...215f116](https://github.com/ChromeDevTools/devtools-protocol/compare/5ef5fe2...215f116)
+#### `Browser`: new command
+* [`Browser.getCommandLine`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getCommandLine)
+
+
+## Roll protocol to r540081
+###### _2018-02-28 23:16:47 -0800_ | Diff: [6d37388...5ef5fe2](https://github.com/ChromeDevTools/devtools-protocol/compare/6d37388...5ef5fe2)
+#### `Runtime`: modified command
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The parameters's `throwOnSideEffect` _added_.
+
+
+## Roll protocol to r539359
+###### _2018-02-26 17:17:01 -0800_ | Diff: [c1c234c...6d37388](https://github.com/ChromeDevTools/devtools-protocol/compare/c1c234c...6d37388)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `isClickable` in the properties had `type` _removed_. The `eventListeners` in the properties had `items` _removed_. The `isClickable` in the properties had `name` _updated_. The `isClickable` in the properties had `description` _updated_. The `eventListeners` in the properties had `name` _updated_. The `eventListeners` in the properties had `description` _updated_. The `eventListeners` in the properties had `type` _updated_. The `currentSourceURL` in the properties had `name` _updated_. The `currentSourceURL` in the properties had `description` _updated_. The `currentSourceURL` in the properties had `type` _updated_. The properties's `$ref` _added_. The properties's `items` _added_. The properties's `currentSourceURL` _added_.
+
+
+## Roll protocol to r536902
+###### _2018-02-14 16:16:08 -0800_ | Diff: [28c2256...4bb1064](https://github.com/ChromeDevTools/devtools-protocol/compare/28c2256...4bb1064)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - The `startCharacterIndex` in the properties had `description` _updated_. The `numCharacters` in the properties had `description` _updated_.
+
+
+## Roll protocol to r535969
+###### _2018-02-10 00:15:46 -0800_ | Diff: [33149ca...28c2256](https://github.com/ChromeDevTools/devtools-protocol/compare/33149ca...28c2256)
+#### `Memory`: new command
+* [`Memory.getBrowserSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getBrowserSamplingProfile)
+#### `Memory`: modified command
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile) - `description` updated.
+
+
+## Roll protocol to r533104
+###### _2018-01-30 16:16:07 -0800_ | Diff: [50ba84b...a1f43fb](https://github.com/ChromeDevTools/devtools-protocol/compare/50ba84b...a1f43fb)
+#### `Target`: removed command
+* [`Target.setAttachToFrames`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAttachToFrames)
+
+
+## Roll protocol to r532981
+###### _2018-01-30 11:15:57 -0800_ | Diff: [449767c...1a3a261](https://github.com/ChromeDevTools/devtools-protocol/compare/449767c...1a3a261)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The parameters's `preferCSSPageSize` _added_.
+
+
+## Roll protocol to r532683
+###### _2018-01-29 16:16:05 -0800_ | Diff: [e3e1778...449767c](https://github.com/ChromeDevTools/devtools-protocol/compare/e3e1778...449767c)
+#### `CSS`: modified command
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking) - `description` updated.
+
+
+## Roll protocol to r532239
+###### _2018-01-27 10:15:37 -0800_ | Diff: [c80303f...e3e1778](https://github.com/ChromeDevTools/devtools-protocol/compare/c80303f...e3e1778)
+#### `Memory`: new command
+* [`Memory.getAllTimeSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getAllTimeSamplingProfile)
+#### `Memory`: modified command
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile) - `description` updated.
+
+
+## Roll protocol to r532143
+###### _2018-01-26 19:15:57 -0800_ | Diff: [38926f7...c80303f](https://github.com/ChromeDevTools/devtools-protocol/compare/38926f7...c80303f)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The parameters's `frameId` _added_.
+
+
+## Roll protocol to r531658
+###### _2018-01-24 12:15:46 -0800_ | Diff: [dfe55cf...38926f7](https://github.com/ChromeDevTools/devtools-protocol/compare/dfe55cf...38926f7)
+#### `Inspector`: new event
+* [`Inspector.targetReloadedAfterCrash`](https://chromedevtools.github.io/devtools-protocol/tot/Inspector/#event-targetReloadedAfterCrash)
+
+
+## Roll protocol to r531129
+###### _2018-01-22 18:16:00 -0800_ | Diff: [77a647f...dfe55cf](https://github.com/ChromeDevTools/devtools-protocol/compare/77a647f...dfe55cf)
+#### `Input`: modified command
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `timestamp` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r530993
+###### _2018-01-22 13:15:56 -0800_ | Diff: [1ecb1dc...77a647f](https://github.com/ChromeDevTools/devtools-protocol/compare/1ecb1dc...77a647f)
+#### `Memory`: new commands
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: new types
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+
+
+## Roll protocol to r530967
+###### _2018-01-22 12:15:52 -0800_ | Diff: [bf24ee4...1ecb1dc](https://github.com/ChromeDevTools/devtools-protocol/compare/bf24ee4...1ecb1dc)
+#### `Input`: modified command
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `timestamp` in the parameters had `$ref` _removed_. The `button` in the parameters had `type` _removed_. The `button` in the parameters had `enum` _removed_. The `timestamp` in the parameters had `name` _updated_. The `timestamp` in the parameters had `description` _updated_. The `button` in the parameters had `name` _updated_. The `button` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `enum` _added_. The parameters's `optional` _added_. The parameters's `$ref` _added_.
+
+
+## Roll protocol to r530836
+###### _2018-01-22 03:16:04 -0800_ | Diff: [8f8d2e4...bf24ee4](https://github.com/ChromeDevTools/devtools-protocol/compare/8f8d2e4...bf24ee4)
+#### `Memory`: removed commands
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: removed types
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+
+
+## Roll protocol to r530755
+###### _2018-01-19 21:15:46 -0800_ | Diff: [e813152...8f8d2e4](https://github.com/ChromeDevTools/devtools-protocol/compare/e813152...8f8d2e4)
+#### `DOM`: new command
+* [`DOM.getFrameOwner`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFrameOwner)
+#### `Memory`: new commands
+* [`Memory.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-startSampling)
+* [`Memory.stopSampling`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-stopSampling)
+* [`Memory.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-getSamplingProfile)
+#### `Memory`: new types
+* [`Memory.SamplingProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfileNode)
+* [`Memory.SamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#type-SamplingProfile)
+
+
+## Roll protocol to r530611
+###### _2018-01-19 13:15:39 -0800_ | Diff: [f46e9df...e813152](https://github.com/ChromeDevTools/devtools-protocol/compare/f46e9df...e813152)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `currentSourceURL` _added_.
+
+
+## Roll protocol to r529963
+###### _2018-01-17 16:16:10 -0800_ | Diff: [d388c24...f46e9df](https://github.com/ChromeDevTools/devtools-protocol/compare/d388c24...f46e9df)
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The `screenshot` in the parameters had `$ref` _removed_. The `screenshot` in the parameters had `name` _updated_. The `screenshot` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `screenshot` _added_.
+
+
+## Roll protocol to r528753
+###### _2018-01-11 13:15:46 -0800_ | Diff: [ffcb5e6...252a483](https://github.com/ChromeDevTools/devtools-protocol/compare/ffcb5e6...252a483)
+#### `Network`: new command
+* [`Network.getRequestPostData`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getRequestPostData)
+#### `Network`: modified command
+* [`Network.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enable) - The parameters's `maxPostDataSize` _added_.
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `mixedContentType` in the properties had `$ref` _removed_. The `referrerPolicy` in the properties had `type` _removed_. The `referrerPolicy` in the properties had `enum` _removed_. The `isLinkPreload` in the properties had `optional` _removed_. The `mixedContentType` in the properties had `name` _updated_. The `mixedContentType` in the properties had `description` _updated_. The `initialPriority` in the properties had `name` _updated_. The `initialPriority` in the properties had `description` _updated_. The `initialPriority` in the properties had `$ref` _updated_. The `referrerPolicy` in the properties had `name` _updated_. The `referrerPolicy` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `name` _updated_. The `isLinkPreload` in the properties had `description` _updated_. The `isLinkPreload` in the properties had `type` _updated_. The properties's `type` _added_. The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `enum` _added_. The properties's `isLinkPreload` _added_.
+
+
+## Roll protocol to r528498
+###### _2018-01-10 16:15:41 -0800_ | Diff: [75a38f8...ffcb5e6](https://github.com/ChromeDevTools/devtools-protocol/compare/75a38f8...ffcb5e6)
+#### `Browser`: new commands
+* [`Browser.getHistograms`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistograms)
+* [`Browser.getHistogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getHistogram)
+#### `Browser`: new types
+* [`Browser.Bucket`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bucket)
+* [`Browser.Histogram`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Histogram)
+
+
+## Roll protocol to r528271
+###### _2018-01-10 02:15:56 -0800_ | Diff: [ba5cbc1...75a38f8](https://github.com/ChromeDevTools/devtools-protocol/compare/ba5cbc1...75a38f8)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The parameters's `waitForNavigation` _added_.
+
+
+## Roll protocol to r528237
+###### _2018-01-09 20:15:50 -0800_ | Diff: [978dbaa...ba5cbc1](https://github.com/ChromeDevTools/devtools-protocol/compare/978dbaa...ba5cbc1)
+#### `Page`: new command
+* [`Page.crash`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-crash)
+
+
+## Roll protocol to r527612
+###### _2018-01-08 04:15:43 -0800_ | Diff: [0f2584d...978dbaa](https://github.com/ChromeDevTools/devtools-protocol/compare/0f2584d...978dbaa)
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - The parameters's `includeEventListeners` _added_.
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `eventListeners` _added_.
+
+
+## Roll protocol to r526633
+###### _2018-01-02 22:15:35 -0800_ | Diff: [cc1c2f4...0f2584d](https://github.com/ChromeDevTools/devtools-protocol/compare/cc1c2f4...0f2584d)
+#### `Network`: modified event
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished) - The parameters's `blockedCrossSiteDocument` _added_.
+
+
+## Roll protocol to r526584
+###### _2018-01-02 18:15:45 -0800_ | Diff: [5f10915...cc1c2f4](https://github.com/ChromeDevTools/devtools-protocol/compare/5f10915...cc1c2f4)
+#### `Page`: removed command
+* [`Page.setAutoAttachToCreatedPages`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setAutoAttachToCreatedPages)
+
+
+## Roll protocol to r525305
+###### _2017-12-20 03:16:10 -0800_ | Diff: [5325d5e...5f10915](https://github.com/ChromeDevTools/devtools-protocol/compare/5325d5e...5f10915)
+#### `Security`: new command
+* [`Security.setIgnoreCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setIgnoreCertificateErrors)
+#### `Security`: modified commands
+* [`Security.handleCertificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-handleCertificateError) - `deprecated` added.
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors) - `deprecated` added.
+#### `Security`: modified event
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r524155
+###### _2017-12-14 12:15:45 -0800_ | Diff: [0956b7c...5325d5e](https://github.com/ChromeDevTools/devtools-protocol/compare/0956b7c...5325d5e)
+#### `Page`: modified command
+* [`Page.reload`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-reload) - The `scriptToEvaluateOnLoad` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r524136
+###### _2017-12-14 11:16:05 -0800_ | Diff: [1cdc73b...0956b7c](https://github.com/ChromeDevTools/devtools-protocol/compare/1cdc73b...0956b7c)
+#### `Security`: modified type
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The `mixedContentType` in the properties had `$ref` _removed_. The `certificate` in the properties had `type` _removed_. The `certificate` in the properties had `items` _removed_. The `summary` in the properties had `name` _updated_. The `summary` in the properties had `description` _updated_. The `description` in the properties had `name` _updated_. The `description` in the properties had `description` _updated_. The `mixedContentType` in the properties had `name` _updated_. The `mixedContentType` in the properties had `description` _updated_. The `certificate` in the properties had `name` _updated_. The `certificate` in the properties had `description` _updated_. The properties's `type` _added_. The properties's `$ref` _added_. The properties's `certificate` _added_.
+
+
+## Roll protocol to r523966
+###### _2017-12-13 17:15:41 -0800_ | Diff: [d620873...1cdc73b](https://github.com/ChromeDevTools/devtools-protocol/compare/d620873...1cdc73b)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The parameters's `headerTemplate` _added_. The parameters's `footerTemplate` _added_.
+
+
+## Roll protocol to r522771 520620
+###### _2017-12-08 05:15:43 -0800_ | Diff: [e755d8d...257859e](https://github.com/ChromeDevTools/devtools-protocol/compare/e755d8d...257859e)
+#### `Console`: modified command
+* [`Console.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-enable) - `description` updated.
+#### `Debugger`: modified commands
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable) - `description` updated.
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The `objectGroup` in the parameters had `description` _updated_. The `includeCommandLineAPI` in the parameters had `description` _updated_. The `silent` in the parameters had `description` _updated_.
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - `description` updated. The `end` in the parameters had `description` _updated_.
+* [`Debugger.scheduleStepIntoAsync`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-scheduleStepIntoAsync) - `description` updated.
+* [`Debugger.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setAsyncCallStackDepth) - The `maxDepth` in the parameters had `description` _updated_.
+* [`Debugger.setBlackboxPatterns`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxPatterns) - `description` updated.
+* [`Debugger.setBlackboxedRanges`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBlackboxedRanges) - `description` updated.
+* [`Debugger.setBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpoint) - The `condition` in the parameters had `description` _updated_.
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - `description` updated. The `urlRegex` in the parameters had `description` _updated_. The `condition` in the parameters had `description` _updated_.
+* [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions) - `description` updated.
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource) - The `dryRun` in the parameters had `description` _updated_.
+* [`Debugger.setVariableValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setVariableValue) - `description` updated. The `scopeNumber` in the parameters had `description` _updated_.
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto) - The `breakOnAsyncCall` in the parameters had `description` _updated_.
+#### `Debugger`: modified events
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `asyncCallStackTraceId` in the parameters had `description` _updated_.
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - `description` updated.
+#### `Debugger`: modified type
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope) - The `object` in the properties had `description` _updated_.
+#### `HeapProfiler`: modified commands
+* [`HeapProfiler.addInspectedHeapObject`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-addInspectedHeapObject) - `description` updated.
+* [`HeapProfiler.startSampling`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-startSampling) - The `samplingInterval` in the parameters had `description` _updated_.
+* [`HeapProfiler.stopTrackingHeapObjects`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-stopTrackingHeapObjects) - The `reportProgress` in the parameters had `description` _updated_.
+#### `HeapProfiler`: modified events
+* [`HeapProfiler.heapStatsUpdate`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-heapStatsUpdate) - The `statsUpdate` in the parameters had `description` _updated_.
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId) - `description` updated.
+#### `Profiler`: modified commands
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage) - `description` updated.
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage) - `description` updated.
+* [`Profiler.stopPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopPreciseCoverage) - `description` updated.
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - `description` updated.
+#### `Profiler`: modified types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode) - The `deoptReason` in the properties had `description` _updated_.
+* [`Profiler.Profile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-Profile) - The `timeDeltas` in the properties had `description` _updated_.
+#### `Runtime`: modified commands
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - `description` updated. The `objectId` in the parameters had `description` _updated_. The `arguments` in the parameters had `description` _updated_. The `silent` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_. The `executionContextId` in the parameters had `description` _updated_. The `objectGroup` in the parameters had `description` _updated_.
+* [`Runtime.compileScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-compileScript) - The `executionContextId` in the parameters had `description` _updated_.
+* [`Runtime.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-enable) - `description` updated.
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `silent` in the parameters had `description` _updated_. The `contextId` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_.
+* [`Runtime.getProperties`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-getProperties) - `description` updated. The `ownProperties` in the parameters had `description` _updated_. The `accessorPropertiesOnly` in the parameters had `description` _updated_.
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript) - The `executionContextId` in the parameters had `description` _updated_. The `silent` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_.
+#### `Runtime`: modified events
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled) - The `context` in the parameters had `description` _updated_.
+* [`Runtime.inspectRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-inspectRequested) - `description` updated.
+#### `Runtime`: modified types
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `unserializableValue` in the properties had `description` _updated_.
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor) - The `get` in the properties had `description` _updated_. The `set` in the properties had `description` _updated_. The `configurable` in the properties had `description` _updated_. The `enumerable` in the properties had `description` _updated_.
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - `description` updated.
+* [`Runtime.ExecutionContextDescription`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExecutionContextDescription) - The `id` in the properties had `description` _updated_.
+* [`Runtime.ExceptionDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ExceptionDetails) - `description` updated.
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace) - The `description` in the properties had `description` _updated_.
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId) - `description` updated.
+
+
+## Roll protocol to r522695
+###### _2017-12-07 19:16:02 -0800_ | Diff: [5cf9fe1...e755d8d](https://github.com/ChromeDevTools/devtools-protocol/compare/5cf9fe1...e755d8d)
+#### `IndexedDB`: new command
+* [`IndexedDB.deleteObjectStoreEntries`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteObjectStoreEntries)
+
+
+## Roll protocol to r522024
+###### _2017-12-05 22:15:31 -0800_ | Diff: [d7f4617...5cf9fe1](https://github.com/ChromeDevTools/devtools-protocol/compare/d7f4617...5cf9fe1)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `streamCompression` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r521951
+###### _2017-12-05 18:15:33 -0800_ | Diff: [ddbd496...d7f4617](https://github.com/ChromeDevTools/devtools-protocol/compare/ddbd496...d7f4617)
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `traceConfig` in the parameters had `name` _updated_. The `traceConfig` in the parameters had `$ref` _updated_. The parameters's `description` _added_. The parameters's `traceConfig` _added_.
+#### `Tracing`: modified event
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - The parameters's `streamCompression` _added_.
+#### `Tracing`: new type
+* [`Tracing.StreamCompression`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#type-StreamCompression)
+
+
+## Roll protocol to r521854
+###### _2017-12-05 14:15:34 -0800_ | Diff: [5e7327e...ddbd496](https://github.com/ChromeDevTools/devtools-protocol/compare/5e7327e...ddbd496)
+#### `Accessibility`: modified command
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree) - The `nodes` in the return value had `description` _updated_.
+#### `Accessibility`: modified type
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName) - `description` updated.
+#### `Animation`: modified type
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - The `cssId` in the properties had `description` _updated_.
+#### `ApplicationCache`: modified command
+* [`ApplicationCache.getFramesWithManifests`](https://chromedevtools.github.io/devtools-protocol/tot/ApplicationCache/#method-getFramesWithManifests) - `description` updated. The `frameIds` in the return value had `description` _updated_.
+#### `Audits`: modified command
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse) - `description` updated.
+#### `Browser`: modified commands
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds) - The `bounds` in the return value had `description` _updated_.
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget) - The `bounds` in the return value had `description` _updated_.
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds) - The `bounds` in the parameters had `description` _updated_.
+#### `CSS`: modified commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule) - `description` updated.
+* [`CSS.enable`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-enable) - `description` updated.
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState) - `description` updated.
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - The `backgroundColors` in the return value had `description` _updated_. The `computedFontWeight` in the return value had `description` _updated_.
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode) - `description` updated.
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode) - `description` updated.
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode) - `description` updated.
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta) - `description` updated.
+#### `CSS`: modified event
+* [`CSS.mediaQueryResultChanged`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#event-mediaQueryResultChanged) - `description` updated.
+#### `CSS`: modified types
+* [`CSS.StyleSheetOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-StyleSheetOrigin) - `description` updated.
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The `isInline` in the properties had `description` _updated_.
+* [`CSS.CSSRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSRule) - The `styleSheetId` in the properties had `description` _updated_. The `media` in the properties had `description` _updated_.
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage) - The `styleSheetId` in the properties had `description` _updated_.
+* [`CSS.CSSStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyle) - The `styleSheetId` in the properties had `description` _updated_.
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia) - The `source` in the properties had `description` _updated_. The `range` in the properties had `description` _updated_.
+* [`CSS.CSSKeyframeRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSKeyframeRule) - The `styleSheetId` in the properties had `description` _updated_.
+#### `DOM`: modified commands
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo) - `description` updated. The `insertBeforeNodeId` in the parameters had `description` _updated_.
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode) - `description` updated. The `depth` in the parameters had `description` _updated_. The `pierce` in the parameters had `description` _updated_.
+* [`DOM.discardSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-discardSearchResults) - `description` updated.
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument) - The `depth` in the parameters had `description` _updated_. The `pierce` in the parameters had `description` _updated_.
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument) - The `depth` in the parameters had `description` _updated_. The `pierce` in the parameters had `description` _updated_.
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults) - `description` updated.
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo) - The `insertBeforeNodeId` in the parameters had `description` _updated_.
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch) - `description` updated.
+* [`DOM.pushNodesByBackendIdsToFrontend`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-pushNodesByBackendIdsToFrontend) - The `nodeIds` in the return value had `description` _updated_.
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes) - `description` updated. The `depth` in the parameters had `description` _updated_. The `pierce` in the parameters had `description` _updated_.
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode) - `description` updated.
+* [`DOM.setAttributesAsText`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setAttributesAsText) - `description` updated. The `name` in the parameters had `description` _updated_.
+* [`DOM.setInspectedNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectedNode) - `description` updated.
+#### `DOM`: modified event
+* [`DOM.setChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes) - `description` updated.
+#### `DOM`: modified types
+* [`DOM.BackendNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNodeId) - `description` updated.
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - `description` updated. The `nodeId` in the properties had `description` _updated_.
+#### `DOMDebugger`: modified commands
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners) - The `depth` in the parameters had `description` _updated_. The `pierce` in the parameters had `description` _updated_.
+* [`DOMDebugger.setEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setEventListenerBreakpoint) - The `targetName` in the parameters had `description` _updated_.
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - `description` updated.
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `childNodeIndexes` in the properties had `description` _updated_. The `pseudoElementIndexes` in the properties had `description` _updated_. The `layoutNodeIndex` in the properties had `description` _updated_. The `contentDocumentIndex` in the properties had `description` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `description` _updated_. The `isClickable` in the properties had `description` _updated_.
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox) - `description` updated.
+#### `Emulation`: modified commands
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride) - `description` updated. The `color` in the parameters had `description` _updated_.
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - `description` updated. The `mobile` in the parameters had `description` _updated_. The `viewport` in the parameters had `description` _updated_.
+* [`Emulation.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setGeolocationOverride) - `description` updated.
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - `description` updated. The `budget` in the parameters had `description` _updated_. The `maxVirtualTimeTaskStarvationCount` in the parameters had `description` _updated_.
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize) - `description` updated.
+#### `Emulation`: modified events
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced) - The `virtualTimeElapsed` in the parameters had `description` _updated_.
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused) - The `virtualTimeElapsed` in the parameters had `description` _updated_.
+#### `Emulation`: modified type
+* [`Emulation.VirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#type-VirtualTimePolicy) - `description` updated.
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - `description` updated. The `frameTime` in the parameters had `description` _updated_. The `deadline` in the parameters had `description` _updated_. The `interval` in the parameters had `description` _updated_. The `screenshot` in the parameters had `description` _updated_. The `hasDamage` in the return value had `description` _updated_.
+#### `HeadlessExperimental`: modified event
+* [`HeadlessExperimental.mainFrameReadyForScreenshots`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-mainFrameReadyForScreenshots) - `description` updated.
+#### `IO`: modified command
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The `offset` in the parameters had `description` _updated_.
+#### `IO`: modified type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle) - `description` updated.
+#### `Input`: modified commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The `modifiers` in the parameters had `description` _updated_. The `text` in the parameters had `description` _updated_. The `unmodifiedText` in the parameters had `description` _updated_. The `key` in the parameters had `description` _updated_. The `location` in the parameters had `description` _updated_.
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `y` in the parameters had `description` _updated_. The `modifiers` in the parameters had `description` _updated_.
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - The `type` in the parameters had `description` _updated_. The `touchPoints` in the parameters had `description` _updated_. The `modifiers` in the parameters had `description` _updated_.
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `modifiers` in the parameters had `description` _updated_.
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture) - The `gestureSourceType` in the parameters had `description` _updated_.
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture) - The `xOverscroll` in the parameters had `description` _updated_. The `yOverscroll` in the parameters had `description` _updated_. The `gestureSourceType` in the parameters had `description` _updated_.
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture) - The `gestureSourceType` in the parameters had `description` _updated_.
+#### `Input`: modified type
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint) - The `y` in the properties had `description` _updated_.
+#### `LayerTree`: modified type
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer) - The `drawsContent` in the properties had `description` _updated_.
+#### `Log`: modified command
+* [`Log.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-enable) - `description` updated.
+#### `Network`: modified commands
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - `description` updated. The `errorReason` in the parameters had `description` _updated_. The `rawResponse` in the parameters had `description` _updated_. The `url` in the parameters had `description` _updated_. The `method` in the parameters had `description` _updated_. The `headers` in the parameters had `description` _updated_.
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies) - The `url` in the parameters had `description` _updated_.
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies) - `description` updated.
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - `description` updated.
+* [`Network.replayXHR`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-replayXHR) - `description` updated.
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `url` in the parameters had `description` _updated_.
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception) - The `patterns` in the parameters had `description` _updated_.
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - `description` updated. The `interceptionId` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `description` _updated_. The `responseErrorReason` in the parameters had `description` _updated_. The `responseStatusCode` in the parameters had `description` _updated_. The `responseHeaders` in the parameters had `description` _updated_.
+#### `Network`: modified types
+* [`Network.CookieSameSite`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieSameSite) - `description` updated.
+* [`Network.ResourceTiming`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ResourceTiming) - The `requestTime` in the properties had `description` _updated_.
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The `lineNumber` in the properties had `description` _updated_.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - The `url` in the properties had `description` _updated_.
+* [`Network.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallengeResponse) - The `response` in the properties had `description` _updated_. The `username` in the properties had `description` _updated_. The `password` in the properties had `description` _updated_.
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage) - `description` updated.
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The `urlPattern` in the properties had `description` _updated_.
+#### `Overlay`: modified commands
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode) - `description` updated.
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode) - `description` updated. The `highlightConfig` in the parameters had `description` _updated_.
+#### `Overlay`: modified event
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested) - `description` updated.
+#### `Page`: modified commands
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld) - The `grantUniveralAccess` in the parameters had `description` _updated_.
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies) - `description` updated.
+* [`Page.handleJavaScriptDialog`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-handleJavaScriptDialog) - The `promptText` in the parameters had `description` _updated_.
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The `pageRanges` in the parameters had `description` _updated_. The `ignoreInvalidPageRanges` in the parameters had `description` _updated_.
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - `description` updated. The `mobile` in the parameters had `description` _updated_.
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior) - The `behavior` in the parameters had `description` _updated_.
+* [`Page.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setGeolocationOverride) - `description` updated.
+#### `Page`: modified events
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The `delay` in the parameters had `description` _updated_.
+* [`Page.javascriptDialogClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogClosed) - `description` updated.
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening) - `description` updated.
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen) - `description` updated.
+#### `Security`: modified command
+* [`Security.setOverrideCertificateErrors`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-setOverrideCertificateErrors) - `description` updated.
+#### `Security`: modified events
+* [`Security.certificateError`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-certificateError) - `description` updated.
+* [`Security.securityStateChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#event-securityStateChanged) - The `explanations` in the parameters had `description` _updated_.
+#### `Security`: modified types
+* [`Security.MixedContentType`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-MixedContentType) - `description` updated.
+* [`Security.InsecureContentStatus`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-InsecureContentStatus) - The `ranContentWithCertErrors` in the properties had `description` _updated_. The `displayedContentWithCertErrors` in the properties had `description` _updated_.
+* [`Security.CertificateErrorAction`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-CertificateErrorAction) - `description` updated.
+#### `ServiceWorker`: modified type
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion) - The `scriptResponseTime` in the properties had `description` _updated_.
+#### `SystemInfo`: modified command
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo) - The `modelName` in the return value had `description` _updated_. The `modelVersion` in the return value had `description` _updated_. The `commandLine` in the return value had `description` _updated_.
+#### `Target`: modified commands
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - `description` updated.
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The `enableBeginFrameControl` in the parameters had `description` _updated_.
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - `description` updated. The `waitForDebuggerOnStart` in the parameters had `description` _updated_.
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets) - `description` updated.
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations) - `description` updated.
+#### `Target`: modified events
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - `description` updated.
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget) - `description` updated.
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged) - `description` updated.
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `transferMode` in the parameters had `description` _updated_.
+#### `Tracing`: modified events
+* [`Tracing.bufferUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-bufferUsage) - The `percentFull` in the parameters had `description` _updated_. The `value` in the parameters had `description` _updated_.
+* [`Tracing.dataCollected`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-dataCollected) - `description` updated.
+* [`Tracing.tracingComplete`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#event-tracingComplete) - `description` updated.
+
+
+## Roll protocol to r521293
+###### _2017-12-04 01:15:42 -0800_ | Diff: [80a4bf5...8f8623b](https://github.com/ChromeDevTools/devtools-protocol/compare/80a4bf5...8f8623b)
+#### `Console`: modified command
+* [`Console.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Console/#method-enable) - `description` updated.
+#### `Debugger`: modified commands
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The `objectGroup` in the parameters had `description` _updated_. The `silent` in the parameters had `description` _updated_.
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace) - `description` updated.
+* [`Debugger.setAsyncCallStackDepth`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setAsyncCallStackDepth) - The `maxDepth` in the parameters had `description` _updated_.
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - `description` updated. The `urlRegex` in the parameters had `description` _updated_.
+* [`Debugger.setPauseOnExceptions`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setPauseOnExceptions) - `description` updated.
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource) - The `dryRun` in the parameters had `description` _updated_.
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `asyncCallStackTraceId` in the parameters had `description` _updated_.
+#### `Debugger`: modified types
+* [`Debugger.Location`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Location) - The `scriptId` in the properties had `description` _updated_.
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame) - The `this` in the properties had `description` _updated_.
+* [`Debugger.Scope`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-Scope) - The `object` in the properties had `description` _updated_.
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation) - The `scriptId` in the properties had `description` _updated_.
+#### `Runtime`: modified commands
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `arguments` in the parameters had `description` _removed_. The `silent` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_.
+* [`Runtime.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-enable) - `description` updated.
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `silent` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_.
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript) - The `silent` in the parameters had `description` _updated_. The `awaitPromise` in the parameters had `description` _updated_.
+#### `Runtime`: modified event
+* [`Runtime.exceptionRevoked`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionRevoked) - The `exceptionId` in the parameters had `description` _updated_.
+#### `Runtime`: modified types
+* [`Runtime.RemoteObject`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-RemoteObject) - The `subtype` in the properties had `description` _updated_. The `className` in the properties had `description` _updated_. The `unserializableValue` in the properties had `description` _updated_. The `preview` in the properties had `description` _updated_.
+* [`Runtime.ObjectPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-ObjectPreview) - The `subtype` in the properties had `description` _updated_. The `entries` in the properties had `description` _updated_.
+* [`Runtime.PropertyPreview`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyPreview) - The `subtype` in the properties had `description` _updated_.
+* [`Runtime.PropertyDescriptor`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-PropertyDescriptor) - The `get` in the properties had `description` _updated_. The `set` in the properties had `description` _updated_. The `symbol` in the properties had `description` _updated_.
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - `description` updated.
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId) - `description` updated.
+#### `Schema`: modified command
+* [`Schema.getDomains`](https://chromedevtools.github.io/devtools-protocol/tot/Schema/#method-getDomains) - `handlers` removed.
+
+
+## Roll protocol to r520165
+###### _2017-11-29 10:15:43 -0800_ | Diff: [e1e5c6b...0741c94](https://github.com/ChromeDevTools/devtools-protocol/compare/e1e5c6b...0741c94)
+#### `Accessibility`: modified command
+* [`Accessibility.getPartialAXTree`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#method-getPartialAXTree) - The `nodes` in the return value had `description` _updated_.
+#### `Accessibility`: modified type
+* [`Accessibility.AXNode`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXNode) - The `role` in the properties had `description` _updated_. The `name` in the properties had `description` _updated_. The `description` in the properties had `description` _updated_. The `value` in the properties had `description` _updated_.
+#### `Animation`: modified types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - The `id` in the properties had `description` _updated_. The `name` in the properties had `description` _updated_. The `pausedState` in the properties had `description` _updated_. The `playState` in the properties had `description` _updated_. The `playbackRate` in the properties had `description` _updated_. The `startTime` in the properties had `description` _updated_. The `currentTime` in the properties had `description` _updated_. The `type` in the properties had `description` _updated_. The `source` in the properties had `description` _updated_. The `cssId` in the properties had `description` _updated_.
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect) - The `delay` in the properties had `description` _updated_. The `endDelay` in the properties had `description` _updated_. The `iterationStart` in the properties had `description` _updated_. The `iterations` in the properties had `description` _updated_. The `duration` in the properties had `description` _updated_. The `direction` in the properties had `description` _updated_. The `fill` in the properties had `description` _updated_. The `backendNodeId` in the properties had `description` _updated_. The `keyframesRule` in the properties had `description` _updated_. The `easing` in the properties had `description` _updated_.
+* [`Animation.KeyframeStyle`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-KeyframeStyle) - The `easing` in the properties had `description` _updated_.
+#### `CSS`: modified commands
+* [`CSS.addRule`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-addRule) - `description` updated.
+* [`CSS.createStyleSheet`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-createStyleSheet) - `description` updated.
+* [`CSS.forcePseudoState`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-forcePseudoState) - The `forcedPseudoClasses` in the parameters had `enum` _removed_.
+* [`CSS.getComputedStyleForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getComputedStyleForNode) - `description` updated.
+* [`CSS.getInlineStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getInlineStylesForNode) - `description` updated.
+* [`CSS.getMatchedStylesForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMatchedStylesForNode) - `description` updated.
+#### `CSS`: modified types
+* [`CSS.ShorthandEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-ShorthandEntry) - The `important` in the properties had `description` _updated_.
+* [`CSS.CSSProperty`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSProperty) - The `important` in the properties had `description` _updated_. The `implicit` in the properties had `description` _updated_. The `parsedOk` in the properties had `description` _updated_.
+#### `DOM`: modified commands
+* [`DOM.copyTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-copyTo) - The `insertBeforeNodeId` in the parameters had `description` _updated_.
+* [`DOM.discardSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-discardSearchResults) - `description` updated.
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults) - `description` updated.
+* [`DOM.moveTo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-moveTo) - The `insertBeforeNodeId` in the parameters had `description` _updated_.
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch) - `description` updated.
+* [`DOM.querySelector`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelector) - `description` updated.
+* [`DOM.querySelectorAll`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-querySelectorAll) - `description` updated.
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes) - `description` updated.
+* [`DOM.requestNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode) - `description` updated.
+#### `DOM`: modified events
+* [`DOM.attributeModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified) - `description` updated.
+* [`DOM.attributeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved) - `description` updated.
+* [`DOM.characterDataModified`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified) - `description` updated.
+* [`DOM.childNodeCountUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated) - `description` updated.
+* [`DOM.childNodeInserted`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted) - `description` updated.
+* [`DOM.childNodeRemoved`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved) - `description` updated.
+* [`DOM.documentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated) - `description` updated.
+* [`DOM.inlineStyleInvalidated`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated) - `description` updated.
+#### `DOM`: modified types
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode) - The `nodeType` in the properties had `description` _updated_. The `nodeName` in the properties had `description` _updated_.
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The `nodeId` in the properties had `description` _updated_. The `nodeType` in the properties had `description` _updated_. The `nodeName` in the properties had `description` _updated_. The `localName` in the properties had `description` _updated_. The `nodeValue` in the properties had `description` _updated_. The `childNodeCount` in the properties had `description` _updated_. The `attributes` in the properties had `description` _updated_. The `documentURL` in the properties had `description` _updated_. The `baseURL` in the properties had `description` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `description` _updated_. The `internalSubset` in the properties had `description` _updated_. The `xmlVersion` in the properties had `description` _updated_. The `name` in the properties had `description` _updated_. The `value` in the properties had `description` _updated_.
+* [`DOM.Quad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Quad) - `minItems` removed. `maxItems` removed.
+#### `DOMDebugger`: modified commands
+* [`DOMDebugger.removeDOMBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-removeDOMBreakpoint) - `description` updated.
+* [`DOMDebugger.setEventListenerBreakpoint`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-setEventListenerBreakpoint) - The `targetName` in the parameters had `description` _updated_.
+#### `DOMDebugger`: modified type
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener) - The `type` in the properties had `description` _updated_. The `useCapture` in the properties had `description` _updated_. The `passive` in the properties had `description` _updated_. The `once` in the properties had `description` _updated_.
+#### `DOMSnapshot`: modified command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot) - `description` updated.
+#### `DOMSnapshot`: modified types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `nodeType` in the properties had `description` _updated_. The `nodeName` in the properties had `description` _updated_. The `nodeValue` in the properties had `description` _updated_. The `backendNodeId` in the properties had `description` _updated_. The `childNodeIndexes` in the properties had `description` _updated_. The `attributes` in the properties had `description` _updated_. The `pseudoElementIndexes` in the properties had `description` _updated_. The `layoutNodeIndex` in the properties had `description` _updated_. The `documentURL` in the properties had `description` _updated_. The `baseURL` in the properties had `description` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `description` _updated_. The `contentDocumentIndex` in the properties had `description` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `description` _updated_.
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The `domNodeIndex` in the properties had `description` _updated_. The `styleIndex` in the properties had `description` _updated_.
+#### `IO`: modified type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle) - `description` updated.
+#### `IndexedDB`: modified commands
+* [`IndexedDB.clearObjectStore`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-clearObjectStore)
+* [`IndexedDB.deleteDatabase`](https://chromedevtools.github.io/devtools-protocol/tot/IndexedDB/#method-deleteDatabase)
+#### `Input`: modified command
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The `text` in the parameters had `description` _updated_.
+#### `LayerTree`: modified command
+* [`LayerTree.loadSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#method-loadSnapshot) - The `tiles` in the parameters had `minItems` _removed_.
+#### `LayerTree`: modified types
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer) - The `transform` in the properties had `minItems` _removed_. The `transform` in the properties had `maxItems` _removed_.
+* [`LayerTree.PaintProfile`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-PaintProfile) - The items's `description` _removed_.
+#### `Log`: modified command
+* [`Log.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#method-enable) - `description` updated.
+#### `Network`: modified commands
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The `errorReason` in the parameters had `description` _updated_.
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies) - `description` updated.
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - `description` updated.
+* [`Network.setCacheDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCacheDisabled) - `description` updated.
+#### `Network`: modified type
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `encodedDataLength` in the properties had `optional` _removed_.
+#### `Overlay`: modified command
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode) - The `highlightConfig` in the parameters had `description` _updated_.
+#### `Overlay`: modified events
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested) - `description` updated.
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested) - `description` updated.
+#### `Page`: modified commands
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies) - `description` updated.
+* [`Page.startScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-startScreencast) - `description` updated.
+* [`Page.stopScreencast`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopScreencast) - `description` updated.
+#### `Page`: modified events
+* [`Page.screencastFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastFrame) - `description` updated.
+* [`Page.screencastVisibilityChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-screencastVisibilityChanged) - `description` updated.
+#### `ServiceWorker`: modified type
+* [`ServiceWorker.ServiceWorkerVersion`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#type-ServiceWorkerVersion) - The `scriptResponseTime` in the properties had `description` _updated_.
+#### `Target`: modified commands
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - The `waitForDebuggerOnStart` in the parameters had `description` _updated_.
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets) - `description` updated.
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations) - `description` updated.
+#### `Target`: modified events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget) - `description` updated.
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - `description` updated.
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget) - `description` updated.
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged) - `description` updated.
+#### `Tracing`: modified command
+* [`Tracing.start`](https://chromedevtools.github.io/devtools-protocol/tot/Tracing/#method-start) - The `traceConfig` in the parameters had `description` _removed_. The `transferMode` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r518882
+###### _2017-11-23 02:15:33 -0800_ | Diff: [a86a78e...e1e5c6b](https://github.com/ChromeDevTools/devtools-protocol/compare/a86a78e...e1e5c6b)
+#### `Runtime`: modified commands
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `userGesture` in the parameters had `experimental` _removed_.
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `userGesture` in the parameters had `experimental` _removed_.
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects) - `experimental` removed.
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames) - `experimental` removed.
+#### `Runtime`: removed type
+* [`Runtime.AsyncTaskId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-AsyncTaskId)
+#### `Runtime`: modified type
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId) - `description` updated. The properties's `optional` _added_.
+#### `Debugger`: new command
+* [`Debugger.pauseOnAsyncCall`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncCall)
+#### `Debugger`: removed command
+* [`Debugger.pauseOnAsyncTask`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncTask)
+#### `Debugger`: modified commands
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - The `scriptHash` in the parameters had `experimental` _removed_.
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - `experimental` removed.
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation) - The `targetCallFrames` in the parameters had `experimental` _removed_.
+* [`Debugger.searchInContent`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-searchInContent) - `experimental` removed.
+* [`Debugger.evaluateOnCallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-evaluateOnCallFrame) - The `throwOnSideEffect` in the parameters had `experimental` _removed_.
+#### `Debugger`: modified events
+* [`Debugger.scriptParsed`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptParsed) - The `hasSourceURL` in the parameters had `experimental` _removed_. The `isModule` in the parameters had `experimental` _removed_. The `length` in the parameters had `experimental` _removed_.
+* [`Debugger.scriptFailedToParse`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-scriptFailedToParse) - The `hasSourceURL` in the parameters had `experimental` _removed_. The `isModule` in the parameters had `experimental` _removed_. The `length` in the parameters had `experimental` _removed_.
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `scheduledAsyncTaskId` in the parameters had `name` _updated_. The `scheduledAsyncTaskId` in the parameters had `$ref` _updated_. The `scheduledAsyncTaskId` in the parameters had `description` _updated_.
+#### `Debugger`: modified types
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame) - The `functionLocation` in the properties had `experimental` _removed_.
+* [`Debugger.SearchMatch`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-SearchMatch) - `experimental` removed.
+* [`Debugger.BreakLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-BreakLocation) - `experimental` removed.
+#### `Profiler`: modified commands
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage) - `experimental` removed.
+* [`Profiler.stopPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopPreciseCoverage) - `experimental` removed.
+* [`Profiler.takePreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takePreciseCoverage) - `experimental` removed.
+* [`Profiler.getBestEffortCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-getBestEffortCoverage) - `experimental` removed.
+#### `Profiler`: modified types
+* [`Profiler.ProfileNode`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ProfileNode) - The `hitCount` in the properties had `experimental` _removed_. The `positionTicks` in the properties had `experimental` _removed_.
+* [`Profiler.PositionTickInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-PositionTickInfo) - `experimental` removed.
+* [`Profiler.CoverageRange`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-CoverageRange) - `experimental` removed.
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage) - `experimental` removed.
+* [`Profiler.ScriptCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptCoverage) - `experimental` removed.
+
+
+## Roll protocol to r518863
+###### _2017-11-22 22:15:28 -0800_ | Diff: [764cee6...a86a78e](https://github.com/ChromeDevTools/devtools-protocol/compare/764cee6...a86a78e)
+#### `Runtime`: new types
+* [`Runtime.UniqueDebuggerId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-UniqueDebuggerId)
+* [`Runtime.StackTraceId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTraceId)
+#### `Runtime`: modified type
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace) - The properties's `parentId` _added_.
+#### `Debugger`: new command
+* [`Debugger.getStackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getStackTrace)
+#### `Debugger`: modified commands
+* [`Debugger.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-enable)
+* [`Debugger.setScriptSource`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setScriptSource) - The `exceptionDetails` in the return value had `name` _updated_. The `exceptionDetails` in the return value had `$ref` _updated_. The `exceptionDetails` in the return value had `description` _updated_. The return value's `experimental` _added_. The return value's `exceptionDetails` _added_.
+* [`Debugger.restartFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-restartFrame) - The return value's `asyncStackTraceId` _added_.
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The `scheduledAsyncTaskId` in the parameters had `name` _updated_. The `scheduledAsyncTaskId` in the parameters had `$ref` _updated_. The `scheduledAsyncTaskId` in the parameters had `description` _updated_. The parameters's `scheduledAsyncTaskId` _added_.
+
+
+## Roll protocol to r518700 517208
+###### _2017-11-22 11:16:19 -0800_ | Diff: [4105e8d...3a092a2](https://github.com/ChromeDevTools/devtools-protocol/compare/4105e8d...3a092a2)
+#### `Runtime`: modified type
+* [`Runtime.StackTrace`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-StackTrace) - The properties's `promiseCreationFrame` _removed_.
+
+
+## Roll protocol to r518504
+###### _2017-11-21 18:16:11 -0800_ | Diff: [4d81be2...4105e8d](https://github.com/ChromeDevTools/devtools-protocol/compare/4d81be2...4105e8d)
+#### `Page`: modified commands
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The `loaderId` in the return value had `experimental` _removed_.
+* [`Page.setDocumentContent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDocumentContent) - `experimental` removed.
+#### `Page`: modified type
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata) - The `offsetTop` in the properties had `experimental` _removed_. The `pageScaleFactor` in the properties had `experimental` _removed_. The `deviceWidth` in the properties had `experimental` _removed_. The `deviceHeight` in the properties had `experimental` _removed_. The `scrollOffsetX` in the properties had `experimental` _removed_. The `scrollOffsetY` in the properties had `experimental` _removed_. The `timestamp` in the properties had `experimental` _removed_.
+#### `Emulation`: modified command
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `experimental` _added_.
+#### `Network`: modified commands
+* [`Network.canClearBrowserCache`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCache) - `deprecated` added.
+* [`Network.canClearBrowserCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canClearBrowserCookies) - `deprecated` added.
+* [`Network.canEmulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canEmulateNetworkConditions) - `deprecated` added.
+#### `Database`: modified types
+* [`Database.DatabaseId`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-DatabaseId) - `experimental` removed.
+* [`Database.Database`](https://chromedevtools.github.io/devtools-protocol/tot/Database/#type-Database) - `experimental` removed.
+#### `DOMStorage`: modified types
+* [`DOMStorage.StorageId`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-StorageId) - `experimental` removed.
+* [`DOMStorage.Item`](https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage/#type-Item) - `experimental` removed.
+#### `Target`: modified commands
+* [`Target.setAutoAttach`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAutoAttach) - `experimental` added.
+* [`Target.getTargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-getTargetInfo) - `experimental` added.
+#### `Target`: modified events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget) - `experimental` added.
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - `experimental` added.
+#### `Animation`: modified types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - `experimental` removed. The `pausedState` in the properties had `experimental` _removed_.
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect) - `experimental` removed.
+
+
+## Roll protocol to r517901
+###### _2017-11-20 12:15:46 -0800_ | Diff: [05920a2...4d81be2](https://github.com/ChromeDevTools/devtools-protocol/compare/05920a2...4d81be2)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The `errorText` in the return value had `type` _removed_. The `errorText` in the return value had `name` _updated_. The `errorText` in the return value had `description` _updated_. The return value's `$ref` _added_. The return value's `experimental` _added_. The return value's `errorText` _added_.
+
+
+## Roll protocol to r517530
+###### _2017-11-17 12:15:35 -0800_ | Diff: [29d3c99...05920a2](https://github.com/ChromeDevTools/devtools-protocol/compare/29d3c99...05920a2)
+#### `Accessibility`: new type
+* [`Accessibility.AXPropertyName`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXPropertyName)
+#### `Accessibility`: removed types
+* [`Accessibility.AXGlobalStates`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXGlobalStates)
+* [`Accessibility.AXLiveRegionAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXLiveRegionAttributes)
+* [`Accessibility.AXWidgetAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXWidgetAttributes)
+* [`Accessibility.AXWidgetStates`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXWidgetStates)
+* [`Accessibility.AXRelationshipAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXRelationshipAttributes)
+#### `Accessibility`: modified type
+* [`Accessibility.AXProperty`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXProperty) - The `name` in the properties had `type` _removed_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r517415
+###### _2017-11-17 08:15:51 -0800_ | Diff: [9451957...29d3c99](https://github.com/ChromeDevTools/devtools-protocol/compare/9451957...29d3c99)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The `budget` in the parameters had `type` _updated_.
+#### `Emulation`: modified events
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced) - The `virtualTimeElapsed` in the parameters had `type` _updated_.
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused) - The `virtualTimeElapsed` in the parameters had `type` _updated_.
+
+
+## Roll protocol to r517348
+###### _2017-11-17 01:15:46 -0800_ | Diff: [24d697a...9451957](https://github.com/ChromeDevTools/devtools-protocol/compare/24d697a...9451957)
+#### `Network`: new command
+* [`Network.searchInResponseBody`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-searchInResponseBody)
+
+
+## Roll protocol to r516944
+###### _2017-11-15 17:35:11 -0800_ | Diff: [efb204b...24d697a](https://github.com/ChromeDevTools/devtools-protocol/compare/efb204b...24d697a)
+#### `Network`: new command
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `redirectHeaders` in the parameters had `$ref` _removed_. The `redirectStatusCode` in the parameters had `type` _removed_. The `redirectUrl` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `$ref` _removed_. The `redirectHeaders` in the parameters had `name` _updated_. The `redirectHeaders` in the parameters had `description` _updated_. The `redirectStatusCode` in the parameters had `name` _updated_. The `redirectStatusCode` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_ (2 times). The parameters's `responseHeaders` _added_.
+#### `Network`: new type
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+#### `Network`: modified type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The properties's `interceptionStage` _added_.
+
+
+## Roll protocol to r516591
+###### _2017-11-14 20:15:32 -0800_ | Diff: [c0d3ebf...efb204b](https://github.com/ChromeDevTools/devtools-protocol/compare/c0d3ebf...efb204b)
+#### `Network`: removed command
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The parameters's `responseHeaders` _removed_. The `redirectUrl` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `$ref` _removed_. The `responseErrorReason` in the parameters had `$ref` _removed_. The `responseStatusCode` in the parameters had `type` _removed_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The `responseErrorReason` in the parameters had `name` _updated_. The `responseErrorReason` in the parameters had `description` _updated_. The `responseStatusCode` in the parameters had `name` _updated_. The `responseStatusCode` in the parameters had `description` _updated_. The parameters's `$ref` _added_ (2 times). The parameters's `type` _added_ (2 times).
+#### `Network`: removed type
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+#### `Network`: modified type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The properties's `interceptionStage` _removed_.
+
+
+## Roll protocol to r516563 516429
+###### _2017-11-14 18:15:47 -0800_ | Diff: [d3257bc...a1b4645](https://github.com/ChromeDevTools/devtools-protocol/compare/d3257bc...a1b4645)
+#### `Network`: new command
+* [`Network.getResponseBodyForInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getResponseBodyForInterception)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `redirectHeaders` in the parameters had `$ref` _removed_. The `redirectStatusCode` in the parameters had `type` _removed_. The `redirectUrl` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `$ref` _removed_. The `redirectHeaders` in the parameters had `name` _updated_. The `redirectHeaders` in the parameters had `description` _updated_. The `redirectStatusCode` in the parameters had `name` _updated_. The `redirectStatusCode` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_ (2 times). The parameters's `responseHeaders` _added_.
+#### `Network`: new type
+* [`Network.InterceptionStage`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionStage)
+#### `Network`: modified type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern) - The properties's `interceptionStage` _added_.
+
+
+## Roll protocol to r515398
+###### _2017-11-09 17:16:13 -0800_ | Diff: [abb8c6c...d3257bc](https://github.com/ChromeDevTools/devtools-protocol/compare/abb8c6c...d3257bc)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The `loaderId` in the return value had `$ref` _removed_. The `loaderId` in the return value had `experimental` _removed_. The `frameId` in the return value had `description` _updated_. The `loaderId` in the return value had `name` _updated_. The `loaderId` in the return value had `description` _updated_. The return value's `type` _added_. The return value's `optional` _added_.
+
+
+## Roll protocol to r514369
+###### _2017-11-06 19:15:46 -0800_ | Diff: [2cda62b...abb8c6c](https://github.com/ChromeDevTools/devtools-protocol/compare/2cda62b...abb8c6c)
+#### `HeapProfiler`: new command
+* [`HeapProfiler.getSamplingProfile`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#method-getSamplingProfile)
+
+
+## Roll protocol to r514112
+###### _2017-11-06 04:15:45 -0800_ | Diff: [d9a7169...2cda62b](https://github.com/ChromeDevTools/devtools-protocol/compare/d9a7169...2cda62b)
+#### `Runtime`: new type
+* [`Runtime.AsyncTaskId`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-AsyncTaskId)
+#### `Debugger`: new command
+* [`Debugger.pauseOnAsyncTask`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-pauseOnAsyncTask)
+#### `Debugger`: modified commands
+* [`Debugger.stepInto`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-stepInto)
+* [`Debugger.scheduleStepIntoAsync`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-scheduleStepIntoAsync) - `description` updated.
+#### `Debugger`: modified event
+* [`Debugger.paused`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#event-paused) - The parameters's `scheduledAsyncTaskId` _added_.
+
+
+## Roll protocol to r514053
+###### _2017-11-04 11:15:40_ | Diff: [e310fa1...d9a7169](https://github.com/ChromeDevTools/devtools-protocol/compare/e310fa1...d9a7169)
+#### `Debugger`: new command
+* [`Debugger.setReturnValue`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setReturnValue)
+
+
+## Roll protocol to r513425
+###### _2017-11-02 01:15:48_ | Diff: [4ea1613...e310fa1](https://github.com/ChromeDevTools/devtools-protocol/compare/4ea1613...e310fa1)
+#### `Page`: new command
+* [`Page.setLifecycleEventsEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setLifecycleEventsEnabled)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The return value's `loaderId` _added_.
+
+
+## Roll protocol to r513411
+###### _2017-11-01 22:15:48_ | Diff: [dcd904a...4ea1613](https://github.com/ChromeDevTools/devtools-protocol/compare/dcd904a...4ea1613)
+#### `Page`: modified event
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen) - `description` updated. The `windowName` in the parameters had `description` _updated_. The `windowFeatures` in the parameters had `type` _updated_. The `windowFeatures` in the parameters had `description` _updated_. The `userGesture` in the parameters had `description` _updated_. The parameters's `items` _added_.
+
+
+## Roll protocol to r513373
+###### _2017-11-01 19:15:47_ | Diff: [a1e4422...dcd904a](https://github.com/ChromeDevTools/devtools-protocol/compare/a1e4422...dcd904a)
+#### `Page`: modified event
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent) - The `name` in the parameters had `type` _removed_. The `timestamp` in the parameters had `$ref` _removed_. The `name` in the parameters had `name` _updated_. The `timestamp` in the parameters had `name` _updated_. The parameters's `$ref` _added_. The parameters's `description` _added_. The parameters's `type` _added_. The parameters's `timestamp` _added_.
+#### `Network`: modified events
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `loaderId` in the parameters had `description` _updated_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `loaderId` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r513327 513317
+###### _2017-11-01 17:15:44_ | Diff: [171f927...916de95](https://github.com/ChromeDevTools/devtools-protocol/compare/171f927...916de95)
+#### `Page`: modified commands
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument) - `experimental` removed.
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument) - `experimental` removed.
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The `referrer` in the parameters had `experimental` _removed_. The `transitionType` in the parameters had `experimental` _removed_. The `frameId` in the return value had `experimental` _removed_.
+* [`Page.stopLoading`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-stopLoading) - `experimental` removed.
+* [`Page.getNavigationHistory`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getNavigationHistory) - `experimental` removed.
+* [`Page.navigateToHistoryEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigateToHistoryEntry) - `experimental` removed.
+* [`Page.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getCookies) - `deprecated` added.
+* [`Page.deleteCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-deleteCookie) - `deprecated` added.
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - `deprecated` added.
+* [`Page.clearDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceMetricsOverride) - `deprecated` added.
+* [`Page.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setGeolocationOverride) - `deprecated` added.
+* [`Page.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearGeolocationOverride) - `deprecated` added.
+* [`Page.setDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceOrientationOverride) - `deprecated` added.
+* [`Page.clearDeviceOrientationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-clearDeviceOrientationOverride) - `deprecated` added.
+* [`Page.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setTouchEmulationEnabled) - `deprecated` added.
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - `experimental` removed. The `clip` in the parameters had `experimental` _removed_.
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - `experimental` removed.
+* [`Page.getAppManifest`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getAppManifest) - `experimental` removed.
+* [`Page.getLayoutMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getLayoutMetrics) - `experimental` removed.
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld) - `experimental` removed.
+#### `Page`: modified events
+* [`Page.frameAttached`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameAttached) - The `stack` in the parameters had `experimental` _removed_.
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The `reason` in the parameters had `experimental` _removed_. The `url` in the parameters had `experimental` _removed_.
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen) - `experimental` removed.
+#### `Page`: removed type
+* [`Page.NavigationResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationResponse)
+#### `Page`: modified types
+* [`Page.ScriptIdentifier`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScriptIdentifier) - `experimental` removed.
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType) - `experimental` removed.
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry) - `experimental` removed.
+* [`Page.DialogType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-DialogType) - `experimental` removed.
+* [`Page.AppManifestError`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-AppManifestError) - `experimental` removed.
+* [`Page.LayoutViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-LayoutViewport) - `experimental` removed.
+* [`Page.VisualViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-VisualViewport) - `experimental` removed.
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport) - `experimental` removed.
+#### `Emulation`: modified commands
+* [`Emulation.setScriptExecutionDisabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setScriptExecutionDisabled) - `experimental` removed.
+* [`Emulation.setGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setGeolocationOverride) - `experimental` removed.
+* [`Emulation.clearGeolocationOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-clearGeolocationOverride) - `experimental` removed.
+* [`Emulation.canEmulate`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-canEmulate) - `experimental` removed.
+* [`Emulation.setDefaultBackgroundColorOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDefaultBackgroundColorOverride) - `experimental` removed.
+#### `Network`: modified commands
+* [`Network.getCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getCookies) - `experimental` removed.
+* [`Network.getAllCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-getAllCookies) - `experimental` removed.
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies) - `experimental` removed.
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - `experimental` removed.
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies) - `experimental` removed.
+* [`Network.canEmulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-canEmulateNetworkConditions) - `experimental` removed.
+#### `Network`: modified events
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `wallTime` in the parameters had `experimental` _removed_. The `type` in the parameters had `experimental` _removed_. The `frameId` in the parameters had `experimental` _removed_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `frameId` in the parameters had `experimental` _removed_.
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The `blockedReason` in the parameters had `experimental` _removed_.
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest) - `experimental` removed. The `wallTime` in the parameters had `experimental` _removed_.
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived) - `experimental` removed.
+* [`Network.webSocketCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketCreated) - `experimental` removed.
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed) - `experimental` removed.
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived) - `experimental` removed.
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError) - `experimental` removed.
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent) - `experimental` removed.
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived) - `experimental` removed.
+#### `Network`: modified types
+* [`Network.BlockedReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-BlockedReason) - `experimental` removed.
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `remoteIPAddress` in the properties had `experimental` _removed_. The `remotePort` in the properties had `experimental` _removed_.
+* [`Network.WebSocketRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketRequest) - `experimental` removed.
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse) - `experimental` removed.
+* [`Network.WebSocketFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketFrame) - `experimental` removed.
+* [`Network.Cookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Cookie) - `experimental` removed.
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam) - `experimental` removed.
+#### `DOM`: modified commands
+* [`DOM.getDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getDocument) - The `depth` in the parameters had `experimental` _removed_. The `pierce` in the parameters had `experimental` _removed_.
+* [`DOM.getFlattenedDocument`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getFlattenedDocument) - The `depth` in the parameters had `experimental` _removed_. The `pierce` in the parameters had `experimental` _removed_.
+* [`DOM.requestChildNodes`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestChildNodes) - The `depth` in the parameters had `experimental` _removed_. The `pierce` in the parameters had `experimental` _removed_.
+* [`DOM.performSearch`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-performSearch) - The `includeUserAgentShadowDOM` in the parameters had `experimental` _removed_.
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus) - `experimental` removed.
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles) - `experimental` removed.
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel) - `experimental` removed. `description` updated.
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode) - The `depth` in the parameters had `experimental` _removed_. The `pierce` in the parameters had `experimental` _removed_.
+#### `DOM`: modified types
+* [`DOM.BackendNodeId`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNodeId) - `experimental` removed.
+* [`DOM.BackendNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BackendNode) - `experimental` removed.
+* [`DOM.Node`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Node) - The `parentId` in the properties had `experimental` _removed_. The `backendNodeId` in the properties had `experimental` _removed_. The `baseURL` in the properties had `experimental` _removed_. The `frameId` in the properties had `experimental` _removed_. The `shadowRoots` in the properties had `experimental` _removed_. The `templateContent` in the properties had `experimental` _removed_. The `pseudoElements` in the properties had `experimental` _removed_. The `distributedNodes` in the properties had `experimental` _removed_. The `isSVG` in the properties had `experimental` _removed_.
+* [`DOM.Quad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Quad) - `experimental` removed.
+* [`DOM.BoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-BoxModel) - `experimental` removed.
+* [`DOM.ShapeOutsideInfo`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-ShapeOutsideInfo) - `experimental` removed.
+* [`DOM.Rect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-Rect) - `experimental` removed.
+#### `CSS`: modified commands
+* [`CSS.getPlatformFontsForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getPlatformFontsForNode) - `experimental` removed.
+* [`CSS.collectClassNames`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-collectClassNames) - `experimental` removed.
+* [`CSS.getMediaQueries`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getMediaQueries) - `experimental` removed.
+* [`CSS.setEffectivePropertyValueForNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-setEffectivePropertyValueForNode) - `experimental` removed.
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - `experimental` removed.
+* [`CSS.startRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-startRuleUsageTracking) - `experimental` removed.
+* [`CSS.takeCoverageDelta`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-takeCoverageDelta) - `experimental` removed.
+* [`CSS.stopRuleUsageTracking`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-stopRuleUsageTracking) - `experimental` removed.
+#### `CSS`: removed type
+* [`CSS.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-InlineTextBox)
+#### `CSS`: modified types
+* [`CSS.CSSStyleSheetHeader`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSStyleSheetHeader) - The `length` in the properties had `experimental` _removed_.
+* [`CSS.RuleUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-RuleUsage) - `experimental` removed.
+* [`CSS.CSSMedia`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-CSSMedia) - The `mediaList` in the properties had `experimental` _removed_.
+* [`CSS.MediaQuery`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQuery) - `experimental` removed.
+* [`CSS.MediaQueryExpression`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-MediaQueryExpression) - `experimental` removed.
+* [`CSS.PlatformFontUsage`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-PlatformFontUsage) - `experimental` removed.
+#### `DOMSnapshot`: new type
+* [`DOMSnapshot.InlineTextBox`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-InlineTextBox)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode) - The `inlineTextNodes` in the properties had `$ref` _updated_.
+#### `DOMDebugger`: modified command
+* [`DOMDebugger.getEventListeners`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#method-getEventListeners) - `experimental` removed. The `depth` in the parameters had `experimental` _removed_. The `pierce` in the parameters had `experimental` _removed_.
+#### `DOMDebugger`: modified type
+* [`DOMDebugger.EventListener`](https://chromedevtools.github.io/devtools-protocol/tot/DOMDebugger/#type-EventListener) - `experimental` removed.
+#### `Target`: modified commands
+* [`Target.setAttachToFrames`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setAttachToFrames) - `experimental` added.
+* [`Target.setRemoteLocations`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setRemoteLocations) - `experimental` added.
+* [`Target.createBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createBrowserContext) - `experimental` added.
+* [`Target.disposeBrowserContext`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-disposeBrowserContext) - `experimental` added.
+#### `Target`: modified types
+* [`Target.BrowserContextID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-BrowserContextID) - `experimental` added.
+* [`Target.RemoteLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-RemoteLocation) - `experimental` added.
+#### `Input`: modified commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The `location` in the parameters had `experimental` _removed_.
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - `experimental` removed.
+#### `Input`: modified type
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint) - `experimental` removed.
+#### `Browser`: modified commands
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget) - `experimental` added.
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds) - `experimental` added.
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds) - `experimental` added.
+#### `Browser`: modified types
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID) - `experimental` added.
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState) - `experimental` added.
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds) - `experimental` added.
+
+
+## Roll protocol to r512925
+###### _2017-10-31 13:15:51_ | Diff: [d7f1734...171f927](https://github.com/ChromeDevTools/devtools-protocol/compare/d7f1734...171f927)
+#### `Page`: new command
+* [`Page.getFrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-getFrameTree)
+#### `Page`: new type
+* [`Page.FrameTree`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameTree)
+
+
+## Roll protocol to r511679
+###### _2017-10-25 18:15:34_ | Diff: [704cc11...d7f1734](https://github.com/ChromeDevTools/devtools-protocol/compare/704cc11...d7f1734)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `isNavigationRequest` in the parameters had `type` _removed_. The `redirectHeaders` in the parameters had `$ref` _removed_. The `redirectHeaders` in the parameters had `optional` _removed_. The `redirectStatusCode` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `$ref` _removed_. The `resourceType` in the parameters had `name` _updated_. The `resourceType` in the parameters had `$ref` _updated_. The `resourceType` in the parameters had `description` _updated_. The `isNavigationRequest` in the parameters had `name` _updated_. The `isNavigationRequest` in the parameters had `description` _updated_. The `redirectHeaders` in the parameters had `name` _updated_. The `redirectHeaders` in the parameters had `description` _updated_. The `redirectStatusCode` in the parameters had `name` _updated_. The `redirectStatusCode` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `type` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The parameters's `$ref` _added_ (2 times). The parameters's `type` _added_ (2 times). The parameters's `authChallenge` _added_.
+
+
+## Roll protocol to r510771
+###### _2017-10-23 05:16:00_ | Diff: [228b292...745052e](https://github.com/ChromeDevTools/devtools-protocol/compare/228b292...745052e)
+#### `HeadlessExperimental`: modified command
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame) - The `screenshotData` in the return value had `optional` _removed_. The `screenshotData` in the return value had `name` _updated_. The `screenshotData` in the return value had `type` _updated_. The `screenshotData` in the return value had `description` _updated_. The return value's `screenshotData` _added_.
+
+
+## Roll protocol to r510657
+###### _2017-10-20 21:15:50_ | Diff: [5df6a06...cb1d580](https://github.com/ChromeDevTools/devtools-protocol/compare/5df6a06...cb1d580)
+#### `Network`: new command
+* [`Network.setRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterception)
+#### `Network`: removed command
+* [`Network.setRequestInterceptionEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterceptionEnabled)
+#### `Network`: new type
+* [`Network.RequestPattern`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-RequestPattern)
+
+
+## Roll protocol to r509994
+###### _2017-10-18 21:15:50_ | Diff: [06db515...5df6a06](https://github.com/ChromeDevTools/devtools-protocol/compare/06db515...5df6a06)
+#### `Input`: modified command
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The parameters's `location` _added_.
+
+
+## Roll protocol to r509917
+###### _2017-10-18 16:15:52_ | Diff: [2249014...06db515](https://github.com/ChromeDevTools/devtools-protocol/compare/2249014...06db515)
+#### `Emulation`: modified command
+* [`Emulation.setVirtualTimePolicy`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVirtualTimePolicy) - The parameters's `maxVirtualTimeTaskStarvationCount` _added_.
+
+
+## Roll protocol to r509331
+###### _2017-10-17 02:15:55_ | Diff: [c623810...2249014](https://github.com/ChromeDevTools/devtools-protocol/compare/c623810...2249014)
+#### `Runtime`: new command
+* [`Runtime.globalLexicalScopeNames`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-globalLexicalScopeNames)
+
+
+## Roll protocol to r508301
+###### _2017-10-12 03:16:09_ | Diff: [e95be51...4eaa4f7](https://github.com/ChromeDevTools/devtools-protocol/compare/e95be51...4eaa4f7)
+#### `Browser`: new command
+* [`Browser.close`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-close)
+
+
+## Roll protocol to r508087
+###### _2017-10-11 13:15:51_ | Diff: [4856f10...2988a57](https://github.com/ChromeDevTools/devtools-protocol/compare/4856f10...2988a57)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The properties's `openerId` _added_.
+
+
+## Roll protocol to r507818
+###### _2017-10-10 16:15:50_ | Diff: [662fafd...4856f10](https://github.com/ChromeDevTools/devtools-protocol/compare/662fafd...4856f10)
+#### `HeadlessExperimental`: new domain
+* [`HeadlessExperimental.HeadlessExperimental`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#domain-HeadlessExperimental)
+#### `Page`: modified command
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The parameters's `viewport` _added_.
+#### `Emulation`: modified command
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `viewport` _added_.
+#### `Target`: modified command
+* [`Target.createTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-createTarget) - The parameters's `enableBeginFrameControl` _added_.
+#### `HeadlessExperimental`: new commands
+* [`HeadlessExperimental.enable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-enable)
+* [`HeadlessExperimental.disable`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-disable)
+* [`HeadlessExperimental.beginFrame`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#method-beginFrame)
+#### `HeadlessExperimental`: new events
+* [`HeadlessExperimental.needsBeginFramesChanged`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-needsBeginFramesChanged)
+* [`HeadlessExperimental.mainFrameReadyForScreenshots`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#event-mainFrameReadyForScreenshots)
+#### `HeadlessExperimental`: new type
+* [`HeadlessExperimental.ScreenshotParams`](https://chromedevtools.github.io/devtools-protocol/tot/HeadlessExperimental/#type-ScreenshotParams)
+
+
+## Roll protocol to r507615
+###### _2017-10-10 01:15:40_ | Diff: [a63b5fa...662fafd](https://github.com/ChromeDevTools/devtools-protocol/compare/a63b5fa...662fafd)
+#### `Page`: new event
+* [`Page.windowOpen`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-windowOpen)
+
+
+## Roll protocol to r507488
+###### _2017-10-09 14:16:01_ | Diff: [11ca8ba...a63b5fa](https://github.com/ChromeDevTools/devtools-protocol/compare/11ca8ba...a63b5fa)
+#### `Page`: modified event
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent) - The `name` in the parameters had `type` _removed_. The `timestamp` in the parameters had `$ref` _removed_. The `name` in the parameters had `name` _updated_. The `timestamp` in the parameters had `name` _updated_. The parameters's `$ref` _added_. The parameters's `description` _added_. The parameters's `type` _added_. The parameters's `timestamp` _added_.
+
+
+## Roll protocol to r507347
+###### _2017-10-09 03:16:03_ | Diff: [2189599...11ca8ba](https://github.com/ChromeDevTools/devtools-protocol/compare/2189599...11ca8ba)
+#### `Network`: modified command
+* [`Network.setRequestInterceptionEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterceptionEnabled) - `description` updated. The parameters's `resourceTypes` _added_.
+
+
+## Roll protocol to r507305
+###### _2017-10-08 01:15:50_ | Diff: [555aaea...2189599](https://github.com/ChromeDevTools/devtools-protocol/compare/555aaea...2189599)
+#### `Debugger`: modified command
+* [`Debugger.setBreakpointByUrl`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-setBreakpointByUrl) - The `columnNumber` in the parameters had `name` _updated_. The `columnNumber` in the parameters had `type` _updated_. The `columnNumber` in the parameters had `description` _updated_. The `condition` in the parameters had `name` _updated_. The `condition` in the parameters had `type` _updated_. The `condition` in the parameters had `description` _updated_. The parameters's `experimental` _added_. The parameters's `condition` _added_.
+
+
+## Roll protocol to r507040
+###### _2017-10-06 06:15:53_ | Diff: [1fd8f9d...555aaea](https://github.com/ChromeDevTools/devtools-protocol/compare/1fd8f9d...555aaea)
+#### `Emulation`: new event
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced)
+
+
+## Roll protocol to r506815
+###### _2017-10-05 12:15:34_ | Diff: [53e8611...7931842](https://github.com/ChromeDevTools/devtools-protocol/compare/53e8611...7931842)
+#### `Emulation`: removed event
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced)
+
+
+## Roll protocol to r506789
+###### _2017-10-05 11:15:33_ | Diff: [d9b6389...53e8611](https://github.com/ChromeDevTools/devtools-protocol/compare/d9b6389...53e8611)
+#### `Page`: modified event
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The `reason` in the parameters had `formSubmission` _updated_. The `reason` in the parameters had `httpHeaderRefresh` _updated_. The `reason` in the parameters had `scriptInitiated` _updated_. The `reason` in the parameters had `metaTagRefresh` _updated_. The `reason` in the parameters had `pageBlockInterstitial` _updated_. The `reason` in the parameters had `reload` _updated_. The `2` in the parameters had `reload` _added_.
+#### `Emulation`: new event
+* [`Emulation.virtualTimeAdvanced`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeAdvanced)
+
+
+## Roll protocol to r505811
+###### _2017-10-02 15:15:35_ | Diff: [ae7b452...e81a47d](https://github.com/ChromeDevTools/devtools-protocol/compare/ae7b452...e81a47d)
+#### `Animation`: modified types
+* [`Animation.Animation`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-Animation) - The `source` in the properties had `$ref` _removed_. The `type` in the properties had `type` _removed_. The `type` in the properties had `enum` _removed_. The `source` in the properties had `name` _updated_. The `source` in the properties had `description` _updated_. The `type` in the properties had `name` _updated_. The `type` in the properties had `description` _updated_. The properties's `type` _added_. The properties's `enum` _added_. The properties's `$ref` _added_. The properties's `optional` _added_.
+* [`Animation.AnimationEffect`](https://chromedevtools.github.io/devtools-protocol/tot/Animation/#type-AnimationEffect) - The properties's `optional` _added_.
+
+
+## Roll protocol to r505461
+###### _2017-09-29 15:15:43_ | Diff: [80f8dac...ae7b452](https://github.com/ChromeDevTools/devtools-protocol/compare/80f8dac...ae7b452)
+#### `Log`: modified type
+* [`Log.LogEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Log/#type-LogEntry) - The `source` in the properties had `other` _updated_. The `0` in the properties had `other` _added_. The properties's `args` _added_.
+
+
+## Roll protocol to r505240
+###### _2017-09-28 18:15:42_ | Diff: [406b6a8...80f8dac](https://github.com/ChromeDevTools/devtools-protocol/compare/406b6a8...80f8dac)
+#### `Storage`: new commands
+* [`Storage.trackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackIndexedDBForOrigin)
+* [`Storage.untrackIndexedDBForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackIndexedDBForOrigin)
+#### `Storage`: new events
+* [`Storage.indexedDBListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBListUpdated)
+* [`Storage.indexedDBContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-indexedDBContentUpdated)
+
+
+## Roll protocol to r504912
+###### _2017-09-27 22:15:34_ | Diff: [c690a27...406b6a8](https://github.com/ChromeDevTools/devtools-protocol/compare/c690a27...406b6a8)
+#### `Runtime`: modified event
+* [`Runtime.exceptionRevoked`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-exceptionRevoked) - The `exceptionId` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r504880
+###### _2017-09-27 20:15:26_ | Diff: [6ab68c9...c690a27](https://github.com/ChromeDevTools/devtools-protocol/compare/6ab68c9...c690a27)
+#### `DOM`: modified command
+* [`DOM.getSearchResults`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getSearchResults) - `description` updated.
+
+
+## Roll protocol to r504262
+###### _2017-09-25 19:15:28_ | Diff: [6c8cab7...6ab68c9](https://github.com/ChromeDevTools/devtools-protocol/compare/6c8cab7...6ab68c9)
+#### `Network`: modified types
+* [`Network.Response`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Response) - The `status` in the properties had `type` _updated_.
+* [`Network.WebSocketResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-WebSocketResponse) - The `status` in the properties had `type` _updated_.
+
+
+## Roll protocol to r502201
+###### _2017-09-15 01:15:32_ | Diff: [f2d4460...6c8cab7](https://github.com/ChromeDevTools/devtools-protocol/compare/f2d4460...6c8cab7)
+#### `ServiceWorker`: new command
+* [`ServiceWorker.stopAllWorkers`](https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker/#method-stopAllWorkers)
+
+
+## Roll protocol to r501229
+###### _2017-09-12 03:15:42_ | Diff: [fee6891...f2d4460](https://github.com/ChromeDevTools/devtools-protocol/compare/fee6891...f2d4460)
+#### `Emulation`: new command
+* [`Emulation.setNavigatorOverrides`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setNavigatorOverrides)
+
+
+## Roll protocol to r500703
+###### _2017-09-08 15:15:55_ | Diff: [adb2948...fee6891](https://github.com/ChromeDevTools/devtools-protocol/compare/adb2948...fee6891)
+#### `Profiler`: new commands
+* [`Profiler.startTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startTypeProfile)
+* [`Profiler.stopTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-stopTypeProfile)
+* [`Profiler.takeTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-takeTypeProfile)
+#### `Profiler`: new types
+* [`Profiler.TypeObject`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeObject)
+* [`Profiler.TypeProfileEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-TypeProfileEntry)
+* [`Profiler.ScriptTypeProfile`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-ScriptTypeProfile)
+
+
+## Roll protocol to r500564
+###### _2017-09-08 04:15:36_ | Diff: [7794931...adb2948](https://github.com/ChromeDevTools/devtools-protocol/compare/7794931...adb2948)
+#### `Debugger`: modified type
+* [`Debugger.CallFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#type-CallFrame) - The `scopeChain` in the properties had `items` _removed_. The `this` in the properties had `$ref` _removed_. The `returnValue` in the properties had `optional` _removed_. The `scopeChain` in the properties had `name` _updated_. The `scopeChain` in the properties had `type` _updated_. The `scopeChain` in the properties had `description` _updated_. The `this` in the properties had `name` _updated_. The `this` in the properties had `description` _updated_. The `returnValue` in the properties had `name` _updated_. The `returnValue` in the properties had `description` _updated_. The properties's `type` _added_. The properties's `items` _added_. The properties's `returnValue` _added_.
+
+
+## Roll protocol to r500445
+###### _2017-09-07 17:15:41_ | Diff: [ce22a9f...7794931](https://github.com/ChromeDevTools/devtools-protocol/compare/ce22a9f...7794931)
+#### `Input`: modified type
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint) - The `x` in the properties had `type` _updated_. The `y` in the properties had `type` _updated_. The `radiusX` in the properties had `type` _updated_. The `radiusX` in the properties had `description` _updated_. The `radiusY` in the properties had `type` _updated_. The `radiusY` in the properties had `description` _updated_.
+
+
+## Roll protocol to r500221
+###### _2017-09-06 22:15:25_ | Diff: [a0d1c79...ce22a9f](https://github.com/ChromeDevTools/devtools-protocol/compare/a0d1c79...ce22a9f)
+#### `Network`: modified command
+* [`Network.emulateNetworkConditions`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-emulateNetworkConditions) - The `latency` in the parameters had `description` _updated_. The `downloadThroughput` in the parameters had `description` _updated_. The `uploadThroughput` in the parameters had `description` _updated_.
+#### `Network`: modified type
+* [`Network.ConnectionType`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ConnectionType) - `description` updated.
+
+
+## Roll protocol to r499605
+###### _2017-09-05 05:16:01_ | Diff: [96c09fd...a0d1c79](https://github.com/ChromeDevTools/devtools-protocol/compare/96c09fd...a0d1c79)
+#### `Emulation`: new event
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused)
+#### `Emulation`: modified event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired) - `description` updated.
+
+
+## Roll protocol to r499541
+###### _2017-09-04 19:15:31_ | Diff: [a7c9118...96c09fd](https://github.com/ChromeDevTools/devtools-protocol/compare/a7c9118...96c09fd)
+#### `Page`: modified command
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The `scale` in the parameters had `description` _updated_. The `screenWidth` in the parameters had `description` _updated_. The `screenHeight` in the parameters had `description` _updated_. The `positionX` in the parameters had `description` _updated_. The `positionY` in the parameters had `description` _updated_.
+#### `Emulation`: modified command
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The `scale` in the parameters had `description` _updated_. The `screenWidth` in the parameters had `description` _updated_. The `screenHeight` in the parameters had `description` _updated_. The `positionX` in the parameters had `description` _updated_. The `positionY` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r499413
+###### _2017-09-03 02:15:28_ | Diff: [78d5984...a7c9118](https://github.com/ChromeDevTools/devtools-protocol/compare/78d5984...a7c9118)
+#### `Emulation`: removed event
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused)
+#### `Emulation`: modified event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired) - `description` updated.
+
+
+## Roll protocol to r499273
+###### _2017-09-01 13:15:31_ | Diff: [95fdb0b...78d5984](https://github.com/ChromeDevTools/devtools-protocol/compare/95fdb0b...78d5984)
+#### `Runtime`: modified command
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `objectId` in the parameters had `$ref` _removed_. The `functionDeclaration` in the parameters had `type` _removed_. The `objectId` in the parameters had `name` _updated_. The `objectId` in the parameters had `description` _updated_. The `functionDeclaration` in the parameters had `name` _updated_. The `functionDeclaration` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `$ref` _added_. The parameters's `optional` _added_. The parameters's `executionContextId` _added_. The parameters's `objectGroup` _added_.
+
+
+## Roll protocol to r498841
+###### _2017-08-31 06:16:26_ | Diff: [44bc1f3...95fdb0b](https://github.com/ChromeDevTools/devtools-protocol/compare/44bc1f3...95fdb0b)
+#### `Runtime`: modified command
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The parameters's `executionContextId` _removed_. The parameters's `objectGroup` _removed_. The `functionDeclaration` in the parameters had `type` _removed_. The `objectId` in the parameters had `$ref` _removed_. The `objectId` in the parameters had `optional` _removed_. The `functionDeclaration` in the parameters had `name` _updated_. The `functionDeclaration` in the parameters had `description` _updated_. The `objectId` in the parameters had `name` _updated_. The `objectId` in the parameters had `description` _updated_. The parameters's `$ref` _added_. The parameters's `type` _added_.
+#### `Emulation`: new event
+* [`Emulation.virtualTimePaused`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimePaused)
+#### `Emulation`: modified event
+* [`Emulation.virtualTimeBudgetExpired`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#event-virtualTimeBudgetExpired) - `description` updated.
+
+
+## Roll protocol to r498768
+###### _2017-08-30 23:15:32_ | Diff: [7d46741...44bc1f3](https://github.com/ChromeDevTools/devtools-protocol/compare/7d46741...44bc1f3)
+#### `Runtime`: modified command
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `objectId` in the parameters had `$ref` _removed_. The `functionDeclaration` in the parameters had `type` _removed_. The `objectId` in the parameters had `name` _updated_. The `objectId` in the parameters had `description` _updated_. The `functionDeclaration` in the parameters had `name` _updated_. The `functionDeclaration` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `$ref` _added_. The parameters's `optional` _added_. The parameters's `executionContextId` _added_. The parameters's `objectGroup` _added_.
+
+
+## Roll protocol to r498659
+###### _2017-08-30 16:15:32_ | Diff: [4c6535a...7d46741](https://github.com/ChromeDevTools/devtools-protocol/compare/4c6535a...7d46741)
+#### `CacheStorage`: modified type
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `responseTime` in the properties had `name` _updated_. The `responseTime` in the properties had `type` _updated_. The `responseTime` in the properties had `description` _updated_. The `responseHeaders` in the properties had `name` _updated_. The `responseHeaders` in the properties had `description` _updated_. The properties's `responseTime` _added_. The properties's `responseStatus` _added_. The properties's `responseStatusText` _added_. The properties's `responseHeaders` _added_.
+
+
+## Roll protocol to r498251
+###### _2017-08-29 15:15:42_ | Diff: [a5dfd5d...4c6535a](https://github.com/ChromeDevTools/devtools-protocol/compare/a5dfd5d...4c6535a)
+#### `CacheStorage`: new type
+* [`CacheStorage.Header`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-Header)
+#### `CacheStorage`: modified types
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `request` in the properties had `name` _updated_. The `request` in the properties had `description` _updated_. The `response` in the properties had `name` _updated_. The `response` in the properties had `type` _updated_. The `response` in the properties had `description` _updated_. The `responseTime` in the properties had `name` _updated_. The `responseTime` in the properties had `type` _updated_. The `responseTime` in the properties had `description` _updated_. The properties's `items` _added_.
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse) - The properties's `body` _removed_. The `headers` in the properties had `name` _updated_. The `headers` in the properties had `type` _updated_. The `headers` in the properties had `description` _updated_.
+
+
+## Roll protocol to r497858
+###### _2017-08-28 13:15:33_ | Diff: [afb185e...a5dfd5d](https://github.com/ChromeDevTools/devtools-protocol/compare/afb185e...a5dfd5d)
+#### `Runtime`: modified type
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - The `value` in the properties had `description` _updated_.
+
+
+## Roll protocol to r497762
+###### _2017-08-28 08:15:29_ | Diff: [03d4f5f...afb185e](https://github.com/ChromeDevTools/devtools-protocol/compare/03d4f5f...afb185e)
+#### `Runtime`: modified type
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - The `value` in the properties had `description` _updated_.
+
+
+## Roll protocol to r497708
+###### _2017-08-28 01:15:30_ | Diff: [0958f69...03d4f5f](https://github.com/ChromeDevTools/devtools-protocol/compare/0958f69...03d4f5f)
+#### `Memory`: new command
+* [`Memory.prepareForLeakDetection`](https://chromedevtools.github.io/devtools-protocol/tot/Memory/#method-prepareForLeakDetection)
+
+
+## Roll protocol to r497654
+###### _2017-08-25 22:15:24_ | Diff: [7f086f5...0958f69](https://github.com/ChromeDevTools/devtools-protocol/compare/7f086f5...0958f69)
+#### `Runtime`: modified type
+* [`Runtime.CallArgument`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#type-CallArgument) - The `value` in the properties had `description` _updated_.
+
+
+## Roll protocol to r497463
+###### _2017-08-25 11:15:26_ | Diff: [57e8992...7f086f5](https://github.com/ChromeDevTools/devtools-protocol/compare/57e8992...7f086f5)
+#### `Security`: modified type
+* [`Security.SecurityState`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityState) - The enum's `info` _removed_. The enum's `warning` _updated_. The enum's `secure` _updated_.
+
+
+## Roll protocol to r497428
+###### _2017-08-25 09:15:25_ | Diff: [dd57a17...57e8992](https://github.com/ChromeDevTools/devtools-protocol/compare/dd57a17...57e8992)
+#### `Network`: modified command
+* [`Network.setRequestInterceptionEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterceptionEnabled) - The `enabled` in the parameters had `description` _updated_. `description` added. The parameters's `patterns` _added_.
+
+
+## Roll protocol to r496905
+###### _2017-08-23 18:15:33_ | Diff: [3789a0d...dd57a17](https://github.com/ChromeDevTools/devtools-protocol/compare/3789a0d...dd57a17)
+#### `Runtime`: modified command
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects) - The `constructorObjectId` in the parameters had `name` _updated_. The `constructorObjectId` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r496688
+###### _2017-08-23 08:15:29_ | Diff: [326cc31...3789a0d](https://github.com/ChromeDevTools/devtools-protocol/compare/326cc31...3789a0d)
+#### `Profiler`: modified command
+* [`Profiler.startPreciseCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#method-startPreciseCoverage) - The parameters's `detailed` _added_.
+
+
+## Roll protocol to r496607
+###### _2017-08-23 00:15:24_ | Diff: [a223c0c...326cc31](https://github.com/ChromeDevTools/devtools-protocol/compare/a223c0c...326cc31)
+#### `Page`: new event
+* [`Page.lifecycleEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-lifecycleEvent)
+
+
+## Roll protocol to r496585
+###### _2017-08-22 21:15:27_ | Diff: [f1b621f...a223c0c](https://github.com/ChromeDevTools/devtools-protocol/compare/f1b621f...a223c0c)
+#### `Page`: new command
+* [`Page.setDownloadBehavior`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior)
+
+
+## Roll protocol to r496160
+###### _2017-08-21 18:15:31_ | Diff: [7109da3...f1b621f](https://github.com/ChromeDevTools/devtools-protocol/compare/7109da3...f1b621f)
+#### `DOM`: new command
+* [`DOM.describeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-describeNode)
+
+
+## Roll protocol to r496061
+###### _2017-08-21 14:15:32_ | Diff: [1da2f21...7109da3](https://github.com/ChromeDevTools/devtools-protocol/compare/1da2f21...7109da3)
+#### `Runtime`: new command
+* [`Runtime.queryObjects`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-queryObjects)
+
+
+## Roll protocol to r495853
+###### _2017-08-20 15:15:25_ | Diff: [40a1403...1da2f21](https://github.com/ChromeDevTools/devtools-protocol/compare/40a1403...1da2f21)
+#### `DOM`: modified command
+* [`DOM.getOuterHTML`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getOuterHTML) - The `nodeId` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `backendNodeId` _added_. The parameters's `objectId` _added_.
+
+
+## Roll protocol to r495828
+###### _2017-08-19 15:15:24_ | Diff: [f253796...40a1403](https://github.com/ChromeDevTools/devtools-protocol/compare/f253796...40a1403)
+#### `Audits`: new domain
+* [`Audits.Audits`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#domain-Audits)
+#### `Audits`: new command
+* [`Audits.getEncodedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Audits/#method-getEncodedResponse)
+
+
+## Roll protocol to r495269
+###### _2017-08-17 12:15:44_ | Diff: [c10facc...f253796](https://github.com/ChromeDevTools/devtools-protocol/compare/c10facc...f253796)
+#### `Network`: new command
+* [`Network.deleteCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookies)
+#### `Network`: removed command
+* [`Network.deleteCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-deleteCookie)
+
+
+## Roll protocol to r495009
+###### _2017-08-16 17:15:31_ | Diff: [c10e566...c10facc](https://github.com/ChromeDevTools/devtools-protocol/compare/c10e566...c10facc)
+#### `Input`: modified command
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - The `type` in the parameters had `description` _updated_. The `touchPoints` in the parameters had `description` _updated_. The `0` in the parameters had `touchCancel` _added_.
+#### `Input`: modified type
+* [`Input.TouchPoint`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TouchPoint) - The properties's `id` _removed_. The `state` in the properties had `enum` _removed_. The `state` in the properties had `name` _updated_. The `state` in the properties had `type` _updated_. The `state` in the properties had `description` _updated_. The `x` in the properties had `name` _updated_. The `x` in the properties had `description` _updated_. The `y` in the properties had `name` _updated_. The `y` in the properties had `description` _updated_. The `radiusX` in the properties had `name` _updated_. The `radiusX` in the properties had `description` _updated_. The `radiusY` in the properties had `name` _updated_. The `radiusY` in the properties had `type` _updated_. The `radiusY` in the properties had `description` _updated_. The `rotationAngle` in the properties had `name` _updated_. The `rotationAngle` in the properties had `description` _updated_. The `force` in the properties had `name` _updated_. The `force` in the properties had `description` _updated_. The properties's `optional` _added_.
+
+
+## Roll protocol to r494622
+###### _2017-08-15 17:15:31_ | Diff: [2090c47...c10e566](https://github.com/ChromeDevTools/devtools-protocol/compare/2090c47...c10e566)
+#### `Network`: new command
+* [`Network.setCookies`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookies)
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `url` in the parameters had `name` _updated_. The `url` in the parameters had `description` _updated_. The `name` in the parameters had `name` _updated_. The `name` in the parameters had `description` _updated_. The `value` in the parameters had `name` _updated_. The `value` in the parameters had `description` _updated_. The `domain` in the parameters had `description` _updated_. The `path` in the parameters had `description` _updated_. The `secure` in the parameters had `description` _updated_. The `httpOnly` in the parameters had `description` _updated_. The `sameSite` in the parameters had `description` _updated_. The `expirationDate` in the parameters had `name` _updated_. The `expirationDate` in the parameters had `description` _updated_. The parameters's `optional` _added_.
+#### `Network`: new type
+* [`Network.CookieParam`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-CookieParam)
+#### `Input`: modified command
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `0` in the parameters had `mouseWheel` _added_. The parameters's `deltaX` _added_. The parameters's `deltaY` _added_.
+
+
+## Roll protocol to r494333
+###### _2017-08-14 23:15:20_ | Diff: [993dd10...2090c47](https://github.com/ChromeDevTools/devtools-protocol/compare/993dd10...2090c47)
+#### `Runtime`: modified commands
+* [`Runtime.evaluate`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-evaluate) - The `awaitPromise` in the parameters had `description` _updated_.
+* [`Runtime.callFunctionOn`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-callFunctionOn) - The `awaitPromise` in the parameters had `description` _updated_.
+* [`Runtime.runScript`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#method-runScript) - The `awaitPromise` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r494302
+###### _2017-08-14 19:15:35_ | Diff: [e71b448...993dd10](https://github.com/ChromeDevTools/devtools-protocol/compare/e71b448...993dd10)
+#### `Overlay`: modified type
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig) - The properties's `cssGridColor` _added_.
+
+
+## Roll protocol to r494191
+###### _2017-08-14 14:15:39_ | Diff: [f1217c8...e71b448](https://github.com/ChromeDevTools/devtools-protocol/compare/f1217c8...e71b448)
+#### `Performance`: new event
+* [`Performance.metrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#event-metrics)
+#### `Storage`: new commands
+* [`Storage.trackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-trackCacheStorageForOrigin)
+* [`Storage.untrackCacheStorageForOrigin`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-untrackCacheStorageForOrigin)
+#### `Storage`: new events
+* [`Storage.cacheStorageListUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageListUpdated)
+* [`Storage.cacheStorageContentUpdated`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#event-cacheStorageContentUpdated)
+
+
+## Roll protocol to r493957
+###### _2017-08-11 22:15:29_ | Diff: [c314a8c...f1217c8](https://github.com/ChromeDevTools/devtools-protocol/compare/c314a8c...f1217c8)
+#### `Browser`: new command
+* [`Browser.getVersion`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getVersion)
+
+
+## Roll protocol to r493949
+###### _2017-08-11 20:15:31_ | Diff: [f1415d2...c314a8c](https://github.com/ChromeDevTools/devtools-protocol/compare/f1415d2...c314a8c)
+#### `Security`: removed command
+* [`Security.showCertificateViewer`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#method-showCertificateViewer)
+#### `Security`: modified type
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The `hasCertificate` in the properties had `type` _removed_. The `mixedContentType` in the properties had `$ref` _removed_. The `hasCertificate` in the properties had `name` _updated_. The `hasCertificate` in the properties had `description` _updated_. The `mixedContentType` in the properties had `name` _updated_. The `mixedContentType` in the properties had `description` _updated_. The properties's `$ref` _added_. The properties's `type` _added_. The properties's `items` _added_.
+
+
+## Roll protocol to r493629
+###### _2017-08-10 18:15:28_ | Diff: [97e6602...f1415d2](https://github.com/ChromeDevTools/devtools-protocol/compare/97e6602...f1415d2)
+#### `Performance`: new domain
+* [`Performance.Performance`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#domain-Performance)
+#### `Performance`: new commands
+* [`Performance.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-enable)
+* [`Performance.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-disable)
+* [`Performance.getMetrics`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#method-getMetrics)
+#### `Performance`: new type
+* [`Performance.Metric`](https://chromedevtools.github.io/devtools-protocol/tot/Performance/#type-Metric)
+
+
+## Roll protocol to r493463
+###### _2017-08-10 11:15:27_ | Diff: [6a97ff4...97e6602](https://github.com/ChromeDevTools/devtools-protocol/compare/6a97ff4...97e6602)
+#### `Emulation`: new command
+* [`Emulation.setEmitTouchEventsForMouse`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setEmitTouchEventsForMouse)
+#### `Emulation`: modified command
+* [`Emulation.setTouchEmulationEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setTouchEmulationEnabled) - The `configuration` in the parameters had `enum` _removed_. The `configuration` in the parameters had `name` _updated_. The `configuration` in the parameters had `type` _updated_. The `configuration` in the parameters had `description` _updated_. `description` updated.
+
+
+## Roll protocol to r492915
+###### _2017-08-09 02:15:29_ | Diff: [34e6ca8...6a97ff4](https://github.com/ChromeDevTools/devtools-protocol/compare/34e6ca8...6a97ff4)
+#### `CSS`: modified command
+* [`CSS.getBackgroundColors`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getBackgroundColors) - The return value's `computedFontSize` _added_. The return value's `computedFontWeight` _added_. The return value's `computedBodyFontSize` _added_.
+
+
+## Roll protocol to r491719
+###### _2017-08-03 06:15:23_ | Diff: [ff44833...34e6ca8](https://github.com/ChromeDevTools/devtools-protocol/compare/ff44833...34e6ca8)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `frameId` in the properties had `description` _updated_.
+
+
+## Roll protocol to r491274
+###### _2017-08-01 22:15:27_ | Diff: [80d4068...ff44833](https://github.com/ChromeDevTools/devtools-protocol/compare/80d4068...ff44833)
+#### `Page`: modified events
+* [`Page.javascriptDialogOpening`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogOpening) - The `type` in the parameters had `$ref` _removed_. The `message` in the parameters had `name` _updated_. The `message` in the parameters had `description` _updated_. The `type` in the parameters had `name` _updated_. The `type` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `defaultPrompt` _added_.
+* [`Page.javascriptDialogClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-javascriptDialogClosed) - The parameters's `userInput` _added_.
+
+
+## Roll protocol to r491147
+###### _2017-08-01 16:15:38_ | Diff: [598f59e...80d4068](https://github.com/ChromeDevTools/devtools-protocol/compare/598f59e...80d4068)
+#### `Accessibility`: modified types
+* [`Accessibility.AXGlobalStates`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXGlobalStates) - The enum's `disabled` _updated_. The enum's `hidden` _updated_. The enum's `hiddenRoot` _updated_. The enum's `invalid` _updated_. The enum's `keyshortcuts` _updated_. The enum's `roledescription` _updated_. The enum's `roledescription` _added_.
+* [`Accessibility.AXLiveRegionAttributes`](https://chromedevtools.github.io/devtools-protocol/tot/Accessibility/#type-AXLiveRegionAttributes) - The enum's `root` _removed_. The enum's `busy` _updated_.
+
+
+## Roll protocol to r490913
+###### _2017-08-01 01:15:27_ | Diff: [6dbc46a...598f59e](https://github.com/ChromeDevTools/devtools-protocol/compare/6dbc46a...598f59e)
+#### `Page`: removed commands
+* [`Page.setControlNavigations`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setControlNavigations)
+* [`Page.processNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-processNavigation)
+#### `Page`: removed event
+* [`Page.navigationRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-navigationRequested)
+#### `Network`: modified command
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The `errorReason` in the parameters had `description` _updated_.
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `redirectHeaders` in the parameters had `$ref` _removed_. The `redirectHeaders` in the parameters had `optional` _removed_. The `redirectStatusCode` in the parameters had `type` _removed_. The `authChallenge` in the parameters had `$ref` _removed_. The `redirectHeaders` in the parameters had `name` _updated_. The `redirectHeaders` in the parameters had `description` _updated_. The `redirectStatusCode` in the parameters had `name` _updated_. The `redirectStatusCode` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `type` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The `authChallenge` in the parameters had `name` _updated_. The `authChallenge` in the parameters had `description` _updated_. The parameters's `type` _added_ (2 times). The parameters's `$ref` _added_. The parameters's `authChallenge` _added_.
+
+
+## Roll protocol to r490738
+###### _2017-07-31 03:15:36_ | Diff: [815efee...6dbc46a](https://github.com/ChromeDevTools/devtools-protocol/compare/815efee...6dbc46a)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `frameId` in the properties had `$ref` _removed_. The `contentDocumentIndex` in the properties had `type` _removed_. The `pseudoType` in the properties had `$ref` _removed_. The `isClickable` in the properties had `type` _removed_. The `publicId` in the properties had `name` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `name` _updated_. The `systemId` in the properties had `description` _updated_. The `frameId` in the properties had `name` _updated_. The `frameId` in the properties had `description` _updated_. The `contentDocumentIndex` in the properties had `name` _updated_. The `contentDocumentIndex` in the properties had `description` _updated_. The `importedDocumentIndex` in the properties had `name` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `name` _updated_. The `templateContentIndex` in the properties had `description` _updated_. The `pseudoType` in the properties had `name` _updated_. The `pseudoType` in the properties had `description` _updated_. The `isClickable` in the properties had `name` _updated_. The `isClickable` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_ (2 times). The properties's `isClickable` _added_.
+
+
+## Roll protocol to r490636
+###### _2017-07-28 23:15:20_ | Diff: [d1125b4...815efee](https://github.com/ChromeDevTools/devtools-protocol/compare/d1125b4...815efee)
+#### `Page`: new command
+* [`Page.setAdBlockingEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setAdBlockingEnabled)
+
+
+## Roll protocol to r490621
+###### _2017-07-28 21:15:20_ | Diff: [44c6002...d1125b4](https://github.com/ChromeDevTools/devtools-protocol/compare/44c6002...d1125b4)
+#### `Overlay`: new event
+* [`Overlay.screenshotRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-screenshotRequested)
+
+
+## Roll protocol to r489908
+###### _2017-07-27 06:15:23_ | Diff: [057127c...44c6002](https://github.com/ChromeDevTools/devtools-protocol/compare/057127c...44c6002)
+#### `LayerTree`: new type
+* [`LayerTree.StickyPositionConstraint`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-StickyPositionConstraint)
+#### `LayerTree`: modified type
+* [`LayerTree.Layer`](https://chromedevtools.github.io/devtools-protocol/tot/LayerTree/#type-Layer) - The properties's `stickyPositionConstraint` _added_.
+
+
+## Roll protocol to r489613
+###### _2017-07-26 05:15:21_ | Diff: [fe85a1b...057127c](https://github.com/ChromeDevTools/devtools-protocol/compare/fe85a1b...057127c)
+#### `Page`: modified event
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The parameters's `url` _added_.
+
+
+## Roll protocol to r489413
+###### _2017-07-25 13:15:27_ | Diff: [9433945...fe85a1b](https://github.com/ChromeDevTools/devtools-protocol/compare/9433945...fe85a1b)
+#### `Page`: new command
+* [`Page.bringToFront`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-bringToFront)
+
+
+## Roll protocol to r489024
+###### _2017-07-24 11:15:50_ | Diff: [07508bb...9433945](https://github.com/ChromeDevTools/devtools-protocol/compare/07508bb...9433945)
+#### `Page`: modified event
+* [`Page.frameScheduledNavigation`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-frameScheduledNavigation) - The parameters's `reason` _added_.
+#### `IO`: modified command
+* [`IO.read`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-read) - The `data` in the return value had `name` _updated_. The `data` in the return value had `type` _updated_. The `data` in the return value had `description` _updated_. The `eof` in the return value had `name` _updated_. The `eof` in the return value had `type` _updated_. The `eof` in the return value had `description` _updated_. The return value's `optional` _added_. The return value's `eof` _added_.
+#### `IO`: modified type
+* [`IO.StreamHandle`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#type-StreamHandle) - `description` added.
+
+
+## Roll protocol to r488771
+###### _2017-07-21 15:15:36_ | Diff: [a156198...07508bb](https://github.com/ChromeDevTools/devtools-protocol/compare/a156198...07508bb)
+#### `IO`: new command
+* [`IO.resolveBlob`](https://chromedevtools.github.io/devtools-protocol/tot/IO/#method-resolveBlob)
+
+
+## Roll protocol to r488639
+###### _2017-07-21 06:15:18_ | Diff: [3f4dbfa...a156198](https://github.com/ChromeDevTools/devtools-protocol/compare/3f4dbfa...a156198)
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The `unreachableUrl` in the properties had `optional` _updated_. The `unreachableUrl` in the properties had `experimental` _updated_.
+
+
+## Roll protocol to r488555
+###### _2017-07-20 19:15:23_ | Diff: [6a7416a...3f4dbfa](https://github.com/ChromeDevTools/devtools-protocol/compare/6a7416a...3f4dbfa)
+#### `CacheStorage`: new command
+* [`CacheStorage.requestCachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#method-requestCachedResponse)
+#### `CacheStorage`: new type
+* [`CacheStorage.CachedResponse`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-CachedResponse)
+
+
+## Roll protocol to r488475
+###### _2017-07-20 16:15:20_ | Diff: [24063d5...6a7416a](https://github.com/ChromeDevTools/devtools-protocol/compare/24063d5...6a7416a)
+#### `Page`: modified command
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The parameters's `positionY` _removed_. The parameters's `screenOrientation` _removed_. The `positionX` in the parameters had `type` _removed_. The `fitWindow` in the parameters had `name` _updated_. The `fitWindow` in the parameters had `type` _updated_. The `fitWindow` in the parameters had `description` _updated_. The `scale` in the parameters had `name` _updated_. The `scale` in the parameters had `type` _updated_. The `scale` in the parameters had `description` _updated_. The `offsetX` in the parameters had `name` _updated_. The `offsetX` in the parameters had `type` _updated_. The `offsetX` in the parameters had `description` _updated_. The `offsetY` in the parameters had `name` _updated_. The `offsetY` in the parameters had `type` _updated_. The `offsetY` in the parameters had `description` _updated_. The `screenWidth` in the parameters had `name` _updated_. The `screenWidth` in the parameters had `description` _updated_. The `screenHeight` in the parameters had `name` _updated_. The `screenHeight` in the parameters had `type` _updated_. The `screenHeight` in the parameters had `description` _updated_. The `positionX` in the parameters had `name` _updated_. The `positionX` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+#### `Emulation`: modified commands
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `positionY` _removed_. The parameters's `screenOrientation` _removed_. The `offsetX` in the parameters had `deprecated` _removed_. The `offsetY` in the parameters had `deprecated` _removed_. The `positionX` in the parameters had `type` _removed_. The `positionX` in the parameters had `experimental` _removed_. The `fitWindow` in the parameters had `name` _updated_. The `fitWindow` in the parameters had `type` _updated_. The `fitWindow` in the parameters had `description` _updated_. The `scale` in the parameters had `name` _updated_. The `scale` in the parameters had `type` _updated_. The `scale` in the parameters had `description` _updated_. The `offsetX` in the parameters had `name` _updated_. The `offsetX` in the parameters had `type` _updated_. The `offsetX` in the parameters had `description` _updated_. The `offsetY` in the parameters had `name` _updated_. The `offsetY` in the parameters had `type` _updated_. The `offsetY` in the parameters had `description` _updated_. The `screenWidth` in the parameters had `name` _updated_. The `screenWidth` in the parameters had `description` _updated_. The `screenHeight` in the parameters had `name` _updated_. The `screenHeight` in the parameters had `type` _updated_. The `screenHeight` in the parameters had `description` _updated_. The `positionX` in the parameters had `name` _updated_. The `positionX` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize) - `description` updated.
+
+
+## Roll protocol to r488407
+###### _2017-07-20 14:15:34_ | Diff: [0247171...24063d5](https://github.com/ChromeDevTools/devtools-protocol/compare/0247171...24063d5)
+#### `Target`: modified commands
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The `targetId` in the parameters had `$ref` _removed_. The `message` in the parameters had `type` _removed_. `description` updated. The `targetId` in the parameters had `name` _updated_. The `message` in the parameters had `name` _updated_. The parameters's `type` _added_. The parameters's `$ref` _added_. The parameters's `optional` _added_. The parameters's `description` _added_. The parameters's `targetId` _added_.
+* [`Target.attachToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-attachToTarget) - The `success` in the return value had `type` _removed_. The `success` in the return value had `name` _updated_. The `success` in the return value had `description` _updated_. The return value's `$ref` _added_.
+* [`Target.detachFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-detachFromTarget) - `description` updated. The `targetId` in the parameters had `name` _updated_. The `targetId` in the parameters had `$ref` _updated_. The parameters's `optional` _added_. The parameters's `description` _added_. The parameters's `targetId` _added_.
+#### `Target`: modified events
+* [`Target.attachedToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-attachedToTarget) - The `waitingForDebugger` in the parameters had `type` _removed_. The `targetInfo` in the parameters had `name` _updated_. The `targetInfo` in the parameters had `$ref` _updated_. The `waitingForDebugger` in the parameters had `name` _updated_. The parameters's `description` _added_. The parameters's `$ref` _added_. The parameters's `waitingForDebugger` _added_.
+* [`Target.detachedFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-detachedFromTarget) - `description` updated. The `targetId` in the parameters had `name` _updated_. The `targetId` in the parameters had `$ref` _updated_. The parameters's `description` _added_. The parameters's `targetId` _added_.
+* [`Target.receivedMessageFromTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-receivedMessageFromTarget) - `description` updated. The `targetId` in the parameters had `name` _updated_. The `targetId` in the parameters had `$ref` _updated_. The parameters's `description` _added_. The parameters's `targetId` _added_.
+#### `Target`: new type
+* [`Target.SessionID`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-SessionID)
+
+
+## Roll protocol to r487821
+###### _2017-07-19 04:15:25_ | Diff: [1d10caf...0247171](https://github.com/ChromeDevTools/devtools-protocol/compare/1d10caf...0247171)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - The parameters's `ignoreInvalidPageRanges` _added_.
+#### `Page`: modified type
+* [`Page.Frame`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Frame) - The properties's `unreachableUrl` _added_.
+
+
+## Roll protocol to r486590
+###### _2017-07-13 18:15:23_ | Diff: [9612949...1d10caf](https://github.com/ChromeDevTools/devtools-protocol/compare/9612949...1d10caf)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `backendNodeId` in the properties had `$ref` _removed_. The `childNodeIndexes` in the properties had `items` _removed_. The `attributes` in the properties had `items` _removed_. The `pseudoElementIndexes` in the properties had `items` _removed_. The `layoutNodeIndex` in the properties had `type` _removed_. The `layoutNodeIndex` in the properties had `optional` _removed_. The `frameId` in the properties had `$ref` _removed_. The `backendNodeId` in the properties had `name` _updated_. The `backendNodeId` in the properties had `description` _updated_. The `childNodeIndexes` in the properties had `name` _updated_. The `childNodeIndexes` in the properties had `type` _updated_. The `childNodeIndexes` in the properties had `description` _updated_. The `attributes` in the properties had `name` _updated_. The `attributes` in the properties had `type` _updated_. The `attributes` in the properties had `description` _updated_. The `pseudoElementIndexes` in the properties had `name` _updated_. The `pseudoElementIndexes` in the properties had `type` _updated_. The `pseudoElementIndexes` in the properties had `description` _updated_. The `layoutNodeIndex` in the properties had `name` _updated_. The `layoutNodeIndex` in the properties had `description` _updated_. The `documentURL` in the properties had `name` _updated_. The `documentURL` in the properties had `type` _updated_. The `documentURL` in the properties had `description` _updated_. The `baseURL` in the properties had `name` _updated_. The `baseURL` in the properties had `type` _updated_. The `baseURL` in the properties had `description` _updated_. The `contentLanguage` in the properties had `name` _updated_. The `contentLanguage` in the properties had `type` _updated_. The `contentLanguage` in the properties had `description` _updated_. The `publicId` in the properties had `name` _updated_. The `publicId` in the properties had `type` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `name` _updated_. The `systemId` in the properties had `description` _updated_. The `frameId` in the properties had `name` _updated_. The `frameId` in the properties had `description` _updated_. The `contentDocumentIndex` in the properties had `name` _updated_. The `contentDocumentIndex` in the properties had `type` _updated_. The `contentDocumentIndex` in the properties had `description` _updated_. The `importedDocumentIndex` in the properties had `name` _updated_. The `importedDocumentIndex` in the properties had `type` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `name` _updated_. The `templateContentIndex` in the properties had `type` _updated_. The `templateContentIndex` in the properties had `description` _updated_. The `pseudoType` in the properties had `name` _updated_. The `pseudoType` in the properties had `$ref` _updated_. The `pseudoType` in the properties had `description` _updated_. The `isClickable` in the properties had `name` _updated_. The `isClickable` in the properties had `type` _updated_. The `isClickable` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `optional` _added_. The properties's `$ref` _added_. The properties's `items` _added_ (3 times). The properties's `importedDocumentIndex` _added_. The properties's `templateContentIndex` _added_. The properties's `pseudoType` _added_. The properties's `isClickable` _added_.
+
+
+## Roll protocol to r486216
+###### _2017-07-12 18:55:05_ | Diff: [361ec60...1329e26](https://github.com/ChromeDevTools/devtools-protocol/compare/361ec60...1329e26)
+#### `DOM`: modified commands
+* [`DOM.focus`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-focus) - The `nodeId` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `backendNodeId` _added_. The parameters's `objectId` _added_.
+* [`DOM.setFileInputFiles`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setFileInputFiles) - The `nodeId` in the parameters had `$ref` _removed_. The `files` in the parameters had `type` _removed_. The `files` in the parameters had `items` _removed_. The `nodeId` in the parameters had `name` _updated_. The `nodeId` in the parameters had `description` _updated_. The `files` in the parameters had `name` _updated_. The `files` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `items` _added_. The parameters's `$ref` _added_. The parameters's `optional` _added_. The parameters's `backendNodeId` _added_. The parameters's `objectId` _added_.
+* [`DOM.getBoxModel`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getBoxModel) - The `nodeId` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `backendNodeId` _added_. The parameters's `objectId` _added_.
+
+
+## Roll protocol to r486175
+###### _2017-07-12 17:15:26_ | Diff: [ea90b21...361ec60](https://github.com/ChromeDevTools/devtools-protocol/compare/ea90b21...361ec60)
+#### `Input`: modified commands
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `x` in the parameters had `type` _updated_. The `x` in the parameters had `description` _updated_. The `y` in the parameters had `type` _updated_. The `y` in the parameters had `description` _updated_.
+* [`Input.synthesizePinchGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizePinchGesture) - The `x` in the parameters had `type` _updated_. The `y` in the parameters had `type` _updated_.
+* [`Input.synthesizeScrollGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeScrollGesture) - The `x` in the parameters had `type` _updated_. The `y` in the parameters had `type` _updated_. The `xDistance` in the parameters had `type` _updated_. The `yDistance` in the parameters had `type` _updated_. The `xOverscroll` in the parameters had `type` _updated_. The `yOverscroll` in the parameters had `type` _updated_.
+* [`Input.synthesizeTapGesture`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-synthesizeTapGesture) - The `x` in the parameters had `type` _updated_. The `y` in the parameters had `type` _updated_.
+
+
+## Roll protocol to r485940 485678
+###### _2017-07-12 07:15:22_ | Diff: [3553411...9edfb70](https://github.com/ChromeDevTools/devtools-protocol/compare/3553411...9edfb70)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The `fromSurface` in the parameters had `type` _removed_. The `fromSurface` in the parameters had `name` _updated_. The `fromSurface` in the parameters had `description` _updated_. The parameters's `$ref` _added_. The parameters's `fromSurface` _added_.
+#### `Page`: new type
+* [`Page.Viewport`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-Viewport)
+
+
+## Roll protocol to r485689 485314
+###### _2017-07-11 12:15:29_ | Diff: [837a781...3553411](https://github.com/ChromeDevTools/devtools-protocol/compare/837a781...3553411)
+#### `Page`: modified command
+* [`Page.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDeviceMetricsOverride) - The parameters's `optional` _added_.
+#### `Emulation`: removed commands
+* [`Emulation.forceViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-forceViewport)
+* [`Emulation.resetViewport`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-resetViewport)
+#### `Emulation`: modified commands
+* [`Emulation.setDeviceMetricsOverride`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setDeviceMetricsOverride) - The parameters's `optional` _added_.
+* [`Emulation.setVisibleSize`](https://chromedevtools.github.io/devtools-protocol/tot/Emulation/#method-setVisibleSize) - `description` updated. `deprecated` added.
+
+
+## Roll protocol to r485250
+###### _2017-07-10 06:15:19_ | Diff: [25c87f6...837a781](https://github.com/ChromeDevTools/devtools-protocol/compare/25c87f6...837a781)
+#### `DOM`: modified command
+* [`DOM.resolveNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-resolveNode) - The `objectGroup` in the parameters had `type` _removed_. The `objectGroup` in the parameters had `name` _updated_. The `objectGroup` in the parameters had `description` _updated_. `description` updated. The parameters's `optional` _added_. The parameters's `$ref` _added_. The parameters's `objectGroup` _added_.
+
+
+## Roll protocol to r485002
+###### _2017-07-07 12:15:19_ | Diff: [0589169...25c87f6](https://github.com/ChromeDevTools/devtools-protocol/compare/0589169...25c87f6)
+#### `Network`: new command
+* [`Network.setRequestInterceptionEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setRequestInterceptionEnabled)
+#### `Network`: removed command
+* [`Network.enableRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enableRequestInterception)
+
+
+## Roll protocol to r484724
+###### _2017-07-06 13:15:20_ | Diff: [40987ca...0589169](https://github.com/ChromeDevTools/devtools-protocol/compare/40987ca...0589169)
+#### `Page`: new commands
+* [`Page.addScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnNewDocument)
+* [`Page.removeScriptToEvaluateOnNewDocument`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnNewDocument)
+#### `Page`: modified commands
+* [`Page.addScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-addScriptToEvaluateOnLoad) - `deprecated` added. `description` added.
+* [`Page.removeScriptToEvaluateOnLoad`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-removeScriptToEvaluateOnLoad) - `deprecated` added. `description` added.
+
+
+## Roll protocol to r484463
+###### _2017-07-05 21:15:19_ | Diff: [3cca818...40987ca](https://github.com/ChromeDevTools/devtools-protocol/compare/3cca818...40987ca)
+#### `Security`: new type
+* [`Security.MixedContentType`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-MixedContentType)
+#### `Security`: modified type
+* [`Security.SecurityStateExplanation`](https://chromedevtools.github.io/devtools-protocol/tot/Security/#type-SecurityStateExplanation) - The properties's `mixedContentType` _added_.
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `mixedContentType` in the properties had `type` _removed_. The `mixedContentType` in the properties had `enum` _removed_. The `mixedContentType` in the properties had `description` _updated_. The properties's `$ref` _added_.
+
+
+## Roll protocol to r484434
+###### _2017-07-05 18:15:34_ | Diff: [81ccf3f...3cca818](https://github.com/ChromeDevTools/devtools-protocol/compare/81ccf3f...3cca818)
+#### `Page`: modified events
+* [`Page.domContentEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-domContentEventFired) - The `timestamp` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+* [`Page.loadEventFired`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-loadEventFired) - The `timestamp` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+#### `Page`: modified types
+* [`Page.FrameResource`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-FrameResource) - The `lastModified` in the properties had `$ref` _updated_.
+* [`Page.ScreencastFrameMetadata`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-ScreencastFrameMetadata) - The `timestamp` in the properties had `type` _removed_. The properties's `$ref` _added_.
+#### `Network`: modified command
+* [`Network.setCookie`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setCookie) - The `expirationDate` in the parameters had `$ref` _updated_.
+#### `Network`: modified events
+* [`Network.resourceChangedPriority`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-resourceChangedPriority) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `timestamp` in the parameters had `$ref` _updated_. The `wallTime` in the parameters had `$ref` _updated_. The `wallTime` in the parameters had `description` _updated_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.dataReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-dataReceived) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.loadingFinished`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFinished) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.loadingFailed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-loadingFailed) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.webSocketWillSendHandshakeRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketWillSendHandshakeRequest) - The `timestamp` in the parameters had `$ref` _updated_. The `wallTime` in the parameters had `$ref` _updated_.
+* [`Network.webSocketHandshakeResponseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketHandshakeResponseReceived) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.webSocketClosed`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketClosed) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.webSocketFrameReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameReceived) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.webSocketFrameError`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameError) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.webSocketFrameSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-webSocketFrameSent) - The `timestamp` in the parameters had `$ref` _updated_.
+* [`Network.eventSourceMessageReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-eventSourceMessageReceived) - The `timestamp` in the parameters had `$ref` _updated_.
+#### `Network`: new types
+* [`Network.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-TimeSinceEpoch)
+* [`Network.MonotonicTime`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-MonotonicTime)
+#### `Network`: removed type
+* [`Network.Timestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Timestamp)
+#### `Network`: modified types
+* [`Network.SignedCertificateTimestamp`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SignedCertificateTimestamp) - The `timestamp` in the properties had `$ref` _updated_.
+* [`Network.SecurityDetails`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-SecurityDetails) - The `validFrom` in the properties had `$ref` _updated_. The `validTo` in the properties had `$ref` _updated_.
+#### `Input`: modified commands
+* [`Input.dispatchKeyEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchKeyEvent) - The `timestamp` in the parameters had `type` _removed_. The `timestamp` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+* [`Input.dispatchMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent) - The `timestamp` in the parameters had `type` _removed_. The `timestamp` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+* [`Input.dispatchTouchEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent) - The `timestamp` in the parameters had `type` _removed_. The `timestamp` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+* [`Input.emulateTouchFromMouseEvent`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-emulateTouchFromMouseEvent) - The `timestamp` in the parameters had `type` _removed_. The `timestamp` in the parameters had `description` _updated_. The parameters's `$ref` _added_.
+#### `Input`: new type
+* [`Input.TimeSinceEpoch`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#type-TimeSinceEpoch)
+
+
+## Roll protocol to r484012
+###### _2017-07-03 09:15:18_ | Diff: [e2e55ea...81ccf3f](https://github.com/ChromeDevTools/devtools-protocol/compare/e2e55ea...81ccf3f)
+#### `Network`: modified events
+* [`Network.requestWillBeSent`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestWillBeSent) - The `frameId` in the parameters had `experimental` _removed_. The `loaderId` in the parameters had `$ref` _removed_. The `documentURL` in the parameters had `type` _removed_. The `wallTime` in the parameters had `experimental` _removed_. The `frameId` in the parameters had `name` _updated_. The `frameId` in the parameters had `$ref` _updated_. The `frameId` in the parameters had `description` _updated_. The `loaderId` in the parameters had `name` _updated_. The `loaderId` in the parameters had `description` _updated_. The `documentURL` in the parameters had `name` _updated_. The `documentURL` in the parameters had `description` _updated_. The `request` in the parameters had `name` _updated_. The `request` in the parameters had `$ref` _updated_. The `request` in the parameters had `description` _updated_. The `timestamp` in the parameters had `name` _updated_. The `timestamp` in the parameters had `description` _updated_. The `wallTime` in the parameters had `name` _updated_. The `wallTime` in the parameters had `$ref` _updated_. The `wallTime` in the parameters had `description` _updated_. The `initiator` in the parameters had `name` _updated_. The `initiator` in the parameters had `$ref` _updated_. The `initiator` in the parameters had `description` _updated_. The `redirectResponse` in the parameters had `name` _updated_. The `redirectResponse` in the parameters had `$ref` _updated_. The `redirectResponse` in the parameters had `description` _updated_. The `type` in the parameters had `name` _updated_. The `type` in the parameters had `$ref` _updated_. The `type` in the parameters had `description` _updated_. The parameters's `type` _added_. The parameters's `$ref` _added_. The parameters's `experimental` _added_ (2 times). The parameters's `optional` _added_.
+* [`Network.responseReceived`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-responseReceived) - The `frameId` in the parameters had `experimental` _removed_. The `frameId` in the parameters had `name` _updated_. The `frameId` in the parameters had `$ref` _updated_. The `frameId` in the parameters had `description` _updated_. The `loaderId` in the parameters had `name` _updated_. The `loaderId` in the parameters had `$ref` _updated_. The `loaderId` in the parameters had `description` _updated_. The `timestamp` in the parameters had `name` _updated_. The `timestamp` in the parameters had `$ref` _updated_. The `timestamp` in the parameters had `description` _updated_. The `type` in the parameters had `name` _updated_. The `type` in the parameters had `$ref` _updated_. The `type` in the parameters had `description` _updated_. The `response` in the parameters had `name` _updated_. The `response` in the parameters had `$ref` _updated_. The `response` in the parameters had `description` _updated_. The parameters's `optional` _added_. The parameters's `experimental` _added_.
+
+
+## Roll protocol to r483799
+###### _2017-06-30 13:15:20_ | Diff: [8fad5bb...e2e55ea](https://github.com/ChromeDevTools/devtools-protocol/compare/8fad5bb...e2e55ea)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The `frameId` in the properties had `$ref` _removed_. The `contentDocumentIndex` in the properties had `type` _removed_. The `pseudoType` in the properties had `$ref` _removed_. The `isClickable` in the properties had `type` _removed_. The `publicId` in the properties had `name` _updated_. The `publicId` in the properties had `description` _updated_. The `systemId` in the properties had `name` _updated_. The `systemId` in the properties had `description` _updated_. The `frameId` in the properties had `name` _updated_. The `frameId` in the properties had `description` _updated_. The `contentDocumentIndex` in the properties had `name` _updated_. The `contentDocumentIndex` in the properties had `description` _updated_. The `importedDocumentIndex` in the properties had `name` _updated_. The `importedDocumentIndex` in the properties had `description` _updated_. The `templateContentIndex` in the properties had `name` _updated_. The `templateContentIndex` in the properties had `description` _updated_. The `pseudoType` in the properties had `name` _updated_. The `pseudoType` in the properties had `description` _updated_. The `isClickable` in the properties had `name` _updated_. The `isClickable` in the properties had `description` _updated_. The properties's `type` _added_ (2 times). The properties's `$ref` _added_ (2 times). The properties's `isClickable` _added_.
+
+
+## Roll protocol to r483706
+###### _2017-06-30 08:15:16_ | Diff: [d5a2d43...8fad5bb](https://github.com/ChromeDevTools/devtools-protocol/compare/d5a2d43...8fad5bb)
+#### `DOMSnapshot`: modified type
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode) - The properties's `isClickable` _added_.
+
+
+## Roll protocol to r483512
+###### _2017-06-29 15:15:18_ | Diff: [cbd3167...d5a2d43](https://github.com/ChromeDevTools/devtools-protocol/compare/cbd3167...d5a2d43)
+#### `Target`: modified command
+* [`Target.setDiscoverTargets`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-setDiscoverTargets) - `description` updated.
+#### `Target`: new event
+* [`Target.targetInfoChanged`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#event-targetInfoChanged)
+#### `Target`: modified type
+* [`Target.TargetInfo`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#type-TargetInfo) - The properties's `attached` _added_.
+
+
+## Roll protocol to r482373
+###### _2017-06-26 13:15:23_ | Diff: [7462a7d...31bb33b](https://github.com/ChromeDevTools/devtools-protocol/compare/7462a7d...31bb33b)
+#### `Network`: modified type
+* [`Network.Initiator`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Initiator) - The `url` in the properties had `description` _updated_. The `lineNumber` in the properties had `description` _updated_.
+
+
+## Roll protocol to r481914
+###### _2017-06-23 09:15:23_ | Diff: [6d93eed...7462a7d](https://github.com/ChromeDevTools/devtools-protocol/compare/6d93eed...7462a7d)
+#### `Page`: modified command
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld)
+
+
+## Roll protocol to r481860
+###### _2017-06-23 05:15:20_ | Diff: [6463d0e...6d93eed](https://github.com/ChromeDevTools/devtools-protocol/compare/6463d0e...6d93eed)
+#### `Profiler`: modified type
+* [`Profiler.FunctionCoverage`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#type-FunctionCoverage) - The properties's `isBlockCoverage` _added_.
+
+
+## Roll protocol to r481735
+###### _2017-06-22 17:15:19_ | Diff: [ccabc09...6463d0e](https://github.com/ChromeDevTools/devtools-protocol/compare/ccabc09...6463d0e)
+#### `Storage`: modified command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota) - The return value's `usageBreakdown` _added_.
+#### `Storage`: new type
+* [`Storage.UsageForType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-UsageForType)
+#### `Storage`: modified type
+* [`Storage.StorageType`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-StorageType) - The enum's `other` _added_.
+
+
+## Roll protocol to r480235
+###### _2017-06-16 17:15:36_ | Diff: [cdb002c...ccabc09](https://github.com/ChromeDevTools/devtools-protocol/compare/cdb002c...ccabc09)
+#### `Storage`: new command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+
+
+## Roll protocol to r480007
+###### _2017-06-16 03:15:26_ | Diff: [34511ab...cdb002c](https://github.com/ChromeDevTools/devtools-protocol/compare/34511ab...cdb002c)
+#### `Network`: modified command
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest) - The `errorReason` in the parameters had `description` _updated_. The `rawResponse` in the parameters had `description` _updated_. The `url` in the parameters had `description` _updated_. The `method` in the parameters had `description` _updated_. The `postData` in the parameters had `description` _updated_. The `headers` in the parameters had `description` _updated_. The parameters's `authChallengeResponse` _added_.
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `interceptionId` in the parameters had `description` _updated_. The parameters's `authChallenge` _added_.
+#### `Network`: new types
+* [`Network.AuthChallenge`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallenge)
+* [`Network.AuthChallengeResponse`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-AuthChallengeResponse)
+
+
+## Roll protocol to r479728
+###### _2017-06-15 09:15:20_ | Diff: [0fa531a...34511ab](https://github.com/ChromeDevTools/devtools-protocol/compare/0fa531a...34511ab)
+#### `CSS`: removed command
+* [`CSS.getLayoutTreeAndStyles`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#method-getLayoutTreeAndStyles)
+#### `CSS`: removed types
+* [`CSS.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-LayoutTreeNode)
+* [`CSS.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/CSS/#type-ComputedStyle)
+
+
+## Roll protocol to r479333
+###### _2017-06-14 02:15:15_ | Diff: [d21a0f2...0fa531a](https://github.com/ChromeDevTools/devtools-protocol/compare/d21a0f2...0fa531a)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `InterceptionId` in the parameters had `name` _updated_.
+
+
+## Roll protocol to r479198
+###### _2017-06-13 16:15:25_ | Diff: [0dc9f1b...d21a0f2](https://github.com/ChromeDevTools/devtools-protocol/compare/0dc9f1b...d21a0f2)
+#### `Network`: modified type
+* [`Network.Request`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-Request) - The `referrerPolicy` in the properties had `no-referrer-when-downgrade-origin-when-cross-origin` _updated_. The `6` in the properties had `strict-origin` _added_. The `6` in the properties had `strict-origin-when-cross-origin` _added_.
+
+
+## Roll protocol to r478853
+###### _2017-06-12 18:15:17_ | Diff: [17022a7...0dc9f1b](https://github.com/ChromeDevTools/devtools-protocol/compare/17022a7...0dc9f1b)
+#### `Runtime`: modified event
+* [`Runtime.consoleAPICalled`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-consoleAPICalled) - The parameters's `context` _added_.
+
+
+## Roll protocol to r478813
+###### _2017-06-12 16:15:23_ | Diff: [abcbcb5...17022a7](https://github.com/ChromeDevTools/devtools-protocol/compare/abcbcb5...17022a7)
+#### `CacheStorage`: modified type
+* [`CacheStorage.DataEntry`](https://chromedevtools.github.io/devtools-protocol/tot/CacheStorage/#type-DataEntry) - The `response` in the properties had `description` _updated_. The properties's `responseTime` _added_.
+
+
+## Roll protocol to r478513
+###### _2017-06-10 03:15:26_ | Diff: [3ac23d7...abcbcb5](https://github.com/ChromeDevTools/devtools-protocol/compare/3ac23d7...abcbcb5)
+#### `DOMSnapshot`: new domain
+* [`DOMSnapshot.DOMSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#domain-DOMSnapshot)
+#### `DOMSnapshot`: new command
+* [`DOMSnapshot.getSnapshot`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#method-getSnapshot)
+#### `DOMSnapshot`: new types
+* [`DOMSnapshot.DOMNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-DOMNode)
+* [`DOMSnapshot.LayoutTreeNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-LayoutTreeNode)
+* [`DOMSnapshot.ComputedStyle`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-ComputedStyle)
+* [`DOMSnapshot.NameValue`](https://chromedevtools.github.io/devtools-protocol/tot/DOMSnapshot/#type-NameValue)
+
+
+## Roll protocol to r477611
+###### _2017-06-07 04:15:16_ | Diff: [ffd3dba...3ac23d7](https://github.com/ChromeDevTools/devtools-protocol/compare/ffd3dba...3ac23d7)
+#### `Network`: modified event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted) - The `redirectHeaders` in the parameters had `optional` _removed_. The `redirectStatusCode` in the parameters had `type` _removed_. The `redirectHeaders` in the parameters had `name` _updated_. The `redirectHeaders` in the parameters had `$ref` _updated_. The `redirectHeaders` in the parameters had `description` _updated_. The `redirectStatusCode` in the parameters had `name` _updated_. The `redirectStatusCode` in the parameters had `description` _updated_. The `redirectUrl` in the parameters had `name` _updated_. The `redirectUrl` in the parameters had `type` _updated_. The `redirectUrl` in the parameters had `description` _updated_. The parameters's `$ref` _added_. The parameters's `redirectUrl` _added_.
+
+
+## Roll protocol to r477501
+###### _2017-06-06 18:15:18_ | Diff: [579f232...ffd3dba](https://github.com/ChromeDevTools/devtools-protocol/compare/579f232...ffd3dba)
+#### `Storage`: removed command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+#### `Storage`: removed type
+* [`Storage.QuotaAndUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-QuotaAndUsage)
+
+
+## Roll protocol to r477431
+###### _2017-06-06 15:15:24_ | Diff: [6d50df6...579f232](https://github.com/ChromeDevTools/devtools-protocol/compare/6d50df6...579f232)
+#### `Storage`: new command
+* [`Storage.getUsageAndQuota`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-getUsageAndQuota)
+#### `Storage`: new type
+* [`Storage.QuotaAndUsage`](https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-QuotaAndUsage)
+
+
+## Roll protocol to r476654
+###### _2017-06-02 08:15:15_ | Diff: [5f36401...b0a59a9](https://github.com/ChromeDevTools/devtools-protocol/compare/5f36401...b0a59a9)
+#### `Network`: new commands
+* [`Network.enableRequestInterception`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-enableRequestInterception)
+* [`Network.continueInterceptedRequest`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-continueInterceptedRequest)
+#### `Network`: new event
+* [`Network.requestIntercepted`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#event-requestIntercepted)
+#### `Network`: new types
+* [`Network.InterceptionId`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-InterceptionId)
+* [`Network.ErrorReason`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#type-ErrorReason)
+
+
+## Roll protocol to r474209
+###### _2017-05-24 01:15:13_ | Diff: [408d0e6...f492fba](https://github.com/ChromeDevTools/devtools-protocol/compare/408d0e6...f492fba)
+#### `Page`: modified command
+* [`Page.captureScreenshot`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-captureScreenshot) - The `fromSurface` in the parameters had `description` _updated_.
+
+
+## Roll protocol to r474080
+###### _2017-05-23 15:15:33_ | Diff: [bb2b187...eca5adc](https://github.com/ChromeDevTools/devtools-protocol/compare/bb2b187...eca5adc)
+#### `Input`: new command
+* [`Input.setIgnoreInputEvents`](https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-setIgnoreInputEvents)
+
+
+## Roll protocol to r474054 466964
+###### _2017-05-23 14:15:15_ | Diff: [e599527...bb2b187](https://github.com/ChromeDevTools/devtools-protocol/compare/e599527...bb2b187)
+#### `Page`: modified command
+* [`Page.navigate`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-navigate) - The parameters's `transitionType` _added_.
+#### `Page`: new type
+* [`Page.TransitionType`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-TransitionType)
+#### `Page`: modified type
+* [`Page.NavigationEntry`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#type-NavigationEntry) - The `title` in the properties had `name` _updated_. The `title` in the properties had `description` _updated_. The properties's `title` _added_. The properties's `transitionType` _added_.
+
+
+## Roll protocol to r472421
+###### _2017-05-17 04:15:14_ | Diff: [c7253c2...e599527](https://github.com/ChromeDevTools/devtools-protocol/compare/c7253c2...e599527)
+#### `SystemInfo`: modified command
+* [`SystemInfo.getInfo`](https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo/#method-getInfo) - The return value's `commandLine` _added_.
+
+
+## Roll protocol to r472381
+###### _2017-05-17 01:15:16_ | Diff: [42e9444...c7253c2](https://github.com/ChromeDevTools/devtools-protocol/compare/42e9444...c7253c2)
+#### `Debugger`: modified command
+* [`Debugger.continueToLocation`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-continueToLocation) - The parameters's `targetCallFrames` _added_.
+
+
+## Roll protocol to r470873
+###### _2017-05-11 01:15:18_ | Diff: [a03b9bf...42e9444](https://github.com/ChromeDevTools/devtools-protocol/compare/a03b9bf...42e9444)
+#### `Page`: new command
+* [`Page.createIsolatedWorld`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-createIsolatedWorld)
+
+
+## Roll protocol to r470190
+###### _2017-05-08 21:15:15_ | Diff: [7060d50...a03b9bf](https://github.com/ChromeDevTools/devtools-protocol/compare/7060d50...a03b9bf)
+#### `Page`: modified command
+* [`Page.printToPDF`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF) - `description` updated.
+
+
+## Roll protocol to r467326
+###### _2017-04-26 08:15:16_ | Diff: [d7b68bb...c656485](https://github.com/ChromeDevTools/devtools-protocol/compare/d7b68bb...c656485)
+#### `Runtime`: modified event
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated) - The `context` in the parameters had `description` _updated_.
+#### `Debugger`: modified command
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - The `end` in the parameters had `description` _updated_.
+#### `Profiler`: modified event
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted) - `description` updated.
+#### `HeapProfiler`: modified event
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId) - `description` updated.
+
+
+## Roll protocol to r467252
+###### _2017-04-25 23:15:14_ | Diff: [94e4a6a...d7b68bb](https://github.com/ChromeDevTools/devtools-protocol/compare/94e4a6a...d7b68bb)
+#### `Runtime`: modified event
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated) - The `context` in the parameters had `description` _updated_.
+#### `Debugger`: modified command
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - The `end` in the parameters had `description` _updated_.
+#### `Profiler`: modified event
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted) - `description` updated.
+#### `HeapProfiler`: modified event
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId) - `description` updated.
+
+
+## Roll protocol to r466832
+###### _2017-04-24 17:15:24_ | Diff: [95a5c47...94e4a6a](https://github.com/ChromeDevTools/devtools-protocol/compare/95a5c47...94e4a6a)
+#### `Overlay`: new domain
+* [`Overlay.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Overlay)
+#### `Overlay`: removed domain
+* [`Overlay.Rendering`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Rendering)
+#### `Page`: removed command
+* [`Page.configureOverlay`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-configureOverlay)
+#### `Overlay`: new commands
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setSuspended`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setSuspended)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+#### `Overlay`: new events
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+#### `Overlay`: new types
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `DOM`: removed commands
+* [`DOM.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectMode)
+* [`DOM.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightQuad)
+* [`DOM.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightFrame)
+* [`DOM.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getHighlightObjectForTest)
+#### `DOM`: modified commands
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect) - `description` updated. `redirect` added.
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode) - `description` updated. `redirect` added.
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight) - `description` updated. `redirect` added.
+#### `DOM`: removed events
+* [`DOM.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inspectNodeRequested)
+* [`DOM.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-nodeHighlightRequested)
+#### `DOM`: removed types
+* [`DOM.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-HighlightConfig)
+* [`DOM.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-InspectMode)
+
+
+## Roll protocol to r466815
+###### _2017-04-24 16:15:14_ | Diff: [e5adaae...95a5c47](https://github.com/ChromeDevTools/devtools-protocol/compare/e5adaae...95a5c47)
+#### `Runtime`: modified event
+* [`Runtime.executionContextCreated`](https://chromedevtools.github.io/devtools-protocol/tot/Runtime/#event-executionContextCreated) - The `context` in the parameters had `description` _updated_.
+#### `Debugger`: modified command
+* [`Debugger.getPossibleBreakpoints`](https://chromedevtools.github.io/devtools-protocol/tot/Debugger/#method-getPossibleBreakpoints) - The `end` in the parameters had `description` _updated_.
+#### `Profiler`: modified event
+* [`Profiler.consoleProfileStarted`](https://chromedevtools.github.io/devtools-protocol/tot/Profiler/#event-consoleProfileStarted) - `description` updated.
+#### `HeapProfiler`: modified event
+* [`HeapProfiler.lastSeenObjectId`](https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler/#event-lastSeenObjectId) - `description` updated.
+
+
+## Roll protocol to r466559
+###### _2017-04-23 00:15:13_ | Diff: [6653c3f...e5adaae](https://github.com/ChromeDevTools/devtools-protocol/compare/6653c3f...e5adaae)
+#### `Rendering`: new domain
+* [`Rendering.Rendering`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#domain-Rendering)
+#### `Rendering`: removed domain
+* [`Rendering.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#domain-Overlay)
+#### `Page`: new command
+* [`Page.configureOverlay`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-configureOverlay)
+#### `Rendering`: new commands
+* [`Rendering.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowPaintRects)
+* [`Rendering.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowDebugBorders)
+* [`Rendering.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowFPSCounter)
+* [`Rendering.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowScrollBottleneckRects)
+* [`Rendering.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowViewportSizeOnResize)
+#### `DOM`: new commands
+* [`DOM.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectMode)
+* [`DOM.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightQuad)
+* [`DOM.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightFrame)
+* [`DOM.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getHighlightObjectForTest)
+#### `DOM`: modified commands
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect) - `redirect` removed. `description` updated.
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode) - `redirect` removed. `description` updated.
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight) - `redirect` removed. `description` updated.
+#### `DOM`: new events
+* [`DOM.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inspectNodeRequested)
+* [`DOM.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-nodeHighlightRequested)
+#### `DOM`: new types
+* [`DOM.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-HighlightConfig)
+* [`DOM.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-InspectMode)
+
+
+## Roll protocol to r466506
+###### _2017-04-21 17:15:18_ | Diff: [afbaab8...495acc6](https://github.com/ChromeDevTools/devtools-protocol/compare/afbaab8...495acc6)
+#### `Overlay`: new domain
+* [`Overlay.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Overlay)
+#### `Overlay`: removed domain
+* [`Overlay.Rendering`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Rendering)
+#### `Page`: removed command
+* [`Page.configureOverlay`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-configureOverlay)
+#### `Overlay`: new commands
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setSuspended`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setSuspended)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+#### `Overlay`: new events
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+#### `Overlay`: new types
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `DOM`: removed commands
+* [`DOM.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectMode)
+* [`DOM.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightQuad)
+* [`DOM.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightFrame)
+* [`DOM.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getHighlightObjectForTest)
+#### `DOM`: modified commands
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect) - `description` updated. `redirect` added.
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode) - `description` updated. `redirect` added.
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight) - `description` updated. `redirect` added.
+#### `DOM`: removed events
+* [`DOM.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inspectNodeRequested)
+* [`DOM.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-nodeHighlightRequested)
+#### `DOM`: removed types
+* [`DOM.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-HighlightConfig)
+* [`DOM.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-InspectMode)
+
+
+## Roll protocol to r465861
+###### _2017-04-19 19:15:14_ | Diff: [3dd613f...2621a84](https://github.com/ChromeDevTools/devtools-protocol/compare/3dd613f...2621a84)
+#### `Rendering`: new domain
+* [`Rendering.Rendering`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#domain-Rendering)
+#### `Rendering`: removed domain
+* [`Rendering.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#domain-Overlay)
+#### `Page`: new command
+* [`Page.configureOverlay`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-configureOverlay)
+#### `Rendering`: new commands
+* [`Rendering.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowPaintRects)
+* [`Rendering.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowDebugBorders)
+* [`Rendering.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowFPSCounter)
+* [`Rendering.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowScrollBottleneckRects)
+* [`Rendering.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Rendering/#method-setShowViewportSizeOnResize)
+#### `DOM`: new commands
+* [`DOM.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectMode)
+* [`DOM.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightQuad)
+* [`DOM.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightFrame)
+* [`DOM.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getHighlightObjectForTest)
+#### `DOM`: modified commands
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect) - `redirect` removed. `description` updated.
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode) - `redirect` removed. `description` updated.
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight) - `redirect` removed. `description` updated.
+#### `DOM`: new events
+* [`DOM.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inspectNodeRequested)
+* [`DOM.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-nodeHighlightRequested)
+#### `DOM`: new types
+* [`DOM.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-HighlightConfig)
+* [`DOM.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-InspectMode)
+
+
+## Roll protocol to r465817
+###### _2017-04-19 17:15:19_ | Diff: [af95ade...3dd613f](https://github.com/ChromeDevTools/devtools-protocol/compare/af95ade...3dd613f)
+#### `Overlay`: new domain
+* [`Overlay.Overlay`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Overlay)
+#### `Overlay`: removed domain
+* [`Overlay.Rendering`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#domain-Rendering)
+#### `Page`: removed command
+* [`Page.configureOverlay`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-configureOverlay)
+#### `Overlay`: new commands
+* [`Overlay.enable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-enable)
+* [`Overlay.disable`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-disable)
+* [`Overlay.setShowPaintRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowPaintRects)
+* [`Overlay.setShowDebugBorders`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowDebugBorders)
+* [`Overlay.setShowFPSCounter`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowFPSCounter)
+* [`Overlay.setShowScrollBottleneckRects`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowScrollBottleneckRects)
+* [`Overlay.setShowViewportSizeOnResize`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setShowViewportSizeOnResize)
+* [`Overlay.setPausedInDebuggerMessage`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setPausedInDebuggerMessage)
+* [`Overlay.setSuspended`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setSuspended)
+* [`Overlay.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-setInspectMode)
+* [`Overlay.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightRect)
+* [`Overlay.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightQuad)
+* [`Overlay.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightNode)
+* [`Overlay.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-highlightFrame)
+* [`Overlay.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-hideHighlight)
+* [`Overlay.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#method-getHighlightObjectForTest)
+#### `Overlay`: new events
+* [`Overlay.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-nodeHighlightRequested)
+* [`Overlay.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#event-inspectNodeRequested)
+#### `Overlay`: new types
+* [`Overlay.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-HighlightConfig)
+* [`Overlay.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/Overlay/#type-InspectMode)
+#### `DOM`: removed commands
+* [`DOM.setInspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-setInspectMode)
+* [`DOM.highlightQuad`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightQuad)
+* [`DOM.highlightFrame`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightFrame)
+* [`DOM.getHighlightObjectForTest`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-getHighlightObjectForTest)
+#### `DOM`: modified commands
+* [`DOM.highlightRect`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightRect) - `description` updated. `redirect` added.
+* [`DOM.highlightNode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-highlightNode) - `description` updated. `redirect` added.
+* [`DOM.hideHighlight`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-hideHighlight) - `description` updated. `redirect` added.
+#### `DOM`: removed events
+* [`DOM.inspectNodeRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inspectNodeRequested)
+* [`DOM.nodeHighlightRequested`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-nodeHighlightRequested)
+#### `DOM`: removed types
+* [`DOM.HighlightConfig`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-HighlightConfig)
+* [`DOM.InspectMode`](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#type-InspectMode)
+
+
+## Roll protocol to r464996
+###### _2017-04-17 13:15:14_ | Diff: [b37b8df...af95ade](https://github.com/ChromeDevTools/devtools-protocol/compare/b37b8df...af95ade)
+#### `Page`: removed command
+* [`Page.setColorPickerEnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setColorPickerEnabled)
+#### `Page`: removed event
+* [`Page.colorPicked`](https://chromedevtools.github.io/devtools-protocol/tot/Page/#event-colorPicked)
+
+
+## Roll protocol to r464752
+###### _2017-04-14 11:15:26_ | Diff: [a087d6e...b37b8df](https://github.com/ChromeDevTools/devtools-protocol/compare/a087d6e...b37b8df)
+#### `Network`: removed command
+* [`Network.setMonitoringXHREnabled`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setMonitoringXHREnabled)
+
+
+## Roll protocol to r464268
+###### _2017-04-12 20:15:15_ | Diff: [389442a...a087d6e](https://github.com/ChromeDevTools/devtools-protocol/compare/389442a...a087d6e)
+#### `Browser`: new domain
+* [`Browser.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#domain-Browser)
+#### `Target`: modified command
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The `targetId` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+#### `Browser`: new commands
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget)
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds)
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds)
+#### `Browser`: new types
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID)
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState)
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds)
+
+
+## Roll protocol to r463392
+###### _2017-04-10 14:16:03_ | Diff: [bced713...6839ff5](https://github.com/ChromeDevTools/devtools-protocol/compare/bced713...6839ff5)
+#### `Browser`: removed domain
+* [`Browser.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#domain-Browser)
+#### `Target`: modified command
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The `targetId` in the parameters had `$ref` _removed_. The parameters's `type` _added_.
+
+
+## Roll protocol to r463120
+###### _2017-04-07 20:15:13_ | Diff: [e6757c1...bced713](https://github.com/ChromeDevTools/devtools-protocol/compare/e6757c1...bced713)
+#### `Browser`: new domain
+* [`Browser.Browser`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#domain-Browser)
+#### `Target`: modified command
+* [`Target.sendMessageToTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Target/#method-sendMessageToTarget) - The `targetId` in the parameters had `type` _removed_. The parameters's `$ref` _added_.
+#### `Browser`: new commands
+* [`Browser.getWindowForTarget`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowForTarget)
+* [`Browser.setWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-setWindowBounds)
+* [`Browser.getWindowBounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#method-getWindowBounds)
+#### `Browser`: new types
+* [`Browser.WindowID`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowID)
+* [`Browser.WindowState`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-WindowState)
+* [`Browser.Bounds`](https://chromedevtools.github.io/devtools-protocol/tot/Browser/#type-Bounds)
+
+
+## Roll protocol to r460846
+###### _2017-03-30 12:15:27_ | Diff: [bb10d9a...07e8fce](https://github.com/ChromeDevTools/devtools-protocol/compare/bb10d9a...07e8fce)
+#### `Network`: modified command
+* [`Network.setBlockedURLs`](https://chromedevtools.github.io/devtools-protocol/tot/Network/#method-setBlockedURLs) - `description` updated. The `urls` in the parameters had `description` _updated_.
diff --git a/node_modules/devtools-protocol/externs/protocol_externs.js b/node_modules/devtools-protocol/externs/protocol_externs.js
new file mode 100644
index 0000000..c9b39b3
--- /dev/null
+++ b/node_modules/devtools-protocol/externs/protocol_externs.js
@@ -0,0 +1,9734 @@
+Protocol.Accessibility = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.AccessibilityAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.AccessibilityAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AccessibilityAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.AccessibilityAgent.DisableResponse;
+/**
+ * @param {!Protocol.AccessibilityAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.AccessibilityAgent.DisableResponse>} */
+Protocol.AccessibilityAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.AccessibilityAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AccessibilityAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.AccessibilityAgent.EnableResponse;
+/**
+ * @param {!Protocol.AccessibilityAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.AccessibilityAgent.EnableResponse>} */
+Protocol.AccessibilityAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @param {boolean=} opt_fetchRelatives
+ * @return {!Promise<?Array<Protocol.Accessibility.AXNode>>}
+ */
+Protocol.AccessibilityAgent.prototype.getPartialAXTree = function(opt_nodeId, opt_backendNodeId, opt_objectId, opt_fetchRelatives) {};
+/** @typedef {!{objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined), fetchRelatives: (boolean|undefined)}} */
+Protocol.AccessibilityAgent.GetPartialAXTreeRequest;
+/** @typedef {!{nodes: !Array<Protocol.Accessibility.AXNode>}} */
+Protocol.AccessibilityAgent.GetPartialAXTreeResponse;
+/**
+ * @param {!Protocol.AccessibilityAgent.GetPartialAXTreeRequest} obj
+ * @return {!Promise<!Protocol.AccessibilityAgent.GetPartialAXTreeResponse>} */
+Protocol.AccessibilityAgent.prototype.invoke_getPartialAXTree = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Accessibility.AXNode>>}
+ */
+Protocol.AccessibilityAgent.prototype.getFullAXTree = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AccessibilityAgent.GetFullAXTreeRequest;
+/** @typedef {!{nodes: !Array<Protocol.Accessibility.AXNode>}} */
+Protocol.AccessibilityAgent.GetFullAXTreeResponse;
+/**
+ * @param {!Protocol.AccessibilityAgent.GetFullAXTreeRequest} obj
+ * @return {!Promise<!Protocol.AccessibilityAgent.GetFullAXTreeResponse>} */
+Protocol.AccessibilityAgent.prototype.invoke_getFullAXTree = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Accessibility.AXNodeId;
+
+/** @enum {string} */
+Protocol.Accessibility.AXValueType = {
+    Boolean: "boolean",
+    Tristate: "tristate",
+    BooleanOrUndefined: "booleanOrUndefined",
+    Idref: "idref",
+    IdrefList: "idrefList",
+    Integer: "integer",
+    Node: "node",
+    NodeList: "nodeList",
+    Number: "number",
+    String: "string",
+    ComputedString: "computedString",
+    Token: "token",
+    TokenList: "tokenList",
+    DomRelation: "domRelation",
+    Role: "role",
+    InternalRole: "internalRole",
+    ValueUndefined: "valueUndefined"
+};
+
+/** @enum {string} */
+Protocol.Accessibility.AXValueSourceType = {
+    Attribute: "attribute",
+    Implicit: "implicit",
+    Style: "style",
+    Contents: "contents",
+    Placeholder: "placeholder",
+    RelatedElement: "relatedElement"
+};
+
+/** @enum {string} */
+Protocol.Accessibility.AXValueNativeSourceType = {
+    Figcaption: "figcaption",
+    Label: "label",
+    Labelfor: "labelfor",
+    Labelwrapped: "labelwrapped",
+    Legend: "legend",
+    Tablecaption: "tablecaption",
+    Title: "title",
+    Other: "other"
+};
+
+/** @typedef {!{type:(Protocol.Accessibility.AXValueSourceType), value:(Protocol.Accessibility.AXValue|undefined), attribute:(string|undefined), attributeValue:(Protocol.Accessibility.AXValue|undefined), superseded:(boolean|undefined), nativeSource:(Protocol.Accessibility.AXValueNativeSourceType|undefined), nativeSourceValue:(Protocol.Accessibility.AXValue|undefined), invalid:(boolean|undefined), invalidReason:(string|undefined)}} */
+Protocol.Accessibility.AXValueSource;
+
+/** @typedef {!{backendDOMNodeId:(Protocol.DOM.BackendNodeId), idref:(string|undefined), text:(string|undefined)}} */
+Protocol.Accessibility.AXRelatedNode;
+
+/** @typedef {!{name:(Protocol.Accessibility.AXPropertyName), value:(Protocol.Accessibility.AXValue)}} */
+Protocol.Accessibility.AXProperty;
+
+/** @typedef {!{type:(Protocol.Accessibility.AXValueType), value:(*|undefined), relatedNodes:(!Array<Protocol.Accessibility.AXRelatedNode>|undefined), sources:(!Array<Protocol.Accessibility.AXValueSource>|undefined)}} */
+Protocol.Accessibility.AXValue;
+
+/** @enum {string} */
+Protocol.Accessibility.AXPropertyName = {
+    Busy: "busy",
+    Disabled: "disabled",
+    Editable: "editable",
+    Focusable: "focusable",
+    Focused: "focused",
+    Hidden: "hidden",
+    HiddenRoot: "hiddenRoot",
+    Invalid: "invalid",
+    Keyshortcuts: "keyshortcuts",
+    Settable: "settable",
+    Roledescription: "roledescription",
+    Live: "live",
+    Atomic: "atomic",
+    Relevant: "relevant",
+    Root: "root",
+    Autocomplete: "autocomplete",
+    HasPopup: "hasPopup",
+    Level: "level",
+    Multiselectable: "multiselectable",
+    Orientation: "orientation",
+    Multiline: "multiline",
+    Readonly: "readonly",
+    Required: "required",
+    Valuemin: "valuemin",
+    Valuemax: "valuemax",
+    Valuetext: "valuetext",
+    Checked: "checked",
+    Expanded: "expanded",
+    Modal: "modal",
+    Pressed: "pressed",
+    Selected: "selected",
+    Activedescendant: "activedescendant",
+    Controls: "controls",
+    Describedby: "describedby",
+    Details: "details",
+    Errormessage: "errormessage",
+    Flowto: "flowto",
+    Labelledby: "labelledby",
+    Owns: "owns"
+};
+
+/** @typedef {!{nodeId:(Protocol.Accessibility.AXNodeId), ignored:(boolean), ignoredReasons:(!Array<Protocol.Accessibility.AXProperty>|undefined), role:(Protocol.Accessibility.AXValue|undefined), name:(Protocol.Accessibility.AXValue|undefined), description:(Protocol.Accessibility.AXValue|undefined), value:(Protocol.Accessibility.AXValue|undefined), properties:(!Array<Protocol.Accessibility.AXProperty>|undefined), childIds:(!Array<Protocol.Accessibility.AXNodeId>|undefined), backendDOMNodeId:(Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.Accessibility.AXNode;
+/** @interface */
+Protocol.AccessibilityDispatcher = function() {};
+Protocol.Animation = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.AnimationAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.DisableResponse;
+/**
+ * @param {!Protocol.AnimationAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.DisableResponse>} */
+Protocol.AnimationAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.EnableResponse;
+/**
+ * @param {!Protocol.AnimationAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.EnableResponse>} */
+Protocol.AnimationAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {string} id
+ * @return {!Promise<?number>}
+ */
+Protocol.AnimationAgent.prototype.getCurrentTime = function(id) {};
+/** @typedef {!{id: string}} */
+Protocol.AnimationAgent.GetCurrentTimeRequest;
+/** @typedef {!{currentTime: number}} */
+Protocol.AnimationAgent.GetCurrentTimeResponse;
+/**
+ * @param {!Protocol.AnimationAgent.GetCurrentTimeRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.GetCurrentTimeResponse>} */
+Protocol.AnimationAgent.prototype.invoke_getCurrentTime = function(obj) {};
+
+/**
+ * @return {!Promise<?number>}
+ */
+Protocol.AnimationAgent.prototype.getPlaybackRate = function() {};
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.GetPlaybackRateRequest;
+/** @typedef {!{playbackRate: number}} */
+Protocol.AnimationAgent.GetPlaybackRateResponse;
+/**
+ * @param {!Protocol.AnimationAgent.GetPlaybackRateRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.GetPlaybackRateResponse>} */
+Protocol.AnimationAgent.prototype.invoke_getPlaybackRate = function(obj) {};
+
+/**
+ * @param {!Array<string>} animations
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.releaseAnimations = function(animations) {};
+/** @typedef {!{animations: !Array<string>}} */
+Protocol.AnimationAgent.ReleaseAnimationsRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.ReleaseAnimationsResponse;
+/**
+ * @param {!Protocol.AnimationAgent.ReleaseAnimationsRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.ReleaseAnimationsResponse>} */
+Protocol.AnimationAgent.prototype.invoke_releaseAnimations = function(obj) {};
+
+/**
+ * @param {string} animationId
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.AnimationAgent.prototype.resolveAnimation = function(animationId) {};
+/** @typedef {!{animationId: string}} */
+Protocol.AnimationAgent.ResolveAnimationRequest;
+/** @typedef {!{remoteObject: Protocol.Runtime.RemoteObject}} */
+Protocol.AnimationAgent.ResolveAnimationResponse;
+/**
+ * @param {!Protocol.AnimationAgent.ResolveAnimationRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.ResolveAnimationResponse>} */
+Protocol.AnimationAgent.prototype.invoke_resolveAnimation = function(obj) {};
+
+/**
+ * @param {!Array<string>} animations
+ * @param {number} currentTime
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.seekAnimations = function(animations, currentTime) {};
+/** @typedef {!{currentTime: number, animations: !Array<string>}} */
+Protocol.AnimationAgent.SeekAnimationsRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.SeekAnimationsResponse;
+/**
+ * @param {!Protocol.AnimationAgent.SeekAnimationsRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.SeekAnimationsResponse>} */
+Protocol.AnimationAgent.prototype.invoke_seekAnimations = function(obj) {};
+
+/**
+ * @param {!Array<string>} animations
+ * @param {boolean} paused
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.setPaused = function(animations, paused) {};
+/** @typedef {!{paused: boolean, animations: !Array<string>}} */
+Protocol.AnimationAgent.SetPausedRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.SetPausedResponse;
+/**
+ * @param {!Protocol.AnimationAgent.SetPausedRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.SetPausedResponse>} */
+Protocol.AnimationAgent.prototype.invoke_setPaused = function(obj) {};
+
+/**
+ * @param {number} playbackRate
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.setPlaybackRate = function(playbackRate) {};
+/** @typedef {!{playbackRate: number}} */
+Protocol.AnimationAgent.SetPlaybackRateRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.SetPlaybackRateResponse;
+/**
+ * @param {!Protocol.AnimationAgent.SetPlaybackRateRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.SetPlaybackRateResponse>} */
+Protocol.AnimationAgent.prototype.invoke_setPlaybackRate = function(obj) {};
+
+/**
+ * @param {string} animationId
+ * @param {number} duration
+ * @param {number} delay
+ * @return {!Promise<undefined>}
+ */
+Protocol.AnimationAgent.prototype.setTiming = function(animationId, duration, delay) {};
+/** @typedef {!{duration: number, delay: number, animationId: string}} */
+Protocol.AnimationAgent.SetTimingRequest;
+/** @typedef {Object|undefined} */
+Protocol.AnimationAgent.SetTimingResponse;
+/**
+ * @param {!Protocol.AnimationAgent.SetTimingRequest} obj
+ * @return {!Promise<!Protocol.AnimationAgent.SetTimingResponse>} */
+Protocol.AnimationAgent.prototype.invoke_setTiming = function(obj) {};
+
+/** @enum {string} */
+Protocol.Animation.AnimationType = {
+    CSSTransition: "CSSTransition",
+    CSSAnimation: "CSSAnimation",
+    WebAnimation: "WebAnimation"
+};
+
+/** @typedef {!{id:(string), name:(string), pausedState:(boolean), playState:(string), playbackRate:(number), startTime:(number), currentTime:(number), type:(Protocol.Animation.AnimationType), source:(Protocol.Animation.AnimationEffect|undefined), cssId:(string|undefined)}} */
+Protocol.Animation.Animation;
+
+/** @typedef {!{delay:(number), endDelay:(number), iterationStart:(number), iterations:(number), duration:(number), direction:(string), fill:(string), backendNodeId:(Protocol.DOM.BackendNodeId|undefined), keyframesRule:(Protocol.Animation.KeyframesRule|undefined), easing:(string)}} */
+Protocol.Animation.AnimationEffect;
+
+/** @typedef {!{name:(string|undefined), keyframes:(!Array<Protocol.Animation.KeyframeStyle>)}} */
+Protocol.Animation.KeyframesRule;
+
+/** @typedef {!{offset:(string), easing:(string)}} */
+Protocol.Animation.KeyframeStyle;
+/** @interface */
+Protocol.AnimationDispatcher = function() {};
+/**
+ * @param {string} id
+ */
+Protocol.AnimationDispatcher.prototype.animationCanceled = function(id) {};
+/**
+ * @param {string} id
+ */
+Protocol.AnimationDispatcher.prototype.animationCreated = function(id) {};
+/**
+ * @param {Protocol.Animation.Animation} animation
+ */
+Protocol.AnimationDispatcher.prototype.animationStarted = function(animation) {};
+Protocol.ApplicationCache = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.ApplicationCacheAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ApplicationCacheAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ApplicationCacheAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ApplicationCacheAgent.EnableResponse;
+/**
+ * @param {!Protocol.ApplicationCacheAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.ApplicationCacheAgent.EnableResponse>} */
+Protocol.ApplicationCacheAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @return {!Promise<?Protocol.ApplicationCache.ApplicationCache>}
+ */
+Protocol.ApplicationCacheAgent.prototype.getApplicationCacheForFrame = function(frameId) {};
+/** @typedef {!{frameId: Protocol.Page.FrameId}} */
+Protocol.ApplicationCacheAgent.GetApplicationCacheForFrameRequest;
+/** @typedef {!{applicationCache: Protocol.ApplicationCache.ApplicationCache}} */
+Protocol.ApplicationCacheAgent.GetApplicationCacheForFrameResponse;
+/**
+ * @param {!Protocol.ApplicationCacheAgent.GetApplicationCacheForFrameRequest} obj
+ * @return {!Promise<!Protocol.ApplicationCacheAgent.GetApplicationCacheForFrameResponse>} */
+Protocol.ApplicationCacheAgent.prototype.invoke_getApplicationCacheForFrame = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.ApplicationCache.FrameWithManifest>>}
+ */
+Protocol.ApplicationCacheAgent.prototype.getFramesWithManifests = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ApplicationCacheAgent.GetFramesWithManifestsRequest;
+/** @typedef {!{frameIds: !Array<Protocol.ApplicationCache.FrameWithManifest>}} */
+Protocol.ApplicationCacheAgent.GetFramesWithManifestsResponse;
+/**
+ * @param {!Protocol.ApplicationCacheAgent.GetFramesWithManifestsRequest} obj
+ * @return {!Promise<!Protocol.ApplicationCacheAgent.GetFramesWithManifestsResponse>} */
+Protocol.ApplicationCacheAgent.prototype.invoke_getFramesWithManifests = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @return {!Promise<?string>}
+ */
+Protocol.ApplicationCacheAgent.prototype.getManifestForFrame = function(frameId) {};
+/** @typedef {!{frameId: Protocol.Page.FrameId}} */
+Protocol.ApplicationCacheAgent.GetManifestForFrameRequest;
+/** @typedef {!{manifestURL: string}} */
+Protocol.ApplicationCacheAgent.GetManifestForFrameResponse;
+/**
+ * @param {!Protocol.ApplicationCacheAgent.GetManifestForFrameRequest} obj
+ * @return {!Promise<!Protocol.ApplicationCacheAgent.GetManifestForFrameResponse>} */
+Protocol.ApplicationCacheAgent.prototype.invoke_getManifestForFrame = function(obj) {};
+
+/** @typedef {!{url:(string), size:(number), type:(string)}} */
+Protocol.ApplicationCache.ApplicationCacheResource;
+
+/** @typedef {!{manifestURL:(string), size:(number), creationTime:(number), updateTime:(number), resources:(!Array<Protocol.ApplicationCache.ApplicationCacheResource>)}} */
+Protocol.ApplicationCache.ApplicationCache;
+
+/** @typedef {!{frameId:(Protocol.Page.FrameId), manifestURL:(string), status:(number)}} */
+Protocol.ApplicationCache.FrameWithManifest;
+/** @interface */
+Protocol.ApplicationCacheDispatcher = function() {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} manifestURL
+ * @param {number} status
+ */
+Protocol.ApplicationCacheDispatcher.prototype.applicationCacheStatusUpdated = function(frameId, manifestURL, status) {};
+/**
+ * @param {boolean} isNowOnline
+ */
+Protocol.ApplicationCacheDispatcher.prototype.networkStateUpdated = function(isNowOnline) {};
+Protocol.Audits = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.AuditsAgent = function(){};
+
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {string} encoding
+ * @param {number=} opt_quality
+ * @param {boolean=} opt_sizeOnly
+ * @return {!Promise<?string>}
+ */
+Protocol.AuditsAgent.prototype.getEncodedResponse = function(requestId, encoding, opt_quality, opt_sizeOnly) {};
+/** @typedef {!{sizeOnly: (boolean|undefined), quality: (number|undefined), requestId: Protocol.Network.RequestId, encoding: string}} */
+Protocol.AuditsAgent.GetEncodedResponseRequest;
+/** @typedef {!{body: string, encodedSize: number, originalSize: number}} */
+Protocol.AuditsAgent.GetEncodedResponseResponse;
+/**
+ * @param {!Protocol.AuditsAgent.GetEncodedResponseRequest} obj
+ * @return {!Promise<!Protocol.AuditsAgent.GetEncodedResponseResponse>} */
+Protocol.AuditsAgent.prototype.invoke_getEncodedResponse = function(obj) {};
+/** @interface */
+Protocol.AuditsDispatcher = function() {};
+Protocol.BackgroundService = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.BackgroundServiceAgent = function(){};
+
+/**
+ * @param {Protocol.BackgroundService.ServiceName} service
+ * @return {!Promise<undefined>}
+ */
+Protocol.BackgroundServiceAgent.prototype.startObserving = function(service) {};
+/** @typedef {!{service: Protocol.BackgroundService.ServiceName}} */
+Protocol.BackgroundServiceAgent.StartObservingRequest;
+/** @typedef {Object|undefined} */
+Protocol.BackgroundServiceAgent.StartObservingResponse;
+/**
+ * @param {!Protocol.BackgroundServiceAgent.StartObservingRequest} obj
+ * @return {!Promise<!Protocol.BackgroundServiceAgent.StartObservingResponse>} */
+Protocol.BackgroundServiceAgent.prototype.invoke_startObserving = function(obj) {};
+
+/**
+ * @param {Protocol.BackgroundService.ServiceName} service
+ * @return {!Promise<undefined>}
+ */
+Protocol.BackgroundServiceAgent.prototype.stopObserving = function(service) {};
+/** @typedef {!{service: Protocol.BackgroundService.ServiceName}} */
+Protocol.BackgroundServiceAgent.StopObservingRequest;
+/** @typedef {Object|undefined} */
+Protocol.BackgroundServiceAgent.StopObservingResponse;
+/**
+ * @param {!Protocol.BackgroundServiceAgent.StopObservingRequest} obj
+ * @return {!Promise<!Protocol.BackgroundServiceAgent.StopObservingResponse>} */
+Protocol.BackgroundServiceAgent.prototype.invoke_stopObserving = function(obj) {};
+
+/**
+ * @param {boolean} shouldRecord
+ * @param {Protocol.BackgroundService.ServiceName} service
+ * @return {!Promise<undefined>}
+ */
+Protocol.BackgroundServiceAgent.prototype.setRecording = function(shouldRecord, service) {};
+/** @typedef {!{shouldRecord: boolean, service: Protocol.BackgroundService.ServiceName}} */
+Protocol.BackgroundServiceAgent.SetRecordingRequest;
+/** @typedef {Object|undefined} */
+Protocol.BackgroundServiceAgent.SetRecordingResponse;
+/**
+ * @param {!Protocol.BackgroundServiceAgent.SetRecordingRequest} obj
+ * @return {!Promise<!Protocol.BackgroundServiceAgent.SetRecordingResponse>} */
+Protocol.BackgroundServiceAgent.prototype.invoke_setRecording = function(obj) {};
+
+/**
+ * @param {Protocol.BackgroundService.ServiceName} service
+ * @return {!Promise<undefined>}
+ */
+Protocol.BackgroundServiceAgent.prototype.clearEvents = function(service) {};
+/** @typedef {!{service: Protocol.BackgroundService.ServiceName}} */
+Protocol.BackgroundServiceAgent.ClearEventsRequest;
+/** @typedef {Object|undefined} */
+Protocol.BackgroundServiceAgent.ClearEventsResponse;
+/**
+ * @param {!Protocol.BackgroundServiceAgent.ClearEventsRequest} obj
+ * @return {!Promise<!Protocol.BackgroundServiceAgent.ClearEventsResponse>} */
+Protocol.BackgroundServiceAgent.prototype.invoke_clearEvents = function(obj) {};
+
+/** @enum {string} */
+Protocol.BackgroundService.ServiceName = {
+    BackgroundFetch: "backgroundFetch",
+    BackgroundSync: "backgroundSync",
+    PushMessaging: "pushMessaging",
+    Notifications: "notifications",
+    PaymentHandler: "paymentHandler",
+    PeriodicBackgroundSync: "periodicBackgroundSync"
+};
+
+/** @typedef {!{key:(string), value:(string)}} */
+Protocol.BackgroundService.EventMetadata;
+
+/** @typedef {!{timestamp:(Protocol.Network.TimeSinceEpoch), origin:(string), serviceWorkerRegistrationId:(Protocol.ServiceWorker.RegistrationID), service:(Protocol.BackgroundService.ServiceName), eventName:(string), instanceId:(string), eventMetadata:(!Array<Protocol.BackgroundService.EventMetadata>)}} */
+Protocol.BackgroundService.BackgroundServiceEvent;
+/** @interface */
+Protocol.BackgroundServiceDispatcher = function() {};
+/**
+ * @param {boolean} isRecording
+ * @param {Protocol.BackgroundService.ServiceName} service
+ */
+Protocol.BackgroundServiceDispatcher.prototype.recordingStateChanged = function(isRecording, service) {};
+/**
+ * @param {Protocol.BackgroundService.BackgroundServiceEvent} backgroundServiceEvent
+ */
+Protocol.BackgroundServiceDispatcher.prototype.backgroundServiceEventReceived = function(backgroundServiceEvent) {};
+Protocol.Browser = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.BrowserAgent = function(){};
+
+/**
+ * @param {string} origin
+ * @param {Protocol.Browser.PermissionDescriptor} permission
+ * @param {Protocol.Browser.PermissionSetting} setting
+ * @param {Protocol.Target.TargetID=} opt_browserContextId
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.setPermission = function(origin, permission, setting, opt_browserContextId) {};
+/** @typedef {!{origin: string, browserContextId: (Protocol.Target.TargetID|undefined), setting: Protocol.Browser.PermissionSetting, permission: Protocol.Browser.PermissionDescriptor}} */
+Protocol.BrowserAgent.SetPermissionRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.SetPermissionResponse;
+/**
+ * @param {!Protocol.BrowserAgent.SetPermissionRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.SetPermissionResponse>} */
+Protocol.BrowserAgent.prototype.invoke_setPermission = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @param {!Array<Protocol.Browser.PermissionType>} permissions
+ * @param {Protocol.Target.BrowserContextID=} opt_browserContextId
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.grantPermissions = function(origin, permissions, opt_browserContextId) {};
+/** @typedef {!{origin: string, browserContextId: (Protocol.Target.BrowserContextID|undefined), permissions: !Array<Protocol.Browser.PermissionType>}} */
+Protocol.BrowserAgent.GrantPermissionsRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.GrantPermissionsResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GrantPermissionsRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GrantPermissionsResponse>} */
+Protocol.BrowserAgent.prototype.invoke_grantPermissions = function(obj) {};
+
+/**
+ * @param {Protocol.Target.BrowserContextID=} opt_browserContextId
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.resetPermissions = function(opt_browserContextId) {};
+/** @typedef {!{browserContextId: (Protocol.Target.BrowserContextID|undefined)}} */
+Protocol.BrowserAgent.ResetPermissionsRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.ResetPermissionsResponse;
+/**
+ * @param {!Protocol.BrowserAgent.ResetPermissionsRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.ResetPermissionsResponse>} */
+Protocol.BrowserAgent.prototype.invoke_resetPermissions = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.close = function() {};
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CloseRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CloseResponse;
+/**
+ * @param {!Protocol.BrowserAgent.CloseRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.CloseResponse>} */
+Protocol.BrowserAgent.prototype.invoke_close = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.crash = function() {};
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CrashRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CrashResponse;
+/**
+ * @param {!Protocol.BrowserAgent.CrashRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.CrashResponse>} */
+Protocol.BrowserAgent.prototype.invoke_crash = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.crashGpuProcess = function() {};
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CrashGpuProcessRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.CrashGpuProcessResponse;
+/**
+ * @param {!Protocol.BrowserAgent.CrashGpuProcessRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.CrashGpuProcessResponse>} */
+Protocol.BrowserAgent.prototype.invoke_crashGpuProcess = function(obj) {};
+
+/**
+ * @return {!Promise<?string>}
+ */
+Protocol.BrowserAgent.prototype.getVersion = function() {};
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.GetVersionRequest;
+/** @typedef {!{userAgent: string, product: string, revision: string, jsVersion: string, protocolVersion: string}} */
+Protocol.BrowserAgent.GetVersionResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetVersionRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetVersionResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getVersion = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.BrowserAgent.prototype.getBrowserCommandLine = function() {};
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.GetBrowserCommandLineRequest;
+/** @typedef {!{arguments: !Array<string>}} */
+Protocol.BrowserAgent.GetBrowserCommandLineResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetBrowserCommandLineRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetBrowserCommandLineResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getBrowserCommandLine = function(obj) {};
+
+/**
+ * @param {string=} opt_query
+ * @param {boolean=} opt_delta
+ * @return {!Promise<?Array<Protocol.Browser.Histogram>>}
+ */
+Protocol.BrowserAgent.prototype.getHistograms = function(opt_query, opt_delta) {};
+/** @typedef {!{query: (string|undefined), delta: (boolean|undefined)}} */
+Protocol.BrowserAgent.GetHistogramsRequest;
+/** @typedef {!{histograms: !Array<Protocol.Browser.Histogram>}} */
+Protocol.BrowserAgent.GetHistogramsResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetHistogramsRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetHistogramsResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getHistograms = function(obj) {};
+
+/**
+ * @param {string} name
+ * @param {boolean=} opt_delta
+ * @return {!Promise<?Protocol.Browser.Histogram>}
+ */
+Protocol.BrowserAgent.prototype.getHistogram = function(name, opt_delta) {};
+/** @typedef {!{name: string, delta: (boolean|undefined)}} */
+Protocol.BrowserAgent.GetHistogramRequest;
+/** @typedef {!{histogram: Protocol.Browser.Histogram}} */
+Protocol.BrowserAgent.GetHistogramResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetHistogramRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetHistogramResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getHistogram = function(obj) {};
+
+/**
+ * @param {Protocol.Browser.WindowID} windowId
+ * @return {!Promise<?Protocol.Browser.Bounds>}
+ */
+Protocol.BrowserAgent.prototype.getWindowBounds = function(windowId) {};
+/** @typedef {!{windowId: Protocol.Browser.WindowID}} */
+Protocol.BrowserAgent.GetWindowBoundsRequest;
+/** @typedef {!{bounds: Protocol.Browser.Bounds}} */
+Protocol.BrowserAgent.GetWindowBoundsResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetWindowBoundsRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetWindowBoundsResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getWindowBounds = function(obj) {};
+
+/**
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ * @return {!Promise<?Protocol.Browser.WindowID>}
+ */
+Protocol.BrowserAgent.prototype.getWindowForTarget = function(opt_targetId) {};
+/** @typedef {!{targetId: (Protocol.Target.TargetID|undefined)}} */
+Protocol.BrowserAgent.GetWindowForTargetRequest;
+/** @typedef {!{windowId: Protocol.Browser.WindowID, bounds: Protocol.Browser.Bounds}} */
+Protocol.BrowserAgent.GetWindowForTargetResponse;
+/**
+ * @param {!Protocol.BrowserAgent.GetWindowForTargetRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.GetWindowForTargetResponse>} */
+Protocol.BrowserAgent.prototype.invoke_getWindowForTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Browser.WindowID} windowId
+ * @param {Protocol.Browser.Bounds} bounds
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.setWindowBounds = function(windowId, bounds) {};
+/** @typedef {!{windowId: Protocol.Browser.WindowID, bounds: Protocol.Browser.Bounds}} */
+Protocol.BrowserAgent.SetWindowBoundsRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.SetWindowBoundsResponse;
+/**
+ * @param {!Protocol.BrowserAgent.SetWindowBoundsRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.SetWindowBoundsResponse>} */
+Protocol.BrowserAgent.prototype.invoke_setWindowBounds = function(obj) {};
+
+/**
+ * @param {string=} opt_badgeLabel
+ * @param {string=} opt_image
+ * @return {!Promise<undefined>}
+ */
+Protocol.BrowserAgent.prototype.setDockTile = function(opt_badgeLabel, opt_image) {};
+/** @typedef {!{image: (string|undefined), badgeLabel: (string|undefined)}} */
+Protocol.BrowserAgent.SetDockTileRequest;
+/** @typedef {Object|undefined} */
+Protocol.BrowserAgent.SetDockTileResponse;
+/**
+ * @param {!Protocol.BrowserAgent.SetDockTileRequest} obj
+ * @return {!Promise<!Protocol.BrowserAgent.SetDockTileResponse>} */
+Protocol.BrowserAgent.prototype.invoke_setDockTile = function(obj) {};
+
+/** @typedef {number} */
+Protocol.Browser.WindowID;
+
+/** @enum {string} */
+Protocol.Browser.WindowState = {
+    Normal: "normal",
+    Minimized: "minimized",
+    Maximized: "maximized",
+    Fullscreen: "fullscreen"
+};
+
+/** @typedef {!{left:(number|undefined), top:(number|undefined), width:(number|undefined), height:(number|undefined), windowState:(Protocol.Browser.WindowState|undefined)}} */
+Protocol.Browser.Bounds;
+
+/** @enum {string} */
+Protocol.Browser.PermissionType = {
+    AccessibilityEvents: "accessibilityEvents",
+    AudioCapture: "audioCapture",
+    BackgroundSync: "backgroundSync",
+    BackgroundFetch: "backgroundFetch",
+    ClipboardRead: "clipboardRead",
+    ClipboardWrite: "clipboardWrite",
+    DurableStorage: "durableStorage",
+    Flash: "flash",
+    Geolocation: "geolocation",
+    Midi: "midi",
+    MidiSysex: "midiSysex",
+    Notifications: "notifications",
+    PaymentHandler: "paymentHandler",
+    PeriodicBackgroundSync: "periodicBackgroundSync",
+    ProtectedMediaIdentifier: "protectedMediaIdentifier",
+    Sensors: "sensors",
+    VideoCapture: "videoCapture",
+    IdleDetection: "idleDetection",
+    WakeLockScreen: "wakeLockScreen",
+    WakeLockSystem: "wakeLockSystem"
+};
+
+/** @enum {string} */
+Protocol.Browser.PermissionSetting = {
+    Granted: "granted",
+    Denied: "denied",
+    Prompt: "prompt"
+};
+
+/** @typedef {!{name:(string), sysex:(boolean|undefined), userVisibleOnly:(boolean|undefined), type:(string|undefined)}} */
+Protocol.Browser.PermissionDescriptor;
+
+/** @typedef {!{low:(number), high:(number), count:(number)}} */
+Protocol.Browser.Bucket;
+
+/** @typedef {!{name:(string), sum:(number), count:(number), buckets:(!Array<Protocol.Browser.Bucket>)}} */
+Protocol.Browser.Histogram;
+/** @interface */
+Protocol.BrowserDispatcher = function() {};
+Protocol.CSS = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.CSSAgent = function(){};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @param {string} ruleText
+ * @param {Protocol.CSS.SourceRange} location
+ * @return {!Promise<?Protocol.CSS.CSSRule>}
+ */
+Protocol.CSSAgent.prototype.addRule = function(styleSheetId, ruleText, location) {};
+/** @typedef {!{styleSheetId: Protocol.CSS.StyleSheetId, location: Protocol.CSS.SourceRange, ruleText: string}} */
+Protocol.CSSAgent.AddRuleRequest;
+/** @typedef {!{rule: Protocol.CSS.CSSRule}} */
+Protocol.CSSAgent.AddRuleResponse;
+/**
+ * @param {!Protocol.CSSAgent.AddRuleRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.AddRuleResponse>} */
+Protocol.CSSAgent.prototype.invoke_addRule = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.CSSAgent.prototype.collectClassNames = function(styleSheetId) {};
+/** @typedef {!{styleSheetId: Protocol.CSS.StyleSheetId}} */
+Protocol.CSSAgent.CollectClassNamesRequest;
+/** @typedef {!{classNames: !Array<string>}} */
+Protocol.CSSAgent.CollectClassNamesResponse;
+/**
+ * @param {!Protocol.CSSAgent.CollectClassNamesRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.CollectClassNamesResponse>} */
+Protocol.CSSAgent.prototype.invoke_collectClassNames = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @return {!Promise<?Protocol.CSS.StyleSheetId>}
+ */
+Protocol.CSSAgent.prototype.createStyleSheet = function(frameId) {};
+/** @typedef {!{frameId: Protocol.Page.FrameId}} */
+Protocol.CSSAgent.CreateStyleSheetRequest;
+/** @typedef {!{styleSheetId: Protocol.CSS.StyleSheetId}} */
+Protocol.CSSAgent.CreateStyleSheetResponse;
+/**
+ * @param {!Protocol.CSSAgent.CreateStyleSheetRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.CreateStyleSheetResponse>} */
+Protocol.CSSAgent.prototype.invoke_createStyleSheet = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.CSSAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.DisableResponse;
+/**
+ * @param {!Protocol.CSSAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.DisableResponse>} */
+Protocol.CSSAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.CSSAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.EnableResponse;
+/**
+ * @param {!Protocol.CSSAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.EnableResponse>} */
+Protocol.CSSAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {!Array<string>} forcedPseudoClasses
+ * @return {!Promise<undefined>}
+ */
+Protocol.CSSAgent.prototype.forcePseudoState = function(nodeId, forcedPseudoClasses) {};
+/** @typedef {!{forcedPseudoClasses: !Array<string>, nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.ForcePseudoStateRequest;
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.ForcePseudoStateResponse;
+/**
+ * @param {!Protocol.CSSAgent.ForcePseudoStateRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.ForcePseudoStateResponse>} */
+Protocol.CSSAgent.prototype.invoke_forcePseudoState = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.CSSAgent.prototype.getBackgroundColors = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.GetBackgroundColorsRequest;
+/** @typedef {!{backgroundColors: !Array<string>, computedFontWeight: string, computedFontSize: string}} */
+Protocol.CSSAgent.GetBackgroundColorsResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetBackgroundColorsRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetBackgroundColorsResponse>} */
+Protocol.CSSAgent.prototype.invoke_getBackgroundColors = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Array<Protocol.CSS.CSSComputedStyleProperty>>}
+ */
+Protocol.CSSAgent.prototype.getComputedStyleForNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.GetComputedStyleForNodeRequest;
+/** @typedef {!{computedStyle: !Array<Protocol.CSS.CSSComputedStyleProperty>}} */
+Protocol.CSSAgent.GetComputedStyleForNodeResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetComputedStyleForNodeRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetComputedStyleForNodeResponse>} */
+Protocol.CSSAgent.prototype.invoke_getComputedStyleForNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Protocol.CSS.CSSStyle>}
+ */
+Protocol.CSSAgent.prototype.getInlineStylesForNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.GetInlineStylesForNodeRequest;
+/** @typedef {!{inlineStyle: Protocol.CSS.CSSStyle, attributesStyle: Protocol.CSS.CSSStyle}} */
+Protocol.CSSAgent.GetInlineStylesForNodeResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetInlineStylesForNodeRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetInlineStylesForNodeResponse>} */
+Protocol.CSSAgent.prototype.invoke_getInlineStylesForNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Protocol.CSS.CSSStyle>}
+ */
+Protocol.CSSAgent.prototype.getMatchedStylesForNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.GetMatchedStylesForNodeRequest;
+/** @typedef {!{inlineStyle: Protocol.CSS.CSSStyle, attributesStyle: Protocol.CSS.CSSStyle, cssKeyframesRules: !Array<Protocol.CSS.CSSKeyframesRule>, matchedCSSRules: !Array<Protocol.CSS.RuleMatch>, inherited: !Array<Protocol.CSS.InheritedStyleEntry>, pseudoElements: !Array<Protocol.CSS.PseudoElementMatches>}} */
+Protocol.CSSAgent.GetMatchedStylesForNodeResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetMatchedStylesForNodeRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetMatchedStylesForNodeResponse>} */
+Protocol.CSSAgent.prototype.invoke_getMatchedStylesForNode = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.CSS.CSSMedia>>}
+ */
+Protocol.CSSAgent.prototype.getMediaQueries = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.GetMediaQueriesRequest;
+/** @typedef {!{medias: !Array<Protocol.CSS.CSSMedia>}} */
+Protocol.CSSAgent.GetMediaQueriesResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetMediaQueriesRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetMediaQueriesResponse>} */
+Protocol.CSSAgent.prototype.invoke_getMediaQueries = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Array<Protocol.CSS.PlatformFontUsage>>}
+ */
+Protocol.CSSAgent.prototype.getPlatformFontsForNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.CSSAgent.GetPlatformFontsForNodeRequest;
+/** @typedef {!{fonts: !Array<Protocol.CSS.PlatformFontUsage>}} */
+Protocol.CSSAgent.GetPlatformFontsForNodeResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetPlatformFontsForNodeRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetPlatformFontsForNodeResponse>} */
+Protocol.CSSAgent.prototype.invoke_getPlatformFontsForNode = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @return {!Promise<?string>}
+ */
+Protocol.CSSAgent.prototype.getStyleSheetText = function(styleSheetId) {};
+/** @typedef {!{styleSheetId: Protocol.CSS.StyleSheetId}} */
+Protocol.CSSAgent.GetStyleSheetTextRequest;
+/** @typedef {!{text: string}} */
+Protocol.CSSAgent.GetStyleSheetTextResponse;
+/**
+ * @param {!Protocol.CSSAgent.GetStyleSheetTextRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.GetStyleSheetTextResponse>} */
+Protocol.CSSAgent.prototype.invoke_getStyleSheetText = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} propertyName
+ * @param {string} value
+ * @return {!Promise<undefined>}
+ */
+Protocol.CSSAgent.prototype.setEffectivePropertyValueForNode = function(nodeId, propertyName, value) {};
+/** @typedef {!{propertyName: string, nodeId: Protocol.DOM.NodeId, value: string}} */
+Protocol.CSSAgent.SetEffectivePropertyValueForNodeRequest;
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.SetEffectivePropertyValueForNodeResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetEffectivePropertyValueForNodeRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetEffectivePropertyValueForNodeResponse>} */
+Protocol.CSSAgent.prototype.invoke_setEffectivePropertyValueForNode = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @param {Protocol.CSS.SourceRange} range
+ * @param {string} keyText
+ * @return {!Promise<?Protocol.CSS.Value>}
+ */
+Protocol.CSSAgent.prototype.setKeyframeKey = function(styleSheetId, range, keyText) {};
+/** @typedef {!{range: Protocol.CSS.SourceRange, styleSheetId: Protocol.CSS.StyleSheetId, keyText: string}} */
+Protocol.CSSAgent.SetKeyframeKeyRequest;
+/** @typedef {!{keyText: Protocol.CSS.Value}} */
+Protocol.CSSAgent.SetKeyframeKeyResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetKeyframeKeyRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetKeyframeKeyResponse>} */
+Protocol.CSSAgent.prototype.invoke_setKeyframeKey = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @param {Protocol.CSS.SourceRange} range
+ * @param {string} text
+ * @return {!Promise<?Protocol.CSS.CSSMedia>}
+ */
+Protocol.CSSAgent.prototype.setMediaText = function(styleSheetId, range, text) {};
+/** @typedef {!{text: string, range: Protocol.CSS.SourceRange, styleSheetId: Protocol.CSS.StyleSheetId}} */
+Protocol.CSSAgent.SetMediaTextRequest;
+/** @typedef {!{media: Protocol.CSS.CSSMedia}} */
+Protocol.CSSAgent.SetMediaTextResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetMediaTextRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetMediaTextResponse>} */
+Protocol.CSSAgent.prototype.invoke_setMediaText = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @param {Protocol.CSS.SourceRange} range
+ * @param {string} selector
+ * @return {!Promise<?Protocol.CSS.SelectorList>}
+ */
+Protocol.CSSAgent.prototype.setRuleSelector = function(styleSheetId, range, selector) {};
+/** @typedef {!{range: Protocol.CSS.SourceRange, styleSheetId: Protocol.CSS.StyleSheetId, selector: string}} */
+Protocol.CSSAgent.SetRuleSelectorRequest;
+/** @typedef {!{selectorList: Protocol.CSS.SelectorList}} */
+Protocol.CSSAgent.SetRuleSelectorResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetRuleSelectorRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetRuleSelectorResponse>} */
+Protocol.CSSAgent.prototype.invoke_setRuleSelector = function(obj) {};
+
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ * @param {string} text
+ * @return {!Promise<?string>}
+ */
+Protocol.CSSAgent.prototype.setStyleSheetText = function(styleSheetId, text) {};
+/** @typedef {!{text: string, styleSheetId: Protocol.CSS.StyleSheetId}} */
+Protocol.CSSAgent.SetStyleSheetTextRequest;
+/** @typedef {!{sourceMapURL: string}} */
+Protocol.CSSAgent.SetStyleSheetTextResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetStyleSheetTextRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetStyleSheetTextResponse>} */
+Protocol.CSSAgent.prototype.invoke_setStyleSheetText = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.CSS.StyleDeclarationEdit>} edits
+ * @return {!Promise<?Array<Protocol.CSS.CSSStyle>>}
+ */
+Protocol.CSSAgent.prototype.setStyleTexts = function(edits) {};
+/** @typedef {!{edits: !Array<Protocol.CSS.StyleDeclarationEdit>}} */
+Protocol.CSSAgent.SetStyleTextsRequest;
+/** @typedef {!{styles: !Array<Protocol.CSS.CSSStyle>}} */
+Protocol.CSSAgent.SetStyleTextsResponse;
+/**
+ * @param {!Protocol.CSSAgent.SetStyleTextsRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.SetStyleTextsResponse>} */
+Protocol.CSSAgent.prototype.invoke_setStyleTexts = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.CSSAgent.prototype.startRuleUsageTracking = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.StartRuleUsageTrackingRequest;
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.StartRuleUsageTrackingResponse;
+/**
+ * @param {!Protocol.CSSAgent.StartRuleUsageTrackingRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.StartRuleUsageTrackingResponse>} */
+Protocol.CSSAgent.prototype.invoke_startRuleUsageTracking = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.CSS.RuleUsage>>}
+ */
+Protocol.CSSAgent.prototype.stopRuleUsageTracking = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.StopRuleUsageTrackingRequest;
+/** @typedef {!{ruleUsage: !Array<Protocol.CSS.RuleUsage>}} */
+Protocol.CSSAgent.StopRuleUsageTrackingResponse;
+/**
+ * @param {!Protocol.CSSAgent.StopRuleUsageTrackingRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.StopRuleUsageTrackingResponse>} */
+Protocol.CSSAgent.prototype.invoke_stopRuleUsageTracking = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.CSS.RuleUsage>>}
+ */
+Protocol.CSSAgent.prototype.takeCoverageDelta = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CSSAgent.TakeCoverageDeltaRequest;
+/** @typedef {!{coverage: !Array<Protocol.CSS.RuleUsage>}} */
+Protocol.CSSAgent.TakeCoverageDeltaResponse;
+/**
+ * @param {!Protocol.CSSAgent.TakeCoverageDeltaRequest} obj
+ * @return {!Promise<!Protocol.CSSAgent.TakeCoverageDeltaResponse>} */
+Protocol.CSSAgent.prototype.invoke_takeCoverageDelta = function(obj) {};
+
+/** @typedef {string} */
+Protocol.CSS.StyleSheetId;
+
+/** @enum {string} */
+Protocol.CSS.StyleSheetOrigin = {
+    Injected: "injected",
+    UserAgent: "user-agent",
+    Inspector: "inspector",
+    Regular: "regular"
+};
+
+/** @typedef {!{pseudoType:(Protocol.DOM.PseudoType), matches:(!Array<Protocol.CSS.RuleMatch>)}} */
+Protocol.CSS.PseudoElementMatches;
+
+/** @typedef {!{inlineStyle:(Protocol.CSS.CSSStyle|undefined), matchedCSSRules:(!Array<Protocol.CSS.RuleMatch>)}} */
+Protocol.CSS.InheritedStyleEntry;
+
+/** @typedef {!{rule:(Protocol.CSS.CSSRule), matchingSelectors:(!Array<number>)}} */
+Protocol.CSS.RuleMatch;
+
+/** @typedef {!{text:(string), range:(Protocol.CSS.SourceRange|undefined)}} */
+Protocol.CSS.Value;
+
+/** @typedef {!{selectors:(!Array<Protocol.CSS.Value>), text:(string)}} */
+Protocol.CSS.SelectorList;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId), frameId:(Protocol.Page.FrameId), sourceURL:(string), sourceMapURL:(string|undefined), origin:(Protocol.CSS.StyleSheetOrigin), title:(string), ownerNode:(Protocol.DOM.BackendNodeId|undefined), disabled:(boolean), hasSourceURL:(boolean|undefined), isInline:(boolean), startLine:(number), startColumn:(number), length:(number), endLine:(number), endColumn:(number)}} */
+Protocol.CSS.CSSStyleSheetHeader;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId|undefined), selectorList:(Protocol.CSS.SelectorList), origin:(Protocol.CSS.StyleSheetOrigin), style:(Protocol.CSS.CSSStyle), media:(!Array<Protocol.CSS.CSSMedia>|undefined)}} */
+Protocol.CSS.CSSRule;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId), startOffset:(number), endOffset:(number), used:(boolean)}} */
+Protocol.CSS.RuleUsage;
+
+/** @typedef {!{startLine:(number), startColumn:(number), endLine:(number), endColumn:(number)}} */
+Protocol.CSS.SourceRange;
+
+/** @typedef {!{name:(string), value:(string), important:(boolean|undefined)}} */
+Protocol.CSS.ShorthandEntry;
+
+/** @typedef {!{name:(string), value:(string)}} */
+Protocol.CSS.CSSComputedStyleProperty;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId|undefined), cssProperties:(!Array<Protocol.CSS.CSSProperty>), shorthandEntries:(!Array<Protocol.CSS.ShorthandEntry>), cssText:(string|undefined), range:(Protocol.CSS.SourceRange|undefined)}} */
+Protocol.CSS.CSSStyle;
+
+/** @typedef {!{name:(string), value:(string), important:(boolean|undefined), implicit:(boolean|undefined), text:(string|undefined), parsedOk:(boolean|undefined), disabled:(boolean|undefined), range:(Protocol.CSS.SourceRange|undefined)}} */
+Protocol.CSS.CSSProperty;
+
+/** @enum {string} */
+Protocol.CSS.CSSMediaSource = {
+    MediaRule: "mediaRule",
+    ImportRule: "importRule",
+    LinkedSheet: "linkedSheet",
+    InlineSheet: "inlineSheet"
+};
+
+/** @typedef {!{text:(string), source:(Protocol.CSS.CSSMediaSource), sourceURL:(string|undefined), range:(Protocol.CSS.SourceRange|undefined), styleSheetId:(Protocol.CSS.StyleSheetId|undefined), mediaList:(!Array<Protocol.CSS.MediaQuery>|undefined)}} */
+Protocol.CSS.CSSMedia;
+
+/** @typedef {!{expressions:(!Array<Protocol.CSS.MediaQueryExpression>), active:(boolean)}} */
+Protocol.CSS.MediaQuery;
+
+/** @typedef {!{value:(number), unit:(string), feature:(string), valueRange:(Protocol.CSS.SourceRange|undefined), computedLength:(number|undefined)}} */
+Protocol.CSS.MediaQueryExpression;
+
+/** @typedef {!{familyName:(string), isCustomFont:(boolean), glyphCount:(number)}} */
+Protocol.CSS.PlatformFontUsage;
+
+/** @typedef {!{fontFamily:(string), fontStyle:(string), fontVariant:(string), fontWeight:(string), fontStretch:(string), unicodeRange:(string), src:(string), platformFontFamily:(string)}} */
+Protocol.CSS.FontFace;
+
+/** @typedef {!{animationName:(Protocol.CSS.Value), keyframes:(!Array<Protocol.CSS.CSSKeyframeRule>)}} */
+Protocol.CSS.CSSKeyframesRule;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId|undefined), origin:(Protocol.CSS.StyleSheetOrigin), keyText:(Protocol.CSS.Value), style:(Protocol.CSS.CSSStyle)}} */
+Protocol.CSS.CSSKeyframeRule;
+
+/** @typedef {!{styleSheetId:(Protocol.CSS.StyleSheetId), range:(Protocol.CSS.SourceRange), text:(string)}} */
+Protocol.CSS.StyleDeclarationEdit;
+/** @interface */
+Protocol.CSSDispatcher = function() {};
+/**
+ * @param {Protocol.CSS.FontFace=} opt_font
+ */
+Protocol.CSSDispatcher.prototype.fontsUpdated = function(opt_font) {};
+Protocol.CSSDispatcher.prototype.mediaQueryResultChanged = function() {};
+/**
+ * @param {Protocol.CSS.CSSStyleSheetHeader} header
+ */
+Protocol.CSSDispatcher.prototype.styleSheetAdded = function(header) {};
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ */
+Protocol.CSSDispatcher.prototype.styleSheetChanged = function(styleSheetId) {};
+/**
+ * @param {Protocol.CSS.StyleSheetId} styleSheetId
+ */
+Protocol.CSSDispatcher.prototype.styleSheetRemoved = function(styleSheetId) {};
+Protocol.CacheStorage = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.CacheStorageAgent = function(){};
+
+/**
+ * @param {Protocol.CacheStorage.CacheId} cacheId
+ * @return {!Promise<undefined>}
+ */
+Protocol.CacheStorageAgent.prototype.deleteCache = function(cacheId) {};
+/** @typedef {!{cacheId: Protocol.CacheStorage.CacheId}} */
+Protocol.CacheStorageAgent.DeleteCacheRequest;
+/** @typedef {Object|undefined} */
+Protocol.CacheStorageAgent.DeleteCacheResponse;
+/**
+ * @param {!Protocol.CacheStorageAgent.DeleteCacheRequest} obj
+ * @return {!Promise<!Protocol.CacheStorageAgent.DeleteCacheResponse>} */
+Protocol.CacheStorageAgent.prototype.invoke_deleteCache = function(obj) {};
+
+/**
+ * @param {Protocol.CacheStorage.CacheId} cacheId
+ * @param {string} request
+ * @return {!Promise<undefined>}
+ */
+Protocol.CacheStorageAgent.prototype.deleteEntry = function(cacheId, request) {};
+/** @typedef {!{cacheId: Protocol.CacheStorage.CacheId, request: string}} */
+Protocol.CacheStorageAgent.DeleteEntryRequest;
+/** @typedef {Object|undefined} */
+Protocol.CacheStorageAgent.DeleteEntryResponse;
+/**
+ * @param {!Protocol.CacheStorageAgent.DeleteEntryRequest} obj
+ * @return {!Promise<!Protocol.CacheStorageAgent.DeleteEntryResponse>} */
+Protocol.CacheStorageAgent.prototype.invoke_deleteEntry = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @return {!Promise<?Array<Protocol.CacheStorage.Cache>>}
+ */
+Protocol.CacheStorageAgent.prototype.requestCacheNames = function(securityOrigin) {};
+/** @typedef {!{securityOrigin: string}} */
+Protocol.CacheStorageAgent.RequestCacheNamesRequest;
+/** @typedef {!{caches: !Array<Protocol.CacheStorage.Cache>}} */
+Protocol.CacheStorageAgent.RequestCacheNamesResponse;
+/**
+ * @param {!Protocol.CacheStorageAgent.RequestCacheNamesRequest} obj
+ * @return {!Promise<!Protocol.CacheStorageAgent.RequestCacheNamesResponse>} */
+Protocol.CacheStorageAgent.prototype.invoke_requestCacheNames = function(obj) {};
+
+/**
+ * @param {Protocol.CacheStorage.CacheId} cacheId
+ * @param {string} requestURL
+ * @param {!Array<Protocol.CacheStorage.Header>} requestHeaders
+ * @return {!Promise<?Protocol.CacheStorage.CachedResponse>}
+ */
+Protocol.CacheStorageAgent.prototype.requestCachedResponse = function(cacheId, requestURL, requestHeaders) {};
+/** @typedef {!{requestHeaders: !Array<Protocol.CacheStorage.Header>, cacheId: Protocol.CacheStorage.CacheId, requestURL: string}} */
+Protocol.CacheStorageAgent.RequestCachedResponseRequest;
+/** @typedef {!{response: Protocol.CacheStorage.CachedResponse}} */
+Protocol.CacheStorageAgent.RequestCachedResponseResponse;
+/**
+ * @param {!Protocol.CacheStorageAgent.RequestCachedResponseRequest} obj
+ * @return {!Promise<!Protocol.CacheStorageAgent.RequestCachedResponseResponse>} */
+Protocol.CacheStorageAgent.prototype.invoke_requestCachedResponse = function(obj) {};
+
+/**
+ * @param {Protocol.CacheStorage.CacheId} cacheId
+ * @param {number=} opt_skipCount
+ * @param {number=} opt_pageSize
+ * @param {string=} opt_pathFilter
+ * @return {!Promise<?Array<Protocol.CacheStorage.DataEntry>>}
+ */
+Protocol.CacheStorageAgent.prototype.requestEntries = function(cacheId, opt_skipCount, opt_pageSize, opt_pathFilter) {};
+/** @typedef {!{pathFilter: (string|undefined), cacheId: Protocol.CacheStorage.CacheId, skipCount: (number|undefined), pageSize: (number|undefined)}} */
+Protocol.CacheStorageAgent.RequestEntriesRequest;
+/** @typedef {!{returnCount: number, cacheDataEntries: !Array<Protocol.CacheStorage.DataEntry>}} */
+Protocol.CacheStorageAgent.RequestEntriesResponse;
+/**
+ * @param {!Protocol.CacheStorageAgent.RequestEntriesRequest} obj
+ * @return {!Promise<!Protocol.CacheStorageAgent.RequestEntriesResponse>} */
+Protocol.CacheStorageAgent.prototype.invoke_requestEntries = function(obj) {};
+
+/** @typedef {string} */
+Protocol.CacheStorage.CacheId;
+
+/** @enum {string} */
+Protocol.CacheStorage.CachedResponseType = {
+    Basic: "basic",
+    Cors: "cors",
+    Default: "default",
+    Error: "error",
+    OpaqueResponse: "opaqueResponse",
+    OpaqueRedirect: "opaqueRedirect"
+};
+
+/** @typedef {!{requestURL:(string), requestMethod:(string), requestHeaders:(!Array<Protocol.CacheStorage.Header>), responseTime:(number), responseStatus:(number), responseStatusText:(string), responseType:(Protocol.CacheStorage.CachedResponseType), responseHeaders:(!Array<Protocol.CacheStorage.Header>)}} */
+Protocol.CacheStorage.DataEntry;
+
+/** @typedef {!{cacheId:(Protocol.CacheStorage.CacheId), securityOrigin:(string), cacheName:(string)}} */
+Protocol.CacheStorage.Cache;
+
+/** @typedef {!{name:(string), value:(string)}} */
+Protocol.CacheStorage.Header;
+
+/** @typedef {!{body:(string)}} */
+Protocol.CacheStorage.CachedResponse;
+/** @interface */
+Protocol.CacheStorageDispatcher = function() {};
+Protocol.Cast = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.CastAgent = function(){};
+
+/**
+ * @param {string=} opt_presentationUrl
+ * @return {!Promise<undefined>}
+ */
+Protocol.CastAgent.prototype.enable = function(opt_presentationUrl) {};
+/** @typedef {!{presentationUrl: (string|undefined)}} */
+Protocol.CastAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.EnableResponse;
+/**
+ * @param {!Protocol.CastAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.CastAgent.EnableResponse>} */
+Protocol.CastAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.CastAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.DisableResponse;
+/**
+ * @param {!Protocol.CastAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.CastAgent.DisableResponse>} */
+Protocol.CastAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {string} sinkName
+ * @return {!Promise<undefined>}
+ */
+Protocol.CastAgent.prototype.setSinkToUse = function(sinkName) {};
+/** @typedef {!{sinkName: string}} */
+Protocol.CastAgent.SetSinkToUseRequest;
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.SetSinkToUseResponse;
+/**
+ * @param {!Protocol.CastAgent.SetSinkToUseRequest} obj
+ * @return {!Promise<!Protocol.CastAgent.SetSinkToUseResponse>} */
+Protocol.CastAgent.prototype.invoke_setSinkToUse = function(obj) {};
+
+/**
+ * @param {string} sinkName
+ * @return {!Promise<undefined>}
+ */
+Protocol.CastAgent.prototype.startTabMirroring = function(sinkName) {};
+/** @typedef {!{sinkName: string}} */
+Protocol.CastAgent.StartTabMirroringRequest;
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.StartTabMirroringResponse;
+/**
+ * @param {!Protocol.CastAgent.StartTabMirroringRequest} obj
+ * @return {!Promise<!Protocol.CastAgent.StartTabMirroringResponse>} */
+Protocol.CastAgent.prototype.invoke_startTabMirroring = function(obj) {};
+
+/**
+ * @param {string} sinkName
+ * @return {!Promise<undefined>}
+ */
+Protocol.CastAgent.prototype.stopCasting = function(sinkName) {};
+/** @typedef {!{sinkName: string}} */
+Protocol.CastAgent.StopCastingRequest;
+/** @typedef {Object|undefined} */
+Protocol.CastAgent.StopCastingResponse;
+/**
+ * @param {!Protocol.CastAgent.StopCastingRequest} obj
+ * @return {!Promise<!Protocol.CastAgent.StopCastingResponse>} */
+Protocol.CastAgent.prototype.invoke_stopCasting = function(obj) {};
+
+/** @typedef {!{name:(string), id:(string), session:(string|undefined)}} */
+Protocol.Cast.Sink;
+/** @interface */
+Protocol.CastDispatcher = function() {};
+/**
+ * @param {!Array<Protocol.Cast.Sink>} sinks
+ */
+Protocol.CastDispatcher.prototype.sinksUpdated = function(sinks) {};
+/**
+ * @param {string} issueMessage
+ */
+Protocol.CastDispatcher.prototype.issueUpdated = function(issueMessage) {};
+Protocol.DOM = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DOMAgent = function(){};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.DOMAgent.prototype.collectClassNamesFromSubtree = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.CollectClassNamesFromSubtreeRequest;
+/** @typedef {!{classNames: !Array<string>}} */
+Protocol.DOMAgent.CollectClassNamesFromSubtreeResponse;
+/**
+ * @param {!Protocol.DOMAgent.CollectClassNamesFromSubtreeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.CollectClassNamesFromSubtreeResponse>} */
+Protocol.DOMAgent.prototype.invoke_collectClassNamesFromSubtree = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {Protocol.DOM.NodeId} targetNodeId
+ * @param {Protocol.DOM.NodeId=} opt_insertBeforeNodeId
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.copyTo = function(nodeId, targetNodeId, opt_insertBeforeNodeId) {};
+/** @typedef {!{targetNodeId: Protocol.DOM.NodeId, nodeId: Protocol.DOM.NodeId, insertBeforeNodeId: (Protocol.DOM.NodeId|undefined)}} */
+Protocol.DOMAgent.CopyToRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.CopyToResponse;
+/**
+ * @param {!Protocol.DOMAgent.CopyToRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.CopyToResponse>} */
+Protocol.DOMAgent.prototype.invoke_copyTo = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @param {number=} opt_depth
+ * @param {boolean=} opt_pierce
+ * @return {!Promise<?Protocol.DOM.Node>}
+ */
+Protocol.DOMAgent.prototype.describeNode = function(opt_nodeId, opt_backendNodeId, opt_objectId, opt_depth, opt_pierce) {};
+/** @typedef {!{depth: (number|undefined), objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined), pierce: (boolean|undefined)}} */
+Protocol.DOMAgent.DescribeNodeRequest;
+/** @typedef {!{node: Protocol.DOM.Node}} */
+Protocol.DOMAgent.DescribeNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.DescribeNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.DescribeNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_describeNode = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.DisableResponse;
+/**
+ * @param {!Protocol.DOMAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.DisableResponse>} */
+Protocol.DOMAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {string} searchId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.discardSearchResults = function(searchId) {};
+/** @typedef {!{searchId: string}} */
+Protocol.DOMAgent.DiscardSearchResultsRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.DiscardSearchResultsResponse;
+/**
+ * @param {!Protocol.DOMAgent.DiscardSearchResultsRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.DiscardSearchResultsResponse>} */
+Protocol.DOMAgent.prototype.invoke_discardSearchResults = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.EnableResponse;
+/**
+ * @param {!Protocol.DOMAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.EnableResponse>} */
+Protocol.DOMAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.focus = function(opt_nodeId, opt_backendNodeId, opt_objectId) {};
+/** @typedef {!{objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.FocusRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.FocusResponse;
+/**
+ * @param {!Protocol.DOMAgent.FocusRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.FocusResponse>} */
+Protocol.DOMAgent.prototype.invoke_focus = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.DOMAgent.prototype.getAttributes = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.GetAttributesRequest;
+/** @typedef {!{attributes: !Array<string>}} */
+Protocol.DOMAgent.GetAttributesResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetAttributesRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetAttributesResponse>} */
+Protocol.DOMAgent.prototype.invoke_getAttributes = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @return {!Promise<?Protocol.DOM.BoxModel>}
+ */
+Protocol.DOMAgent.prototype.getBoxModel = function(opt_nodeId, opt_backendNodeId, opt_objectId) {};
+/** @typedef {!{objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.GetBoxModelRequest;
+/** @typedef {!{model: Protocol.DOM.BoxModel}} */
+Protocol.DOMAgent.GetBoxModelResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetBoxModelRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetBoxModelResponse>} */
+Protocol.DOMAgent.prototype.invoke_getBoxModel = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @return {!Promise<?Array<Protocol.DOM.Quad>>}
+ */
+Protocol.DOMAgent.prototype.getContentQuads = function(opt_nodeId, opt_backendNodeId, opt_objectId) {};
+/** @typedef {!{objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.GetContentQuadsRequest;
+/** @typedef {!{quads: !Array<Protocol.DOM.Quad>}} */
+Protocol.DOMAgent.GetContentQuadsResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetContentQuadsRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetContentQuadsResponse>} */
+Protocol.DOMAgent.prototype.invoke_getContentQuads = function(obj) {};
+
+/**
+ * @param {number=} opt_depth
+ * @param {boolean=} opt_pierce
+ * @return {!Promise<?Protocol.DOM.Node>}
+ */
+Protocol.DOMAgent.prototype.getDocument = function(opt_depth, opt_pierce) {};
+/** @typedef {!{depth: (number|undefined), pierce: (boolean|undefined)}} */
+Protocol.DOMAgent.GetDocumentRequest;
+/** @typedef {!{root: Protocol.DOM.Node}} */
+Protocol.DOMAgent.GetDocumentResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetDocumentRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetDocumentResponse>} */
+Protocol.DOMAgent.prototype.invoke_getDocument = function(obj) {};
+
+/**
+ * @param {number=} opt_depth
+ * @param {boolean=} opt_pierce
+ * @return {!Promise<?Array<Protocol.DOM.Node>>}
+ */
+Protocol.DOMAgent.prototype.getFlattenedDocument = function(opt_depth, opt_pierce) {};
+/** @typedef {!{depth: (number|undefined), pierce: (boolean|undefined)}} */
+Protocol.DOMAgent.GetFlattenedDocumentRequest;
+/** @typedef {!{nodes: !Array<Protocol.DOM.Node>}} */
+Protocol.DOMAgent.GetFlattenedDocumentResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetFlattenedDocumentRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetFlattenedDocumentResponse>} */
+Protocol.DOMAgent.prototype.invoke_getFlattenedDocument = function(obj) {};
+
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {boolean=} opt_includeUserAgentShadowDOM
+ * @param {boolean=} opt_ignorePointerEventsNone
+ * @return {!Promise<?Protocol.DOM.BackendNodeId>}
+ */
+Protocol.DOMAgent.prototype.getNodeForLocation = function(x, y, opt_includeUserAgentShadowDOM, opt_ignorePointerEventsNone) {};
+/** @typedef {!{y: number, x: number, ignorePointerEventsNone: (boolean|undefined), includeUserAgentShadowDOM: (boolean|undefined)}} */
+Protocol.DOMAgent.GetNodeForLocationRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, backendNodeId: Protocol.DOM.BackendNodeId, frameId: Protocol.Page.FrameId}} */
+Protocol.DOMAgent.GetNodeForLocationResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetNodeForLocationRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetNodeForLocationResponse>} */
+Protocol.DOMAgent.prototype.invoke_getNodeForLocation = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @return {!Promise<?string>}
+ */
+Protocol.DOMAgent.prototype.getOuterHTML = function(opt_nodeId, opt_backendNodeId, opt_objectId) {};
+/** @typedef {!{objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.GetOuterHTMLRequest;
+/** @typedef {!{outerHTML: string}} */
+Protocol.DOMAgent.GetOuterHTMLResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetOuterHTMLRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetOuterHTMLResponse>} */
+Protocol.DOMAgent.prototype.invoke_getOuterHTML = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.getRelayoutBoundary = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.GetRelayoutBoundaryRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.GetRelayoutBoundaryResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetRelayoutBoundaryRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetRelayoutBoundaryResponse>} */
+Protocol.DOMAgent.prototype.invoke_getRelayoutBoundary = function(obj) {};
+
+/**
+ * @param {string} searchId
+ * @param {number} fromIndex
+ * @param {number} toIndex
+ * @return {!Promise<?Array<Protocol.DOM.NodeId>>}
+ */
+Protocol.DOMAgent.prototype.getSearchResults = function(searchId, fromIndex, toIndex) {};
+/** @typedef {!{toIndex: number, searchId: string, fromIndex: number}} */
+Protocol.DOMAgent.GetSearchResultsRequest;
+/** @typedef {!{nodeIds: !Array<Protocol.DOM.NodeId>}} */
+Protocol.DOMAgent.GetSearchResultsResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetSearchResultsRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetSearchResultsResponse>} */
+Protocol.DOMAgent.prototype.invoke_getSearchResults = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.hideHighlight = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HideHighlightRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HideHighlightResponse;
+/**
+ * @param {!Protocol.DOMAgent.HideHighlightRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.HideHighlightResponse>} */
+Protocol.DOMAgent.prototype.invoke_hideHighlight = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.highlightNode = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HighlightNodeRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HighlightNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.HighlightNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.HighlightNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_highlightNode = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.highlightRect = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HighlightRectRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.HighlightRectResponse;
+/**
+ * @param {!Protocol.DOMAgent.HighlightRectRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.HighlightRectResponse>} */
+Protocol.DOMAgent.prototype.invoke_highlightRect = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.markUndoableState = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.MarkUndoableStateRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.MarkUndoableStateResponse;
+/**
+ * @param {!Protocol.DOMAgent.MarkUndoableStateRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.MarkUndoableStateResponse>} */
+Protocol.DOMAgent.prototype.invoke_markUndoableState = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {Protocol.DOM.NodeId} targetNodeId
+ * @param {Protocol.DOM.NodeId=} opt_insertBeforeNodeId
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.moveTo = function(nodeId, targetNodeId, opt_insertBeforeNodeId) {};
+/** @typedef {!{targetNodeId: Protocol.DOM.NodeId, nodeId: Protocol.DOM.NodeId, insertBeforeNodeId: (Protocol.DOM.NodeId|undefined)}} */
+Protocol.DOMAgent.MoveToRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.MoveToResponse;
+/**
+ * @param {!Protocol.DOMAgent.MoveToRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.MoveToResponse>} */
+Protocol.DOMAgent.prototype.invoke_moveTo = function(obj) {};
+
+/**
+ * @param {string} query
+ * @param {boolean=} opt_includeUserAgentShadowDOM
+ * @return {!Promise<?string>}
+ */
+Protocol.DOMAgent.prototype.performSearch = function(query, opt_includeUserAgentShadowDOM) {};
+/** @typedef {!{query: string, includeUserAgentShadowDOM: (boolean|undefined)}} */
+Protocol.DOMAgent.PerformSearchRequest;
+/** @typedef {!{searchId: string, resultCount: number}} */
+Protocol.DOMAgent.PerformSearchResponse;
+/**
+ * @param {!Protocol.DOMAgent.PerformSearchRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.PerformSearchResponse>} */
+Protocol.DOMAgent.prototype.invoke_performSearch = function(obj) {};
+
+/**
+ * @param {string} path
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.pushNodeByPathToFrontend = function(path) {};
+/** @typedef {!{path: string}} */
+Protocol.DOMAgent.PushNodeByPathToFrontendRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.PushNodeByPathToFrontendResponse;
+/**
+ * @param {!Protocol.DOMAgent.PushNodeByPathToFrontendRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.PushNodeByPathToFrontendResponse>} */
+Protocol.DOMAgent.prototype.invoke_pushNodeByPathToFrontend = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.DOM.BackendNodeId>} backendNodeIds
+ * @return {!Promise<?Array<Protocol.DOM.NodeId>>}
+ */
+Protocol.DOMAgent.prototype.pushNodesByBackendIdsToFrontend = function(backendNodeIds) {};
+/** @typedef {!{backendNodeIds: !Array<Protocol.DOM.BackendNodeId>}} */
+Protocol.DOMAgent.PushNodesByBackendIdsToFrontendRequest;
+/** @typedef {!{nodeIds: !Array<Protocol.DOM.NodeId>}} */
+Protocol.DOMAgent.PushNodesByBackendIdsToFrontendResponse;
+/**
+ * @param {!Protocol.DOMAgent.PushNodesByBackendIdsToFrontendRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.PushNodesByBackendIdsToFrontendResponse>} */
+Protocol.DOMAgent.prototype.invoke_pushNodesByBackendIdsToFrontend = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} selector
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.querySelector = function(nodeId, selector) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, selector: string}} */
+Protocol.DOMAgent.QuerySelectorRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.QuerySelectorResponse;
+/**
+ * @param {!Protocol.DOMAgent.QuerySelectorRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.QuerySelectorResponse>} */
+Protocol.DOMAgent.prototype.invoke_querySelector = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} selector
+ * @return {!Promise<?Array<Protocol.DOM.NodeId>>}
+ */
+Protocol.DOMAgent.prototype.querySelectorAll = function(nodeId, selector) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, selector: string}} */
+Protocol.DOMAgent.QuerySelectorAllRequest;
+/** @typedef {!{nodeIds: !Array<Protocol.DOM.NodeId>}} */
+Protocol.DOMAgent.QuerySelectorAllResponse;
+/**
+ * @param {!Protocol.DOMAgent.QuerySelectorAllRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.QuerySelectorAllResponse>} */
+Protocol.DOMAgent.prototype.invoke_querySelectorAll = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.redo = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.RedoRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.RedoResponse;
+/**
+ * @param {!Protocol.DOMAgent.RedoRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.RedoResponse>} */
+Protocol.DOMAgent.prototype.invoke_redo = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} name
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.removeAttribute = function(nodeId, name) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, name: string}} */
+Protocol.DOMAgent.RemoveAttributeRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.RemoveAttributeResponse;
+/**
+ * @param {!Protocol.DOMAgent.RemoveAttributeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.RemoveAttributeResponse>} */
+Protocol.DOMAgent.prototype.invoke_removeAttribute = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.removeNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.RemoveNodeRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.RemoveNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.RemoveNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.RemoveNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_removeNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {number=} opt_depth
+ * @param {boolean=} opt_pierce
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.requestChildNodes = function(nodeId, opt_depth, opt_pierce) {};
+/** @typedef {!{depth: (number|undefined), nodeId: Protocol.DOM.NodeId, pierce: (boolean|undefined)}} */
+Protocol.DOMAgent.RequestChildNodesRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.RequestChildNodesResponse;
+/**
+ * @param {!Protocol.DOMAgent.RequestChildNodesRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.RequestChildNodesResponse>} */
+Protocol.DOMAgent.prototype.invoke_requestChildNodes = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.requestNode = function(objectId) {};
+/** @typedef {!{objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.DOMAgent.RequestNodeRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.RequestNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.RequestNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.RequestNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_requestNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {string=} opt_objectGroup
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.DOMAgent.prototype.resolveNode = function(opt_nodeId, opt_backendNodeId, opt_objectGroup, opt_executionContextId) {};
+/** @typedef {!{objectGroup: (string|undefined), executionContextId: (Protocol.Runtime.ExecutionContextId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.ResolveNodeRequest;
+/** @typedef {!{object: Protocol.Runtime.RemoteObject}} */
+Protocol.DOMAgent.ResolveNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.ResolveNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.ResolveNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_resolveNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} name
+ * @param {string} value
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setAttributeValue = function(nodeId, name, value) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, value: string, name: string}} */
+Protocol.DOMAgent.SetAttributeValueRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetAttributeValueResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetAttributeValueRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetAttributeValueResponse>} */
+Protocol.DOMAgent.prototype.invoke_setAttributeValue = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} text
+ * @param {string=} opt_name
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setAttributesAsText = function(nodeId, text, opt_name) {};
+/** @typedef {!{text: string, nodeId: Protocol.DOM.NodeId, name: (string|undefined)}} */
+Protocol.DOMAgent.SetAttributesAsTextRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetAttributesAsTextResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetAttributesAsTextRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetAttributesAsTextResponse>} */
+Protocol.DOMAgent.prototype.invoke_setAttributesAsText = function(obj) {};
+
+/**
+ * @param {!Array<string>} files
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setFileInputFiles = function(files, opt_nodeId, opt_backendNodeId, opt_objectId) {};
+/** @typedef {!{files: !Array<string>, objectId: (Protocol.Runtime.RemoteObjectId|undefined), nodeId: (Protocol.DOM.NodeId|undefined), backendNodeId: (Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMAgent.SetFileInputFilesRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetFileInputFilesResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetFileInputFilesRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetFileInputFilesResponse>} */
+Protocol.DOMAgent.prototype.invoke_setFileInputFiles = function(obj) {};
+
+/**
+ * @param {boolean} enable
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setNodeStackTracesEnabled = function(enable) {};
+/** @typedef {!{enable: boolean}} */
+Protocol.DOMAgent.SetNodeStackTracesEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetNodeStackTracesEnabledResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetNodeStackTracesEnabledRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetNodeStackTracesEnabledResponse>} */
+Protocol.DOMAgent.prototype.invoke_setNodeStackTracesEnabled = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<?Protocol.Runtime.StackTrace>}
+ */
+Protocol.DOMAgent.prototype.getNodeStackTraces = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.GetNodeStackTracesRequest;
+/** @typedef {!{creation: Protocol.Runtime.StackTrace}} */
+Protocol.DOMAgent.GetNodeStackTracesResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetNodeStackTracesRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetNodeStackTracesResponse>} */
+Protocol.DOMAgent.prototype.invoke_getNodeStackTraces = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @return {!Promise<?string>}
+ */
+Protocol.DOMAgent.prototype.getFileInfo = function(objectId) {};
+/** @typedef {!{objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.DOMAgent.GetFileInfoRequest;
+/** @typedef {!{path: string}} */
+Protocol.DOMAgent.GetFileInfoResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetFileInfoRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetFileInfoResponse>} */
+Protocol.DOMAgent.prototype.invoke_getFileInfo = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setInspectedNode = function(nodeId) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.SetInspectedNodeRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetInspectedNodeResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetInspectedNodeRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetInspectedNodeResponse>} */
+Protocol.DOMAgent.prototype.invoke_setInspectedNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} name
+ * @return {!Promise<?Protocol.DOM.NodeId>}
+ */
+Protocol.DOMAgent.prototype.setNodeName = function(nodeId, name) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, name: string}} */
+Protocol.DOMAgent.SetNodeNameRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.SetNodeNameResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetNodeNameRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetNodeNameResponse>} */
+Protocol.DOMAgent.prototype.invoke_setNodeName = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} value
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setNodeValue = function(nodeId, value) {};
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, value: string}} */
+Protocol.DOMAgent.SetNodeValueRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetNodeValueResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetNodeValueRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetNodeValueResponse>} */
+Protocol.DOMAgent.prototype.invoke_setNodeValue = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} outerHTML
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.setOuterHTML = function(nodeId, outerHTML) {};
+/** @typedef {!{outerHTML: string, nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMAgent.SetOuterHTMLRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.SetOuterHTMLResponse;
+/**
+ * @param {!Protocol.DOMAgent.SetOuterHTMLRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.SetOuterHTMLResponse>} */
+Protocol.DOMAgent.prototype.invoke_setOuterHTML = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMAgent.prototype.undo = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.UndoRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMAgent.UndoResponse;
+/**
+ * @param {!Protocol.DOMAgent.UndoRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.UndoResponse>} */
+Protocol.DOMAgent.prototype.invoke_undo = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @return {!Promise<?Protocol.DOM.BackendNodeId>}
+ */
+Protocol.DOMAgent.prototype.getFrameOwner = function(frameId) {};
+/** @typedef {!{frameId: Protocol.Page.FrameId}} */
+Protocol.DOMAgent.GetFrameOwnerRequest;
+/** @typedef {!{nodeId: Protocol.DOM.NodeId, backendNodeId: Protocol.DOM.BackendNodeId}} */
+Protocol.DOMAgent.GetFrameOwnerResponse;
+/**
+ * @param {!Protocol.DOMAgent.GetFrameOwnerRequest} obj
+ * @return {!Promise<!Protocol.DOMAgent.GetFrameOwnerResponse>} */
+Protocol.DOMAgent.prototype.invoke_getFrameOwner = function(obj) {};
+
+/** @typedef {number} */
+Protocol.DOM.NodeId;
+
+/** @typedef {number} */
+Protocol.DOM.BackendNodeId;
+
+/** @typedef {!{nodeType:(number), nodeName:(string), backendNodeId:(Protocol.DOM.BackendNodeId)}} */
+Protocol.DOM.BackendNode;
+
+/** @enum {string} */
+Protocol.DOM.PseudoType = {
+    FirstLine: "first-line",
+    FirstLetter: "first-letter",
+    Before: "before",
+    After: "after",
+    Backdrop: "backdrop",
+    Selection: "selection",
+    FirstLineInherited: "first-line-inherited",
+    Scrollbar: "scrollbar",
+    ScrollbarThumb: "scrollbar-thumb",
+    ScrollbarButton: "scrollbar-button",
+    ScrollbarTrack: "scrollbar-track",
+    ScrollbarTrackPiece: "scrollbar-track-piece",
+    ScrollbarCorner: "scrollbar-corner",
+    Resizer: "resizer",
+    InputListButton: "input-list-button"
+};
+
+/** @enum {string} */
+Protocol.DOM.ShadowRootType = {
+    UserAgent: "user-agent",
+    Open: "open",
+    Closed: "closed"
+};
+
+/** @typedef {!{nodeId:(Protocol.DOM.NodeId), parentId:(Protocol.DOM.NodeId|undefined), backendNodeId:(Protocol.DOM.BackendNodeId), nodeType:(number), nodeName:(string), localName:(string), nodeValue:(string), childNodeCount:(number|undefined), children:(!Array<Protocol.DOM.Node>|undefined), attributes:(!Array<string>|undefined), documentURL:(string|undefined), baseURL:(string|undefined), publicId:(string|undefined), systemId:(string|undefined), internalSubset:(string|undefined), xmlVersion:(string|undefined), name:(string|undefined), value:(string|undefined), pseudoType:(Protocol.DOM.PseudoType|undefined), shadowRootType:(Protocol.DOM.ShadowRootType|undefined), frameId:(Protocol.Page.FrameId|undefined), contentDocument:(Protocol.DOM.Node|undefined), shadowRoots:(!Array<Protocol.DOM.Node>|undefined), templateContent:(Protocol.DOM.Node|undefined), pseudoElements:(!Array<Protocol.DOM.Node>|undefined), importedDocument:(Protocol.DOM.Node|undefined), distributedNodes:(!Array<Protocol.DOM.BackendNode>|undefined), isSVG:(boolean|undefined)}} */
+Protocol.DOM.Node;
+
+/** @typedef {!{r:(number), g:(number), b:(number), a:(number|undefined)}} */
+Protocol.DOM.RGBA;
+
+/** @typedef {!Array<!number>} */
+Protocol.DOM.Quad;
+
+/** @typedef {!{content:(Protocol.DOM.Quad), padding:(Protocol.DOM.Quad), border:(Protocol.DOM.Quad), margin:(Protocol.DOM.Quad), width:(number), height:(number), shapeOutside:(Protocol.DOM.ShapeOutsideInfo|undefined)}} */
+Protocol.DOM.BoxModel;
+
+/** @typedef {!{bounds:(Protocol.DOM.Quad), shape:(!Array<*>), marginShape:(!Array<*>)}} */
+Protocol.DOM.ShapeOutsideInfo;
+
+/** @typedef {!{x:(number), y:(number), width:(number), height:(number)}} */
+Protocol.DOM.Rect;
+/** @interface */
+Protocol.DOMDispatcher = function() {};
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} name
+ * @param {string} value
+ */
+Protocol.DOMDispatcher.prototype.attributeModified = function(nodeId, name, value) {};
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} name
+ */
+Protocol.DOMDispatcher.prototype.attributeRemoved = function(nodeId, name) {};
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {string} characterData
+ */
+Protocol.DOMDispatcher.prototype.characterDataModified = function(nodeId, characterData) {};
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {number} childNodeCount
+ */
+Protocol.DOMDispatcher.prototype.childNodeCountUpdated = function(nodeId, childNodeCount) {};
+/**
+ * @param {Protocol.DOM.NodeId} parentNodeId
+ * @param {Protocol.DOM.NodeId} previousNodeId
+ * @param {Protocol.DOM.Node} node
+ */
+Protocol.DOMDispatcher.prototype.childNodeInserted = function(parentNodeId, previousNodeId, node) {};
+/**
+ * @param {Protocol.DOM.NodeId} parentNodeId
+ * @param {Protocol.DOM.NodeId} nodeId
+ */
+Protocol.DOMDispatcher.prototype.childNodeRemoved = function(parentNodeId, nodeId) {};
+/**
+ * @param {Protocol.DOM.NodeId} insertionPointId
+ * @param {!Array<Protocol.DOM.BackendNode>} distributedNodes
+ */
+Protocol.DOMDispatcher.prototype.distributedNodesUpdated = function(insertionPointId, distributedNodes) {};
+Protocol.DOMDispatcher.prototype.documentUpdated = function() {};
+/**
+ * @param {!Array<Protocol.DOM.NodeId>} nodeIds
+ */
+Protocol.DOMDispatcher.prototype.inlineStyleInvalidated = function(nodeIds) {};
+/**
+ * @param {Protocol.DOM.NodeId} parentId
+ * @param {Protocol.DOM.Node} pseudoElement
+ */
+Protocol.DOMDispatcher.prototype.pseudoElementAdded = function(parentId, pseudoElement) {};
+/**
+ * @param {Protocol.DOM.NodeId} parentId
+ * @param {Protocol.DOM.NodeId} pseudoElementId
+ */
+Protocol.DOMDispatcher.prototype.pseudoElementRemoved = function(parentId, pseudoElementId) {};
+/**
+ * @param {Protocol.DOM.NodeId} parentId
+ * @param {!Array<Protocol.DOM.Node>} nodes
+ */
+Protocol.DOMDispatcher.prototype.setChildNodes = function(parentId, nodes) {};
+/**
+ * @param {Protocol.DOM.NodeId} hostId
+ * @param {Protocol.DOM.NodeId} rootId
+ */
+Protocol.DOMDispatcher.prototype.shadowRootPopped = function(hostId, rootId) {};
+/**
+ * @param {Protocol.DOM.NodeId} hostId
+ * @param {Protocol.DOM.Node} root
+ */
+Protocol.DOMDispatcher.prototype.shadowRootPushed = function(hostId, root) {};
+Protocol.DOMDebugger = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DOMDebuggerAgent = function(){};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @param {number=} opt_depth
+ * @param {boolean=} opt_pierce
+ * @return {!Promise<?Array<Protocol.DOMDebugger.EventListener>>}
+ */
+Protocol.DOMDebuggerAgent.prototype.getEventListeners = function(objectId, opt_depth, opt_pierce) {};
+/** @typedef {!{depth: (number|undefined), pierce: (boolean|undefined), objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.DOMDebuggerAgent.GetEventListenersRequest;
+/** @typedef {!{listeners: !Array<Protocol.DOMDebugger.EventListener>}} */
+Protocol.DOMDebuggerAgent.GetEventListenersResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.GetEventListenersRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.GetEventListenersResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_getEventListeners = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {Protocol.DOMDebugger.DOMBreakpointType} type
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.removeDOMBreakpoint = function(nodeId, type) {};
+/** @typedef {!{type: Protocol.DOMDebugger.DOMBreakpointType, nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMDebuggerAgent.RemoveDOMBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.RemoveDOMBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.RemoveDOMBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.RemoveDOMBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_removeDOMBreakpoint = function(obj) {};
+
+/**
+ * @param {string} eventName
+ * @param {string=} opt_targetName
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.removeEventListenerBreakpoint = function(eventName, opt_targetName) {};
+/** @typedef {!{eventName: string, targetName: (string|undefined)}} */
+Protocol.DOMDebuggerAgent.RemoveEventListenerBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.RemoveEventListenerBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.RemoveEventListenerBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.RemoveEventListenerBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_removeEventListenerBreakpoint = function(obj) {};
+
+/**
+ * @param {string} eventName
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.removeInstrumentationBreakpoint = function(eventName) {};
+/** @typedef {!{eventName: string}} */
+Protocol.DOMDebuggerAgent.RemoveInstrumentationBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.RemoveInstrumentationBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.RemoveInstrumentationBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.RemoveInstrumentationBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_removeInstrumentationBreakpoint = function(obj) {};
+
+/**
+ * @param {string} url
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.removeXHRBreakpoint = function(url) {};
+/** @typedef {!{url: string}} */
+Protocol.DOMDebuggerAgent.RemoveXHRBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.RemoveXHRBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.RemoveXHRBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.RemoveXHRBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_removeXHRBreakpoint = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {Protocol.DOMDebugger.DOMBreakpointType} type
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.setDOMBreakpoint = function(nodeId, type) {};
+/** @typedef {!{type: Protocol.DOMDebugger.DOMBreakpointType, nodeId: Protocol.DOM.NodeId}} */
+Protocol.DOMDebuggerAgent.SetDOMBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.SetDOMBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.SetDOMBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.SetDOMBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_setDOMBreakpoint = function(obj) {};
+
+/**
+ * @param {string} eventName
+ * @param {string=} opt_targetName
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.setEventListenerBreakpoint = function(eventName, opt_targetName) {};
+/** @typedef {!{eventName: string, targetName: (string|undefined)}} */
+Protocol.DOMDebuggerAgent.SetEventListenerBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.SetEventListenerBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.SetEventListenerBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.SetEventListenerBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_setEventListenerBreakpoint = function(obj) {};
+
+/**
+ * @param {string} eventName
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.setInstrumentationBreakpoint = function(eventName) {};
+/** @typedef {!{eventName: string}} */
+Protocol.DOMDebuggerAgent.SetInstrumentationBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.SetInstrumentationBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.SetInstrumentationBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.SetInstrumentationBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_setInstrumentationBreakpoint = function(obj) {};
+
+/**
+ * @param {string} url
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMDebuggerAgent.prototype.setXHRBreakpoint = function(url) {};
+/** @typedef {!{url: string}} */
+Protocol.DOMDebuggerAgent.SetXHRBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMDebuggerAgent.SetXHRBreakpointResponse;
+/**
+ * @param {!Protocol.DOMDebuggerAgent.SetXHRBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DOMDebuggerAgent.SetXHRBreakpointResponse>} */
+Protocol.DOMDebuggerAgent.prototype.invoke_setXHRBreakpoint = function(obj) {};
+
+/** @enum {string} */
+Protocol.DOMDebugger.DOMBreakpointType = {
+    SubtreeModified: "subtree-modified",
+    AttributeModified: "attribute-modified",
+    NodeRemoved: "node-removed"
+};
+
+/** @typedef {!{type:(string), useCapture:(boolean), passive:(boolean), once:(boolean), scriptId:(Protocol.Runtime.ScriptId), lineNumber:(number), columnNumber:(number), handler:(Protocol.Runtime.RemoteObject|undefined), originalHandler:(Protocol.Runtime.RemoteObject|undefined), backendNodeId:(Protocol.DOM.BackendNodeId|undefined)}} */
+Protocol.DOMDebugger.EventListener;
+/** @interface */
+Protocol.DOMDebuggerDispatcher = function() {};
+Protocol.DOMSnapshot = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DOMSnapshotAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMSnapshotAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMSnapshotAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMSnapshotAgent.DisableResponse;
+/**
+ * @param {!Protocol.DOMSnapshotAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.DOMSnapshotAgent.DisableResponse>} */
+Protocol.DOMSnapshotAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMSnapshotAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMSnapshotAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMSnapshotAgent.EnableResponse;
+/**
+ * @param {!Protocol.DOMSnapshotAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.DOMSnapshotAgent.EnableResponse>} */
+Protocol.DOMSnapshotAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {!Array<string>} computedStyleWhitelist
+ * @param {boolean=} opt_includeEventListeners
+ * @param {boolean=} opt_includePaintOrder
+ * @param {boolean=} opt_includeUserAgentShadowTree
+ * @return {!Promise<?Array<Protocol.DOMSnapshot.DOMNode>>}
+ */
+Protocol.DOMSnapshotAgent.prototype.getSnapshot = function(computedStyleWhitelist, opt_includeEventListeners, opt_includePaintOrder, opt_includeUserAgentShadowTree) {};
+/** @typedef {!{includePaintOrder: (boolean|undefined), includeEventListeners: (boolean|undefined), computedStyleWhitelist: !Array<string>, includeUserAgentShadowTree: (boolean|undefined)}} */
+Protocol.DOMSnapshotAgent.GetSnapshotRequest;
+/** @typedef {!{layoutTreeNodes: !Array<Protocol.DOMSnapshot.LayoutTreeNode>, domNodes: !Array<Protocol.DOMSnapshot.DOMNode>, computedStyles: !Array<Protocol.DOMSnapshot.ComputedStyle>}} */
+Protocol.DOMSnapshotAgent.GetSnapshotResponse;
+/**
+ * @param {!Protocol.DOMSnapshotAgent.GetSnapshotRequest} obj
+ * @return {!Promise<!Protocol.DOMSnapshotAgent.GetSnapshotResponse>} */
+Protocol.DOMSnapshotAgent.prototype.invoke_getSnapshot = function(obj) {};
+
+/**
+ * @param {!Array<string>} computedStyles
+ * @param {boolean=} opt_includePaintOrder
+ * @param {boolean=} opt_includeDOMRects
+ * @return {!Promise<?Array<Protocol.DOMSnapshot.DocumentSnapshot>>}
+ */
+Protocol.DOMSnapshotAgent.prototype.captureSnapshot = function(computedStyles, opt_includePaintOrder, opt_includeDOMRects) {};
+/** @typedef {!{includePaintOrder: (boolean|undefined), includeDOMRects: (boolean|undefined), computedStyles: !Array<string>}} */
+Protocol.DOMSnapshotAgent.CaptureSnapshotRequest;
+/** @typedef {!{documents: !Array<Protocol.DOMSnapshot.DocumentSnapshot>, strings: !Array<string>}} */
+Protocol.DOMSnapshotAgent.CaptureSnapshotResponse;
+/**
+ * @param {!Protocol.DOMSnapshotAgent.CaptureSnapshotRequest} obj
+ * @return {!Promise<!Protocol.DOMSnapshotAgent.CaptureSnapshotResponse>} */
+Protocol.DOMSnapshotAgent.prototype.invoke_captureSnapshot = function(obj) {};
+
+/** @typedef {!{nodeType:(number), nodeName:(string), nodeValue:(string), textValue:(string|undefined), inputValue:(string|undefined), inputChecked:(boolean|undefined), optionSelected:(boolean|undefined), backendNodeId:(Protocol.DOM.BackendNodeId), childNodeIndexes:(!Array<number>|undefined), attributes:(!Array<Protocol.DOMSnapshot.NameValue>|undefined), pseudoElementIndexes:(!Array<number>|undefined), layoutNodeIndex:(number|undefined), documentURL:(string|undefined), baseURL:(string|undefined), contentLanguage:(string|undefined), documentEncoding:(string|undefined), publicId:(string|undefined), systemId:(string|undefined), frameId:(Protocol.Page.FrameId|undefined), contentDocumentIndex:(number|undefined), pseudoType:(Protocol.DOM.PseudoType|undefined), shadowRootType:(Protocol.DOM.ShadowRootType|undefined), isClickable:(boolean|undefined), eventListeners:(!Array<Protocol.DOMDebugger.EventListener>|undefined), currentSourceURL:(string|undefined), originURL:(string|undefined), scrollOffsetX:(number|undefined), scrollOffsetY:(number|undefined)}} */
+Protocol.DOMSnapshot.DOMNode;
+
+/** @typedef {!{boundingBox:(Protocol.DOM.Rect), startCharacterIndex:(number), numCharacters:(number)}} */
+Protocol.DOMSnapshot.InlineTextBox;
+
+/** @typedef {!{domNodeIndex:(number), boundingBox:(Protocol.DOM.Rect), layoutText:(string|undefined), inlineTextNodes:(!Array<Protocol.DOMSnapshot.InlineTextBox>|undefined), styleIndex:(number|undefined), paintOrder:(number|undefined), isStackingContext:(boolean|undefined)}} */
+Protocol.DOMSnapshot.LayoutTreeNode;
+
+/** @typedef {!{properties:(!Array<Protocol.DOMSnapshot.NameValue>)}} */
+Protocol.DOMSnapshot.ComputedStyle;
+
+/** @typedef {!{name:(string), value:(string)}} */
+Protocol.DOMSnapshot.NameValue;
+
+/** @typedef {number} */
+Protocol.DOMSnapshot.StringIndex;
+
+/** @typedef {!Array<!Protocol.DOMSnapshot.StringIndex>} */
+Protocol.DOMSnapshot.ArrayOfStrings;
+
+/** @typedef {!{index:(!Array<number>), value:(!Array<Protocol.DOMSnapshot.StringIndex>)}} */
+Protocol.DOMSnapshot.RareStringData;
+
+/** @typedef {!{index:(!Array<number>)}} */
+Protocol.DOMSnapshot.RareBooleanData;
+
+/** @typedef {!{index:(!Array<number>), value:(!Array<number>)}} */
+Protocol.DOMSnapshot.RareIntegerData;
+
+/** @typedef {!Array<!number>} */
+Protocol.DOMSnapshot.Rectangle;
+
+/** @typedef {!{documentURL:(Protocol.DOMSnapshot.StringIndex), title:(Protocol.DOMSnapshot.StringIndex), baseURL:(Protocol.DOMSnapshot.StringIndex), contentLanguage:(Protocol.DOMSnapshot.StringIndex), encodingName:(Protocol.DOMSnapshot.StringIndex), publicId:(Protocol.DOMSnapshot.StringIndex), systemId:(Protocol.DOMSnapshot.StringIndex), frameId:(Protocol.DOMSnapshot.StringIndex), nodes:(Protocol.DOMSnapshot.NodeTreeSnapshot), layout:(Protocol.DOMSnapshot.LayoutTreeSnapshot), textBoxes:(Protocol.DOMSnapshot.TextBoxSnapshot), scrollOffsetX:(number|undefined), scrollOffsetY:(number|undefined), contentWidth:(number|undefined), contentHeight:(number|undefined)}} */
+Protocol.DOMSnapshot.DocumentSnapshot;
+
+/** @typedef {!{parentIndex:(!Array<number>|undefined), nodeType:(!Array<number>|undefined), nodeName:(!Array<Protocol.DOMSnapshot.StringIndex>|undefined), nodeValue:(!Array<Protocol.DOMSnapshot.StringIndex>|undefined), backendNodeId:(!Array<Protocol.DOM.BackendNodeId>|undefined), attributes:(!Array<Protocol.DOMSnapshot.ArrayOfStrings>|undefined), textValue:(Protocol.DOMSnapshot.RareStringData|undefined), inputValue:(Protocol.DOMSnapshot.RareStringData|undefined), inputChecked:(Protocol.DOMSnapshot.RareBooleanData|undefined), optionSelected:(Protocol.DOMSnapshot.RareBooleanData|undefined), contentDocumentIndex:(Protocol.DOMSnapshot.RareIntegerData|undefined), pseudoType:(Protocol.DOMSnapshot.RareStringData|undefined), isClickable:(Protocol.DOMSnapshot.RareBooleanData|undefined), currentSourceURL:(Protocol.DOMSnapshot.RareStringData|undefined), originURL:(Protocol.DOMSnapshot.RareStringData|undefined)}} */
+Protocol.DOMSnapshot.NodeTreeSnapshot;
+
+/** @typedef {!{nodeIndex:(!Array<number>), styles:(!Array<Protocol.DOMSnapshot.ArrayOfStrings>), bounds:(!Array<Protocol.DOMSnapshot.Rectangle>), text:(!Array<Protocol.DOMSnapshot.StringIndex>), stackingContexts:(Protocol.DOMSnapshot.RareBooleanData), paintOrders:(!Array<number>|undefined), offsetRects:(!Array<Protocol.DOMSnapshot.Rectangle>|undefined), scrollRects:(!Array<Protocol.DOMSnapshot.Rectangle>|undefined), clientRects:(!Array<Protocol.DOMSnapshot.Rectangle>|undefined)}} */
+Protocol.DOMSnapshot.LayoutTreeSnapshot;
+
+/** @typedef {!{layoutIndex:(!Array<number>), bounds:(!Array<Protocol.DOMSnapshot.Rectangle>), start:(!Array<number>), length:(!Array<number>)}} */
+Protocol.DOMSnapshot.TextBoxSnapshot;
+/** @interface */
+Protocol.DOMSnapshotDispatcher = function() {};
+Protocol.DOMStorage = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DOMStorageAgent = function(){};
+
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMStorageAgent.prototype.clear = function(storageId) {};
+/** @typedef {!{storageId: Protocol.DOMStorage.StorageId}} */
+Protocol.DOMStorageAgent.ClearRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.ClearResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.ClearRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.ClearResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_clear = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMStorageAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.DisableResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.DisableResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMStorageAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.EnableResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.EnableResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @return {!Promise<?Array<Protocol.DOMStorage.Item>>}
+ */
+Protocol.DOMStorageAgent.prototype.getDOMStorageItems = function(storageId) {};
+/** @typedef {!{storageId: Protocol.DOMStorage.StorageId}} */
+Protocol.DOMStorageAgent.GetDOMStorageItemsRequest;
+/** @typedef {!{entries: !Array<Protocol.DOMStorage.Item>}} */
+Protocol.DOMStorageAgent.GetDOMStorageItemsResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.GetDOMStorageItemsRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.GetDOMStorageItemsResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_getDOMStorageItems = function(obj) {};
+
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @param {string} key
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMStorageAgent.prototype.removeDOMStorageItem = function(storageId, key) {};
+/** @typedef {!{storageId: Protocol.DOMStorage.StorageId, key: string}} */
+Protocol.DOMStorageAgent.RemoveDOMStorageItemRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.RemoveDOMStorageItemResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.RemoveDOMStorageItemRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.RemoveDOMStorageItemResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_removeDOMStorageItem = function(obj) {};
+
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @param {string} key
+ * @param {string} value
+ * @return {!Promise<undefined>}
+ */
+Protocol.DOMStorageAgent.prototype.setDOMStorageItem = function(storageId, key, value) {};
+/** @typedef {!{value: string, storageId: Protocol.DOMStorage.StorageId, key: string}} */
+Protocol.DOMStorageAgent.SetDOMStorageItemRequest;
+/** @typedef {Object|undefined} */
+Protocol.DOMStorageAgent.SetDOMStorageItemResponse;
+/**
+ * @param {!Protocol.DOMStorageAgent.SetDOMStorageItemRequest} obj
+ * @return {!Promise<!Protocol.DOMStorageAgent.SetDOMStorageItemResponse>} */
+Protocol.DOMStorageAgent.prototype.invoke_setDOMStorageItem = function(obj) {};
+
+/** @typedef {!{securityOrigin:(string), isLocalStorage:(boolean)}} */
+Protocol.DOMStorage.StorageId;
+
+/** @typedef {!Array<!string>} */
+Protocol.DOMStorage.Item;
+/** @interface */
+Protocol.DOMStorageDispatcher = function() {};
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @param {string} key
+ * @param {string} newValue
+ */
+Protocol.DOMStorageDispatcher.prototype.domStorageItemAdded = function(storageId, key, newValue) {};
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @param {string} key
+ */
+Protocol.DOMStorageDispatcher.prototype.domStorageItemRemoved = function(storageId, key) {};
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ * @param {string} key
+ * @param {string} oldValue
+ * @param {string} newValue
+ */
+Protocol.DOMStorageDispatcher.prototype.domStorageItemUpdated = function(storageId, key, oldValue, newValue) {};
+/**
+ * @param {Protocol.DOMStorage.StorageId} storageId
+ */
+Protocol.DOMStorageDispatcher.prototype.domStorageItemsCleared = function(storageId) {};
+Protocol.Database = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DatabaseAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DatabaseAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DatabaseAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DatabaseAgent.DisableResponse;
+/**
+ * @param {!Protocol.DatabaseAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.DatabaseAgent.DisableResponse>} */
+Protocol.DatabaseAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DatabaseAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DatabaseAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DatabaseAgent.EnableResponse;
+/**
+ * @param {!Protocol.DatabaseAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.DatabaseAgent.EnableResponse>} */
+Protocol.DatabaseAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.Database.DatabaseId} databaseId
+ * @param {string} query
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.DatabaseAgent.prototype.executeSQL = function(databaseId, query) {};
+/** @typedef {!{query: string, databaseId: Protocol.Database.DatabaseId}} */
+Protocol.DatabaseAgent.ExecuteSQLRequest;
+/** @typedef {!{columnNames: !Array<string>, values: !Array<*>, sqlError: Protocol.Database.Error}} */
+Protocol.DatabaseAgent.ExecuteSQLResponse;
+/**
+ * @param {!Protocol.DatabaseAgent.ExecuteSQLRequest} obj
+ * @return {!Promise<!Protocol.DatabaseAgent.ExecuteSQLResponse>} */
+Protocol.DatabaseAgent.prototype.invoke_executeSQL = function(obj) {};
+
+/**
+ * @param {Protocol.Database.DatabaseId} databaseId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.DatabaseAgent.prototype.getDatabaseTableNames = function(databaseId) {};
+/** @typedef {!{databaseId: Protocol.Database.DatabaseId}} */
+Protocol.DatabaseAgent.GetDatabaseTableNamesRequest;
+/** @typedef {!{tableNames: !Array<string>}} */
+Protocol.DatabaseAgent.GetDatabaseTableNamesResponse;
+/**
+ * @param {!Protocol.DatabaseAgent.GetDatabaseTableNamesRequest} obj
+ * @return {!Promise<!Protocol.DatabaseAgent.GetDatabaseTableNamesResponse>} */
+Protocol.DatabaseAgent.prototype.invoke_getDatabaseTableNames = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Database.DatabaseId;
+
+/** @typedef {!{id:(Protocol.Database.DatabaseId), domain:(string), name:(string), version:(string)}} */
+Protocol.Database.Database;
+
+/** @typedef {!{message:(string), code:(number)}} */
+Protocol.Database.Error;
+/** @interface */
+Protocol.DatabaseDispatcher = function() {};
+/**
+ * @param {Protocol.Database.Database} database
+ */
+Protocol.DatabaseDispatcher.prototype.addDatabase = function(database) {};
+Protocol.DeviceOrientation = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DeviceOrientationAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DeviceOrientationAgent.prototype.clearDeviceOrientationOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DeviceOrientationAgent.ClearDeviceOrientationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.DeviceOrientationAgent.ClearDeviceOrientationOverrideResponse;
+/**
+ * @param {!Protocol.DeviceOrientationAgent.ClearDeviceOrientationOverrideRequest} obj
+ * @return {!Promise<!Protocol.DeviceOrientationAgent.ClearDeviceOrientationOverrideResponse>} */
+Protocol.DeviceOrientationAgent.prototype.invoke_clearDeviceOrientationOverride = function(obj) {};
+
+/**
+ * @param {number} alpha
+ * @param {number} beta
+ * @param {number} gamma
+ * @return {!Promise<undefined>}
+ */
+Protocol.DeviceOrientationAgent.prototype.setDeviceOrientationOverride = function(alpha, beta, gamma) {};
+/** @typedef {!{alpha: number, beta: number, gamma: number}} */
+Protocol.DeviceOrientationAgent.SetDeviceOrientationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.DeviceOrientationAgent.SetDeviceOrientationOverrideResponse;
+/**
+ * @param {!Protocol.DeviceOrientationAgent.SetDeviceOrientationOverrideRequest} obj
+ * @return {!Promise<!Protocol.DeviceOrientationAgent.SetDeviceOrientationOverrideResponse>} */
+Protocol.DeviceOrientationAgent.prototype.invoke_setDeviceOrientationOverride = function(obj) {};
+/** @interface */
+Protocol.DeviceOrientationDispatcher = function() {};
+Protocol.Emulation = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.EmulationAgent = function(){};
+
+/**
+ * @return {!Promise<?boolean>}
+ */
+Protocol.EmulationAgent.prototype.canEmulate = function() {};
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.CanEmulateRequest;
+/** @typedef {!{result: boolean}} */
+Protocol.EmulationAgent.CanEmulateResponse;
+/**
+ * @param {!Protocol.EmulationAgent.CanEmulateRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.CanEmulateResponse>} */
+Protocol.EmulationAgent.prototype.invoke_canEmulate = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.clearDeviceMetricsOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ClearDeviceMetricsOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ClearDeviceMetricsOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.ClearDeviceMetricsOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.ClearDeviceMetricsOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_clearDeviceMetricsOverride = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.clearGeolocationOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ClearGeolocationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ClearGeolocationOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.ClearGeolocationOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.ClearGeolocationOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_clearGeolocationOverride = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.resetPageScaleFactor = function() {};
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ResetPageScaleFactorRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.ResetPageScaleFactorResponse;
+/**
+ * @param {!Protocol.EmulationAgent.ResetPageScaleFactorRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.ResetPageScaleFactorResponse>} */
+Protocol.EmulationAgent.prototype.invoke_resetPageScaleFactor = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setFocusEmulationEnabled = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.EmulationAgent.SetFocusEmulationEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetFocusEmulationEnabledResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetFocusEmulationEnabledRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetFocusEmulationEnabledResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setFocusEmulationEnabled = function(obj) {};
+
+/**
+ * @param {number} rate
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setCPUThrottlingRate = function(rate) {};
+/** @typedef {!{rate: number}} */
+Protocol.EmulationAgent.SetCPUThrottlingRateRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetCPUThrottlingRateResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetCPUThrottlingRateRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetCPUThrottlingRateResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setCPUThrottlingRate = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.RGBA=} opt_color
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setDefaultBackgroundColorOverride = function(opt_color) {};
+/** @typedef {!{color: (Protocol.DOM.RGBA|undefined)}} */
+Protocol.EmulationAgent.SetDefaultBackgroundColorOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetDefaultBackgroundColorOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetDefaultBackgroundColorOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetDefaultBackgroundColorOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setDefaultBackgroundColorOverride = function(obj) {};
+
+/**
+ * @param {number} width
+ * @param {number} height
+ * @param {number} deviceScaleFactor
+ * @param {boolean} mobile
+ * @param {number=} opt_scale
+ * @param {number=} opt_screenWidth
+ * @param {number=} opt_screenHeight
+ * @param {number=} opt_positionX
+ * @param {number=} opt_positionY
+ * @param {boolean=} opt_dontSetVisibleSize
+ * @param {Protocol.Emulation.ScreenOrientation=} opt_screenOrientation
+ * @param {Protocol.Page.Viewport=} opt_viewport
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setDeviceMetricsOverride = function(width, height, deviceScaleFactor, mobile, opt_scale, opt_screenWidth, opt_screenHeight, opt_positionX, opt_positionY, opt_dontSetVisibleSize, opt_screenOrientation, opt_viewport) {};
+/** @typedef {!{deviceScaleFactor: number, positionX: (number|undefined), scale: (number|undefined), screenHeight: (number|undefined), mobile: boolean, screenOrientation: (Protocol.Emulation.ScreenOrientation|undefined), dontSetVisibleSize: (boolean|undefined), height: number, width: number, positionY: (number|undefined), screenWidth: (number|undefined), viewport: (Protocol.Page.Viewport|undefined)}} */
+Protocol.EmulationAgent.SetDeviceMetricsOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetDeviceMetricsOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetDeviceMetricsOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetDeviceMetricsOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setDeviceMetricsOverride = function(obj) {};
+
+/**
+ * @param {boolean} hidden
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setScrollbarsHidden = function(hidden) {};
+/** @typedef {!{hidden: boolean}} */
+Protocol.EmulationAgent.SetScrollbarsHiddenRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetScrollbarsHiddenResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetScrollbarsHiddenRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetScrollbarsHiddenResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setScrollbarsHidden = function(obj) {};
+
+/**
+ * @param {boolean} disabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setDocumentCookieDisabled = function(disabled) {};
+/** @typedef {!{disabled: boolean}} */
+Protocol.EmulationAgent.SetDocumentCookieDisabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetDocumentCookieDisabledResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetDocumentCookieDisabledRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetDocumentCookieDisabledResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setDocumentCookieDisabled = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @param {string=} opt_configuration
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setEmitTouchEventsForMouse = function(enabled, opt_configuration) {};
+/** @typedef {!{configuration: (string|undefined), enabled: boolean}} */
+Protocol.EmulationAgent.SetEmitTouchEventsForMouseRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetEmitTouchEventsForMouseResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetEmitTouchEventsForMouseRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetEmitTouchEventsForMouseResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setEmitTouchEventsForMouse = function(obj) {};
+
+/**
+ * @param {string=} opt_media
+ * @param {!Array<Protocol.Emulation.MediaFeature>=} opt_features
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setEmulatedMedia = function(opt_media, opt_features) {};
+/** @typedef {!{media: (string|undefined), features: (!Array<Protocol.Emulation.MediaFeature>|undefined)}} */
+Protocol.EmulationAgent.SetEmulatedMediaRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetEmulatedMediaResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetEmulatedMediaRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetEmulatedMediaResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setEmulatedMedia = function(obj) {};
+
+/**
+ * @param {number=} opt_latitude
+ * @param {number=} opt_longitude
+ * @param {number=} opt_accuracy
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setGeolocationOverride = function(opt_latitude, opt_longitude, opt_accuracy) {};
+/** @typedef {!{latitude: (number|undefined), longitude: (number|undefined), accuracy: (number|undefined)}} */
+Protocol.EmulationAgent.SetGeolocationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetGeolocationOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetGeolocationOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetGeolocationOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setGeolocationOverride = function(obj) {};
+
+/**
+ * @param {string} platform
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setNavigatorOverrides = function(platform) {};
+/** @typedef {!{platform: string}} */
+Protocol.EmulationAgent.SetNavigatorOverridesRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetNavigatorOverridesResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetNavigatorOverridesRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetNavigatorOverridesResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setNavigatorOverrides = function(obj) {};
+
+/**
+ * @param {number} pageScaleFactor
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setPageScaleFactor = function(pageScaleFactor) {};
+/** @typedef {!{pageScaleFactor: number}} */
+Protocol.EmulationAgent.SetPageScaleFactorRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetPageScaleFactorResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetPageScaleFactorRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetPageScaleFactorResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setPageScaleFactor = function(obj) {};
+
+/**
+ * @param {boolean} value
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setScriptExecutionDisabled = function(value) {};
+/** @typedef {!{value: boolean}} */
+Protocol.EmulationAgent.SetScriptExecutionDisabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetScriptExecutionDisabledResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetScriptExecutionDisabledRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetScriptExecutionDisabledResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setScriptExecutionDisabled = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @param {number=} opt_maxTouchPoints
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setTouchEmulationEnabled = function(enabled, opt_maxTouchPoints) {};
+/** @typedef {!{maxTouchPoints: (number|undefined), enabled: boolean}} */
+Protocol.EmulationAgent.SetTouchEmulationEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetTouchEmulationEnabledResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetTouchEmulationEnabledRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetTouchEmulationEnabledResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setTouchEmulationEnabled = function(obj) {};
+
+/**
+ * @param {Protocol.Emulation.VirtualTimePolicy} policy
+ * @param {number=} opt_budget
+ * @param {number=} opt_maxVirtualTimeTaskStarvationCount
+ * @param {boolean=} opt_waitForNavigation
+ * @param {Protocol.Network.TimeSinceEpoch=} opt_initialVirtualTime
+ * @return {!Promise<?number>}
+ */
+Protocol.EmulationAgent.prototype.setVirtualTimePolicy = function(policy, opt_budget, opt_maxVirtualTimeTaskStarvationCount, opt_waitForNavigation, opt_initialVirtualTime) {};
+/** @typedef {!{policy: Protocol.Emulation.VirtualTimePolicy, initialVirtualTime: (Protocol.Network.TimeSinceEpoch|undefined), maxVirtualTimeTaskStarvationCount: (number|undefined), waitForNavigation: (boolean|undefined), budget: (number|undefined)}} */
+Protocol.EmulationAgent.SetVirtualTimePolicyRequest;
+/** @typedef {!{virtualTimeTicksBase: number}} */
+Protocol.EmulationAgent.SetVirtualTimePolicyResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetVirtualTimePolicyRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetVirtualTimePolicyResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setVirtualTimePolicy = function(obj) {};
+
+/**
+ * @param {string} timezoneId
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setTimezoneOverride = function(timezoneId) {};
+/** @typedef {!{timezoneId: string}} */
+Protocol.EmulationAgent.SetTimezoneOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetTimezoneOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetTimezoneOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetTimezoneOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setTimezoneOverride = function(obj) {};
+
+/**
+ * @param {number} width
+ * @param {number} height
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setVisibleSize = function(width, height) {};
+/** @typedef {!{width: number, height: number}} */
+Protocol.EmulationAgent.SetVisibleSizeRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetVisibleSizeResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetVisibleSizeRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetVisibleSizeResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setVisibleSize = function(obj) {};
+
+/**
+ * @param {string} userAgent
+ * @param {string=} opt_acceptLanguage
+ * @param {string=} opt_platform
+ * @return {!Promise<undefined>}
+ */
+Protocol.EmulationAgent.prototype.setUserAgentOverride = function(userAgent, opt_acceptLanguage, opt_platform) {};
+/** @typedef {!{acceptLanguage: (string|undefined), userAgent: string, platform: (string|undefined)}} */
+Protocol.EmulationAgent.SetUserAgentOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.EmulationAgent.SetUserAgentOverrideResponse;
+/**
+ * @param {!Protocol.EmulationAgent.SetUserAgentOverrideRequest} obj
+ * @return {!Promise<!Protocol.EmulationAgent.SetUserAgentOverrideResponse>} */
+Protocol.EmulationAgent.prototype.invoke_setUserAgentOverride = function(obj) {};
+
+/** @enum {string} */
+Protocol.Emulation.ScreenOrientationType = {
+    PortraitPrimary: "portraitPrimary",
+    PortraitSecondary: "portraitSecondary",
+    LandscapePrimary: "landscapePrimary",
+    LandscapeSecondary: "landscapeSecondary"
+};
+
+/** @typedef {!{type:(Protocol.Emulation.ScreenOrientationType), angle:(number)}} */
+Protocol.Emulation.ScreenOrientation;
+
+/** @typedef {!{name:(string), value:(string)}} */
+Protocol.Emulation.MediaFeature;
+
+/** @enum {string} */
+Protocol.Emulation.VirtualTimePolicy = {
+    Advance: "advance",
+    Pause: "pause",
+    PauseIfNetworkFetchesPending: "pauseIfNetworkFetchesPending"
+};
+/** @interface */
+Protocol.EmulationDispatcher = function() {};
+Protocol.EmulationDispatcher.prototype.virtualTimeBudgetExpired = function() {};
+Protocol.HeadlessExperimental = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.HeadlessExperimentalAgent = function(){};
+
+/**
+ * @param {number=} opt_frameTimeTicks
+ * @param {number=} opt_interval
+ * @param {boolean=} opt_noDisplayUpdates
+ * @param {Protocol.HeadlessExperimental.ScreenshotParams=} opt_screenshot
+ * @return {!Promise<?boolean>}
+ */
+Protocol.HeadlessExperimentalAgent.prototype.beginFrame = function(opt_frameTimeTicks, opt_interval, opt_noDisplayUpdates, opt_screenshot) {};
+/** @typedef {!{interval: (number|undefined), frameTimeTicks: (number|undefined), noDisplayUpdates: (boolean|undefined), screenshot: (Protocol.HeadlessExperimental.ScreenshotParams|undefined)}} */
+Protocol.HeadlessExperimentalAgent.BeginFrameRequest;
+/** @typedef {!{hasDamage: boolean, screenshotData: string}} */
+Protocol.HeadlessExperimentalAgent.BeginFrameResponse;
+/**
+ * @param {!Protocol.HeadlessExperimentalAgent.BeginFrameRequest} obj
+ * @return {!Promise<!Protocol.HeadlessExperimentalAgent.BeginFrameResponse>} */
+Protocol.HeadlessExperimentalAgent.prototype.invoke_beginFrame = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeadlessExperimentalAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeadlessExperimentalAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeadlessExperimentalAgent.DisableResponse;
+/**
+ * @param {!Protocol.HeadlessExperimentalAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.HeadlessExperimentalAgent.DisableResponse>} */
+Protocol.HeadlessExperimentalAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeadlessExperimentalAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeadlessExperimentalAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeadlessExperimentalAgent.EnableResponse;
+/**
+ * @param {!Protocol.HeadlessExperimentalAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.HeadlessExperimentalAgent.EnableResponse>} */
+Protocol.HeadlessExperimentalAgent.prototype.invoke_enable = function(obj) {};
+
+/** @enum {string} */
+Protocol.HeadlessExperimental.ScreenshotParamsFormat = {
+    Jpeg: "jpeg",
+    Png: "png"
+};
+
+/** @typedef {!{format:(Protocol.HeadlessExperimental.ScreenshotParamsFormat|undefined), quality:(number|undefined)}} */
+Protocol.HeadlessExperimental.ScreenshotParams;
+/** @interface */
+Protocol.HeadlessExperimentalDispatcher = function() {};
+/**
+ * @param {boolean} needsBeginFrames
+ */
+Protocol.HeadlessExperimentalDispatcher.prototype.needsBeginFramesChanged = function(needsBeginFrames) {};
+Protocol.IO = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.IOAgent = function(){};
+
+/**
+ * @param {Protocol.IO.StreamHandle} handle
+ * @return {!Promise<undefined>}
+ */
+Protocol.IOAgent.prototype.close = function(handle) {};
+/** @typedef {!{handle: Protocol.IO.StreamHandle}} */
+Protocol.IOAgent.CloseRequest;
+/** @typedef {Object|undefined} */
+Protocol.IOAgent.CloseResponse;
+/**
+ * @param {!Protocol.IOAgent.CloseRequest} obj
+ * @return {!Promise<!Protocol.IOAgent.CloseResponse>} */
+Protocol.IOAgent.prototype.invoke_close = function(obj) {};
+
+/**
+ * @param {Protocol.IO.StreamHandle} handle
+ * @param {number=} opt_offset
+ * @param {number=} opt_size
+ * @return {!Promise<?boolean>}
+ */
+Protocol.IOAgent.prototype.read = function(handle, opt_offset, opt_size) {};
+/** @typedef {!{size: (number|undefined), handle: Protocol.IO.StreamHandle, offset: (number|undefined)}} */
+Protocol.IOAgent.ReadRequest;
+/** @typedef {!{data: string, base64Encoded: boolean, eof: boolean}} */
+Protocol.IOAgent.ReadResponse;
+/**
+ * @param {!Protocol.IOAgent.ReadRequest} obj
+ * @return {!Promise<!Protocol.IOAgent.ReadResponse>} */
+Protocol.IOAgent.prototype.invoke_read = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @return {!Promise<?string>}
+ */
+Protocol.IOAgent.prototype.resolveBlob = function(objectId) {};
+/** @typedef {!{objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.IOAgent.ResolveBlobRequest;
+/** @typedef {!{uuid: string}} */
+Protocol.IOAgent.ResolveBlobResponse;
+/**
+ * @param {!Protocol.IOAgent.ResolveBlobRequest} obj
+ * @return {!Promise<!Protocol.IOAgent.ResolveBlobResponse>} */
+Protocol.IOAgent.prototype.invoke_resolveBlob = function(obj) {};
+
+/** @typedef {string} */
+Protocol.IO.StreamHandle;
+/** @interface */
+Protocol.IODispatcher = function() {};
+Protocol.IndexedDB = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.IndexedDBAgent = function(){};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ * @return {!Promise<undefined>}
+ */
+Protocol.IndexedDBAgent.prototype.clearObjectStore = function(securityOrigin, databaseName, objectStoreName) {};
+/** @typedef {!{objectStoreName: string, databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.ClearObjectStoreRequest;
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.ClearObjectStoreResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.ClearObjectStoreRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.ClearObjectStoreResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_clearObjectStore = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @return {!Promise<undefined>}
+ */
+Protocol.IndexedDBAgent.prototype.deleteDatabase = function(securityOrigin, databaseName) {};
+/** @typedef {!{databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.DeleteDatabaseRequest;
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.DeleteDatabaseResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.DeleteDatabaseRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.DeleteDatabaseResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_deleteDatabase = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ * @param {Protocol.IndexedDB.KeyRange} keyRange
+ * @return {!Promise<undefined>}
+ */
+Protocol.IndexedDBAgent.prototype.deleteObjectStoreEntries = function(securityOrigin, databaseName, objectStoreName, keyRange) {};
+/** @typedef {!{objectStoreName: string, keyRange: Protocol.IndexedDB.KeyRange, databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.DeleteObjectStoreEntriesRequest;
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.DeleteObjectStoreEntriesResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.DeleteObjectStoreEntriesRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.DeleteObjectStoreEntriesResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_deleteObjectStoreEntries = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.IndexedDBAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.DisableResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.DisableResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.IndexedDBAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.IndexedDBAgent.EnableResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.EnableResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ * @param {string} indexName
+ * @param {number} skipCount
+ * @param {number} pageSize
+ * @param {Protocol.IndexedDB.KeyRange=} opt_keyRange
+ * @return {!Promise<?Array<Protocol.IndexedDB.DataEntry>>}
+ */
+Protocol.IndexedDBAgent.prototype.requestData = function(securityOrigin, databaseName, objectStoreName, indexName, skipCount, pageSize, opt_keyRange) {};
+/** @typedef {!{indexName: string, pageSize: number, objectStoreName: string, skipCount: number, keyRange: (Protocol.IndexedDB.KeyRange|undefined), databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.RequestDataRequest;
+/** @typedef {!{hasMore: boolean, objectStoreDataEntries: !Array<Protocol.IndexedDB.DataEntry>}} */
+Protocol.IndexedDBAgent.RequestDataResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.RequestDataRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.RequestDataResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_requestData = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ * @return {!Promise<?number>}
+ */
+Protocol.IndexedDBAgent.prototype.getMetadata = function(securityOrigin, databaseName, objectStoreName) {};
+/** @typedef {!{objectStoreName: string, databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.GetMetadataRequest;
+/** @typedef {!{entriesCount: number, keyGeneratorValue: number}} */
+Protocol.IndexedDBAgent.GetMetadataResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.GetMetadataRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.GetMetadataResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_getMetadata = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ * @return {!Promise<?Protocol.IndexedDB.DatabaseWithObjectStores>}
+ */
+Protocol.IndexedDBAgent.prototype.requestDatabase = function(securityOrigin, databaseName) {};
+/** @typedef {!{databaseName: string, securityOrigin: string}} */
+Protocol.IndexedDBAgent.RequestDatabaseRequest;
+/** @typedef {!{databaseWithObjectStores: Protocol.IndexedDB.DatabaseWithObjectStores}} */
+Protocol.IndexedDBAgent.RequestDatabaseResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.RequestDatabaseRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.RequestDatabaseResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_requestDatabase = function(obj) {};
+
+/**
+ * @param {string} securityOrigin
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.IndexedDBAgent.prototype.requestDatabaseNames = function(securityOrigin) {};
+/** @typedef {!{securityOrigin: string}} */
+Protocol.IndexedDBAgent.RequestDatabaseNamesRequest;
+/** @typedef {!{databaseNames: !Array<string>}} */
+Protocol.IndexedDBAgent.RequestDatabaseNamesResponse;
+/**
+ * @param {!Protocol.IndexedDBAgent.RequestDatabaseNamesRequest} obj
+ * @return {!Promise<!Protocol.IndexedDBAgent.RequestDatabaseNamesResponse>} */
+Protocol.IndexedDBAgent.prototype.invoke_requestDatabaseNames = function(obj) {};
+
+/** @typedef {!{name:(string), version:(number), objectStores:(!Array<Protocol.IndexedDB.ObjectStore>)}} */
+Protocol.IndexedDB.DatabaseWithObjectStores;
+
+/** @typedef {!{name:(string), keyPath:(Protocol.IndexedDB.KeyPath), autoIncrement:(boolean), indexes:(!Array<Protocol.IndexedDB.ObjectStoreIndex>)}} */
+Protocol.IndexedDB.ObjectStore;
+
+/** @typedef {!{name:(string), keyPath:(Protocol.IndexedDB.KeyPath), unique:(boolean), multiEntry:(boolean)}} */
+Protocol.IndexedDB.ObjectStoreIndex;
+
+/** @enum {string} */
+Protocol.IndexedDB.KeyType = {
+    Number: "number",
+    String: "string",
+    Date: "date",
+    Array: "array"
+};
+
+/** @typedef {!{type:(Protocol.IndexedDB.KeyType), number:(number|undefined), string:(string|undefined), date:(number|undefined), array:(!Array<Protocol.IndexedDB.Key>|undefined)}} */
+Protocol.IndexedDB.Key;
+
+/** @typedef {!{lower:(Protocol.IndexedDB.Key|undefined), upper:(Protocol.IndexedDB.Key|undefined), lowerOpen:(boolean), upperOpen:(boolean)}} */
+Protocol.IndexedDB.KeyRange;
+
+/** @typedef {!{key:(Protocol.Runtime.RemoteObject), primaryKey:(Protocol.Runtime.RemoteObject), value:(Protocol.Runtime.RemoteObject)}} */
+Protocol.IndexedDB.DataEntry;
+
+/** @enum {string} */
+Protocol.IndexedDB.KeyPathType = {
+    Null: "null",
+    String: "string",
+    Array: "array"
+};
+
+/** @typedef {!{type:(Protocol.IndexedDB.KeyPathType), string:(string|undefined), array:(!Array<string>|undefined)}} */
+Protocol.IndexedDB.KeyPath;
+/** @interface */
+Protocol.IndexedDBDispatcher = function() {};
+Protocol.Input = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.InputAgent = function(){};
+
+/**
+ * @param {string} type
+ * @param {number=} opt_modifiers
+ * @param {Protocol.Input.TimeSinceEpoch=} opt_timestamp
+ * @param {string=} opt_text
+ * @param {string=} opt_unmodifiedText
+ * @param {string=} opt_keyIdentifier
+ * @param {string=} opt_code
+ * @param {string=} opt_key
+ * @param {number=} opt_windowsVirtualKeyCode
+ * @param {number=} opt_nativeVirtualKeyCode
+ * @param {boolean=} opt_autoRepeat
+ * @param {boolean=} opt_isKeypad
+ * @param {boolean=} opt_isSystemKey
+ * @param {number=} opt_location
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.dispatchKeyEvent = function(type, opt_modifiers, opt_timestamp, opt_text, opt_unmodifiedText, opt_keyIdentifier, opt_code, opt_key, opt_windowsVirtualKeyCode, opt_nativeVirtualKeyCode, opt_autoRepeat, opt_isKeypad, opt_isSystemKey, opt_location) {};
+/** @typedef {!{code: (string|undefined), keyIdentifier: (string|undefined), modifiers: (number|undefined), timestamp: (Protocol.Input.TimeSinceEpoch|undefined), autoRepeat: (boolean|undefined), isSystemKey: (boolean|undefined), unmodifiedText: (string|undefined), location: (number|undefined), key: (string|undefined), text: (string|undefined), nativeVirtualKeyCode: (number|undefined), windowsVirtualKeyCode: (number|undefined), type: string, isKeypad: (boolean|undefined)}} */
+Protocol.InputAgent.DispatchKeyEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.DispatchKeyEventResponse;
+/**
+ * @param {!Protocol.InputAgent.DispatchKeyEventRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.DispatchKeyEventResponse>} */
+Protocol.InputAgent.prototype.invoke_dispatchKeyEvent = function(obj) {};
+
+/**
+ * @param {string} text
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.insertText = function(text) {};
+/** @typedef {!{text: string}} */
+Protocol.InputAgent.InsertTextRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.InsertTextResponse;
+/**
+ * @param {!Protocol.InputAgent.InsertTextRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.InsertTextResponse>} */
+Protocol.InputAgent.prototype.invoke_insertText = function(obj) {};
+
+/**
+ * @param {string} type
+ * @param {number} x
+ * @param {number} y
+ * @param {number=} opt_modifiers
+ * @param {Protocol.Input.TimeSinceEpoch=} opt_timestamp
+ * @param {string=} opt_button
+ * @param {number=} opt_buttons
+ * @param {number=} opt_clickCount
+ * @param {number=} opt_deltaX
+ * @param {number=} opt_deltaY
+ * @param {string=} opt_pointerType
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.dispatchMouseEvent = function(type, x, y, opt_modifiers, opt_timestamp, opt_button, opt_buttons, opt_clickCount, opt_deltaX, opt_deltaY, opt_pointerType) {};
+/** @typedef {!{modifiers: (number|undefined), clickCount: (number|undefined), deltaX: (number|undefined), timestamp: (Protocol.Input.TimeSinceEpoch|undefined), button: (string|undefined), buttons: (number|undefined), pointerType: (string|undefined), deltaY: (number|undefined), y: number, x: number, type: string}} */
+Protocol.InputAgent.DispatchMouseEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.DispatchMouseEventResponse;
+/**
+ * @param {!Protocol.InputAgent.DispatchMouseEventRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.DispatchMouseEventResponse>} */
+Protocol.InputAgent.prototype.invoke_dispatchMouseEvent = function(obj) {};
+
+/**
+ * @param {string} type
+ * @param {!Array<Protocol.Input.TouchPoint>} touchPoints
+ * @param {number=} opt_modifiers
+ * @param {Protocol.Input.TimeSinceEpoch=} opt_timestamp
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.dispatchTouchEvent = function(type, touchPoints, opt_modifiers, opt_timestamp) {};
+/** @typedef {!{timestamp: (Protocol.Input.TimeSinceEpoch|undefined), modifiers: (number|undefined), type: string, touchPoints: !Array<Protocol.Input.TouchPoint>}} */
+Protocol.InputAgent.DispatchTouchEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.DispatchTouchEventResponse;
+/**
+ * @param {!Protocol.InputAgent.DispatchTouchEventRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.DispatchTouchEventResponse>} */
+Protocol.InputAgent.prototype.invoke_dispatchTouchEvent = function(obj) {};
+
+/**
+ * @param {string} type
+ * @param {number} x
+ * @param {number} y
+ * @param {string} button
+ * @param {Protocol.Input.TimeSinceEpoch=} opt_timestamp
+ * @param {number=} opt_deltaX
+ * @param {number=} opt_deltaY
+ * @param {number=} opt_modifiers
+ * @param {number=} opt_clickCount
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.emulateTouchFromMouseEvent = function(type, x, y, button, opt_timestamp, opt_deltaX, opt_deltaY, opt_modifiers, opt_clickCount) {};
+/** @typedef {!{modifiers: (number|undefined), clickCount: (number|undefined), deltaX: (number|undefined), timestamp: (Protocol.Input.TimeSinceEpoch|undefined), button: string, deltaY: (number|undefined), y: number, x: number, type: string}} */
+Protocol.InputAgent.EmulateTouchFromMouseEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.EmulateTouchFromMouseEventResponse;
+/**
+ * @param {!Protocol.InputAgent.EmulateTouchFromMouseEventRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.EmulateTouchFromMouseEventResponse>} */
+Protocol.InputAgent.prototype.invoke_emulateTouchFromMouseEvent = function(obj) {};
+
+/**
+ * @param {boolean} ignore
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.setIgnoreInputEvents = function(ignore) {};
+/** @typedef {!{ignore: boolean}} */
+Protocol.InputAgent.SetIgnoreInputEventsRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.SetIgnoreInputEventsResponse;
+/**
+ * @param {!Protocol.InputAgent.SetIgnoreInputEventsRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.SetIgnoreInputEventsResponse>} */
+Protocol.InputAgent.prototype.invoke_setIgnoreInputEvents = function(obj) {};
+
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number} scaleFactor
+ * @param {number=} opt_relativeSpeed
+ * @param {Protocol.Input.GestureSourceType=} opt_gestureSourceType
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.synthesizePinchGesture = function(x, y, scaleFactor, opt_relativeSpeed, opt_gestureSourceType) {};
+/** @typedef {!{y: number, x: number, gestureSourceType: (Protocol.Input.GestureSourceType|undefined), relativeSpeed: (number|undefined), scaleFactor: number}} */
+Protocol.InputAgent.SynthesizePinchGestureRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.SynthesizePinchGestureResponse;
+/**
+ * @param {!Protocol.InputAgent.SynthesizePinchGestureRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.SynthesizePinchGestureResponse>} */
+Protocol.InputAgent.prototype.invoke_synthesizePinchGesture = function(obj) {};
+
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number=} opt_xDistance
+ * @param {number=} opt_yDistance
+ * @param {number=} opt_xOverscroll
+ * @param {number=} opt_yOverscroll
+ * @param {boolean=} opt_preventFling
+ * @param {number=} opt_speed
+ * @param {Protocol.Input.GestureSourceType=} opt_gestureSourceType
+ * @param {number=} opt_repeatCount
+ * @param {number=} opt_repeatDelayMs
+ * @param {string=} opt_interactionMarkerName
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.synthesizeScrollGesture = function(x, y, opt_xDistance, opt_yDistance, opt_xOverscroll, opt_yOverscroll, opt_preventFling, opt_speed, opt_gestureSourceType, opt_repeatCount, opt_repeatDelayMs, opt_interactionMarkerName) {};
+/** @typedef {!{xOverscroll: (number|undefined), yOverscroll: (number|undefined), preventFling: (boolean|undefined), yDistance: (number|undefined), interactionMarkerName: (string|undefined), xDistance: (number|undefined), repeatCount: (number|undefined), gestureSourceType: (Protocol.Input.GestureSourceType|undefined), repeatDelayMs: (number|undefined), y: number, x: number, speed: (number|undefined)}} */
+Protocol.InputAgent.SynthesizeScrollGestureRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.SynthesizeScrollGestureResponse;
+/**
+ * @param {!Protocol.InputAgent.SynthesizeScrollGestureRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.SynthesizeScrollGestureResponse>} */
+Protocol.InputAgent.prototype.invoke_synthesizeScrollGesture = function(obj) {};
+
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number=} opt_duration
+ * @param {number=} opt_tapCount
+ * @param {Protocol.Input.GestureSourceType=} opt_gestureSourceType
+ * @return {!Promise<undefined>}
+ */
+Protocol.InputAgent.prototype.synthesizeTapGesture = function(x, y, opt_duration, opt_tapCount, opt_gestureSourceType) {};
+/** @typedef {!{y: number, x: number, duration: (number|undefined), gestureSourceType: (Protocol.Input.GestureSourceType|undefined), tapCount: (number|undefined)}} */
+Protocol.InputAgent.SynthesizeTapGestureRequest;
+/** @typedef {Object|undefined} */
+Protocol.InputAgent.SynthesizeTapGestureResponse;
+/**
+ * @param {!Protocol.InputAgent.SynthesizeTapGestureRequest} obj
+ * @return {!Promise<!Protocol.InputAgent.SynthesizeTapGestureResponse>} */
+Protocol.InputAgent.prototype.invoke_synthesizeTapGesture = function(obj) {};
+
+/** @typedef {!{x:(number), y:(number), radiusX:(number|undefined), radiusY:(number|undefined), rotationAngle:(number|undefined), force:(number|undefined), id:(number|undefined)}} */
+Protocol.Input.TouchPoint;
+
+/** @enum {string} */
+Protocol.Input.GestureSourceType = {
+    Default: "default",
+    Touch: "touch",
+    Mouse: "mouse"
+};
+
+/** @typedef {number} */
+Protocol.Input.TimeSinceEpoch;
+/** @interface */
+Protocol.InputDispatcher = function() {};
+Protocol.Inspector = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.InspectorAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.InspectorAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.InspectorAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.InspectorAgent.DisableResponse;
+/**
+ * @param {!Protocol.InspectorAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.InspectorAgent.DisableResponse>} */
+Protocol.InspectorAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.InspectorAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.InspectorAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.InspectorAgent.EnableResponse;
+/**
+ * @param {!Protocol.InspectorAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.InspectorAgent.EnableResponse>} */
+Protocol.InspectorAgent.prototype.invoke_enable = function(obj) {};
+/** @interface */
+Protocol.InspectorDispatcher = function() {};
+/**
+ * @param {string} reason
+ */
+Protocol.InspectorDispatcher.prototype.detached = function(reason) {};
+Protocol.InspectorDispatcher.prototype.targetCrashed = function() {};
+Protocol.InspectorDispatcher.prototype.targetReloadedAfterCrash = function() {};
+Protocol.LayerTree = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.LayerTreeAgent = function(){};
+
+/**
+ * @param {Protocol.LayerTree.LayerId} layerId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.LayerTreeAgent.prototype.compositingReasons = function(layerId) {};
+/** @typedef {!{layerId: Protocol.LayerTree.LayerId}} */
+Protocol.LayerTreeAgent.CompositingReasonsRequest;
+/** @typedef {!{compositingReasons: !Array<string>}} */
+Protocol.LayerTreeAgent.CompositingReasonsResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.CompositingReasonsRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.CompositingReasonsResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_compositingReasons = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LayerTreeAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LayerTreeAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.LayerTreeAgent.DisableResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.DisableResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LayerTreeAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LayerTreeAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.LayerTreeAgent.EnableResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.EnableResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.LayerTree.PictureTile>} tiles
+ * @return {!Promise<?Protocol.LayerTree.SnapshotId>}
+ */
+Protocol.LayerTreeAgent.prototype.loadSnapshot = function(tiles) {};
+/** @typedef {!{tiles: !Array<Protocol.LayerTree.PictureTile>}} */
+Protocol.LayerTreeAgent.LoadSnapshotRequest;
+/** @typedef {!{snapshotId: Protocol.LayerTree.SnapshotId}} */
+Protocol.LayerTreeAgent.LoadSnapshotResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.LoadSnapshotRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.LoadSnapshotResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_loadSnapshot = function(obj) {};
+
+/**
+ * @param {Protocol.LayerTree.LayerId} layerId
+ * @return {!Promise<?Protocol.LayerTree.SnapshotId>}
+ */
+Protocol.LayerTreeAgent.prototype.makeSnapshot = function(layerId) {};
+/** @typedef {!{layerId: Protocol.LayerTree.LayerId}} */
+Protocol.LayerTreeAgent.MakeSnapshotRequest;
+/** @typedef {!{snapshotId: Protocol.LayerTree.SnapshotId}} */
+Protocol.LayerTreeAgent.MakeSnapshotResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.MakeSnapshotRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.MakeSnapshotResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_makeSnapshot = function(obj) {};
+
+/**
+ * @param {Protocol.LayerTree.SnapshotId} snapshotId
+ * @param {number=} opt_minRepeatCount
+ * @param {number=} opt_minDuration
+ * @param {Protocol.DOM.Rect=} opt_clipRect
+ * @return {!Promise<?Array<Protocol.LayerTree.PaintProfile>>}
+ */
+Protocol.LayerTreeAgent.prototype.profileSnapshot = function(snapshotId, opt_minRepeatCount, opt_minDuration, opt_clipRect) {};
+/** @typedef {!{minRepeatCount: (number|undefined), snapshotId: Protocol.LayerTree.SnapshotId, clipRect: (Protocol.DOM.Rect|undefined), minDuration: (number|undefined)}} */
+Protocol.LayerTreeAgent.ProfileSnapshotRequest;
+/** @typedef {!{timings: !Array<Protocol.LayerTree.PaintProfile>}} */
+Protocol.LayerTreeAgent.ProfileSnapshotResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.ProfileSnapshotRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.ProfileSnapshotResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_profileSnapshot = function(obj) {};
+
+/**
+ * @param {Protocol.LayerTree.SnapshotId} snapshotId
+ * @return {!Promise<undefined>}
+ */
+Protocol.LayerTreeAgent.prototype.releaseSnapshot = function(snapshotId) {};
+/** @typedef {!{snapshotId: Protocol.LayerTree.SnapshotId}} */
+Protocol.LayerTreeAgent.ReleaseSnapshotRequest;
+/** @typedef {Object|undefined} */
+Protocol.LayerTreeAgent.ReleaseSnapshotResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.ReleaseSnapshotRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.ReleaseSnapshotResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_releaseSnapshot = function(obj) {};
+
+/**
+ * @param {Protocol.LayerTree.SnapshotId} snapshotId
+ * @param {number=} opt_fromStep
+ * @param {number=} opt_toStep
+ * @param {number=} opt_scale
+ * @return {!Promise<?string>}
+ */
+Protocol.LayerTreeAgent.prototype.replaySnapshot = function(snapshotId, opt_fromStep, opt_toStep, opt_scale) {};
+/** @typedef {!{snapshotId: Protocol.LayerTree.SnapshotId, scale: (number|undefined), fromStep: (number|undefined), toStep: (number|undefined)}} */
+Protocol.LayerTreeAgent.ReplaySnapshotRequest;
+/** @typedef {!{dataURL: string}} */
+Protocol.LayerTreeAgent.ReplaySnapshotResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.ReplaySnapshotRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.ReplaySnapshotResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_replaySnapshot = function(obj) {};
+
+/**
+ * @param {Protocol.LayerTree.SnapshotId} snapshotId
+ * @return {!Promise<?Array<!Object>>}
+ */
+Protocol.LayerTreeAgent.prototype.snapshotCommandLog = function(snapshotId) {};
+/** @typedef {!{snapshotId: Protocol.LayerTree.SnapshotId}} */
+Protocol.LayerTreeAgent.SnapshotCommandLogRequest;
+/** @typedef {!{commandLog: !Array<!Object>}} */
+Protocol.LayerTreeAgent.SnapshotCommandLogResponse;
+/**
+ * @param {!Protocol.LayerTreeAgent.SnapshotCommandLogRequest} obj
+ * @return {!Promise<!Protocol.LayerTreeAgent.SnapshotCommandLogResponse>} */
+Protocol.LayerTreeAgent.prototype.invoke_snapshotCommandLog = function(obj) {};
+
+/** @typedef {string} */
+Protocol.LayerTree.LayerId;
+
+/** @typedef {string} */
+Protocol.LayerTree.SnapshotId;
+
+/** @enum {string} */
+Protocol.LayerTree.ScrollRectType = {
+    RepaintsOnScroll: "RepaintsOnScroll",
+    TouchEventHandler: "TouchEventHandler",
+    WheelEventHandler: "WheelEventHandler"
+};
+
+/** @typedef {!{rect:(Protocol.DOM.Rect), type:(Protocol.LayerTree.ScrollRectType)}} */
+Protocol.LayerTree.ScrollRect;
+
+/** @typedef {!{stickyBoxRect:(Protocol.DOM.Rect), containingBlockRect:(Protocol.DOM.Rect), nearestLayerShiftingStickyBox:(Protocol.LayerTree.LayerId|undefined), nearestLayerShiftingContainingBlock:(Protocol.LayerTree.LayerId|undefined)}} */
+Protocol.LayerTree.StickyPositionConstraint;
+
+/** @typedef {!{x:(number), y:(number), picture:(string)}} */
+Protocol.LayerTree.PictureTile;
+
+/** @typedef {!{layerId:(Protocol.LayerTree.LayerId), parentLayerId:(Protocol.LayerTree.LayerId|undefined), backendNodeId:(Protocol.DOM.BackendNodeId|undefined), offsetX:(number), offsetY:(number), width:(number), height:(number), transform:(!Array<number>|undefined), anchorX:(number|undefined), anchorY:(number|undefined), anchorZ:(number|undefined), paintCount:(number), drawsContent:(boolean), invisible:(boolean|undefined), scrollRects:(!Array<Protocol.LayerTree.ScrollRect>|undefined), stickyPositionConstraint:(Protocol.LayerTree.StickyPositionConstraint|undefined)}} */
+Protocol.LayerTree.Layer;
+
+/** @typedef {!Array<!number>} */
+Protocol.LayerTree.PaintProfile;
+/** @interface */
+Protocol.LayerTreeDispatcher = function() {};
+/**
+ * @param {Protocol.LayerTree.LayerId} layerId
+ * @param {Protocol.DOM.Rect} clip
+ */
+Protocol.LayerTreeDispatcher.prototype.layerPainted = function(layerId, clip) {};
+/**
+ * @param {!Array<Protocol.LayerTree.Layer>=} opt_layers
+ */
+Protocol.LayerTreeDispatcher.prototype.layerTreeDidChange = function(opt_layers) {};
+Protocol.Log = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.LogAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LogAgent.prototype.clear = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.ClearRequest;
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.ClearResponse;
+/**
+ * @param {!Protocol.LogAgent.ClearRequest} obj
+ * @return {!Promise<!Protocol.LogAgent.ClearResponse>} */
+Protocol.LogAgent.prototype.invoke_clear = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LogAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.DisableResponse;
+/**
+ * @param {!Protocol.LogAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.LogAgent.DisableResponse>} */
+Protocol.LogAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LogAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.EnableResponse;
+/**
+ * @param {!Protocol.LogAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.LogAgent.EnableResponse>} */
+Protocol.LogAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.Log.ViolationSetting>} config
+ * @return {!Promise<undefined>}
+ */
+Protocol.LogAgent.prototype.startViolationsReport = function(config) {};
+/** @typedef {!{config: !Array<Protocol.Log.ViolationSetting>}} */
+Protocol.LogAgent.StartViolationsReportRequest;
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.StartViolationsReportResponse;
+/**
+ * @param {!Protocol.LogAgent.StartViolationsReportRequest} obj
+ * @return {!Promise<!Protocol.LogAgent.StartViolationsReportResponse>} */
+Protocol.LogAgent.prototype.invoke_startViolationsReport = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.LogAgent.prototype.stopViolationsReport = function() {};
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.StopViolationsReportRequest;
+/** @typedef {Object|undefined} */
+Protocol.LogAgent.StopViolationsReportResponse;
+/**
+ * @param {!Protocol.LogAgent.StopViolationsReportRequest} obj
+ * @return {!Promise<!Protocol.LogAgent.StopViolationsReportResponse>} */
+Protocol.LogAgent.prototype.invoke_stopViolationsReport = function(obj) {};
+
+/** @enum {string} */
+Protocol.Log.LogEntrySource = {
+    XML: "xml",
+    Javascript: "javascript",
+    Network: "network",
+    Storage: "storage",
+    Appcache: "appcache",
+    Rendering: "rendering",
+    Security: "security",
+    Deprecation: "deprecation",
+    Worker: "worker",
+    Violation: "violation",
+    Intervention: "intervention",
+    Recommendation: "recommendation",
+    Other: "other"
+};
+
+/** @enum {string} */
+Protocol.Log.LogEntryLevel = {
+    Verbose: "verbose",
+    Info: "info",
+    Warning: "warning",
+    Error: "error"
+};
+
+/** @typedef {!{source:(Protocol.Log.LogEntrySource), level:(Protocol.Log.LogEntryLevel), text:(string), timestamp:(Protocol.Runtime.Timestamp), url:(string|undefined), lineNumber:(number|undefined), stackTrace:(Protocol.Runtime.StackTrace|undefined), networkRequestId:(Protocol.Network.RequestId|undefined), workerId:(string|undefined), args:(!Array<Protocol.Runtime.RemoteObject>|undefined)}} */
+Protocol.Log.LogEntry;
+
+/** @enum {string} */
+Protocol.Log.ViolationSettingName = {
+    LongTask: "longTask",
+    LongLayout: "longLayout",
+    BlockedEvent: "blockedEvent",
+    BlockedParser: "blockedParser",
+    DiscouragedAPIUse: "discouragedAPIUse",
+    Handler: "handler",
+    RecurringHandler: "recurringHandler"
+};
+
+/** @typedef {!{name:(Protocol.Log.ViolationSettingName), threshold:(number)}} */
+Protocol.Log.ViolationSetting;
+/** @interface */
+Protocol.LogDispatcher = function() {};
+/**
+ * @param {Protocol.Log.LogEntry} entry
+ */
+Protocol.LogDispatcher.prototype.entryAdded = function(entry) {};
+Protocol.Memory = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.MemoryAgent = function(){};
+
+/**
+ * @return {!Promise<?number>}
+ */
+Protocol.MemoryAgent.prototype.getDOMCounters = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.GetDOMCountersRequest;
+/** @typedef {!{nodes: number, documents: number, jsEventListeners: number}} */
+Protocol.MemoryAgent.GetDOMCountersResponse;
+/**
+ * @param {!Protocol.MemoryAgent.GetDOMCountersRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.GetDOMCountersResponse>} */
+Protocol.MemoryAgent.prototype.invoke_getDOMCounters = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.prepareForLeakDetection = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.PrepareForLeakDetectionRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.PrepareForLeakDetectionResponse;
+/**
+ * @param {!Protocol.MemoryAgent.PrepareForLeakDetectionRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.PrepareForLeakDetectionResponse>} */
+Protocol.MemoryAgent.prototype.invoke_prepareForLeakDetection = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.forciblyPurgeJavaScriptMemory = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.ForciblyPurgeJavaScriptMemoryRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.ForciblyPurgeJavaScriptMemoryResponse;
+/**
+ * @param {!Protocol.MemoryAgent.ForciblyPurgeJavaScriptMemoryRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.ForciblyPurgeJavaScriptMemoryResponse>} */
+Protocol.MemoryAgent.prototype.invoke_forciblyPurgeJavaScriptMemory = function(obj) {};
+
+/**
+ * @param {boolean} suppressed
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.setPressureNotificationsSuppressed = function(suppressed) {};
+/** @typedef {!{suppressed: boolean}} */
+Protocol.MemoryAgent.SetPressureNotificationsSuppressedRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.SetPressureNotificationsSuppressedResponse;
+/**
+ * @param {!Protocol.MemoryAgent.SetPressureNotificationsSuppressedRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.SetPressureNotificationsSuppressedResponse>} */
+Protocol.MemoryAgent.prototype.invoke_setPressureNotificationsSuppressed = function(obj) {};
+
+/**
+ * @param {Protocol.Memory.PressureLevel} level
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.simulatePressureNotification = function(level) {};
+/** @typedef {!{level: Protocol.Memory.PressureLevel}} */
+Protocol.MemoryAgent.SimulatePressureNotificationRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.SimulatePressureNotificationResponse;
+/**
+ * @param {!Protocol.MemoryAgent.SimulatePressureNotificationRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.SimulatePressureNotificationResponse>} */
+Protocol.MemoryAgent.prototype.invoke_simulatePressureNotification = function(obj) {};
+
+/**
+ * @param {number=} opt_samplingInterval
+ * @param {boolean=} opt_suppressRandomness
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.startSampling = function(opt_samplingInterval, opt_suppressRandomness) {};
+/** @typedef {!{samplingInterval: (number|undefined), suppressRandomness: (boolean|undefined)}} */
+Protocol.MemoryAgent.StartSamplingRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.StartSamplingResponse;
+/**
+ * @param {!Protocol.MemoryAgent.StartSamplingRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.StartSamplingResponse>} */
+Protocol.MemoryAgent.prototype.invoke_startSampling = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.MemoryAgent.prototype.stopSampling = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.StopSamplingRequest;
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.StopSamplingResponse;
+/**
+ * @param {!Protocol.MemoryAgent.StopSamplingRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.StopSamplingResponse>} */
+Protocol.MemoryAgent.prototype.invoke_stopSampling = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Memory.SamplingProfile>}
+ */
+Protocol.MemoryAgent.prototype.getAllTimeSamplingProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.GetAllTimeSamplingProfileRequest;
+/** @typedef {!{profile: Protocol.Memory.SamplingProfile}} */
+Protocol.MemoryAgent.GetAllTimeSamplingProfileResponse;
+/**
+ * @param {!Protocol.MemoryAgent.GetAllTimeSamplingProfileRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.GetAllTimeSamplingProfileResponse>} */
+Protocol.MemoryAgent.prototype.invoke_getAllTimeSamplingProfile = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Memory.SamplingProfile>}
+ */
+Protocol.MemoryAgent.prototype.getBrowserSamplingProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.GetBrowserSamplingProfileRequest;
+/** @typedef {!{profile: Protocol.Memory.SamplingProfile}} */
+Protocol.MemoryAgent.GetBrowserSamplingProfileResponse;
+/**
+ * @param {!Protocol.MemoryAgent.GetBrowserSamplingProfileRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.GetBrowserSamplingProfileResponse>} */
+Protocol.MemoryAgent.prototype.invoke_getBrowserSamplingProfile = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Memory.SamplingProfile>}
+ */
+Protocol.MemoryAgent.prototype.getSamplingProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MemoryAgent.GetSamplingProfileRequest;
+/** @typedef {!{profile: Protocol.Memory.SamplingProfile}} */
+Protocol.MemoryAgent.GetSamplingProfileResponse;
+/**
+ * @param {!Protocol.MemoryAgent.GetSamplingProfileRequest} obj
+ * @return {!Promise<!Protocol.MemoryAgent.GetSamplingProfileResponse>} */
+Protocol.MemoryAgent.prototype.invoke_getSamplingProfile = function(obj) {};
+
+/** @enum {string} */
+Protocol.Memory.PressureLevel = {
+    Moderate: "moderate",
+    Critical: "critical"
+};
+
+/** @typedef {!{size:(number), total:(number), stack:(!Array<string>)}} */
+Protocol.Memory.SamplingProfileNode;
+
+/** @typedef {!{samples:(!Array<Protocol.Memory.SamplingProfileNode>), modules:(!Array<Protocol.Memory.Module>)}} */
+Protocol.Memory.SamplingProfile;
+
+/** @typedef {!{name:(string), uuid:(string), baseAddress:(string), size:(number)}} */
+Protocol.Memory.Module;
+/** @interface */
+Protocol.MemoryDispatcher = function() {};
+Protocol.Network = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.NetworkAgent = function(){};
+
+/**
+ * @return {!Promise<?boolean>}
+ */
+Protocol.NetworkAgent.prototype.canClearBrowserCache = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.CanClearBrowserCacheRequest;
+/** @typedef {!{result: boolean}} */
+Protocol.NetworkAgent.CanClearBrowserCacheResponse;
+/**
+ * @param {!Protocol.NetworkAgent.CanClearBrowserCacheRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.CanClearBrowserCacheResponse>} */
+Protocol.NetworkAgent.prototype.invoke_canClearBrowserCache = function(obj) {};
+
+/**
+ * @return {!Promise<?boolean>}
+ */
+Protocol.NetworkAgent.prototype.canClearBrowserCookies = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.CanClearBrowserCookiesRequest;
+/** @typedef {!{result: boolean}} */
+Protocol.NetworkAgent.CanClearBrowserCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.CanClearBrowserCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.CanClearBrowserCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_canClearBrowserCookies = function(obj) {};
+
+/**
+ * @return {!Promise<?boolean>}
+ */
+Protocol.NetworkAgent.prototype.canEmulateNetworkConditions = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.CanEmulateNetworkConditionsRequest;
+/** @typedef {!{result: boolean}} */
+Protocol.NetworkAgent.CanEmulateNetworkConditionsResponse;
+/**
+ * @param {!Protocol.NetworkAgent.CanEmulateNetworkConditionsRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.CanEmulateNetworkConditionsResponse>} */
+Protocol.NetworkAgent.prototype.invoke_canEmulateNetworkConditions = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.clearBrowserCache = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ClearBrowserCacheRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ClearBrowserCacheResponse;
+/**
+ * @param {!Protocol.NetworkAgent.ClearBrowserCacheRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.ClearBrowserCacheResponse>} */
+Protocol.NetworkAgent.prototype.invoke_clearBrowserCache = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.clearBrowserCookies = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ClearBrowserCookiesRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ClearBrowserCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.ClearBrowserCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.ClearBrowserCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_clearBrowserCookies = function(obj) {};
+
+/**
+ * @param {Protocol.Network.InterceptionId} interceptionId
+ * @param {Protocol.Network.ErrorReason=} opt_errorReason
+ * @param {string=} opt_rawResponse
+ * @param {string=} opt_url
+ * @param {string=} opt_method
+ * @param {string=} opt_postData
+ * @param {Protocol.Network.Headers=} opt_headers
+ * @param {Protocol.Network.AuthChallengeResponse=} opt_authChallengeResponse
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.continueInterceptedRequest = function(interceptionId, opt_errorReason, opt_rawResponse, opt_url, opt_method, opt_postData, opt_headers, opt_authChallengeResponse) {};
+/** @typedef {!{postData: (string|undefined), headers: (Protocol.Network.Headers|undefined), url: (string|undefined), authChallengeResponse: (Protocol.Network.AuthChallengeResponse|undefined), errorReason: (Protocol.Network.ErrorReason|undefined), interceptionId: Protocol.Network.InterceptionId, rawResponse: (string|undefined), method: (string|undefined)}} */
+Protocol.NetworkAgent.ContinueInterceptedRequestRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ContinueInterceptedRequestResponse;
+/**
+ * @param {!Protocol.NetworkAgent.ContinueInterceptedRequestRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.ContinueInterceptedRequestResponse>} */
+Protocol.NetworkAgent.prototype.invoke_continueInterceptedRequest = function(obj) {};
+
+/**
+ * @param {string} name
+ * @param {string=} opt_url
+ * @param {string=} opt_domain
+ * @param {string=} opt_path
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.deleteCookies = function(name, opt_url, opt_domain, opt_path) {};
+/** @typedef {!{url: (string|undefined), path: (string|undefined), domain: (string|undefined), name: string}} */
+Protocol.NetworkAgent.DeleteCookiesRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.DeleteCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.DeleteCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.DeleteCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_deleteCookies = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.DisableResponse;
+/**
+ * @param {!Protocol.NetworkAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.DisableResponse>} */
+Protocol.NetworkAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {boolean} offline
+ * @param {number} latency
+ * @param {number} downloadThroughput
+ * @param {number} uploadThroughput
+ * @param {Protocol.Network.ConnectionType=} opt_connectionType
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.emulateNetworkConditions = function(offline, latency, downloadThroughput, uploadThroughput, opt_connectionType) {};
+/** @typedef {!{latency: number, offline: boolean, downloadThroughput: number, connectionType: (Protocol.Network.ConnectionType|undefined), uploadThroughput: number}} */
+Protocol.NetworkAgent.EmulateNetworkConditionsRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.EmulateNetworkConditionsResponse;
+/**
+ * @param {!Protocol.NetworkAgent.EmulateNetworkConditionsRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.EmulateNetworkConditionsResponse>} */
+Protocol.NetworkAgent.prototype.invoke_emulateNetworkConditions = function(obj) {};
+
+/**
+ * @param {number=} opt_maxTotalBufferSize
+ * @param {number=} opt_maxResourceBufferSize
+ * @param {number=} opt_maxPostDataSize
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.enable = function(opt_maxTotalBufferSize, opt_maxResourceBufferSize, opt_maxPostDataSize) {};
+/** @typedef {!{maxTotalBufferSize: (number|undefined), maxPostDataSize: (number|undefined), maxResourceBufferSize: (number|undefined)}} */
+Protocol.NetworkAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.EnableResponse;
+/**
+ * @param {!Protocol.NetworkAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.EnableResponse>} */
+Protocol.NetworkAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Network.Cookie>>}
+ */
+Protocol.NetworkAgent.prototype.getAllCookies = function() {};
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.GetAllCookiesRequest;
+/** @typedef {!{cookies: !Array<Protocol.Network.Cookie>}} */
+Protocol.NetworkAgent.GetAllCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetAllCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetAllCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getAllCookies = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.NetworkAgent.prototype.getCertificate = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.NetworkAgent.GetCertificateRequest;
+/** @typedef {!{tableNames: !Array<string>}} */
+Protocol.NetworkAgent.GetCertificateResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetCertificateRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetCertificateResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getCertificate = function(obj) {};
+
+/**
+ * @param {!Array<string>=} opt_urls
+ * @return {!Promise<?Array<Protocol.Network.Cookie>>}
+ */
+Protocol.NetworkAgent.prototype.getCookies = function(opt_urls) {};
+/** @typedef {!{urls: (!Array<string>|undefined)}} */
+Protocol.NetworkAgent.GetCookiesRequest;
+/** @typedef {!{cookies: !Array<Protocol.Network.Cookie>}} */
+Protocol.NetworkAgent.GetCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getCookies = function(obj) {};
+
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @return {!Promise<?string>}
+ */
+Protocol.NetworkAgent.prototype.getResponseBody = function(requestId) {};
+/** @typedef {!{requestId: Protocol.Network.RequestId}} */
+Protocol.NetworkAgent.GetResponseBodyRequest;
+/** @typedef {!{body: string, base64Encoded: boolean}} */
+Protocol.NetworkAgent.GetResponseBodyResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetResponseBodyRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetResponseBodyResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getResponseBody = function(obj) {};
+
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @return {!Promise<?string>}
+ */
+Protocol.NetworkAgent.prototype.getRequestPostData = function(requestId) {};
+/** @typedef {!{requestId: Protocol.Network.RequestId}} */
+Protocol.NetworkAgent.GetRequestPostDataRequest;
+/** @typedef {!{postData: string}} */
+Protocol.NetworkAgent.GetRequestPostDataResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetRequestPostDataRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetRequestPostDataResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getRequestPostData = function(obj) {};
+
+/**
+ * @param {Protocol.Network.InterceptionId} interceptionId
+ * @return {!Promise<?string>}
+ */
+Protocol.NetworkAgent.prototype.getResponseBodyForInterception = function(interceptionId) {};
+/** @typedef {!{interceptionId: Protocol.Network.InterceptionId}} */
+Protocol.NetworkAgent.GetResponseBodyForInterceptionRequest;
+/** @typedef {!{body: string, base64Encoded: boolean}} */
+Protocol.NetworkAgent.GetResponseBodyForInterceptionResponse;
+/**
+ * @param {!Protocol.NetworkAgent.GetResponseBodyForInterceptionRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.GetResponseBodyForInterceptionResponse>} */
+Protocol.NetworkAgent.prototype.invoke_getResponseBodyForInterception = function(obj) {};
+
+/**
+ * @param {Protocol.Network.InterceptionId} interceptionId
+ * @return {!Promise<?Protocol.IO.StreamHandle>}
+ */
+Protocol.NetworkAgent.prototype.takeResponseBodyForInterceptionAsStream = function(interceptionId) {};
+/** @typedef {!{interceptionId: Protocol.Network.InterceptionId}} */
+Protocol.NetworkAgent.TakeResponseBodyForInterceptionAsStreamRequest;
+/** @typedef {!{stream: Protocol.IO.StreamHandle}} */
+Protocol.NetworkAgent.TakeResponseBodyForInterceptionAsStreamResponse;
+/**
+ * @param {!Protocol.NetworkAgent.TakeResponseBodyForInterceptionAsStreamRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.TakeResponseBodyForInterceptionAsStreamResponse>} */
+Protocol.NetworkAgent.prototype.invoke_takeResponseBodyForInterceptionAsStream = function(obj) {};
+
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.replayXHR = function(requestId) {};
+/** @typedef {!{requestId: Protocol.Network.RequestId}} */
+Protocol.NetworkAgent.ReplayXHRRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.ReplayXHRResponse;
+/**
+ * @param {!Protocol.NetworkAgent.ReplayXHRRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.ReplayXHRResponse>} */
+Protocol.NetworkAgent.prototype.invoke_replayXHR = function(obj) {};
+
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {string} query
+ * @param {boolean=} opt_caseSensitive
+ * @param {boolean=} opt_isRegex
+ * @return {!Promise<?Array<Protocol.Debugger.SearchMatch>>}
+ */
+Protocol.NetworkAgent.prototype.searchInResponseBody = function(requestId, query, opt_caseSensitive, opt_isRegex) {};
+/** @typedef {!{query: string, isRegex: (boolean|undefined), requestId: Protocol.Network.RequestId, caseSensitive: (boolean|undefined)}} */
+Protocol.NetworkAgent.SearchInResponseBodyRequest;
+/** @typedef {!{result: !Array<Protocol.Debugger.SearchMatch>}} */
+Protocol.NetworkAgent.SearchInResponseBodyResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SearchInResponseBodyRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SearchInResponseBodyResponse>} */
+Protocol.NetworkAgent.prototype.invoke_searchInResponseBody = function(obj) {};
+
+/**
+ * @param {!Array<string>} urls
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setBlockedURLs = function(urls) {};
+/** @typedef {!{urls: !Array<string>}} */
+Protocol.NetworkAgent.SetBlockedURLsRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetBlockedURLsResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetBlockedURLsRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetBlockedURLsResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setBlockedURLs = function(obj) {};
+
+/**
+ * @param {boolean} bypass
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setBypassServiceWorker = function(bypass) {};
+/** @typedef {!{bypass: boolean}} */
+Protocol.NetworkAgent.SetBypassServiceWorkerRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetBypassServiceWorkerResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetBypassServiceWorkerRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetBypassServiceWorkerResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setBypassServiceWorker = function(obj) {};
+
+/**
+ * @param {boolean} cacheDisabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setCacheDisabled = function(cacheDisabled) {};
+/** @typedef {!{cacheDisabled: boolean}} */
+Protocol.NetworkAgent.SetCacheDisabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetCacheDisabledResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetCacheDisabledRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetCacheDisabledResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setCacheDisabled = function(obj) {};
+
+/**
+ * @param {string} name
+ * @param {string} value
+ * @param {string=} opt_url
+ * @param {string=} opt_domain
+ * @param {string=} opt_path
+ * @param {boolean=} opt_secure
+ * @param {boolean=} opt_httpOnly
+ * @param {Protocol.Network.CookieSameSite=} opt_sameSite
+ * @param {Protocol.Network.TimeSinceEpoch=} opt_expires
+ * @return {!Promise<?boolean>}
+ */
+Protocol.NetworkAgent.prototype.setCookie = function(name, value, opt_url, opt_domain, opt_path, opt_secure, opt_httpOnly, opt_sameSite, opt_expires) {};
+/** @typedef {!{domain: (string|undefined), name: string, url: (string|undefined), expires: (Protocol.Network.TimeSinceEpoch|undefined), value: string, sameSite: (Protocol.Network.CookieSameSite|undefined), path: (string|undefined), httpOnly: (boolean|undefined), secure: (boolean|undefined)}} */
+Protocol.NetworkAgent.SetCookieRequest;
+/** @typedef {!{success: boolean}} */
+Protocol.NetworkAgent.SetCookieResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetCookieRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetCookieResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setCookie = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.Network.CookieParam>} cookies
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setCookies = function(cookies) {};
+/** @typedef {!{cookies: !Array<Protocol.Network.CookieParam>}} */
+Protocol.NetworkAgent.SetCookiesRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetCookiesResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetCookiesRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetCookiesResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setCookies = function(obj) {};
+
+/**
+ * @param {number} maxTotalSize
+ * @param {number} maxResourceSize
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setDataSizeLimitsForTest = function(maxTotalSize, maxResourceSize) {};
+/** @typedef {!{maxResourceSize: number, maxTotalSize: number}} */
+Protocol.NetworkAgent.SetDataSizeLimitsForTestRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetDataSizeLimitsForTestResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetDataSizeLimitsForTestRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetDataSizeLimitsForTestResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setDataSizeLimitsForTest = function(obj) {};
+
+/**
+ * @param {Protocol.Network.Headers} headers
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setExtraHTTPHeaders = function(headers) {};
+/** @typedef {!{headers: Protocol.Network.Headers}} */
+Protocol.NetworkAgent.SetExtraHTTPHeadersRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetExtraHTTPHeadersResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetExtraHTTPHeadersRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetExtraHTTPHeadersResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setExtraHTTPHeaders = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.Network.RequestPattern>} patterns
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setRequestInterception = function(patterns) {};
+/** @typedef {!{patterns: !Array<Protocol.Network.RequestPattern>}} */
+Protocol.NetworkAgent.SetRequestInterceptionRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetRequestInterceptionResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetRequestInterceptionRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetRequestInterceptionResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setRequestInterception = function(obj) {};
+
+/**
+ * @param {string} userAgent
+ * @param {string=} opt_acceptLanguage
+ * @param {string=} opt_platform
+ * @return {!Promise<undefined>}
+ */
+Protocol.NetworkAgent.prototype.setUserAgentOverride = function(userAgent, opt_acceptLanguage, opt_platform) {};
+/** @typedef {!{acceptLanguage: (string|undefined), userAgent: string, platform: (string|undefined)}} */
+Protocol.NetworkAgent.SetUserAgentOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.NetworkAgent.SetUserAgentOverrideResponse;
+/**
+ * @param {!Protocol.NetworkAgent.SetUserAgentOverrideRequest} obj
+ * @return {!Promise<!Protocol.NetworkAgent.SetUserAgentOverrideResponse>} */
+Protocol.NetworkAgent.prototype.invoke_setUserAgentOverride = function(obj) {};
+
+/** @enum {string} */
+Protocol.Network.ResourceType = {
+    Document: "Document",
+    Stylesheet: "Stylesheet",
+    Image: "Image",
+    Media: "Media",
+    Font: "Font",
+    Script: "Script",
+    TextTrack: "TextTrack",
+    XHR: "XHR",
+    Fetch: "Fetch",
+    EventSource: "EventSource",
+    WebSocket: "WebSocket",
+    Manifest: "Manifest",
+    SignedExchange: "SignedExchange",
+    Ping: "Ping",
+    CSPViolationReport: "CSPViolationReport",
+    Other: "Other"
+};
+
+/** @typedef {string} */
+Protocol.Network.LoaderId;
+
+/** @typedef {string} */
+Protocol.Network.RequestId;
+
+/** @typedef {string} */
+Protocol.Network.InterceptionId;
+
+/** @enum {string} */
+Protocol.Network.ErrorReason = {
+    Failed: "Failed",
+    Aborted: "Aborted",
+    TimedOut: "TimedOut",
+    AccessDenied: "AccessDenied",
+    ConnectionClosed: "ConnectionClosed",
+    ConnectionReset: "ConnectionReset",
+    ConnectionRefused: "ConnectionRefused",
+    ConnectionAborted: "ConnectionAborted",
+    ConnectionFailed: "ConnectionFailed",
+    NameNotResolved: "NameNotResolved",
+    InternetDisconnected: "InternetDisconnected",
+    AddressUnreachable: "AddressUnreachable",
+    BlockedByClient: "BlockedByClient",
+    BlockedByResponse: "BlockedByResponse"
+};
+
+/** @typedef {number} */
+Protocol.Network.TimeSinceEpoch;
+
+/** @typedef {number} */
+Protocol.Network.MonotonicTime;
+
+/** @typedef {!Object} */
+Protocol.Network.Headers;
+
+/** @enum {string} */
+Protocol.Network.ConnectionType = {
+    None: "none",
+    Cellular2g: "cellular2g",
+    Cellular3g: "cellular3g",
+    Cellular4g: "cellular4g",
+    Bluetooth: "bluetooth",
+    Ethernet: "ethernet",
+    Wifi: "wifi",
+    Wimax: "wimax",
+    Other: "other"
+};
+
+/** @enum {string} */
+Protocol.Network.CookieSameSite = {
+    Strict: "Strict",
+    Lax: "Lax",
+    None: "None"
+};
+
+/** @typedef {!{requestTime:(number), proxyStart:(number), proxyEnd:(number), dnsStart:(number), dnsEnd:(number), connectStart:(number), connectEnd:(number), sslStart:(number), sslEnd:(number), workerStart:(number), workerReady:(number), sendStart:(number), sendEnd:(number), pushStart:(number), pushEnd:(number), receiveHeadersEnd:(number)}} */
+Protocol.Network.ResourceTiming;
+
+/** @enum {string} */
+Protocol.Network.ResourcePriority = {
+    VeryLow: "VeryLow",
+    Low: "Low",
+    Medium: "Medium",
+    High: "High",
+    VeryHigh: "VeryHigh"
+};
+
+/** @enum {string} */
+Protocol.Network.RequestReferrerPolicy = {
+    UnsafeUrl: "unsafe-url",
+    NoReferrerWhenDowngrade: "no-referrer-when-downgrade",
+    NoReferrer: "no-referrer",
+    Origin: "origin",
+    OriginWhenCrossOrigin: "origin-when-cross-origin",
+    SameOrigin: "same-origin",
+    StrictOrigin: "strict-origin",
+    StrictOriginWhenCrossOrigin: "strict-origin-when-cross-origin"
+};
+
+/** @typedef {!{url:(string), urlFragment:(string|undefined), method:(string), headers:(Protocol.Network.Headers), postData:(string|undefined), hasPostData:(boolean|undefined), mixedContentType:(Protocol.Security.MixedContentType|undefined), initialPriority:(Protocol.Network.ResourcePriority), referrerPolicy:(Protocol.Network.RequestReferrerPolicy), isLinkPreload:(boolean|undefined)}} */
+Protocol.Network.Request;
+
+/** @typedef {!{status:(string), origin:(string), logDescription:(string), logId:(string), timestamp:(Protocol.Network.TimeSinceEpoch), hashAlgorithm:(string), signatureAlgorithm:(string), signatureData:(string)}} */
+Protocol.Network.SignedCertificateTimestamp;
+
+/** @typedef {!{protocol:(string), keyExchange:(string), keyExchangeGroup:(string|undefined), cipher:(string), mac:(string|undefined), certificateId:(Protocol.Security.CertificateId), subjectName:(string), sanList:(!Array<string>), issuer:(string), validFrom:(Protocol.Network.TimeSinceEpoch), validTo:(Protocol.Network.TimeSinceEpoch), signedCertificateTimestampList:(!Array<Protocol.Network.SignedCertificateTimestamp>), certificateTransparencyCompliance:(Protocol.Network.CertificateTransparencyCompliance)}} */
+Protocol.Network.SecurityDetails;
+
+/** @enum {string} */
+Protocol.Network.CertificateTransparencyCompliance = {
+    Unknown: "unknown",
+    NotCompliant: "not-compliant",
+    Compliant: "compliant"
+};
+
+/** @enum {string} */
+Protocol.Network.BlockedReason = {
+    Other: "other",
+    Csp: "csp",
+    MixedContent: "mixed-content",
+    Origin: "origin",
+    Inspector: "inspector",
+    SubresourceFilter: "subresource-filter",
+    ContentType: "content-type",
+    CollapsedByClient: "collapsed-by-client"
+};
+
+/** @typedef {!{url:(string), status:(number), statusText:(string), headers:(Protocol.Network.Headers), headersText:(string|undefined), mimeType:(string), requestHeaders:(Protocol.Network.Headers|undefined), requestHeadersText:(string|undefined), connectionReused:(boolean), connectionId:(number), remoteIPAddress:(string|undefined), remotePort:(number|undefined), fromDiskCache:(boolean|undefined), fromServiceWorker:(boolean|undefined), fromPrefetchCache:(boolean|undefined), encodedDataLength:(number), timing:(Protocol.Network.ResourceTiming|undefined), protocol:(string|undefined), securityState:(Protocol.Security.SecurityState), securityDetails:(Protocol.Network.SecurityDetails|undefined)}} */
+Protocol.Network.Response;
+
+/** @typedef {!{headers:(Protocol.Network.Headers)}} */
+Protocol.Network.WebSocketRequest;
+
+/** @typedef {!{status:(number), statusText:(string), headers:(Protocol.Network.Headers), headersText:(string|undefined), requestHeaders:(Protocol.Network.Headers|undefined), requestHeadersText:(string|undefined)}} */
+Protocol.Network.WebSocketResponse;
+
+/** @typedef {!{opcode:(number), mask:(boolean), payloadData:(string)}} */
+Protocol.Network.WebSocketFrame;
+
+/** @typedef {!{url:(string), type:(Protocol.Network.ResourceType), response:(Protocol.Network.Response|undefined), bodySize:(number)}} */
+Protocol.Network.CachedResource;
+
+/** @enum {string} */
+Protocol.Network.InitiatorType = {
+    Parser: "parser",
+    Script: "script",
+    Preload: "preload",
+    SignedExchange: "SignedExchange",
+    Other: "other"
+};
+
+/** @typedef {!{type:(Protocol.Network.InitiatorType), stack:(Protocol.Runtime.StackTrace|undefined), url:(string|undefined), lineNumber:(number|undefined)}} */
+Protocol.Network.Initiator;
+
+/** @typedef {!{name:(string), value:(string), domain:(string), path:(string), expires:(number), size:(number), httpOnly:(boolean), secure:(boolean), session:(boolean), sameSite:(Protocol.Network.CookieSameSite|undefined)}} */
+Protocol.Network.Cookie;
+
+/** @enum {string} */
+Protocol.Network.SetCookieBlockedReason = {
+    SecureOnly: "SecureOnly",
+    SameSiteStrict: "SameSiteStrict",
+    SameSiteLax: "SameSiteLax",
+    SameSiteExtended: "SameSiteExtended",
+    SameSiteUnspecifiedTreatedAsLax: "SameSiteUnspecifiedTreatedAsLax",
+    SameSiteNoneInsecure: "SameSiteNoneInsecure",
+    UserPreferences: "UserPreferences",
+    SyntaxError: "SyntaxError",
+    SchemeNotSupported: "SchemeNotSupported",
+    OverwriteSecure: "OverwriteSecure",
+    InvalidDomain: "InvalidDomain",
+    InvalidPrefix: "InvalidPrefix",
+    UnknownError: "UnknownError"
+};
+
+/** @enum {string} */
+Protocol.Network.CookieBlockedReason = {
+    SecureOnly: "SecureOnly",
+    NotOnPath: "NotOnPath",
+    DomainMismatch: "DomainMismatch",
+    SameSiteStrict: "SameSiteStrict",
+    SameSiteLax: "SameSiteLax",
+    SameSiteExtended: "SameSiteExtended",
+    SameSiteUnspecifiedTreatedAsLax: "SameSiteUnspecifiedTreatedAsLax",
+    SameSiteNoneInsecure: "SameSiteNoneInsecure",
+    UserPreferences: "UserPreferences",
+    UnknownError: "UnknownError"
+};
+
+/** @typedef {!{blockedReasons:(!Array<Protocol.Network.SetCookieBlockedReason>), cookieLine:(string), cookie:(Protocol.Network.Cookie|undefined)}} */
+Protocol.Network.BlockedSetCookieWithReason;
+
+/** @typedef {!{blockedReasons:(!Array<Protocol.Network.CookieBlockedReason>), cookie:(Protocol.Network.Cookie)}} */
+Protocol.Network.BlockedCookieWithReason;
+
+/** @typedef {!{name:(string), value:(string), url:(string|undefined), domain:(string|undefined), path:(string|undefined), secure:(boolean|undefined), httpOnly:(boolean|undefined), sameSite:(Protocol.Network.CookieSameSite|undefined), expires:(Protocol.Network.TimeSinceEpoch|undefined)}} */
+Protocol.Network.CookieParam;
+
+/** @enum {string} */
+Protocol.Network.AuthChallengeSource = {
+    Server: "Server",
+    Proxy: "Proxy"
+};
+
+/** @typedef {!{source:(Protocol.Network.AuthChallengeSource|undefined), origin:(string), scheme:(string), realm:(string)}} */
+Protocol.Network.AuthChallenge;
+
+/** @enum {string} */
+Protocol.Network.AuthChallengeResponseResponse = {
+    Default: "Default",
+    CancelAuth: "CancelAuth",
+    ProvideCredentials: "ProvideCredentials"
+};
+
+/** @typedef {!{response:(Protocol.Network.AuthChallengeResponseResponse), username:(string|undefined), password:(string|undefined)}} */
+Protocol.Network.AuthChallengeResponse;
+
+/** @enum {string} */
+Protocol.Network.InterceptionStage = {
+    Request: "Request",
+    HeadersReceived: "HeadersReceived"
+};
+
+/** @typedef {!{urlPattern:(string|undefined), resourceType:(Protocol.Network.ResourceType|undefined), interceptionStage:(Protocol.Network.InterceptionStage|undefined)}} */
+Protocol.Network.RequestPattern;
+
+/** @typedef {!{label:(string), signature:(string), integrity:(string), certUrl:(string|undefined), certSha256:(string|undefined), validityUrl:(string), date:(number), expires:(number), certificates:(!Array<string>|undefined)}} */
+Protocol.Network.SignedExchangeSignature;
+
+/** @typedef {!{requestUrl:(string), responseCode:(number), responseHeaders:(Protocol.Network.Headers), signatures:(!Array<Protocol.Network.SignedExchangeSignature>), headerIntegrity:(string)}} */
+Protocol.Network.SignedExchangeHeader;
+
+/** @enum {string} */
+Protocol.Network.SignedExchangeErrorField = {
+    SignatureSig: "signatureSig",
+    SignatureIntegrity: "signatureIntegrity",
+    SignatureCertUrl: "signatureCertUrl",
+    SignatureCertSha256: "signatureCertSha256",
+    SignatureValidityUrl: "signatureValidityUrl",
+    SignatureTimestamps: "signatureTimestamps"
+};
+
+/** @typedef {!{message:(string), signatureIndex:(number|undefined), errorField:(Protocol.Network.SignedExchangeErrorField|undefined)}} */
+Protocol.Network.SignedExchangeError;
+
+/** @typedef {!{outerResponse:(Protocol.Network.Response), header:(Protocol.Network.SignedExchangeHeader|undefined), securityDetails:(Protocol.Network.SecurityDetails|undefined), errors:(!Array<Protocol.Network.SignedExchangeError>|undefined)}} */
+Protocol.Network.SignedExchangeInfo;
+/** @interface */
+Protocol.NetworkDispatcher = function() {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {number} dataLength
+ * @param {number} encodedDataLength
+ */
+Protocol.NetworkDispatcher.prototype.dataReceived = function(requestId, timestamp, dataLength, encodedDataLength) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {string} eventName
+ * @param {string} eventId
+ * @param {string} data
+ */
+Protocol.NetworkDispatcher.prototype.eventSourceMessageReceived = function(requestId, timestamp, eventName, eventId, data) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.ResourceType} type
+ * @param {string} errorText
+ * @param {boolean=} opt_canceled
+ * @param {Protocol.Network.BlockedReason=} opt_blockedReason
+ */
+Protocol.NetworkDispatcher.prototype.loadingFailed = function(requestId, timestamp, type, errorText, opt_canceled, opt_blockedReason) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {number} encodedDataLength
+ * @param {boolean=} opt_shouldReportCorbBlocking
+ */
+Protocol.NetworkDispatcher.prototype.loadingFinished = function(requestId, timestamp, encodedDataLength, opt_shouldReportCorbBlocking) {};
+/**
+ * @param {Protocol.Network.InterceptionId} interceptionId
+ * @param {Protocol.Network.Request} request
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Network.ResourceType} resourceType
+ * @param {boolean} isNavigationRequest
+ * @param {boolean=} opt_isDownload
+ * @param {string=} opt_redirectUrl
+ * @param {Protocol.Network.AuthChallenge=} opt_authChallenge
+ * @param {Protocol.Network.ErrorReason=} opt_responseErrorReason
+ * @param {number=} opt_responseStatusCode
+ * @param {Protocol.Network.Headers=} opt_responseHeaders
+ * @param {Protocol.Network.RequestId=} opt_requestId
+ */
+Protocol.NetworkDispatcher.prototype.requestIntercepted = function(interceptionId, request, frameId, resourceType, isNavigationRequest, opt_isDownload, opt_redirectUrl, opt_authChallenge, opt_responseErrorReason, opt_responseStatusCode, opt_responseHeaders, opt_requestId) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ */
+Protocol.NetworkDispatcher.prototype.requestServedFromCache = function(requestId) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.LoaderId} loaderId
+ * @param {string} documentURL
+ * @param {Protocol.Network.Request} request
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.TimeSinceEpoch} wallTime
+ * @param {Protocol.Network.Initiator} initiator
+ * @param {Protocol.Network.Response=} opt_redirectResponse
+ * @param {Protocol.Network.ResourceType=} opt_type
+ * @param {Protocol.Page.FrameId=} opt_frameId
+ * @param {boolean=} opt_hasUserGesture
+ */
+Protocol.NetworkDispatcher.prototype.requestWillBeSent = function(requestId, loaderId, documentURL, request, timestamp, wallTime, initiator, opt_redirectResponse, opt_type, opt_frameId, opt_hasUserGesture) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.ResourcePriority} newPriority
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ */
+Protocol.NetworkDispatcher.prototype.resourceChangedPriority = function(requestId, newPriority, timestamp) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.SignedExchangeInfo} info
+ */
+Protocol.NetworkDispatcher.prototype.signedExchangeReceived = function(requestId, info) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.LoaderId} loaderId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.ResourceType} type
+ * @param {Protocol.Network.Response} response
+ * @param {Protocol.Page.FrameId=} opt_frameId
+ */
+Protocol.NetworkDispatcher.prototype.responseReceived = function(requestId, loaderId, timestamp, type, response, opt_frameId) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ */
+Protocol.NetworkDispatcher.prototype.webSocketClosed = function(requestId, timestamp) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {string} url
+ * @param {Protocol.Network.Initiator=} opt_initiator
+ */
+Protocol.NetworkDispatcher.prototype.webSocketCreated = function(requestId, url, opt_initiator) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {string} errorMessage
+ */
+Protocol.NetworkDispatcher.prototype.webSocketFrameError = function(requestId, timestamp, errorMessage) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.WebSocketFrame} response
+ */
+Protocol.NetworkDispatcher.prototype.webSocketFrameReceived = function(requestId, timestamp, response) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.WebSocketFrame} response
+ */
+Protocol.NetworkDispatcher.prototype.webSocketFrameSent = function(requestId, timestamp, response) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.WebSocketResponse} response
+ */
+Protocol.NetworkDispatcher.prototype.webSocketHandshakeResponseReceived = function(requestId, timestamp, response) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ * @param {Protocol.Network.TimeSinceEpoch} wallTime
+ * @param {Protocol.Network.WebSocketRequest} request
+ */
+Protocol.NetworkDispatcher.prototype.webSocketWillSendHandshakeRequest = function(requestId, timestamp, wallTime, request) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {!Array<Protocol.Network.BlockedCookieWithReason>} blockedCookies
+ * @param {Protocol.Network.Headers} headers
+ */
+Protocol.NetworkDispatcher.prototype.requestWillBeSentExtraInfo = function(requestId, blockedCookies, headers) {};
+/**
+ * @param {Protocol.Network.RequestId} requestId
+ * @param {!Array<Protocol.Network.BlockedSetCookieWithReason>} blockedCookies
+ * @param {Protocol.Network.Headers} headers
+ * @param {string=} opt_headersText
+ */
+Protocol.NetworkDispatcher.prototype.responseReceivedExtraInfo = function(requestId, blockedCookies, headers, opt_headersText) {};
+Protocol.Overlay = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.OverlayAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.DisableResponse;
+/**
+ * @param {!Protocol.OverlayAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.DisableResponse>} */
+Protocol.OverlayAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.EnableResponse;
+/**
+ * @param {!Protocol.OverlayAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.EnableResponse>} */
+Protocol.OverlayAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ * @param {boolean=} opt_includeDistance
+ * @param {boolean=} opt_includeStyle
+ * @return {!Promise<?Object>}
+ */
+Protocol.OverlayAgent.prototype.getHighlightObjectForTest = function(nodeId, opt_includeDistance, opt_includeStyle) {};
+/** @typedef {!{includeDistance: (boolean|undefined), nodeId: Protocol.DOM.NodeId, includeStyle: (boolean|undefined)}} */
+Protocol.OverlayAgent.GetHighlightObjectForTestRequest;
+/** @typedef {!{highlight: !Object}} */
+Protocol.OverlayAgent.GetHighlightObjectForTestResponse;
+/**
+ * @param {!Protocol.OverlayAgent.GetHighlightObjectForTestRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.GetHighlightObjectForTestResponse>} */
+Protocol.OverlayAgent.prototype.invoke_getHighlightObjectForTest = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.hideHighlight = function() {};
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HideHighlightRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HideHighlightResponse;
+/**
+ * @param {!Protocol.OverlayAgent.HideHighlightRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.HideHighlightResponse>} */
+Protocol.OverlayAgent.prototype.invoke_hideHighlight = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.DOM.RGBA=} opt_contentColor
+ * @param {Protocol.DOM.RGBA=} opt_contentOutlineColor
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.highlightFrame = function(frameId, opt_contentColor, opt_contentOutlineColor) {};
+/** @typedef {!{contentOutlineColor: (Protocol.DOM.RGBA|undefined), contentColor: (Protocol.DOM.RGBA|undefined), frameId: Protocol.Page.FrameId}} */
+Protocol.OverlayAgent.HighlightFrameRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HighlightFrameResponse;
+/**
+ * @param {!Protocol.OverlayAgent.HighlightFrameRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.HighlightFrameResponse>} */
+Protocol.OverlayAgent.prototype.invoke_highlightFrame = function(obj) {};
+
+/**
+ * @param {Protocol.Overlay.HighlightConfig} highlightConfig
+ * @param {Protocol.DOM.NodeId=} opt_nodeId
+ * @param {Protocol.DOM.BackendNodeId=} opt_backendNodeId
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @param {string=} opt_selector
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.highlightNode = function(highlightConfig, opt_nodeId, opt_backendNodeId, opt_objectId, opt_selector) {};
+/** @typedef {!{selector: (string|undefined), objectId: (Protocol.Runtime.RemoteObjectId|undefined), highlightConfig: Protocol.Overlay.HighlightConfig, backendNodeId: (Protocol.DOM.BackendNodeId|undefined), nodeId: (Protocol.DOM.NodeId|undefined)}} */
+Protocol.OverlayAgent.HighlightNodeRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HighlightNodeResponse;
+/**
+ * @param {!Protocol.OverlayAgent.HighlightNodeRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.HighlightNodeResponse>} */
+Protocol.OverlayAgent.prototype.invoke_highlightNode = function(obj) {};
+
+/**
+ * @param {Protocol.DOM.Quad} quad
+ * @param {Protocol.DOM.RGBA=} opt_color
+ * @param {Protocol.DOM.RGBA=} opt_outlineColor
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.highlightQuad = function(quad, opt_color, opt_outlineColor) {};
+/** @typedef {!{color: (Protocol.DOM.RGBA|undefined), quad: Protocol.DOM.Quad, outlineColor: (Protocol.DOM.RGBA|undefined)}} */
+Protocol.OverlayAgent.HighlightQuadRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HighlightQuadResponse;
+/**
+ * @param {!Protocol.OverlayAgent.HighlightQuadRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.HighlightQuadResponse>} */
+Protocol.OverlayAgent.prototype.invoke_highlightQuad = function(obj) {};
+
+/**
+ * @param {number} x
+ * @param {number} y
+ * @param {number} width
+ * @param {number} height
+ * @param {Protocol.DOM.RGBA=} opt_color
+ * @param {Protocol.DOM.RGBA=} opt_outlineColor
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.highlightRect = function(x, y, width, height, opt_color, opt_outlineColor) {};
+/** @typedef {!{color: (Protocol.DOM.RGBA|undefined), height: number, width: number, y: number, x: number, outlineColor: (Protocol.DOM.RGBA|undefined)}} */
+Protocol.OverlayAgent.HighlightRectRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.HighlightRectResponse;
+/**
+ * @param {!Protocol.OverlayAgent.HighlightRectRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.HighlightRectResponse>} */
+Protocol.OverlayAgent.prototype.invoke_highlightRect = function(obj) {};
+
+/**
+ * @param {Protocol.Overlay.InspectMode} mode
+ * @param {Protocol.Overlay.HighlightConfig=} opt_highlightConfig
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setInspectMode = function(mode, opt_highlightConfig) {};
+/** @typedef {!{mode: Protocol.Overlay.InspectMode, highlightConfig: (Protocol.Overlay.HighlightConfig|undefined)}} */
+Protocol.OverlayAgent.SetInspectModeRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetInspectModeResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetInspectModeRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetInspectModeResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setInspectMode = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowAdHighlights = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowAdHighlightsRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowAdHighlightsResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowAdHighlightsRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowAdHighlightsResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowAdHighlights = function(obj) {};
+
+/**
+ * @param {string=} opt_message
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setPausedInDebuggerMessage = function(opt_message) {};
+/** @typedef {!{message: (string|undefined)}} */
+Protocol.OverlayAgent.SetPausedInDebuggerMessageRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetPausedInDebuggerMessageResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetPausedInDebuggerMessageRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetPausedInDebuggerMessageResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setPausedInDebuggerMessage = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowDebugBorders = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowDebugBordersRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowDebugBordersResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowDebugBordersRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowDebugBordersResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowDebugBorders = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowFPSCounter = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowFPSCounterRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowFPSCounterResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowFPSCounterRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowFPSCounterResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowFPSCounter = function(obj) {};
+
+/**
+ * @param {boolean} result
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowPaintRects = function(result) {};
+/** @typedef {!{result: boolean}} */
+Protocol.OverlayAgent.SetShowPaintRectsRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowPaintRectsResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowPaintRectsRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowPaintRectsResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowPaintRects = function(obj) {};
+
+/**
+ * @param {boolean} result
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowLayoutShiftRegions = function(result) {};
+/** @typedef {!{result: boolean}} */
+Protocol.OverlayAgent.SetShowLayoutShiftRegionsRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowLayoutShiftRegionsResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowLayoutShiftRegionsRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowLayoutShiftRegionsResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowLayoutShiftRegions = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowScrollBottleneckRects = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowScrollBottleneckRectsRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowScrollBottleneckRectsResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowScrollBottleneckRectsRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowScrollBottleneckRectsResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowScrollBottleneckRects = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowHitTestBorders = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowHitTestBordersRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowHitTestBordersResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowHitTestBordersRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowHitTestBordersResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowHitTestBorders = function(obj) {};
+
+/**
+ * @param {boolean} show
+ * @return {!Promise<undefined>}
+ */
+Protocol.OverlayAgent.prototype.setShowViewportSizeOnResize = function(show) {};
+/** @typedef {!{show: boolean}} */
+Protocol.OverlayAgent.SetShowViewportSizeOnResizeRequest;
+/** @typedef {Object|undefined} */
+Protocol.OverlayAgent.SetShowViewportSizeOnResizeResponse;
+/**
+ * @param {!Protocol.OverlayAgent.SetShowViewportSizeOnResizeRequest} obj
+ * @return {!Promise<!Protocol.OverlayAgent.SetShowViewportSizeOnResizeResponse>} */
+Protocol.OverlayAgent.prototype.invoke_setShowViewportSizeOnResize = function(obj) {};
+
+/** @typedef {!{showInfo:(boolean|undefined), showStyles:(boolean|undefined), showRulers:(boolean|undefined), showExtensionLines:(boolean|undefined), contentColor:(Protocol.DOM.RGBA|undefined), paddingColor:(Protocol.DOM.RGBA|undefined), borderColor:(Protocol.DOM.RGBA|undefined), marginColor:(Protocol.DOM.RGBA|undefined), eventTargetColor:(Protocol.DOM.RGBA|undefined), shapeColor:(Protocol.DOM.RGBA|undefined), shapeMarginColor:(Protocol.DOM.RGBA|undefined), cssGridColor:(Protocol.DOM.RGBA|undefined)}} */
+Protocol.Overlay.HighlightConfig;
+
+/** @enum {string} */
+Protocol.Overlay.InspectMode = {
+    SearchForNode: "searchForNode",
+    SearchForUAShadowDOM: "searchForUAShadowDOM",
+    CaptureAreaScreenshot: "captureAreaScreenshot",
+    ShowDistances: "showDistances",
+    None: "none"
+};
+/** @interface */
+Protocol.OverlayDispatcher = function() {};
+/**
+ * @param {Protocol.DOM.BackendNodeId} backendNodeId
+ */
+Protocol.OverlayDispatcher.prototype.inspectNodeRequested = function(backendNodeId) {};
+/**
+ * @param {Protocol.DOM.NodeId} nodeId
+ */
+Protocol.OverlayDispatcher.prototype.nodeHighlightRequested = function(nodeId) {};
+/**
+ * @param {Protocol.Page.Viewport} viewport
+ */
+Protocol.OverlayDispatcher.prototype.screenshotRequested = function(viewport) {};
+Protocol.OverlayDispatcher.prototype.inspectModeCanceled = function() {};
+Protocol.Page = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.PageAgent = function(){};
+
+/**
+ * @param {string} scriptSource
+ * @return {!Promise<?Protocol.Page.ScriptIdentifier>}
+ */
+Protocol.PageAgent.prototype.addScriptToEvaluateOnLoad = function(scriptSource) {};
+/** @typedef {!{scriptSource: string}} */
+Protocol.PageAgent.AddScriptToEvaluateOnLoadRequest;
+/** @typedef {!{identifier: Protocol.Page.ScriptIdentifier}} */
+Protocol.PageAgent.AddScriptToEvaluateOnLoadResponse;
+/**
+ * @param {!Protocol.PageAgent.AddScriptToEvaluateOnLoadRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.AddScriptToEvaluateOnLoadResponse>} */
+Protocol.PageAgent.prototype.invoke_addScriptToEvaluateOnLoad = function(obj) {};
+
+/**
+ * @param {string} source
+ * @param {string=} opt_worldName
+ * @return {!Promise<?Protocol.Page.ScriptIdentifier>}
+ */
+Protocol.PageAgent.prototype.addScriptToEvaluateOnNewDocument = function(source, opt_worldName) {};
+/** @typedef {!{source: string, worldName: (string|undefined)}} */
+Protocol.PageAgent.AddScriptToEvaluateOnNewDocumentRequest;
+/** @typedef {!{identifier: Protocol.Page.ScriptIdentifier}} */
+Protocol.PageAgent.AddScriptToEvaluateOnNewDocumentResponse;
+/**
+ * @param {!Protocol.PageAgent.AddScriptToEvaluateOnNewDocumentRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.AddScriptToEvaluateOnNewDocumentResponse>} */
+Protocol.PageAgent.prototype.invoke_addScriptToEvaluateOnNewDocument = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.bringToFront = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.BringToFrontRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.BringToFrontResponse;
+/**
+ * @param {!Protocol.PageAgent.BringToFrontRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.BringToFrontResponse>} */
+Protocol.PageAgent.prototype.invoke_bringToFront = function(obj) {};
+
+/**
+ * @param {string=} opt_format
+ * @param {number=} opt_quality
+ * @param {Protocol.Page.Viewport=} opt_clip
+ * @param {boolean=} opt_fromSurface
+ * @return {!Promise<?string>}
+ */
+Protocol.PageAgent.prototype.captureScreenshot = function(opt_format, opt_quality, opt_clip, opt_fromSurface) {};
+/** @typedef {!{fromSurface: (boolean|undefined), quality: (number|undefined), clip: (Protocol.Page.Viewport|undefined), format: (string|undefined)}} */
+Protocol.PageAgent.CaptureScreenshotRequest;
+/** @typedef {!{data: string}} */
+Protocol.PageAgent.CaptureScreenshotResponse;
+/**
+ * @param {!Protocol.PageAgent.CaptureScreenshotRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.CaptureScreenshotResponse>} */
+Protocol.PageAgent.prototype.invoke_captureScreenshot = function(obj) {};
+
+/**
+ * @param {string=} opt_format
+ * @return {!Promise<?string>}
+ */
+Protocol.PageAgent.prototype.captureSnapshot = function(opt_format) {};
+/** @typedef {!{format: (string|undefined)}} */
+Protocol.PageAgent.CaptureSnapshotRequest;
+/** @typedef {!{data: string}} */
+Protocol.PageAgent.CaptureSnapshotResponse;
+/**
+ * @param {!Protocol.PageAgent.CaptureSnapshotRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.CaptureSnapshotResponse>} */
+Protocol.PageAgent.prototype.invoke_captureSnapshot = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.clearDeviceMetricsOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearDeviceMetricsOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearDeviceMetricsOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.ClearDeviceMetricsOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ClearDeviceMetricsOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_clearDeviceMetricsOverride = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.clearDeviceOrientationOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearDeviceOrientationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearDeviceOrientationOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.ClearDeviceOrientationOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ClearDeviceOrientationOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_clearDeviceOrientationOverride = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.clearGeolocationOverride = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearGeolocationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearGeolocationOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.ClearGeolocationOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ClearGeolocationOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_clearGeolocationOverride = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string=} opt_worldName
+ * @param {boolean=} opt_grantUniveralAccess
+ * @return {!Promise<?Protocol.Runtime.ExecutionContextId>}
+ */
+Protocol.PageAgent.prototype.createIsolatedWorld = function(frameId, opt_worldName, opt_grantUniveralAccess) {};
+/** @typedef {!{grantUniveralAccess: (boolean|undefined), worldName: (string|undefined), frameId: Protocol.Page.FrameId}} */
+Protocol.PageAgent.CreateIsolatedWorldRequest;
+/** @typedef {!{executionContextId: Protocol.Runtime.ExecutionContextId}} */
+Protocol.PageAgent.CreateIsolatedWorldResponse;
+/**
+ * @param {!Protocol.PageAgent.CreateIsolatedWorldRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.CreateIsolatedWorldResponse>} */
+Protocol.PageAgent.prototype.invoke_createIsolatedWorld = function(obj) {};
+
+/**
+ * @param {string} cookieName
+ * @param {string} url
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.deleteCookie = function(cookieName, url) {};
+/** @typedef {!{url: string, cookieName: string}} */
+Protocol.PageAgent.DeleteCookieRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.DeleteCookieResponse;
+/**
+ * @param {!Protocol.PageAgent.DeleteCookieRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.DeleteCookieResponse>} */
+Protocol.PageAgent.prototype.invoke_deleteCookie = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.DisableResponse;
+/**
+ * @param {!Protocol.PageAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.DisableResponse>} */
+Protocol.PageAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.EnableResponse;
+/**
+ * @param {!Protocol.PageAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.EnableResponse>} */
+Protocol.PageAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<?string>}
+ */
+Protocol.PageAgent.prototype.getAppManifest = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetAppManifestRequest;
+/** @typedef {!{url: string, errors: !Array<Protocol.Page.AppManifestError>, data: string}} */
+Protocol.PageAgent.GetAppManifestResponse;
+/**
+ * @param {!Protocol.PageAgent.GetAppManifestRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetAppManifestResponse>} */
+Protocol.PageAgent.prototype.invoke_getAppManifest = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.PageAgent.prototype.getInstallabilityErrors = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetInstallabilityErrorsRequest;
+/** @typedef {!{errors: !Array<string>}} */
+Protocol.PageAgent.GetInstallabilityErrorsResponse;
+/**
+ * @param {!Protocol.PageAgent.GetInstallabilityErrorsRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetInstallabilityErrorsResponse>} */
+Protocol.PageAgent.prototype.invoke_getInstallabilityErrors = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Network.Cookie>>}
+ */
+Protocol.PageAgent.prototype.getCookies = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetCookiesRequest;
+/** @typedef {!{cookies: !Array<Protocol.Network.Cookie>}} */
+Protocol.PageAgent.GetCookiesResponse;
+/**
+ * @param {!Protocol.PageAgent.GetCookiesRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetCookiesResponse>} */
+Protocol.PageAgent.prototype.invoke_getCookies = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Page.FrameTree>}
+ */
+Protocol.PageAgent.prototype.getFrameTree = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetFrameTreeRequest;
+/** @typedef {!{frameTree: Protocol.Page.FrameTree}} */
+Protocol.PageAgent.GetFrameTreeResponse;
+/**
+ * @param {!Protocol.PageAgent.GetFrameTreeRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetFrameTreeResponse>} */
+Protocol.PageAgent.prototype.invoke_getFrameTree = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Page.LayoutViewport>}
+ */
+Protocol.PageAgent.prototype.getLayoutMetrics = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetLayoutMetricsRequest;
+/** @typedef {!{visualViewport: Protocol.Page.VisualViewport, layoutViewport: Protocol.Page.LayoutViewport, contentSize: Protocol.DOM.Rect}} */
+Protocol.PageAgent.GetLayoutMetricsResponse;
+/**
+ * @param {!Protocol.PageAgent.GetLayoutMetricsRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetLayoutMetricsResponse>} */
+Protocol.PageAgent.prototype.invoke_getLayoutMetrics = function(obj) {};
+
+/**
+ * @return {!Promise<?number>}
+ */
+Protocol.PageAgent.prototype.getNavigationHistory = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetNavigationHistoryRequest;
+/** @typedef {!{currentIndex: number, entries: !Array<Protocol.Page.NavigationEntry>}} */
+Protocol.PageAgent.GetNavigationHistoryResponse;
+/**
+ * @param {!Protocol.PageAgent.GetNavigationHistoryRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetNavigationHistoryResponse>} */
+Protocol.PageAgent.prototype.invoke_getNavigationHistory = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.resetNavigationHistory = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ResetNavigationHistoryRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ResetNavigationHistoryResponse;
+/**
+ * @param {!Protocol.PageAgent.ResetNavigationHistoryRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ResetNavigationHistoryResponse>} */
+Protocol.PageAgent.prototype.invoke_resetNavigationHistory = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} url
+ * @return {!Promise<?string>}
+ */
+Protocol.PageAgent.prototype.getResourceContent = function(frameId, url) {};
+/** @typedef {!{url: string, frameId: Protocol.Page.FrameId}} */
+Protocol.PageAgent.GetResourceContentRequest;
+/** @typedef {!{content: string, base64Encoded: boolean}} */
+Protocol.PageAgent.GetResourceContentResponse;
+/**
+ * @param {!Protocol.PageAgent.GetResourceContentRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetResourceContentResponse>} */
+Protocol.PageAgent.prototype.invoke_getResourceContent = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Page.FrameResourceTree>}
+ */
+Protocol.PageAgent.prototype.getResourceTree = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GetResourceTreeRequest;
+/** @typedef {!{frameTree: Protocol.Page.FrameResourceTree}} */
+Protocol.PageAgent.GetResourceTreeResponse;
+/**
+ * @param {!Protocol.PageAgent.GetResourceTreeRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GetResourceTreeResponse>} */
+Protocol.PageAgent.prototype.invoke_getResourceTree = function(obj) {};
+
+/**
+ * @param {boolean} accept
+ * @param {string=} opt_promptText
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.handleJavaScriptDialog = function(accept, opt_promptText) {};
+/** @typedef {!{promptText: (string|undefined), accept: boolean}} */
+Protocol.PageAgent.HandleJavaScriptDialogRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.HandleJavaScriptDialogResponse;
+/**
+ * @param {!Protocol.PageAgent.HandleJavaScriptDialogRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.HandleJavaScriptDialogResponse>} */
+Protocol.PageAgent.prototype.invoke_handleJavaScriptDialog = function(obj) {};
+
+/**
+ * @param {string} url
+ * @param {string=} opt_referrer
+ * @param {Protocol.Page.TransitionType=} opt_transitionType
+ * @param {Protocol.Page.FrameId=} opt_frameId
+ * @return {!Promise<?Protocol.Page.FrameId>}
+ */
+Protocol.PageAgent.prototype.navigate = function(url, opt_referrer, opt_transitionType, opt_frameId) {};
+/** @typedef {!{url: string, referrer: (string|undefined), frameId: (Protocol.Page.FrameId|undefined), transitionType: (Protocol.Page.TransitionType|undefined)}} */
+Protocol.PageAgent.NavigateRequest;
+/** @typedef {!{loaderId: Protocol.Network.LoaderId, errorText: string, frameId: Protocol.Page.FrameId}} */
+Protocol.PageAgent.NavigateResponse;
+/**
+ * @param {!Protocol.PageAgent.NavigateRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.NavigateResponse>} */
+Protocol.PageAgent.prototype.invoke_navigate = function(obj) {};
+
+/**
+ * @param {number} entryId
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.navigateToHistoryEntry = function(entryId) {};
+/** @typedef {!{entryId: number}} */
+Protocol.PageAgent.NavigateToHistoryEntryRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.NavigateToHistoryEntryResponse;
+/**
+ * @param {!Protocol.PageAgent.NavigateToHistoryEntryRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.NavigateToHistoryEntryResponse>} */
+Protocol.PageAgent.prototype.invoke_navigateToHistoryEntry = function(obj) {};
+
+/**
+ * @param {boolean=} opt_landscape
+ * @param {boolean=} opt_displayHeaderFooter
+ * @param {boolean=} opt_printBackground
+ * @param {number=} opt_scale
+ * @param {number=} opt_paperWidth
+ * @param {number=} opt_paperHeight
+ * @param {number=} opt_marginTop
+ * @param {number=} opt_marginBottom
+ * @param {number=} opt_marginLeft
+ * @param {number=} opt_marginRight
+ * @param {string=} opt_pageRanges
+ * @param {boolean=} opt_ignoreInvalidPageRanges
+ * @param {string=} opt_headerTemplate
+ * @param {string=} opt_footerTemplate
+ * @param {boolean=} opt_preferCSSPageSize
+ * @param {string=} opt_transferMode
+ * @return {!Promise<?string>}
+ */
+Protocol.PageAgent.prototype.printToPDF = function(opt_landscape, opt_displayHeaderFooter, opt_printBackground, opt_scale, opt_paperWidth, opt_paperHeight, opt_marginTop, opt_marginBottom, opt_marginLeft, opt_marginRight, opt_pageRanges, opt_ignoreInvalidPageRanges, opt_headerTemplate, opt_footerTemplate, opt_preferCSSPageSize, opt_transferMode) {};
+/** @typedef {!{paperHeight: (number|undefined), scale: (number|undefined), footerTemplate: (string|undefined), displayHeaderFooter: (boolean|undefined), transferMode: (string|undefined), marginBottom: (number|undefined), paperWidth: (number|undefined), headerTemplate: (string|undefined), marginLeft: (number|undefined), preferCSSPageSize: (boolean|undefined), printBackground: (boolean|undefined), marginRight: (number|undefined), ignoreInvalidPageRanges: (boolean|undefined), pageRanges: (string|undefined), marginTop: (number|undefined), landscape: (boolean|undefined)}} */
+Protocol.PageAgent.PrintToPDFRequest;
+/** @typedef {!{data: string, stream: Protocol.IO.StreamHandle}} */
+Protocol.PageAgent.PrintToPDFResponse;
+/**
+ * @param {!Protocol.PageAgent.PrintToPDFRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.PrintToPDFResponse>} */
+Protocol.PageAgent.prototype.invoke_printToPDF = function(obj) {};
+
+/**
+ * @param {boolean=} opt_ignoreCache
+ * @param {string=} opt_scriptToEvaluateOnLoad
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.reload = function(opt_ignoreCache, opt_scriptToEvaluateOnLoad) {};
+/** @typedef {!{scriptToEvaluateOnLoad: (string|undefined), ignoreCache: (boolean|undefined)}} */
+Protocol.PageAgent.ReloadRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ReloadResponse;
+/**
+ * @param {!Protocol.PageAgent.ReloadRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ReloadResponse>} */
+Protocol.PageAgent.prototype.invoke_reload = function(obj) {};
+
+/**
+ * @param {Protocol.Page.ScriptIdentifier} identifier
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.removeScriptToEvaluateOnLoad = function(identifier) {};
+/** @typedef {!{identifier: Protocol.Page.ScriptIdentifier}} */
+Protocol.PageAgent.RemoveScriptToEvaluateOnLoadRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.RemoveScriptToEvaluateOnLoadResponse;
+/**
+ * @param {!Protocol.PageAgent.RemoveScriptToEvaluateOnLoadRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.RemoveScriptToEvaluateOnLoadResponse>} */
+Protocol.PageAgent.prototype.invoke_removeScriptToEvaluateOnLoad = function(obj) {};
+
+/**
+ * @param {Protocol.Page.ScriptIdentifier} identifier
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.removeScriptToEvaluateOnNewDocument = function(identifier) {};
+/** @typedef {!{identifier: Protocol.Page.ScriptIdentifier}} */
+Protocol.PageAgent.RemoveScriptToEvaluateOnNewDocumentRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.RemoveScriptToEvaluateOnNewDocumentResponse;
+/**
+ * @param {!Protocol.PageAgent.RemoveScriptToEvaluateOnNewDocumentRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.RemoveScriptToEvaluateOnNewDocumentResponse>} */
+Protocol.PageAgent.prototype.invoke_removeScriptToEvaluateOnNewDocument = function(obj) {};
+
+/**
+ * @param {number} sessionId
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.screencastFrameAck = function(sessionId) {};
+/** @typedef {!{sessionId: number}} */
+Protocol.PageAgent.ScreencastFrameAckRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ScreencastFrameAckResponse;
+/**
+ * @param {!Protocol.PageAgent.ScreencastFrameAckRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ScreencastFrameAckResponse>} */
+Protocol.PageAgent.prototype.invoke_screencastFrameAck = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} url
+ * @param {string} query
+ * @param {boolean=} opt_caseSensitive
+ * @param {boolean=} opt_isRegex
+ * @return {!Promise<?Array<Protocol.Debugger.SearchMatch>>}
+ */
+Protocol.PageAgent.prototype.searchInResource = function(frameId, url, query, opt_caseSensitive, opt_isRegex) {};
+/** @typedef {!{url: string, query: string, caseSensitive: (boolean|undefined), isRegex: (boolean|undefined), frameId: Protocol.Page.FrameId}} */
+Protocol.PageAgent.SearchInResourceRequest;
+/** @typedef {!{result: !Array<Protocol.Debugger.SearchMatch>}} */
+Protocol.PageAgent.SearchInResourceResponse;
+/**
+ * @param {!Protocol.PageAgent.SearchInResourceRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SearchInResourceResponse>} */
+Protocol.PageAgent.prototype.invoke_searchInResource = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setAdBlockingEnabled = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.PageAgent.SetAdBlockingEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetAdBlockingEnabledResponse;
+/**
+ * @param {!Protocol.PageAgent.SetAdBlockingEnabledRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetAdBlockingEnabledResponse>} */
+Protocol.PageAgent.prototype.invoke_setAdBlockingEnabled = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setBypassCSP = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.PageAgent.SetBypassCSPRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetBypassCSPResponse;
+/**
+ * @param {!Protocol.PageAgent.SetBypassCSPRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetBypassCSPResponse>} */
+Protocol.PageAgent.prototype.invoke_setBypassCSP = function(obj) {};
+
+/**
+ * @param {number} width
+ * @param {number} height
+ * @param {number} deviceScaleFactor
+ * @param {boolean} mobile
+ * @param {number=} opt_scale
+ * @param {number=} opt_screenWidth
+ * @param {number=} opt_screenHeight
+ * @param {number=} opt_positionX
+ * @param {number=} opt_positionY
+ * @param {boolean=} opt_dontSetVisibleSize
+ * @param {Protocol.Emulation.ScreenOrientation=} opt_screenOrientation
+ * @param {Protocol.Page.Viewport=} opt_viewport
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setDeviceMetricsOverride = function(width, height, deviceScaleFactor, mobile, opt_scale, opt_screenWidth, opt_screenHeight, opt_positionX, opt_positionY, opt_dontSetVisibleSize, opt_screenOrientation, opt_viewport) {};
+/** @typedef {!{deviceScaleFactor: number, positionX: (number|undefined), scale: (number|undefined), screenHeight: (number|undefined), mobile: boolean, screenOrientation: (Protocol.Emulation.ScreenOrientation|undefined), dontSetVisibleSize: (boolean|undefined), height: number, width: number, positionY: (number|undefined), screenWidth: (number|undefined), viewport: (Protocol.Page.Viewport|undefined)}} */
+Protocol.PageAgent.SetDeviceMetricsOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetDeviceMetricsOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.SetDeviceMetricsOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetDeviceMetricsOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_setDeviceMetricsOverride = function(obj) {};
+
+/**
+ * @param {number} alpha
+ * @param {number} beta
+ * @param {number} gamma
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setDeviceOrientationOverride = function(alpha, beta, gamma) {};
+/** @typedef {!{alpha: number, beta: number, gamma: number}} */
+Protocol.PageAgent.SetDeviceOrientationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetDeviceOrientationOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.SetDeviceOrientationOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetDeviceOrientationOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_setDeviceOrientationOverride = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FontFamilies} fontFamilies
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setFontFamilies = function(fontFamilies) {};
+/** @typedef {!{fontFamilies: Protocol.Page.FontFamilies}} */
+Protocol.PageAgent.SetFontFamiliesRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetFontFamiliesResponse;
+/**
+ * @param {!Protocol.PageAgent.SetFontFamiliesRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetFontFamiliesResponse>} */
+Protocol.PageAgent.prototype.invoke_setFontFamilies = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FontSizes} fontSizes
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setFontSizes = function(fontSizes) {};
+/** @typedef {!{fontSizes: Protocol.Page.FontSizes}} */
+Protocol.PageAgent.SetFontSizesRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetFontSizesResponse;
+/**
+ * @param {!Protocol.PageAgent.SetFontSizesRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetFontSizesResponse>} */
+Protocol.PageAgent.prototype.invoke_setFontSizes = function(obj) {};
+
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} html
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setDocumentContent = function(frameId, html) {};
+/** @typedef {!{html: string, frameId: Protocol.Page.FrameId}} */
+Protocol.PageAgent.SetDocumentContentRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetDocumentContentResponse;
+/**
+ * @param {!Protocol.PageAgent.SetDocumentContentRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetDocumentContentResponse>} */
+Protocol.PageAgent.prototype.invoke_setDocumentContent = function(obj) {};
+
+/**
+ * @param {string} behavior
+ * @param {string=} opt_downloadPath
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setDownloadBehavior = function(behavior, opt_downloadPath) {};
+/** @typedef {!{downloadPath: (string|undefined), behavior: string}} */
+Protocol.PageAgent.SetDownloadBehaviorRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetDownloadBehaviorResponse;
+/**
+ * @param {!Protocol.PageAgent.SetDownloadBehaviorRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetDownloadBehaviorResponse>} */
+Protocol.PageAgent.prototype.invoke_setDownloadBehavior = function(obj) {};
+
+/**
+ * @param {number=} opt_latitude
+ * @param {number=} opt_longitude
+ * @param {number=} opt_accuracy
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setGeolocationOverride = function(opt_latitude, opt_longitude, opt_accuracy) {};
+/** @typedef {!{latitude: (number|undefined), longitude: (number|undefined), accuracy: (number|undefined)}} */
+Protocol.PageAgent.SetGeolocationOverrideRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetGeolocationOverrideResponse;
+/**
+ * @param {!Protocol.PageAgent.SetGeolocationOverrideRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetGeolocationOverrideResponse>} */
+Protocol.PageAgent.prototype.invoke_setGeolocationOverride = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setLifecycleEventsEnabled = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.PageAgent.SetLifecycleEventsEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetLifecycleEventsEnabledResponse;
+/**
+ * @param {!Protocol.PageAgent.SetLifecycleEventsEnabledRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetLifecycleEventsEnabledResponse>} */
+Protocol.PageAgent.prototype.invoke_setLifecycleEventsEnabled = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @param {string=} opt_configuration
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setTouchEmulationEnabled = function(enabled, opt_configuration) {};
+/** @typedef {!{configuration: (string|undefined), enabled: boolean}} */
+Protocol.PageAgent.SetTouchEmulationEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetTouchEmulationEnabledResponse;
+/**
+ * @param {!Protocol.PageAgent.SetTouchEmulationEnabledRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetTouchEmulationEnabledResponse>} */
+Protocol.PageAgent.prototype.invoke_setTouchEmulationEnabled = function(obj) {};
+
+/**
+ * @param {string=} opt_format
+ * @param {number=} opt_quality
+ * @param {number=} opt_maxWidth
+ * @param {number=} opt_maxHeight
+ * @param {number=} opt_everyNthFrame
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.startScreencast = function(opt_format, opt_quality, opt_maxWidth, opt_maxHeight, opt_everyNthFrame) {};
+/** @typedef {!{everyNthFrame: (number|undefined), quality: (number|undefined), maxHeight: (number|undefined), maxWidth: (number|undefined), format: (string|undefined)}} */
+Protocol.PageAgent.StartScreencastRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.StartScreencastResponse;
+/**
+ * @param {!Protocol.PageAgent.StartScreencastRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.StartScreencastResponse>} */
+Protocol.PageAgent.prototype.invoke_startScreencast = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.stopLoading = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.StopLoadingRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.StopLoadingResponse;
+/**
+ * @param {!Protocol.PageAgent.StopLoadingRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.StopLoadingResponse>} */
+Protocol.PageAgent.prototype.invoke_stopLoading = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.crash = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.CrashRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.CrashResponse;
+/**
+ * @param {!Protocol.PageAgent.CrashRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.CrashResponse>} */
+Protocol.PageAgent.prototype.invoke_crash = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.close = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.CloseRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.CloseResponse;
+/**
+ * @param {!Protocol.PageAgent.CloseRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.CloseResponse>} */
+Protocol.PageAgent.prototype.invoke_close = function(obj) {};
+
+/**
+ * @param {string} state
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setWebLifecycleState = function(state) {};
+/** @typedef {!{state: string}} */
+Protocol.PageAgent.SetWebLifecycleStateRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetWebLifecycleStateResponse;
+/**
+ * @param {!Protocol.PageAgent.SetWebLifecycleStateRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetWebLifecycleStateResponse>} */
+Protocol.PageAgent.prototype.invoke_setWebLifecycleState = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.stopScreencast = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.StopScreencastRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.StopScreencastResponse;
+/**
+ * @param {!Protocol.PageAgent.StopScreencastRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.StopScreencastResponse>} */
+Protocol.PageAgent.prototype.invoke_stopScreencast = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setProduceCompilationCache = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.PageAgent.SetProduceCompilationCacheRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetProduceCompilationCacheResponse;
+/**
+ * @param {!Protocol.PageAgent.SetProduceCompilationCacheRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetProduceCompilationCacheResponse>} */
+Protocol.PageAgent.prototype.invoke_setProduceCompilationCache = function(obj) {};
+
+/**
+ * @param {string} url
+ * @param {string} data
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.addCompilationCache = function(url, data) {};
+/** @typedef {!{url: string, data: string}} */
+Protocol.PageAgent.AddCompilationCacheRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.AddCompilationCacheResponse;
+/**
+ * @param {!Protocol.PageAgent.AddCompilationCacheRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.AddCompilationCacheResponse>} */
+Protocol.PageAgent.prototype.invoke_addCompilationCache = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.clearCompilationCache = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearCompilationCacheRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.ClearCompilationCacheResponse;
+/**
+ * @param {!Protocol.PageAgent.ClearCompilationCacheRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.ClearCompilationCacheResponse>} */
+Protocol.PageAgent.prototype.invoke_clearCompilationCache = function(obj) {};
+
+/**
+ * @param {string} message
+ * @param {string=} opt_group
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.generateTestReport = function(message, opt_group) {};
+/** @typedef {!{message: string, group: (string|undefined)}} */
+Protocol.PageAgent.GenerateTestReportRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.GenerateTestReportResponse;
+/**
+ * @param {!Protocol.PageAgent.GenerateTestReportRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.GenerateTestReportResponse>} */
+Protocol.PageAgent.prototype.invoke_generateTestReport = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.waitForDebugger = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.WaitForDebuggerRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.WaitForDebuggerResponse;
+/**
+ * @param {!Protocol.PageAgent.WaitForDebuggerRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.WaitForDebuggerResponse>} */
+Protocol.PageAgent.prototype.invoke_waitForDebugger = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.setInterceptFileChooserDialog = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.PageAgent.SetInterceptFileChooserDialogRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.SetInterceptFileChooserDialogResponse;
+/**
+ * @param {!Protocol.PageAgent.SetInterceptFileChooserDialogRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.SetInterceptFileChooserDialogResponse>} */
+Protocol.PageAgent.prototype.invoke_setInterceptFileChooserDialog = function(obj) {};
+
+/**
+ * @param {string} action
+ * @param {!Array<string>=} opt_files
+ * @return {!Promise<undefined>}
+ */
+Protocol.PageAgent.prototype.handleFileChooser = function(action, opt_files) {};
+/** @typedef {!{action: string, files: (!Array<string>|undefined)}} */
+Protocol.PageAgent.HandleFileChooserRequest;
+/** @typedef {Object|undefined} */
+Protocol.PageAgent.HandleFileChooserResponse;
+/**
+ * @param {!Protocol.PageAgent.HandleFileChooserRequest} obj
+ * @return {!Promise<!Protocol.PageAgent.HandleFileChooserResponse>} */
+Protocol.PageAgent.prototype.invoke_handleFileChooser = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Page.FrameId;
+
+/** @typedef {!{id:(Protocol.Page.FrameId), parentId:(string|undefined), loaderId:(Protocol.Network.LoaderId), name:(string|undefined), url:(string), urlFragment:(string|undefined), securityOrigin:(string), mimeType:(string), unreachableUrl:(string|undefined)}} */
+Protocol.Page.Frame;
+
+/** @typedef {!{url:(string), type:(Protocol.Network.ResourceType), mimeType:(string), lastModified:(Protocol.Network.TimeSinceEpoch|undefined), contentSize:(number|undefined), failed:(boolean|undefined), canceled:(boolean|undefined)}} */
+Protocol.Page.FrameResource;
+
+/** @typedef {!{frame:(Protocol.Page.Frame), childFrames:(!Array<Protocol.Page.FrameResourceTree>|undefined), resources:(!Array<Protocol.Page.FrameResource>)}} */
+Protocol.Page.FrameResourceTree;
+
+/** @typedef {!{frame:(Protocol.Page.Frame), childFrames:(!Array<Protocol.Page.FrameTree>|undefined)}} */
+Protocol.Page.FrameTree;
+
+/** @typedef {string} */
+Protocol.Page.ScriptIdentifier;
+
+/** @enum {string} */
+Protocol.Page.TransitionType = {
+    Link: "link",
+    Typed: "typed",
+    Address_bar: "address_bar",
+    Auto_bookmark: "auto_bookmark",
+    Auto_subframe: "auto_subframe",
+    Manual_subframe: "manual_subframe",
+    Generated: "generated",
+    Auto_toplevel: "auto_toplevel",
+    Form_submit: "form_submit",
+    Reload: "reload",
+    Keyword: "keyword",
+    Keyword_generated: "keyword_generated",
+    Other: "other"
+};
+
+/** @typedef {!{id:(number), url:(string), userTypedURL:(string), title:(string), transitionType:(Protocol.Page.TransitionType)}} */
+Protocol.Page.NavigationEntry;
+
+/** @typedef {!{offsetTop:(number), pageScaleFactor:(number), deviceWidth:(number), deviceHeight:(number), scrollOffsetX:(number), scrollOffsetY:(number), timestamp:(Protocol.Network.TimeSinceEpoch|undefined)}} */
+Protocol.Page.ScreencastFrameMetadata;
+
+/** @enum {string} */
+Protocol.Page.DialogType = {
+    Alert: "alert",
+    Confirm: "confirm",
+    Prompt: "prompt",
+    Beforeunload: "beforeunload"
+};
+
+/** @typedef {!{message:(string), critical:(number), line:(number), column:(number)}} */
+Protocol.Page.AppManifestError;
+
+/** @typedef {!{pageX:(number), pageY:(number), clientWidth:(number), clientHeight:(number)}} */
+Protocol.Page.LayoutViewport;
+
+/** @typedef {!{offsetX:(number), offsetY:(number), pageX:(number), pageY:(number), clientWidth:(number), clientHeight:(number), scale:(number), zoom:(number|undefined)}} */
+Protocol.Page.VisualViewport;
+
+/** @typedef {!{x:(number), y:(number), width:(number), height:(number), scale:(number)}} */
+Protocol.Page.Viewport;
+
+/** @typedef {!{standard:(string|undefined), fixed:(string|undefined), serif:(string|undefined), sansSerif:(string|undefined), cursive:(string|undefined), fantasy:(string|undefined), pictograph:(string|undefined)}} */
+Protocol.Page.FontFamilies;
+
+/** @typedef {!{standard:(number|undefined), fixed:(number|undefined)}} */
+Protocol.Page.FontSizes;
+
+/** @enum {string} */
+Protocol.Page.ClientNavigationReason = {
+    FormSubmissionGet: "formSubmissionGet",
+    FormSubmissionPost: "formSubmissionPost",
+    HttpHeaderRefresh: "httpHeaderRefresh",
+    ScriptInitiated: "scriptInitiated",
+    MetaTagRefresh: "metaTagRefresh",
+    PageBlockInterstitial: "pageBlockInterstitial",
+    Reload: "reload"
+};
+/** @interface */
+Protocol.PageDispatcher = function() {};
+/**
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ */
+Protocol.PageDispatcher.prototype.domContentEventFired = function(timestamp) {};
+/**
+ * @param {string} mode
+ */
+Protocol.PageDispatcher.prototype.fileChooserOpened = function(mode) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Page.FrameId} parentFrameId
+ * @param {Protocol.Runtime.StackTrace=} opt_stack
+ */
+Protocol.PageDispatcher.prototype.frameAttached = function(frameId, parentFrameId, opt_stack) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ */
+Protocol.PageDispatcher.prototype.frameClearedScheduledNavigation = function(frameId) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ */
+Protocol.PageDispatcher.prototype.frameDetached = function(frameId) {};
+/**
+ * @param {Protocol.Page.Frame} frame
+ */
+Protocol.PageDispatcher.prototype.frameNavigated = function(frame) {};
+Protocol.PageDispatcher.prototype.frameResized = function() {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Page.ClientNavigationReason} reason
+ * @param {string} url
+ */
+Protocol.PageDispatcher.prototype.frameRequestedNavigation = function(frameId, reason, url) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {number} delay
+ * @param {string} reason
+ * @param {string} url
+ */
+Protocol.PageDispatcher.prototype.frameScheduledNavigation = function(frameId, delay, reason, url) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ */
+Protocol.PageDispatcher.prototype.frameStartedLoading = function(frameId) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ */
+Protocol.PageDispatcher.prototype.frameStoppedLoading = function(frameId) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} url
+ */
+Protocol.PageDispatcher.prototype.downloadWillBegin = function(frameId, url) {};
+Protocol.PageDispatcher.prototype.interstitialHidden = function() {};
+Protocol.PageDispatcher.prototype.interstitialShown = function() {};
+/**
+ * @param {boolean} result
+ * @param {string} userInput
+ */
+Protocol.PageDispatcher.prototype.javascriptDialogClosed = function(result, userInput) {};
+/**
+ * @param {string} url
+ * @param {string} message
+ * @param {Protocol.Page.DialogType} type
+ * @param {boolean} hasBrowserHandler
+ * @param {string=} opt_defaultPrompt
+ */
+Protocol.PageDispatcher.prototype.javascriptDialogOpening = function(url, message, type, hasBrowserHandler, opt_defaultPrompt) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Network.LoaderId} loaderId
+ * @param {string} name
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ */
+Protocol.PageDispatcher.prototype.lifecycleEvent = function(frameId, loaderId, name, timestamp) {};
+/**
+ * @param {Protocol.Network.MonotonicTime} timestamp
+ */
+Protocol.PageDispatcher.prototype.loadEventFired = function(timestamp) {};
+/**
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {string} url
+ */
+Protocol.PageDispatcher.prototype.navigatedWithinDocument = function(frameId, url) {};
+/**
+ * @param {string} data
+ * @param {Protocol.Page.ScreencastFrameMetadata} metadata
+ * @param {number} sessionId
+ */
+Protocol.PageDispatcher.prototype.screencastFrame = function(data, metadata, sessionId) {};
+/**
+ * @param {boolean} visible
+ */
+Protocol.PageDispatcher.prototype.screencastVisibilityChanged = function(visible) {};
+/**
+ * @param {string} url
+ * @param {string} windowName
+ * @param {!Array<string>} windowFeatures
+ * @param {boolean} userGesture
+ */
+Protocol.PageDispatcher.prototype.windowOpen = function(url, windowName, windowFeatures, userGesture) {};
+/**
+ * @param {string} url
+ * @param {string} data
+ */
+Protocol.PageDispatcher.prototype.compilationCacheProduced = function(url, data) {};
+Protocol.Performance = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.PerformanceAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PerformanceAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.DisableResponse;
+/**
+ * @param {!Protocol.PerformanceAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.PerformanceAgent.DisableResponse>} */
+Protocol.PerformanceAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.PerformanceAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.EnableResponse;
+/**
+ * @param {!Protocol.PerformanceAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.PerformanceAgent.EnableResponse>} */
+Protocol.PerformanceAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {string} timeDomain
+ * @return {!Promise<undefined>}
+ */
+Protocol.PerformanceAgent.prototype.setTimeDomain = function(timeDomain) {};
+/** @typedef {!{timeDomain: string}} */
+Protocol.PerformanceAgent.SetTimeDomainRequest;
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.SetTimeDomainResponse;
+/**
+ * @param {!Protocol.PerformanceAgent.SetTimeDomainRequest} obj
+ * @return {!Promise<!Protocol.PerformanceAgent.SetTimeDomainResponse>} */
+Protocol.PerformanceAgent.prototype.invoke_setTimeDomain = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Performance.Metric>>}
+ */
+Protocol.PerformanceAgent.prototype.getMetrics = function() {};
+/** @typedef {Object|undefined} */
+Protocol.PerformanceAgent.GetMetricsRequest;
+/** @typedef {!{metrics: !Array<Protocol.Performance.Metric>}} */
+Protocol.PerformanceAgent.GetMetricsResponse;
+/**
+ * @param {!Protocol.PerformanceAgent.GetMetricsRequest} obj
+ * @return {!Promise<!Protocol.PerformanceAgent.GetMetricsResponse>} */
+Protocol.PerformanceAgent.prototype.invoke_getMetrics = function(obj) {};
+
+/** @typedef {!{name:(string), value:(number)}} */
+Protocol.Performance.Metric;
+/** @interface */
+Protocol.PerformanceDispatcher = function() {};
+/**
+ * @param {!Array<Protocol.Performance.Metric>} metrics
+ * @param {string} title
+ */
+Protocol.PerformanceDispatcher.prototype.metrics = function(metrics, title) {};
+Protocol.Security = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.SecurityAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.SecurityAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.DisableResponse;
+/**
+ * @param {!Protocol.SecurityAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.SecurityAgent.DisableResponse>} */
+Protocol.SecurityAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.SecurityAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.EnableResponse;
+/**
+ * @param {!Protocol.SecurityAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.SecurityAgent.EnableResponse>} */
+Protocol.SecurityAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {boolean} ignore
+ * @return {!Promise<undefined>}
+ */
+Protocol.SecurityAgent.prototype.setIgnoreCertificateErrors = function(ignore) {};
+/** @typedef {!{ignore: boolean}} */
+Protocol.SecurityAgent.SetIgnoreCertificateErrorsRequest;
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.SetIgnoreCertificateErrorsResponse;
+/**
+ * @param {!Protocol.SecurityAgent.SetIgnoreCertificateErrorsRequest} obj
+ * @return {!Promise<!Protocol.SecurityAgent.SetIgnoreCertificateErrorsResponse>} */
+Protocol.SecurityAgent.prototype.invoke_setIgnoreCertificateErrors = function(obj) {};
+
+/**
+ * @param {number} eventId
+ * @param {Protocol.Security.CertificateErrorAction} action
+ * @return {!Promise<undefined>}
+ */
+Protocol.SecurityAgent.prototype.handleCertificateError = function(eventId, action) {};
+/** @typedef {!{eventId: number, action: Protocol.Security.CertificateErrorAction}} */
+Protocol.SecurityAgent.HandleCertificateErrorRequest;
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.HandleCertificateErrorResponse;
+/**
+ * @param {!Protocol.SecurityAgent.HandleCertificateErrorRequest} obj
+ * @return {!Promise<!Protocol.SecurityAgent.HandleCertificateErrorResponse>} */
+Protocol.SecurityAgent.prototype.invoke_handleCertificateError = function(obj) {};
+
+/**
+ * @param {boolean} override
+ * @return {!Promise<undefined>}
+ */
+Protocol.SecurityAgent.prototype.setOverrideCertificateErrors = function(override) {};
+/** @typedef {!{override: boolean}} */
+Protocol.SecurityAgent.SetOverrideCertificateErrorsRequest;
+/** @typedef {Object|undefined} */
+Protocol.SecurityAgent.SetOverrideCertificateErrorsResponse;
+/**
+ * @param {!Protocol.SecurityAgent.SetOverrideCertificateErrorsRequest} obj
+ * @return {!Promise<!Protocol.SecurityAgent.SetOverrideCertificateErrorsResponse>} */
+Protocol.SecurityAgent.prototype.invoke_setOverrideCertificateErrors = function(obj) {};
+
+/** @typedef {number} */
+Protocol.Security.CertificateId;
+
+/** @enum {string} */
+Protocol.Security.MixedContentType = {
+    Blockable: "blockable",
+    OptionallyBlockable: "optionally-blockable",
+    None: "none"
+};
+
+/** @enum {string} */
+Protocol.Security.SecurityState = {
+    Unknown: "unknown",
+    Neutral: "neutral",
+    Insecure: "insecure",
+    Secure: "secure",
+    Info: "info",
+    InsecureBroken: "insecure-broken"
+};
+
+/** @typedef {!{protocol:(string), keyExchange:(string), keyExchangeGroup:(string|undefined), cipher:(string), mac:(string|undefined), certificate:(!Array<string>), subjectName:(string), issuer:(string), validFrom:(Protocol.Network.TimeSinceEpoch), validTo:(Protocol.Network.TimeSinceEpoch), certifcateHasWeakSignature:(boolean), modernSSL:(boolean), obsoleteSslProtocol:(boolean), obsoleteSslKeyExchange:(boolean), obsoleteSslCipher:(boolean), obsoleteSslSignature:(boolean)}} */
+Protocol.Security.CertificateSecurityState;
+
+/** @typedef {!{securityState:(Protocol.Security.SecurityState), certificateSecurityState:(Protocol.Security.CertificateSecurityState|undefined), securityStateIssueIds:(!Array<string>)}} */
+Protocol.Security.VisibleSecurityState;
+
+/** @typedef {!{securityState:(Protocol.Security.SecurityState), title:(string), summary:(string), description:(string), mixedContentType:(Protocol.Security.MixedContentType), certificate:(!Array<string>), recommendations:(!Array<string>|undefined)}} */
+Protocol.Security.SecurityStateExplanation;
+
+/** @typedef {!{ranMixedContent:(boolean), displayedMixedContent:(boolean), containedMixedForm:(boolean), ranContentWithCertErrors:(boolean), displayedContentWithCertErrors:(boolean), ranInsecureContentStyle:(Protocol.Security.SecurityState), displayedInsecureContentStyle:(Protocol.Security.SecurityState)}} */
+Protocol.Security.InsecureContentStatus;
+
+/** @enum {string} */
+Protocol.Security.CertificateErrorAction = {
+    Continue: "continue",
+    Cancel: "cancel"
+};
+/** @interface */
+Protocol.SecurityDispatcher = function() {};
+/**
+ * @param {number} eventId
+ * @param {string} errorType
+ * @param {string} requestURL
+ */
+Protocol.SecurityDispatcher.prototype.certificateError = function(eventId, errorType, requestURL) {};
+/**
+ * @param {Protocol.Security.VisibleSecurityState} visibleSecurityState
+ */
+Protocol.SecurityDispatcher.prototype.visibleSecurityStateChanged = function(visibleSecurityState) {};
+/**
+ * @param {Protocol.Security.SecurityState} securityState
+ * @param {boolean} schemeIsCryptographic
+ * @param {!Array<Protocol.Security.SecurityStateExplanation>} explanations
+ * @param {Protocol.Security.InsecureContentStatus} insecureContentStatus
+ * @param {string=} opt_summary
+ */
+Protocol.SecurityDispatcher.prototype.securityStateChanged = function(securityState, schemeIsCryptographic, explanations, insecureContentStatus, opt_summary) {};
+Protocol.ServiceWorker = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.ServiceWorkerAgent = function(){};
+
+/**
+ * @param {string} origin
+ * @param {Protocol.ServiceWorker.RegistrationID} registrationId
+ * @param {string} data
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.deliverPushMessage = function(origin, registrationId, data) {};
+/** @typedef {!{origin: string, registrationId: Protocol.ServiceWorker.RegistrationID, data: string}} */
+Protocol.ServiceWorkerAgent.DeliverPushMessageRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.DeliverPushMessageResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.DeliverPushMessageRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.DeliverPushMessageResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_deliverPushMessage = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.DisableResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.DisableResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @param {Protocol.ServiceWorker.RegistrationID} registrationId
+ * @param {string} tag
+ * @param {boolean} lastChance
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.dispatchSyncEvent = function(origin, registrationId, tag, lastChance) {};
+/** @typedef {!{origin: string, registrationId: Protocol.ServiceWorker.RegistrationID, tag: string, lastChance: boolean}} */
+Protocol.ServiceWorkerAgent.DispatchSyncEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.DispatchSyncEventResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.DispatchSyncEventRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.DispatchSyncEventResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_dispatchSyncEvent = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @param {Protocol.ServiceWorker.RegistrationID} registrationId
+ * @param {string} tag
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.dispatchPeriodicSyncEvent = function(origin, registrationId, tag) {};
+/** @typedef {!{origin: string, registrationId: Protocol.ServiceWorker.RegistrationID, tag: string}} */
+Protocol.ServiceWorkerAgent.DispatchPeriodicSyncEventRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.DispatchPeriodicSyncEventResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.DispatchPeriodicSyncEventRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.DispatchPeriodicSyncEventResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_dispatchPeriodicSyncEvent = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.EnableResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.EnableResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {string} versionId
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.inspectWorker = function(versionId) {};
+/** @typedef {!{versionId: string}} */
+Protocol.ServiceWorkerAgent.InspectWorkerRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.InspectWorkerResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.InspectWorkerRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.InspectWorkerResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_inspectWorker = function(obj) {};
+
+/**
+ * @param {boolean} forceUpdateOnPageLoad
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.setForceUpdateOnPageLoad = function(forceUpdateOnPageLoad) {};
+/** @typedef {!{forceUpdateOnPageLoad: boolean}} */
+Protocol.ServiceWorkerAgent.SetForceUpdateOnPageLoadRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.SetForceUpdateOnPageLoadResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.SetForceUpdateOnPageLoadRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.SetForceUpdateOnPageLoadResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_setForceUpdateOnPageLoad = function(obj) {};
+
+/**
+ * @param {string} scopeURL
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.skipWaiting = function(scopeURL) {};
+/** @typedef {!{scopeURL: string}} */
+Protocol.ServiceWorkerAgent.SkipWaitingRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.SkipWaitingResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.SkipWaitingRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.SkipWaitingResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_skipWaiting = function(obj) {};
+
+/**
+ * @param {string} scopeURL
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.startWorker = function(scopeURL) {};
+/** @typedef {!{scopeURL: string}} */
+Protocol.ServiceWorkerAgent.StartWorkerRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.StartWorkerResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.StartWorkerRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.StartWorkerResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_startWorker = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.stopAllWorkers = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.StopAllWorkersRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.StopAllWorkersResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.StopAllWorkersRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.StopAllWorkersResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_stopAllWorkers = function(obj) {};
+
+/**
+ * @param {string} versionId
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.stopWorker = function(versionId) {};
+/** @typedef {!{versionId: string}} */
+Protocol.ServiceWorkerAgent.StopWorkerRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.StopWorkerResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.StopWorkerRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.StopWorkerResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_stopWorker = function(obj) {};
+
+/**
+ * @param {string} scopeURL
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.unregister = function(scopeURL) {};
+/** @typedef {!{scopeURL: string}} */
+Protocol.ServiceWorkerAgent.UnregisterRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.UnregisterResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.UnregisterRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.UnregisterResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_unregister = function(obj) {};
+
+/**
+ * @param {string} scopeURL
+ * @return {!Promise<undefined>}
+ */
+Protocol.ServiceWorkerAgent.prototype.updateRegistration = function(scopeURL) {};
+/** @typedef {!{scopeURL: string}} */
+Protocol.ServiceWorkerAgent.UpdateRegistrationRequest;
+/** @typedef {Object|undefined} */
+Protocol.ServiceWorkerAgent.UpdateRegistrationResponse;
+/**
+ * @param {!Protocol.ServiceWorkerAgent.UpdateRegistrationRequest} obj
+ * @return {!Promise<!Protocol.ServiceWorkerAgent.UpdateRegistrationResponse>} */
+Protocol.ServiceWorkerAgent.prototype.invoke_updateRegistration = function(obj) {};
+
+/** @typedef {string} */
+Protocol.ServiceWorker.RegistrationID;
+
+/** @typedef {!{registrationId:(Protocol.ServiceWorker.RegistrationID), scopeURL:(string), isDeleted:(boolean)}} */
+Protocol.ServiceWorker.ServiceWorkerRegistration;
+
+/** @enum {string} */
+Protocol.ServiceWorker.ServiceWorkerVersionRunningStatus = {
+    Stopped: "stopped",
+    Starting: "starting",
+    Running: "running",
+    Stopping: "stopping"
+};
+
+/** @enum {string} */
+Protocol.ServiceWorker.ServiceWorkerVersionStatus = {
+    New: "new",
+    Installing: "installing",
+    Installed: "installed",
+    Activating: "activating",
+    Activated: "activated",
+    Redundant: "redundant"
+};
+
+/** @typedef {!{versionId:(string), registrationId:(Protocol.ServiceWorker.RegistrationID), scriptURL:(string), runningStatus:(Protocol.ServiceWorker.ServiceWorkerVersionRunningStatus), status:(Protocol.ServiceWorker.ServiceWorkerVersionStatus), scriptLastModified:(number|undefined), scriptResponseTime:(number|undefined), controlledClients:(!Array<Protocol.Target.TargetID>|undefined), targetId:(Protocol.Target.TargetID|undefined)}} */
+Protocol.ServiceWorker.ServiceWorkerVersion;
+
+/** @typedef {!{errorMessage:(string), registrationId:(Protocol.ServiceWorker.RegistrationID), versionId:(string), sourceURL:(string), lineNumber:(number), columnNumber:(number)}} */
+Protocol.ServiceWorker.ServiceWorkerErrorMessage;
+/** @interface */
+Protocol.ServiceWorkerDispatcher = function() {};
+/**
+ * @param {Protocol.ServiceWorker.ServiceWorkerErrorMessage} errorMessage
+ */
+Protocol.ServiceWorkerDispatcher.prototype.workerErrorReported = function(errorMessage) {};
+/**
+ * @param {!Array<Protocol.ServiceWorker.ServiceWorkerRegistration>} registrations
+ */
+Protocol.ServiceWorkerDispatcher.prototype.workerRegistrationUpdated = function(registrations) {};
+/**
+ * @param {!Array<Protocol.ServiceWorker.ServiceWorkerVersion>} versions
+ */
+Protocol.ServiceWorkerDispatcher.prototype.workerVersionUpdated = function(versions) {};
+Protocol.Storage = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.StorageAgent = function(){};
+
+/**
+ * @param {string} origin
+ * @param {string} storageTypes
+ * @return {!Promise<undefined>}
+ */
+Protocol.StorageAgent.prototype.clearDataForOrigin = function(origin, storageTypes) {};
+/** @typedef {!{origin: string, storageTypes: string}} */
+Protocol.StorageAgent.ClearDataForOriginRequest;
+/** @typedef {Object|undefined} */
+Protocol.StorageAgent.ClearDataForOriginResponse;
+/**
+ * @param {!Protocol.StorageAgent.ClearDataForOriginRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.ClearDataForOriginResponse>} */
+Protocol.StorageAgent.prototype.invoke_clearDataForOrigin = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<?number>}
+ */
+Protocol.StorageAgent.prototype.getUsageAndQuota = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.StorageAgent.GetUsageAndQuotaRequest;
+/** @typedef {!{usage: number, usageBreakdown: !Array<Protocol.Storage.UsageForType>, quota: number}} */
+Protocol.StorageAgent.GetUsageAndQuotaResponse;
+/**
+ * @param {!Protocol.StorageAgent.GetUsageAndQuotaRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.GetUsageAndQuotaResponse>} */
+Protocol.StorageAgent.prototype.invoke_getUsageAndQuota = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<undefined>}
+ */
+Protocol.StorageAgent.prototype.trackCacheStorageForOrigin = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.StorageAgent.TrackCacheStorageForOriginRequest;
+/** @typedef {Object|undefined} */
+Protocol.StorageAgent.TrackCacheStorageForOriginResponse;
+/**
+ * @param {!Protocol.StorageAgent.TrackCacheStorageForOriginRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.TrackCacheStorageForOriginResponse>} */
+Protocol.StorageAgent.prototype.invoke_trackCacheStorageForOrigin = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<undefined>}
+ */
+Protocol.StorageAgent.prototype.trackIndexedDBForOrigin = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.StorageAgent.TrackIndexedDBForOriginRequest;
+/** @typedef {Object|undefined} */
+Protocol.StorageAgent.TrackIndexedDBForOriginResponse;
+/**
+ * @param {!Protocol.StorageAgent.TrackIndexedDBForOriginRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.TrackIndexedDBForOriginResponse>} */
+Protocol.StorageAgent.prototype.invoke_trackIndexedDBForOrigin = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<undefined>}
+ */
+Protocol.StorageAgent.prototype.untrackCacheStorageForOrigin = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.StorageAgent.UntrackCacheStorageForOriginRequest;
+/** @typedef {Object|undefined} */
+Protocol.StorageAgent.UntrackCacheStorageForOriginResponse;
+/**
+ * @param {!Protocol.StorageAgent.UntrackCacheStorageForOriginRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.UntrackCacheStorageForOriginResponse>} */
+Protocol.StorageAgent.prototype.invoke_untrackCacheStorageForOrigin = function(obj) {};
+
+/**
+ * @param {string} origin
+ * @return {!Promise<undefined>}
+ */
+Protocol.StorageAgent.prototype.untrackIndexedDBForOrigin = function(origin) {};
+/** @typedef {!{origin: string}} */
+Protocol.StorageAgent.UntrackIndexedDBForOriginRequest;
+/** @typedef {Object|undefined} */
+Protocol.StorageAgent.UntrackIndexedDBForOriginResponse;
+/**
+ * @param {!Protocol.StorageAgent.UntrackIndexedDBForOriginRequest} obj
+ * @return {!Promise<!Protocol.StorageAgent.UntrackIndexedDBForOriginResponse>} */
+Protocol.StorageAgent.prototype.invoke_untrackIndexedDBForOrigin = function(obj) {};
+
+/** @enum {string} */
+Protocol.Storage.StorageType = {
+    Appcache: "appcache",
+    Cookies: "cookies",
+    File_systems: "file_systems",
+    Indexeddb: "indexeddb",
+    Local_storage: "local_storage",
+    Shader_cache: "shader_cache",
+    Websql: "websql",
+    Service_workers: "service_workers",
+    Cache_storage: "cache_storage",
+    All: "all",
+    Other: "other"
+};
+
+/** @typedef {!{storageType:(Protocol.Storage.StorageType), usage:(number)}} */
+Protocol.Storage.UsageForType;
+/** @interface */
+Protocol.StorageDispatcher = function() {};
+/**
+ * @param {string} origin
+ * @param {string} cacheName
+ */
+Protocol.StorageDispatcher.prototype.cacheStorageContentUpdated = function(origin, cacheName) {};
+/**
+ * @param {string} origin
+ */
+Protocol.StorageDispatcher.prototype.cacheStorageListUpdated = function(origin) {};
+/**
+ * @param {string} origin
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ */
+Protocol.StorageDispatcher.prototype.indexedDBContentUpdated = function(origin, databaseName, objectStoreName) {};
+/**
+ * @param {string} origin
+ */
+Protocol.StorageDispatcher.prototype.indexedDBListUpdated = function(origin) {};
+Protocol.SystemInfo = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.SystemInfoAgent = function(){};
+
+/**
+ * @return {!Promise<?Protocol.SystemInfo.GPUInfo>}
+ */
+Protocol.SystemInfoAgent.prototype.getInfo = function() {};
+/** @typedef {Object|undefined} */
+Protocol.SystemInfoAgent.GetInfoRequest;
+/** @typedef {!{gpu: Protocol.SystemInfo.GPUInfo, commandLine: string, modelName: string, modelVersion: string}} */
+Protocol.SystemInfoAgent.GetInfoResponse;
+/**
+ * @param {!Protocol.SystemInfoAgent.GetInfoRequest} obj
+ * @return {!Promise<!Protocol.SystemInfoAgent.GetInfoResponse>} */
+Protocol.SystemInfoAgent.prototype.invoke_getInfo = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.SystemInfo.ProcessInfo>>}
+ */
+Protocol.SystemInfoAgent.prototype.getProcessInfo = function() {};
+/** @typedef {Object|undefined} */
+Protocol.SystemInfoAgent.GetProcessInfoRequest;
+/** @typedef {!{processInfo: !Array<Protocol.SystemInfo.ProcessInfo>}} */
+Protocol.SystemInfoAgent.GetProcessInfoResponse;
+/**
+ * @param {!Protocol.SystemInfoAgent.GetProcessInfoRequest} obj
+ * @return {!Promise<!Protocol.SystemInfoAgent.GetProcessInfoResponse>} */
+Protocol.SystemInfoAgent.prototype.invoke_getProcessInfo = function(obj) {};
+
+/** @typedef {!{vendorId:(number), deviceId:(number), subSysId:(number|undefined), revision:(number|undefined), vendorString:(string), deviceString:(string), driverVendor:(string), driverVersion:(string)}} */
+Protocol.SystemInfo.GPUDevice;
+
+/** @typedef {!{width:(number), height:(number)}} */
+Protocol.SystemInfo.Size;
+
+/** @typedef {!{profile:(string), maxResolution:(Protocol.SystemInfo.Size), minResolution:(Protocol.SystemInfo.Size)}} */
+Protocol.SystemInfo.VideoDecodeAcceleratorCapability;
+
+/** @typedef {!{profile:(string), maxResolution:(Protocol.SystemInfo.Size), maxFramerateNumerator:(number), maxFramerateDenominator:(number)}} */
+Protocol.SystemInfo.VideoEncodeAcceleratorCapability;
+
+/** @enum {string} */
+Protocol.SystemInfo.SubsamplingFormat = {
+    Yuv420: "yuv420",
+    Yuv422: "yuv422",
+    Yuv444: "yuv444"
+};
+
+/** @enum {string} */
+Protocol.SystemInfo.ImageType = {
+    Jpeg: "jpeg",
+    Webp: "webp",
+    Unknown: "unknown"
+};
+
+/** @typedef {!{imageType:(Protocol.SystemInfo.ImageType), maxDimensions:(Protocol.SystemInfo.Size), minDimensions:(Protocol.SystemInfo.Size), subsamplings:(!Array<Protocol.SystemInfo.SubsamplingFormat>)}} */
+Protocol.SystemInfo.ImageDecodeAcceleratorCapability;
+
+/** @typedef {!{devices:(!Array<Protocol.SystemInfo.GPUDevice>), auxAttributes:(!Object|undefined), featureStatus:(!Object|undefined), driverBugWorkarounds:(!Array<string>), videoDecoding:(!Array<Protocol.SystemInfo.VideoDecodeAcceleratorCapability>), videoEncoding:(!Array<Protocol.SystemInfo.VideoEncodeAcceleratorCapability>), imageDecoding:(!Array<Protocol.SystemInfo.ImageDecodeAcceleratorCapability>)}} */
+Protocol.SystemInfo.GPUInfo;
+
+/** @typedef {!{type:(string), id:(number), cpuTime:(number)}} */
+Protocol.SystemInfo.ProcessInfo;
+/** @interface */
+Protocol.SystemInfoDispatcher = function() {};
+Protocol.Target = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.TargetAgent = function(){};
+
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.activateTarget = function(targetId) {};
+/** @typedef {!{targetId: Protocol.Target.TargetID}} */
+Protocol.TargetAgent.ActivateTargetRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.ActivateTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.ActivateTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.ActivateTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_activateTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ * @param {boolean=} opt_flatten
+ * @return {!Promise<?Protocol.Target.SessionID>}
+ */
+Protocol.TargetAgent.prototype.attachToTarget = function(targetId, opt_flatten) {};
+/** @typedef {!{targetId: Protocol.Target.TargetID, flatten: (boolean|undefined)}} */
+Protocol.TargetAgent.AttachToTargetRequest;
+/** @typedef {!{sessionId: Protocol.Target.SessionID}} */
+Protocol.TargetAgent.AttachToTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.AttachToTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.AttachToTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_attachToTarget = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Target.SessionID>}
+ */
+Protocol.TargetAgent.prototype.attachToBrowserTarget = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.AttachToBrowserTargetRequest;
+/** @typedef {!{sessionId: Protocol.Target.SessionID}} */
+Protocol.TargetAgent.AttachToBrowserTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.AttachToBrowserTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.AttachToBrowserTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_attachToBrowserTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ * @return {!Promise<?boolean>}
+ */
+Protocol.TargetAgent.prototype.closeTarget = function(targetId) {};
+/** @typedef {!{targetId: Protocol.Target.TargetID}} */
+Protocol.TargetAgent.CloseTargetRequest;
+/** @typedef {!{success: boolean}} */
+Protocol.TargetAgent.CloseTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.CloseTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.CloseTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_closeTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ * @param {string=} opt_bindingName
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.exposeDevToolsProtocol = function(targetId, opt_bindingName) {};
+/** @typedef {!{targetId: Protocol.Target.TargetID, bindingName: (string|undefined)}} */
+Protocol.TargetAgent.ExposeDevToolsProtocolRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.ExposeDevToolsProtocolResponse;
+/**
+ * @param {!Protocol.TargetAgent.ExposeDevToolsProtocolRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.ExposeDevToolsProtocolResponse>} */
+Protocol.TargetAgent.prototype.invoke_exposeDevToolsProtocol = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Target.BrowserContextID>}
+ */
+Protocol.TargetAgent.prototype.createBrowserContext = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.CreateBrowserContextRequest;
+/** @typedef {!{browserContextId: Protocol.Target.BrowserContextID}} */
+Protocol.TargetAgent.CreateBrowserContextResponse;
+/**
+ * @param {!Protocol.TargetAgent.CreateBrowserContextRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.CreateBrowserContextResponse>} */
+Protocol.TargetAgent.prototype.invoke_createBrowserContext = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Target.BrowserContextID>>}
+ */
+Protocol.TargetAgent.prototype.getBrowserContexts = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.GetBrowserContextsRequest;
+/** @typedef {!{browserContextIds: !Array<Protocol.Target.BrowserContextID>}} */
+Protocol.TargetAgent.GetBrowserContextsResponse;
+/**
+ * @param {!Protocol.TargetAgent.GetBrowserContextsRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.GetBrowserContextsResponse>} */
+Protocol.TargetAgent.prototype.invoke_getBrowserContexts = function(obj) {};
+
+/**
+ * @param {string} url
+ * @param {number=} opt_width
+ * @param {number=} opt_height
+ * @param {Protocol.Target.BrowserContextID=} opt_browserContextId
+ * @param {boolean=} opt_enableBeginFrameControl
+ * @param {boolean=} opt_newWindow
+ * @param {boolean=} opt_background
+ * @return {!Promise<?Protocol.Target.TargetID>}
+ */
+Protocol.TargetAgent.prototype.createTarget = function(url, opt_width, opt_height, opt_browserContextId, opt_enableBeginFrameControl, opt_newWindow, opt_background) {};
+/** @typedef {!{browserContextId: (Protocol.Target.BrowserContextID|undefined), url: string, newWindow: (boolean|undefined), width: (number|undefined), enableBeginFrameControl: (boolean|undefined), background: (boolean|undefined), height: (number|undefined)}} */
+Protocol.TargetAgent.CreateTargetRequest;
+/** @typedef {!{targetId: Protocol.Target.TargetID}} */
+Protocol.TargetAgent.CreateTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.CreateTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.CreateTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_createTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Target.SessionID=} opt_sessionId
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.detachFromTarget = function(opt_sessionId, opt_targetId) {};
+/** @typedef {!{sessionId: (Protocol.Target.SessionID|undefined), targetId: (Protocol.Target.TargetID|undefined)}} */
+Protocol.TargetAgent.DetachFromTargetRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.DetachFromTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.DetachFromTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.DetachFromTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_detachFromTarget = function(obj) {};
+
+/**
+ * @param {Protocol.Target.BrowserContextID} browserContextId
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.disposeBrowserContext = function(browserContextId) {};
+/** @typedef {!{browserContextId: Protocol.Target.BrowserContextID}} */
+Protocol.TargetAgent.DisposeBrowserContextRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.DisposeBrowserContextResponse;
+/**
+ * @param {!Protocol.TargetAgent.DisposeBrowserContextRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.DisposeBrowserContextResponse>} */
+Protocol.TargetAgent.prototype.invoke_disposeBrowserContext = function(obj) {};
+
+/**
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ * @return {!Promise<?Protocol.Target.TargetInfo>}
+ */
+Protocol.TargetAgent.prototype.getTargetInfo = function(opt_targetId) {};
+/** @typedef {!{targetId: (Protocol.Target.TargetID|undefined)}} */
+Protocol.TargetAgent.GetTargetInfoRequest;
+/** @typedef {!{targetInfo: Protocol.Target.TargetInfo}} */
+Protocol.TargetAgent.GetTargetInfoResponse;
+/**
+ * @param {!Protocol.TargetAgent.GetTargetInfoRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.GetTargetInfoResponse>} */
+Protocol.TargetAgent.prototype.invoke_getTargetInfo = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Target.TargetInfo>>}
+ */
+Protocol.TargetAgent.prototype.getTargets = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.GetTargetsRequest;
+/** @typedef {!{targetInfos: !Array<Protocol.Target.TargetInfo>}} */
+Protocol.TargetAgent.GetTargetsResponse;
+/**
+ * @param {!Protocol.TargetAgent.GetTargetsRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.GetTargetsResponse>} */
+Protocol.TargetAgent.prototype.invoke_getTargets = function(obj) {};
+
+/**
+ * @param {string} message
+ * @param {Protocol.Target.SessionID=} opt_sessionId
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.sendMessageToTarget = function(message, opt_sessionId, opt_targetId) {};
+/** @typedef {!{message: string, targetId: (Protocol.Target.TargetID|undefined), sessionId: (Protocol.Target.SessionID|undefined)}} */
+Protocol.TargetAgent.SendMessageToTargetRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.SendMessageToTargetResponse;
+/**
+ * @param {!Protocol.TargetAgent.SendMessageToTargetRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.SendMessageToTargetResponse>} */
+Protocol.TargetAgent.prototype.invoke_sendMessageToTarget = function(obj) {};
+
+/**
+ * @param {boolean} autoAttach
+ * @param {boolean} waitForDebuggerOnStart
+ * @param {boolean=} opt_flatten
+ * @param {boolean=} opt_windowOpen
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.setAutoAttach = function(autoAttach, waitForDebuggerOnStart, opt_flatten, opt_windowOpen) {};
+/** @typedef {!{waitForDebuggerOnStart: boolean, autoAttach: boolean, flatten: (boolean|undefined), windowOpen: (boolean|undefined)}} */
+Protocol.TargetAgent.SetAutoAttachRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.SetAutoAttachResponse;
+/**
+ * @param {!Protocol.TargetAgent.SetAutoAttachRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.SetAutoAttachResponse>} */
+Protocol.TargetAgent.prototype.invoke_setAutoAttach = function(obj) {};
+
+/**
+ * @param {boolean} discover
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.setDiscoverTargets = function(discover) {};
+/** @typedef {!{discover: boolean}} */
+Protocol.TargetAgent.SetDiscoverTargetsRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.SetDiscoverTargetsResponse;
+/**
+ * @param {!Protocol.TargetAgent.SetDiscoverTargetsRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.SetDiscoverTargetsResponse>} */
+Protocol.TargetAgent.prototype.invoke_setDiscoverTargets = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.Target.RemoteLocation>} locations
+ * @return {!Promise<undefined>}
+ */
+Protocol.TargetAgent.prototype.setRemoteLocations = function(locations) {};
+/** @typedef {!{locations: !Array<Protocol.Target.RemoteLocation>}} */
+Protocol.TargetAgent.SetRemoteLocationsRequest;
+/** @typedef {Object|undefined} */
+Protocol.TargetAgent.SetRemoteLocationsResponse;
+/**
+ * @param {!Protocol.TargetAgent.SetRemoteLocationsRequest} obj
+ * @return {!Promise<!Protocol.TargetAgent.SetRemoteLocationsResponse>} */
+Protocol.TargetAgent.prototype.invoke_setRemoteLocations = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Target.TargetID;
+
+/** @typedef {string} */
+Protocol.Target.SessionID;
+
+/** @typedef {string} */
+Protocol.Target.BrowserContextID;
+
+/** @typedef {!{targetId:(Protocol.Target.TargetID), type:(string), title:(string), url:(string), attached:(boolean), openerId:(Protocol.Target.TargetID|undefined), browserContextId:(Protocol.Target.BrowserContextID|undefined)}} */
+Protocol.Target.TargetInfo;
+
+/** @typedef {!{host:(string), port:(number)}} */
+Protocol.Target.RemoteLocation;
+/** @interface */
+Protocol.TargetDispatcher = function() {};
+/**
+ * @param {Protocol.Target.SessionID} sessionId
+ * @param {Protocol.Target.TargetInfo} targetInfo
+ * @param {boolean} waitingForDebugger
+ */
+Protocol.TargetDispatcher.prototype.attachedToTarget = function(sessionId, targetInfo, waitingForDebugger) {};
+/**
+ * @param {Protocol.Target.SessionID} sessionId
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ */
+Protocol.TargetDispatcher.prototype.detachedFromTarget = function(sessionId, opt_targetId) {};
+/**
+ * @param {Protocol.Target.SessionID} sessionId
+ * @param {string} message
+ * @param {Protocol.Target.TargetID=} opt_targetId
+ */
+Protocol.TargetDispatcher.prototype.receivedMessageFromTarget = function(sessionId, message, opt_targetId) {};
+/**
+ * @param {Protocol.Target.TargetInfo} targetInfo
+ */
+Protocol.TargetDispatcher.prototype.targetCreated = function(targetInfo) {};
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ */
+Protocol.TargetDispatcher.prototype.targetDestroyed = function(targetId) {};
+/**
+ * @param {Protocol.Target.TargetID} targetId
+ * @param {string} status
+ * @param {number} errorCode
+ */
+Protocol.TargetDispatcher.prototype.targetCrashed = function(targetId, status, errorCode) {};
+/**
+ * @param {Protocol.Target.TargetInfo} targetInfo
+ */
+Protocol.TargetDispatcher.prototype.targetInfoChanged = function(targetInfo) {};
+Protocol.Tethering = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.TetheringAgent = function(){};
+
+/**
+ * @param {number} port
+ * @return {!Promise<undefined>}
+ */
+Protocol.TetheringAgent.prototype.bind = function(port) {};
+/** @typedef {!{port: number}} */
+Protocol.TetheringAgent.BindRequest;
+/** @typedef {Object|undefined} */
+Protocol.TetheringAgent.BindResponse;
+/**
+ * @param {!Protocol.TetheringAgent.BindRequest} obj
+ * @return {!Promise<!Protocol.TetheringAgent.BindResponse>} */
+Protocol.TetheringAgent.prototype.invoke_bind = function(obj) {};
+
+/**
+ * @param {number} port
+ * @return {!Promise<undefined>}
+ */
+Protocol.TetheringAgent.prototype.unbind = function(port) {};
+/** @typedef {!{port: number}} */
+Protocol.TetheringAgent.UnbindRequest;
+/** @typedef {Object|undefined} */
+Protocol.TetheringAgent.UnbindResponse;
+/**
+ * @param {!Protocol.TetheringAgent.UnbindRequest} obj
+ * @return {!Promise<!Protocol.TetheringAgent.UnbindResponse>} */
+Protocol.TetheringAgent.prototype.invoke_unbind = function(obj) {};
+/** @interface */
+Protocol.TetheringDispatcher = function() {};
+/**
+ * @param {number} port
+ * @param {string} connectionId
+ */
+Protocol.TetheringDispatcher.prototype.accepted = function(port, connectionId) {};
+Protocol.Tracing = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.TracingAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.TracingAgent.prototype.end = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TracingAgent.EndRequest;
+/** @typedef {Object|undefined} */
+Protocol.TracingAgent.EndResponse;
+/**
+ * @param {!Protocol.TracingAgent.EndRequest} obj
+ * @return {!Promise<!Protocol.TracingAgent.EndResponse>} */
+Protocol.TracingAgent.prototype.invoke_end = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.TracingAgent.prototype.getCategories = function() {};
+/** @typedef {Object|undefined} */
+Protocol.TracingAgent.GetCategoriesRequest;
+/** @typedef {!{categories: !Array<string>}} */
+Protocol.TracingAgent.GetCategoriesResponse;
+/**
+ * @param {!Protocol.TracingAgent.GetCategoriesRequest} obj
+ * @return {!Promise<!Protocol.TracingAgent.GetCategoriesResponse>} */
+Protocol.TracingAgent.prototype.invoke_getCategories = function(obj) {};
+
+/**
+ * @param {string} syncId
+ * @return {!Promise<undefined>}
+ */
+Protocol.TracingAgent.prototype.recordClockSyncMarker = function(syncId) {};
+/** @typedef {!{syncId: string}} */
+Protocol.TracingAgent.RecordClockSyncMarkerRequest;
+/** @typedef {Object|undefined} */
+Protocol.TracingAgent.RecordClockSyncMarkerResponse;
+/**
+ * @param {!Protocol.TracingAgent.RecordClockSyncMarkerRequest} obj
+ * @return {!Promise<!Protocol.TracingAgent.RecordClockSyncMarkerResponse>} */
+Protocol.TracingAgent.prototype.invoke_recordClockSyncMarker = function(obj) {};
+
+/**
+ * @param {boolean=} opt_deterministic
+ * @return {!Promise<?string>}
+ */
+Protocol.TracingAgent.prototype.requestMemoryDump = function(opt_deterministic) {};
+/** @typedef {!{deterministic: (boolean|undefined)}} */
+Protocol.TracingAgent.RequestMemoryDumpRequest;
+/** @typedef {!{dumpGuid: string, success: boolean}} */
+Protocol.TracingAgent.RequestMemoryDumpResponse;
+/**
+ * @param {!Protocol.TracingAgent.RequestMemoryDumpRequest} obj
+ * @return {!Promise<!Protocol.TracingAgent.RequestMemoryDumpResponse>} */
+Protocol.TracingAgent.prototype.invoke_requestMemoryDump = function(obj) {};
+
+/**
+ * @param {string=} opt_categories
+ * @param {string=} opt_options
+ * @param {number=} opt_bufferUsageReportingInterval
+ * @param {string=} opt_transferMode
+ * @param {Protocol.Tracing.StreamFormat=} opt_streamFormat
+ * @param {Protocol.Tracing.StreamCompression=} opt_streamCompression
+ * @param {Protocol.Tracing.TraceConfig=} opt_traceConfig
+ * @return {!Promise<undefined>}
+ */
+Protocol.TracingAgent.prototype.start = function(opt_categories, opt_options, opt_bufferUsageReportingInterval, opt_transferMode, opt_streamFormat, opt_streamCompression, opt_traceConfig) {};
+/** @typedef {!{traceConfig: (Protocol.Tracing.TraceConfig|undefined), transferMode: (string|undefined), bufferUsageReportingInterval: (number|undefined), streamFormat: (Protocol.Tracing.StreamFormat|undefined), options: (string|undefined), categories: (string|undefined), streamCompression: (Protocol.Tracing.StreamCompression|undefined)}} */
+Protocol.TracingAgent.StartRequest;
+/** @typedef {Object|undefined} */
+Protocol.TracingAgent.StartResponse;
+/**
+ * @param {!Protocol.TracingAgent.StartRequest} obj
+ * @return {!Promise<!Protocol.TracingAgent.StartResponse>} */
+Protocol.TracingAgent.prototype.invoke_start = function(obj) {};
+
+/** @typedef {!Object} */
+Protocol.Tracing.MemoryDumpConfig;
+
+/** @enum {string} */
+Protocol.Tracing.TraceConfigRecordMode = {
+    RecordUntilFull: "recordUntilFull",
+    RecordContinuously: "recordContinuously",
+    RecordAsMuchAsPossible: "recordAsMuchAsPossible",
+    EchoToConsole: "echoToConsole"
+};
+
+/** @typedef {!{recordMode:(Protocol.Tracing.TraceConfigRecordMode|undefined), enableSampling:(boolean|undefined), enableSystrace:(boolean|undefined), enableArgumentFilter:(boolean|undefined), includedCategories:(!Array<string>|undefined), excludedCategories:(!Array<string>|undefined), syntheticDelays:(!Array<string>|undefined), memoryDumpConfig:(Protocol.Tracing.MemoryDumpConfig|undefined)}} */
+Protocol.Tracing.TraceConfig;
+
+/** @enum {string} */
+Protocol.Tracing.StreamFormat = {
+    Json: "json",
+    Proto: "proto"
+};
+
+/** @enum {string} */
+Protocol.Tracing.StreamCompression = {
+    None: "none",
+    Gzip: "gzip"
+};
+/** @interface */
+Protocol.TracingDispatcher = function() {};
+/**
+ * @param {number=} opt_percentFull
+ * @param {number=} opt_eventCount
+ * @param {number=} opt_value
+ */
+Protocol.TracingDispatcher.prototype.bufferUsage = function(opt_percentFull, opt_eventCount, opt_value) {};
+/**
+ * @param {!Array<!Object>} value
+ */
+Protocol.TracingDispatcher.prototype.dataCollected = function(value) {};
+/**
+ * @param {boolean} dataLossOccurred
+ * @param {Protocol.IO.StreamHandle=} opt_stream
+ * @param {Protocol.Tracing.StreamFormat=} opt_traceFormat
+ * @param {Protocol.Tracing.StreamCompression=} opt_streamCompression
+ */
+Protocol.TracingDispatcher.prototype.tracingComplete = function(dataLossOccurred, opt_stream, opt_traceFormat, opt_streamCompression) {};
+Protocol.Fetch = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.FetchAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.DisableResponse;
+/**
+ * @param {!Protocol.FetchAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.DisableResponse>} */
+Protocol.FetchAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {!Array<Protocol.Fetch.RequestPattern>=} opt_patterns
+ * @param {boolean=} opt_handleAuthRequests
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.enable = function(opt_patterns, opt_handleAuthRequests) {};
+/** @typedef {!{patterns: (!Array<Protocol.Fetch.RequestPattern>|undefined), handleAuthRequests: (boolean|undefined)}} */
+Protocol.FetchAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.EnableResponse;
+/**
+ * @param {!Protocol.FetchAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.EnableResponse>} */
+Protocol.FetchAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {Protocol.Network.ErrorReason} errorReason
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.failRequest = function(requestId, errorReason) {};
+/** @typedef {!{requestId: Protocol.Fetch.RequestId, errorReason: Protocol.Network.ErrorReason}} */
+Protocol.FetchAgent.FailRequestRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.FailRequestResponse;
+/**
+ * @param {!Protocol.FetchAgent.FailRequestRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.FailRequestResponse>} */
+Protocol.FetchAgent.prototype.invoke_failRequest = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {number} responseCode
+ * @param {!Array<Protocol.Fetch.HeaderEntry>=} opt_responseHeaders
+ * @param {string=} opt_binaryResponseHeaders
+ * @param {string=} opt_body
+ * @param {string=} opt_responsePhrase
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.fulfillRequest = function(requestId, responseCode, opt_responseHeaders, opt_binaryResponseHeaders, opt_body, opt_responsePhrase) {};
+/** @typedef {!{body: (string|undefined), binaryResponseHeaders: (string|undefined), requestId: Protocol.Fetch.RequestId, responseCode: number, responsePhrase: (string|undefined), responseHeaders: (!Array<Protocol.Fetch.HeaderEntry>|undefined)}} */
+Protocol.FetchAgent.FulfillRequestRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.FulfillRequestResponse;
+/**
+ * @param {!Protocol.FetchAgent.FulfillRequestRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.FulfillRequestResponse>} */
+Protocol.FetchAgent.prototype.invoke_fulfillRequest = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {string=} opt_url
+ * @param {string=} opt_method
+ * @param {string=} opt_postData
+ * @param {!Array<Protocol.Fetch.HeaderEntry>=} opt_headers
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.continueRequest = function(requestId, opt_url, opt_method, opt_postData, opt_headers) {};
+/** @typedef {!{url: (string|undefined), headers: (!Array<Protocol.Fetch.HeaderEntry>|undefined), requestId: Protocol.Fetch.RequestId, postData: (string|undefined), method: (string|undefined)}} */
+Protocol.FetchAgent.ContinueRequestRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.ContinueRequestResponse;
+/**
+ * @param {!Protocol.FetchAgent.ContinueRequestRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.ContinueRequestResponse>} */
+Protocol.FetchAgent.prototype.invoke_continueRequest = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {Protocol.Fetch.AuthChallengeResponse} authChallengeResponse
+ * @return {!Promise<undefined>}
+ */
+Protocol.FetchAgent.prototype.continueWithAuth = function(requestId, authChallengeResponse) {};
+/** @typedef {!{authChallengeResponse: Protocol.Fetch.AuthChallengeResponse, requestId: Protocol.Fetch.RequestId}} */
+Protocol.FetchAgent.ContinueWithAuthRequest;
+/** @typedef {Object|undefined} */
+Protocol.FetchAgent.ContinueWithAuthResponse;
+/**
+ * @param {!Protocol.FetchAgent.ContinueWithAuthRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.ContinueWithAuthResponse>} */
+Protocol.FetchAgent.prototype.invoke_continueWithAuth = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @return {!Promise<?string>}
+ */
+Protocol.FetchAgent.prototype.getResponseBody = function(requestId) {};
+/** @typedef {!{requestId: Protocol.Fetch.RequestId}} */
+Protocol.FetchAgent.GetResponseBodyRequest;
+/** @typedef {!{body: string, base64Encoded: boolean}} */
+Protocol.FetchAgent.GetResponseBodyResponse;
+/**
+ * @param {!Protocol.FetchAgent.GetResponseBodyRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.GetResponseBodyResponse>} */
+Protocol.FetchAgent.prototype.invoke_getResponseBody = function(obj) {};
+
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @return {!Promise<?Protocol.IO.StreamHandle>}
+ */
+Protocol.FetchAgent.prototype.takeResponseBodyAsStream = function(requestId) {};
+/** @typedef {!{requestId: Protocol.Fetch.RequestId}} */
+Protocol.FetchAgent.TakeResponseBodyAsStreamRequest;
+/** @typedef {!{stream: Protocol.IO.StreamHandle}} */
+Protocol.FetchAgent.TakeResponseBodyAsStreamResponse;
+/**
+ * @param {!Protocol.FetchAgent.TakeResponseBodyAsStreamRequest} obj
+ * @return {!Promise<!Protocol.FetchAgent.TakeResponseBodyAsStreamResponse>} */
+Protocol.FetchAgent.prototype.invoke_takeResponseBodyAsStream = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Fetch.RequestId;
+
+/** @enum {string} */
+Protocol.Fetch.RequestStage = {
+    Request: "Request",
+    Response: "Response"
+};
+
+/** @typedef {!{urlPattern:(string|undefined), resourceType:(Protocol.Network.ResourceType|undefined), requestStage:(Protocol.Fetch.RequestStage|undefined)}} */
+Protocol.Fetch.RequestPattern;
+
+/** @typedef {!{name:(string), value:(string)}} */
+Protocol.Fetch.HeaderEntry;
+
+/** @enum {string} */
+Protocol.Fetch.AuthChallengeSource = {
+    Server: "Server",
+    Proxy: "Proxy"
+};
+
+/** @typedef {!{source:(Protocol.Fetch.AuthChallengeSource|undefined), origin:(string), scheme:(string), realm:(string)}} */
+Protocol.Fetch.AuthChallenge;
+
+/** @enum {string} */
+Protocol.Fetch.AuthChallengeResponseResponse = {
+    Default: "Default",
+    CancelAuth: "CancelAuth",
+    ProvideCredentials: "ProvideCredentials"
+};
+
+/** @typedef {!{response:(Protocol.Fetch.AuthChallengeResponseResponse), username:(string|undefined), password:(string|undefined)}} */
+Protocol.Fetch.AuthChallengeResponse;
+/** @interface */
+Protocol.FetchDispatcher = function() {};
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {Protocol.Network.Request} request
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Network.ResourceType} resourceType
+ * @param {Protocol.Network.ErrorReason=} opt_responseErrorReason
+ * @param {number=} opt_responseStatusCode
+ * @param {!Array<Protocol.Fetch.HeaderEntry>=} opt_responseHeaders
+ * @param {Protocol.Fetch.RequestId=} opt_networkId
+ */
+Protocol.FetchDispatcher.prototype.requestPaused = function(requestId, request, frameId, resourceType, opt_responseErrorReason, opt_responseStatusCode, opt_responseHeaders, opt_networkId) {};
+/**
+ * @param {Protocol.Fetch.RequestId} requestId
+ * @param {Protocol.Network.Request} request
+ * @param {Protocol.Page.FrameId} frameId
+ * @param {Protocol.Network.ResourceType} resourceType
+ * @param {Protocol.Fetch.AuthChallenge} authChallenge
+ */
+Protocol.FetchDispatcher.prototype.authRequired = function(requestId, request, frameId, resourceType, authChallenge) {};
+Protocol.WebAudio = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.WebAudioAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAudioAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.WebAudioAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAudioAgent.EnableResponse;
+/**
+ * @param {!Protocol.WebAudioAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.WebAudioAgent.EnableResponse>} */
+Protocol.WebAudioAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAudioAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.WebAudioAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAudioAgent.DisableResponse;
+/**
+ * @param {!Protocol.WebAudioAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.WebAudioAgent.DisableResponse>} */
+Protocol.WebAudioAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @return {!Promise<?Protocol.WebAudio.ContextRealtimeData>}
+ */
+Protocol.WebAudioAgent.prototype.getRealtimeData = function(contextId) {};
+/** @typedef {!{contextId: Protocol.WebAudio.GraphObjectId}} */
+Protocol.WebAudioAgent.GetRealtimeDataRequest;
+/** @typedef {!{realtimeData: Protocol.WebAudio.ContextRealtimeData}} */
+Protocol.WebAudioAgent.GetRealtimeDataResponse;
+/**
+ * @param {!Protocol.WebAudioAgent.GetRealtimeDataRequest} obj
+ * @return {!Promise<!Protocol.WebAudioAgent.GetRealtimeDataResponse>} */
+Protocol.WebAudioAgent.prototype.invoke_getRealtimeData = function(obj) {};
+
+/** @typedef {string} */
+Protocol.WebAudio.GraphObjectId;
+
+/** @enum {string} */
+Protocol.WebAudio.ContextType = {
+    Realtime: "realtime",
+    Offline: "offline"
+};
+
+/** @enum {string} */
+Protocol.WebAudio.ContextState = {
+    Suspended: "suspended",
+    Running: "running",
+    Closed: "closed"
+};
+
+/** @typedef {string} */
+Protocol.WebAudio.NodeType;
+
+/** @enum {string} */
+Protocol.WebAudio.ChannelCountMode = {
+    ClampedMax: "clamped-max",
+    Explicit: "explicit",
+    Max: "max"
+};
+
+/** @enum {string} */
+Protocol.WebAudio.ChannelInterpretation = {
+    Discrete: "discrete",
+    Speakers: "speakers"
+};
+
+/** @typedef {string} */
+Protocol.WebAudio.ParamType;
+
+/** @enum {string} */
+Protocol.WebAudio.AutomationRate = {
+    ARate: "a-rate",
+    KRate: "k-rate"
+};
+
+/** @typedef {!{currentTime:(number), renderCapacity:(number), callbackIntervalMean:(number), callbackIntervalVariance:(number)}} */
+Protocol.WebAudio.ContextRealtimeData;
+
+/** @typedef {!{contextId:(Protocol.WebAudio.GraphObjectId), contextType:(Protocol.WebAudio.ContextType), contextState:(Protocol.WebAudio.ContextState), realtimeData:(Protocol.WebAudio.ContextRealtimeData|undefined), callbackBufferSize:(number), maxOutputChannelCount:(number), sampleRate:(number)}} */
+Protocol.WebAudio.BaseAudioContext;
+
+/** @typedef {!{listenerId:(Protocol.WebAudio.GraphObjectId), contextId:(Protocol.WebAudio.GraphObjectId)}} */
+Protocol.WebAudio.AudioListener;
+
+/** @typedef {!{nodeId:(Protocol.WebAudio.GraphObjectId), contextId:(Protocol.WebAudio.GraphObjectId), nodeType:(Protocol.WebAudio.NodeType), numberOfInputs:(number), numberOfOutputs:(number), channelCount:(number), channelCountMode:(Protocol.WebAudio.ChannelCountMode), channelInterpretation:(Protocol.WebAudio.ChannelInterpretation)}} */
+Protocol.WebAudio.AudioNode;
+
+/** @typedef {!{paramId:(Protocol.WebAudio.GraphObjectId), nodeId:(Protocol.WebAudio.GraphObjectId), contextId:(Protocol.WebAudio.GraphObjectId), paramType:(Protocol.WebAudio.ParamType), rate:(Protocol.WebAudio.AutomationRate), defaultValue:(number), minValue:(number), maxValue:(number)}} */
+Protocol.WebAudio.AudioParam;
+/** @interface */
+Protocol.WebAudioDispatcher = function() {};
+/**
+ * @param {Protocol.WebAudio.BaseAudioContext} context
+ */
+Protocol.WebAudioDispatcher.prototype.contextCreated = function(context) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ */
+Protocol.WebAudioDispatcher.prototype.contextWillBeDestroyed = function(contextId) {};
+/**
+ * @param {Protocol.WebAudio.BaseAudioContext} context
+ */
+Protocol.WebAudioDispatcher.prototype.contextChanged = function(context) {};
+/**
+ * @param {Protocol.WebAudio.AudioListener} listener
+ */
+Protocol.WebAudioDispatcher.prototype.audioListenerCreated = function(listener) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} listenerId
+ */
+Protocol.WebAudioDispatcher.prototype.audioListenerWillBeDestroyed = function(contextId, listenerId) {};
+/**
+ * @param {Protocol.WebAudio.AudioNode} node
+ */
+Protocol.WebAudioDispatcher.prototype.audioNodeCreated = function(node) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} nodeId
+ */
+Protocol.WebAudioDispatcher.prototype.audioNodeWillBeDestroyed = function(contextId, nodeId) {};
+/**
+ * @param {Protocol.WebAudio.AudioParam} param
+ */
+Protocol.WebAudioDispatcher.prototype.audioParamCreated = function(param) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} nodeId
+ * @param {Protocol.WebAudio.GraphObjectId} paramId
+ */
+Protocol.WebAudioDispatcher.prototype.audioParamWillBeDestroyed = function(contextId, nodeId, paramId) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} sourceId
+ * @param {Protocol.WebAudio.GraphObjectId} destinationId
+ * @param {number=} opt_sourceOutputIndex
+ * @param {number=} opt_destinationInputIndex
+ */
+Protocol.WebAudioDispatcher.prototype.nodesConnected = function(contextId, sourceId, destinationId, opt_sourceOutputIndex, opt_destinationInputIndex) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} sourceId
+ * @param {Protocol.WebAudio.GraphObjectId} destinationId
+ * @param {number=} opt_sourceOutputIndex
+ * @param {number=} opt_destinationInputIndex
+ */
+Protocol.WebAudioDispatcher.prototype.nodesDisconnected = function(contextId, sourceId, destinationId, opt_sourceOutputIndex, opt_destinationInputIndex) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} sourceId
+ * @param {Protocol.WebAudio.GraphObjectId} destinationId
+ * @param {number=} opt_sourceOutputIndex
+ */
+Protocol.WebAudioDispatcher.prototype.nodeParamConnected = function(contextId, sourceId, destinationId, opt_sourceOutputIndex) {};
+/**
+ * @param {Protocol.WebAudio.GraphObjectId} contextId
+ * @param {Protocol.WebAudio.GraphObjectId} sourceId
+ * @param {Protocol.WebAudio.GraphObjectId} destinationId
+ * @param {number=} opt_sourceOutputIndex
+ */
+Protocol.WebAudioDispatcher.prototype.nodeParamDisconnected = function(contextId, sourceId, destinationId, opt_sourceOutputIndex) {};
+Protocol.WebAuthn = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.WebAuthnAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.EnableResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.EnableResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.DisableResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.DisableResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.VirtualAuthenticatorOptions} options
+ * @return {!Promise<?Protocol.WebAuthn.AuthenticatorId>}
+ */
+Protocol.WebAuthnAgent.prototype.addVirtualAuthenticator = function(options) {};
+/** @typedef {!{options: Protocol.WebAuthn.VirtualAuthenticatorOptions}} */
+Protocol.WebAuthnAgent.AddVirtualAuthenticatorRequest;
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.AddVirtualAuthenticatorResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.AddVirtualAuthenticatorRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.AddVirtualAuthenticatorResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_addVirtualAuthenticator = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.removeVirtualAuthenticator = function(authenticatorId) {};
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.RemoveVirtualAuthenticatorRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.RemoveVirtualAuthenticatorResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.RemoveVirtualAuthenticatorRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.RemoveVirtualAuthenticatorResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_removeVirtualAuthenticator = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @param {Protocol.WebAuthn.Credential} credential
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.addCredential = function(authenticatorId, credential) {};
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId, credential: Protocol.WebAuthn.Credential}} */
+Protocol.WebAuthnAgent.AddCredentialRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.AddCredentialResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.AddCredentialRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.AddCredentialResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_addCredential = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @param {string} credentialId
+ * @return {!Promise<?Protocol.WebAuthn.Credential>}
+ */
+Protocol.WebAuthnAgent.prototype.getCredential = function(authenticatorId, credentialId) {};
+/** @typedef {!{credentialId: string, authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.GetCredentialRequest;
+/** @typedef {!{credential: Protocol.WebAuthn.Credential}} */
+Protocol.WebAuthnAgent.GetCredentialResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.GetCredentialRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.GetCredentialResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_getCredential = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @return {!Promise<?Array<Protocol.WebAuthn.Credential>>}
+ */
+Protocol.WebAuthnAgent.prototype.getCredentials = function(authenticatorId) {};
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.GetCredentialsRequest;
+/** @typedef {!{credentials: !Array<Protocol.WebAuthn.Credential>}} */
+Protocol.WebAuthnAgent.GetCredentialsResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.GetCredentialsRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.GetCredentialsResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_getCredentials = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @param {string} credentialId
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.removeCredential = function(authenticatorId, credentialId) {};
+/** @typedef {!{credentialId: string, authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.RemoveCredentialRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.RemoveCredentialResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.RemoveCredentialRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.RemoveCredentialResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_removeCredential = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.clearCredentials = function(authenticatorId) {};
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId}} */
+Protocol.WebAuthnAgent.ClearCredentialsRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.ClearCredentialsResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.ClearCredentialsRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.ClearCredentialsResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_clearCredentials = function(obj) {};
+
+/**
+ * @param {Protocol.WebAuthn.AuthenticatorId} authenticatorId
+ * @param {boolean} isUserVerified
+ * @return {!Promise<undefined>}
+ */
+Protocol.WebAuthnAgent.prototype.setUserVerified = function(authenticatorId, isUserVerified) {};
+/** @typedef {!{authenticatorId: Protocol.WebAuthn.AuthenticatorId, isUserVerified: boolean}} */
+Protocol.WebAuthnAgent.SetUserVerifiedRequest;
+/** @typedef {Object|undefined} */
+Protocol.WebAuthnAgent.SetUserVerifiedResponse;
+/**
+ * @param {!Protocol.WebAuthnAgent.SetUserVerifiedRequest} obj
+ * @return {!Promise<!Protocol.WebAuthnAgent.SetUserVerifiedResponse>} */
+Protocol.WebAuthnAgent.prototype.invoke_setUserVerified = function(obj) {};
+
+/** @typedef {string} */
+Protocol.WebAuthn.AuthenticatorId;
+
+/** @enum {string} */
+Protocol.WebAuthn.AuthenticatorProtocol = {
+    U2f: "u2f",
+    Ctap2: "ctap2"
+};
+
+/** @enum {string} */
+Protocol.WebAuthn.AuthenticatorTransport = {
+    Usb: "usb",
+    Nfc: "nfc",
+    Ble: "ble",
+    Cable: "cable",
+    Internal: "internal"
+};
+
+/** @typedef {!{protocol:(Protocol.WebAuthn.AuthenticatorProtocol), transport:(Protocol.WebAuthn.AuthenticatorTransport), hasResidentKey:(boolean|undefined), hasUserVerification:(boolean|undefined), automaticPresenceSimulation:(boolean|undefined), isUserVerified:(boolean|undefined)}} */
+Protocol.WebAuthn.VirtualAuthenticatorOptions;
+
+/** @typedef {!{credentialId:(string), isResidentCredential:(boolean), rpId:(string|undefined), privateKey:(string), userHandle:(string|undefined), signCount:(number)}} */
+Protocol.WebAuthn.Credential;
+/** @interface */
+Protocol.WebAuthnDispatcher = function() {};
+Protocol.Media = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.MediaAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.MediaAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MediaAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.MediaAgent.EnableResponse;
+/**
+ * @param {!Protocol.MediaAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.MediaAgent.EnableResponse>} */
+Protocol.MediaAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.MediaAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.MediaAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.MediaAgent.DisableResponse;
+/**
+ * @param {!Protocol.MediaAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.MediaAgent.DisableResponse>} */
+Protocol.MediaAgent.prototype.invoke_disable = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Media.PlayerId;
+
+/** @typedef {number} */
+Protocol.Media.Timestamp;
+
+/** @typedef {!{name:(string), value:(string|undefined)}} */
+Protocol.Media.PlayerProperty;
+
+/** @enum {string} */
+Protocol.Media.PlayerEventType = {
+    PlaybackEvent: "playbackEvent",
+    SystemEvent: "systemEvent",
+    MessageEvent: "messageEvent"
+};
+
+/** @typedef {!{type:(Protocol.Media.PlayerEventType), timestamp:(Protocol.Media.Timestamp), name:(string), value:(string)}} */
+Protocol.Media.PlayerEvent;
+/** @interface */
+Protocol.MediaDispatcher = function() {};
+/**
+ * @param {Protocol.Media.PlayerId} playerId
+ * @param {!Array<Protocol.Media.PlayerProperty>} properties
+ */
+Protocol.MediaDispatcher.prototype.playerPropertiesChanged = function(playerId, properties) {};
+/**
+ * @param {Protocol.Media.PlayerId} playerId
+ * @param {!Array<Protocol.Media.PlayerEvent>} events
+ */
+Protocol.MediaDispatcher.prototype.playerEventsAdded = function(playerId, events) {};
+/**
+ * @param {!Array<Protocol.Media.PlayerId>} players
+ */
+Protocol.MediaDispatcher.prototype.playersCreated = function(players) {};
+Protocol.Console = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.ConsoleAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ConsoleAgent.prototype.clearMessages = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.ClearMessagesRequest;
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.ClearMessagesResponse;
+/**
+ * @param {!Protocol.ConsoleAgent.ClearMessagesRequest} obj
+ * @return {!Promise<!Protocol.ConsoleAgent.ClearMessagesResponse>} */
+Protocol.ConsoleAgent.prototype.invoke_clearMessages = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ConsoleAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.DisableResponse;
+/**
+ * @param {!Protocol.ConsoleAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.ConsoleAgent.DisableResponse>} */
+Protocol.ConsoleAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ConsoleAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ConsoleAgent.EnableResponse;
+/**
+ * @param {!Protocol.ConsoleAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.ConsoleAgent.EnableResponse>} */
+Protocol.ConsoleAgent.prototype.invoke_enable = function(obj) {};
+
+/** @enum {string} */
+Protocol.Console.ConsoleMessageSource = {
+    XML: "xml",
+    Javascript: "javascript",
+    Network: "network",
+    ConsoleAPI: "console-api",
+    Storage: "storage",
+    Appcache: "appcache",
+    Rendering: "rendering",
+    Security: "security",
+    Other: "other",
+    Deprecation: "deprecation",
+    Worker: "worker"
+};
+
+/** @enum {string} */
+Protocol.Console.ConsoleMessageLevel = {
+    Log: "log",
+    Warning: "warning",
+    Error: "error",
+    Debug: "debug",
+    Info: "info"
+};
+
+/** @typedef {!{source:(Protocol.Console.ConsoleMessageSource), level:(Protocol.Console.ConsoleMessageLevel), text:(string), url:(string|undefined), line:(number|undefined), column:(number|undefined)}} */
+Protocol.Console.ConsoleMessage;
+/** @interface */
+Protocol.ConsoleDispatcher = function() {};
+/**
+ * @param {Protocol.Console.ConsoleMessage} message
+ */
+Protocol.ConsoleDispatcher.prototype.messageAdded = function(message) {};
+Protocol.Debugger = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.DebuggerAgent = function(){};
+
+/**
+ * @param {Protocol.Debugger.Location} location
+ * @param {string=} opt_targetCallFrames
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.continueToLocation = function(location, opt_targetCallFrames) {};
+/** @typedef {!{location: Protocol.Debugger.Location, targetCallFrames: (string|undefined)}} */
+Protocol.DebuggerAgent.ContinueToLocationRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.ContinueToLocationResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.ContinueToLocationRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.ContinueToLocationResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_continueToLocation = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.DisableResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.DisableResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @param {number=} opt_maxScriptsCacheSize
+ * @return {!Promise<?Protocol.Runtime.UniqueDebuggerId>}
+ */
+Protocol.DebuggerAgent.prototype.enable = function(opt_maxScriptsCacheSize) {};
+/** @typedef {!{maxScriptsCacheSize: (number|undefined)}} */
+Protocol.DebuggerAgent.EnableRequest;
+/** @typedef {!{debuggerId: Protocol.Runtime.UniqueDebuggerId}} */
+Protocol.DebuggerAgent.EnableResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.EnableResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.Debugger.CallFrameId} callFrameId
+ * @param {string} expression
+ * @param {string=} opt_objectGroup
+ * @param {boolean=} opt_includeCommandLineAPI
+ * @param {boolean=} opt_silent
+ * @param {boolean=} opt_returnByValue
+ * @param {boolean=} opt_generatePreview
+ * @param {boolean=} opt_throwOnSideEffect
+ * @param {Protocol.Runtime.TimeDelta=} opt_timeout
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.DebuggerAgent.prototype.evaluateOnCallFrame = function(callFrameId, expression, opt_objectGroup, opt_includeCommandLineAPI, opt_silent, opt_returnByValue, opt_generatePreview, opt_throwOnSideEffect, opt_timeout) {};
+/** @typedef {!{objectGroup: (string|undefined), includeCommandLineAPI: (boolean|undefined), silent: (boolean|undefined), throwOnSideEffect: (boolean|undefined), generatePreview: (boolean|undefined), returnByValue: (boolean|undefined), callFrameId: Protocol.Debugger.CallFrameId, timeout: (Protocol.Runtime.TimeDelta|undefined), expression: string}} */
+Protocol.DebuggerAgent.EvaluateOnCallFrameRequest;
+/** @typedef {!{exceptionDetails: Protocol.Runtime.ExceptionDetails, result: Protocol.Runtime.RemoteObject}} */
+Protocol.DebuggerAgent.EvaluateOnCallFrameResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.EvaluateOnCallFrameRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.EvaluateOnCallFrameResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_evaluateOnCallFrame = function(obj) {};
+
+/**
+ * @param {Protocol.Debugger.Location} start
+ * @param {Protocol.Debugger.Location=} opt_end
+ * @param {boolean=} opt_restrictToFunction
+ * @return {!Promise<?Array<Protocol.Debugger.BreakLocation>>}
+ */
+Protocol.DebuggerAgent.prototype.getPossibleBreakpoints = function(start, opt_end, opt_restrictToFunction) {};
+/** @typedef {!{start: Protocol.Debugger.Location, end: (Protocol.Debugger.Location|undefined), restrictToFunction: (boolean|undefined)}} */
+Protocol.DebuggerAgent.GetPossibleBreakpointsRequest;
+/** @typedef {!{locations: !Array<Protocol.Debugger.BreakLocation>}} */
+Protocol.DebuggerAgent.GetPossibleBreakpointsResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.GetPossibleBreakpointsRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.GetPossibleBreakpointsResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_getPossibleBreakpoints = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @return {!Promise<?string>}
+ */
+Protocol.DebuggerAgent.prototype.getScriptSource = function(scriptId) {};
+/** @typedef {!{scriptId: Protocol.Runtime.ScriptId}} */
+Protocol.DebuggerAgent.GetScriptSourceRequest;
+/** @typedef {!{scriptSource: string}} */
+Protocol.DebuggerAgent.GetScriptSourceResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.GetScriptSourceRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.GetScriptSourceResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_getScriptSource = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @return {!Promise<?string>}
+ */
+Protocol.DebuggerAgent.prototype.getWasmBytecode = function(scriptId) {};
+/** @typedef {!{scriptId: Protocol.Runtime.ScriptId}} */
+Protocol.DebuggerAgent.GetWasmBytecodeRequest;
+/** @typedef {!{bytecode: string}} */
+Protocol.DebuggerAgent.GetWasmBytecodeResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.GetWasmBytecodeRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.GetWasmBytecodeResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_getWasmBytecode = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.StackTraceId} stackTraceId
+ * @return {!Promise<?Protocol.Runtime.StackTrace>}
+ */
+Protocol.DebuggerAgent.prototype.getStackTrace = function(stackTraceId) {};
+/** @typedef {!{stackTraceId: Protocol.Runtime.StackTraceId}} */
+Protocol.DebuggerAgent.GetStackTraceRequest;
+/** @typedef {!{stackTrace: Protocol.Runtime.StackTrace}} */
+Protocol.DebuggerAgent.GetStackTraceResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.GetStackTraceRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.GetStackTraceResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_getStackTrace = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.pause = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.PauseRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.PauseResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.PauseRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.PauseResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_pause = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.StackTraceId} parentStackTraceId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.pauseOnAsyncCall = function(parentStackTraceId) {};
+/** @typedef {!{parentStackTraceId: Protocol.Runtime.StackTraceId}} */
+Protocol.DebuggerAgent.PauseOnAsyncCallRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.PauseOnAsyncCallResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.PauseOnAsyncCallRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.PauseOnAsyncCallResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_pauseOnAsyncCall = function(obj) {};
+
+/**
+ * @param {Protocol.Debugger.BreakpointId} breakpointId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.removeBreakpoint = function(breakpointId) {};
+/** @typedef {!{breakpointId: Protocol.Debugger.BreakpointId}} */
+Protocol.DebuggerAgent.RemoveBreakpointRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.RemoveBreakpointResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.RemoveBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.RemoveBreakpointResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_removeBreakpoint = function(obj) {};
+
+/**
+ * @param {Protocol.Debugger.CallFrameId} callFrameId
+ * @return {!Promise<?Array<Protocol.Debugger.CallFrame>>}
+ */
+Protocol.DebuggerAgent.prototype.restartFrame = function(callFrameId) {};
+/** @typedef {!{callFrameId: Protocol.Debugger.CallFrameId}} */
+Protocol.DebuggerAgent.RestartFrameRequest;
+/** @typedef {!{asyncStackTrace: Protocol.Runtime.StackTrace, asyncStackTraceId: Protocol.Runtime.StackTraceId, callFrames: !Array<Protocol.Debugger.CallFrame>}} */
+Protocol.DebuggerAgent.RestartFrameResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.RestartFrameRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.RestartFrameResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_restartFrame = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.resume = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.ResumeRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.ResumeResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.ResumeRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.ResumeResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_resume = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {string} query
+ * @param {boolean=} opt_caseSensitive
+ * @param {boolean=} opt_isRegex
+ * @return {!Promise<?Array<Protocol.Debugger.SearchMatch>>}
+ */
+Protocol.DebuggerAgent.prototype.searchInContent = function(scriptId, query, opt_caseSensitive, opt_isRegex) {};
+/** @typedef {!{query: string, scriptId: Protocol.Runtime.ScriptId, isRegex: (boolean|undefined), caseSensitive: (boolean|undefined)}} */
+Protocol.DebuggerAgent.SearchInContentRequest;
+/** @typedef {!{result: !Array<Protocol.Debugger.SearchMatch>}} */
+Protocol.DebuggerAgent.SearchInContentResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SearchInContentRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SearchInContentResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_searchInContent = function(obj) {};
+
+/**
+ * @param {number} maxDepth
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setAsyncCallStackDepth = function(maxDepth) {};
+/** @typedef {!{maxDepth: number}} */
+Protocol.DebuggerAgent.SetAsyncCallStackDepthRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetAsyncCallStackDepthResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetAsyncCallStackDepthRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetAsyncCallStackDepthResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setAsyncCallStackDepth = function(obj) {};
+
+/**
+ * @param {!Array<string>} patterns
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setBlackboxPatterns = function(patterns) {};
+/** @typedef {!{patterns: !Array<string>}} */
+Protocol.DebuggerAgent.SetBlackboxPatternsRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetBlackboxPatternsResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBlackboxPatternsRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBlackboxPatternsResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBlackboxPatterns = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {!Array<Protocol.Debugger.ScriptPosition>} positions
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setBlackboxedRanges = function(scriptId, positions) {};
+/** @typedef {!{positions: !Array<Protocol.Debugger.ScriptPosition>, scriptId: Protocol.Runtime.ScriptId}} */
+Protocol.DebuggerAgent.SetBlackboxedRangesRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetBlackboxedRangesResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBlackboxedRangesRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBlackboxedRangesResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBlackboxedRanges = function(obj) {};
+
+/**
+ * @param {Protocol.Debugger.Location} location
+ * @param {string=} opt_condition
+ * @return {!Promise<?Protocol.Debugger.BreakpointId>}
+ */
+Protocol.DebuggerAgent.prototype.setBreakpoint = function(location, opt_condition) {};
+/** @typedef {!{location: Protocol.Debugger.Location, condition: (string|undefined)}} */
+Protocol.DebuggerAgent.SetBreakpointRequest;
+/** @typedef {!{actualLocation: Protocol.Debugger.Location, breakpointId: Protocol.Debugger.BreakpointId}} */
+Protocol.DebuggerAgent.SetBreakpointResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBreakpointResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBreakpoint = function(obj) {};
+
+/**
+ * @param {string} instrumentation
+ * @return {!Promise<?Protocol.Debugger.BreakpointId>}
+ */
+Protocol.DebuggerAgent.prototype.setInstrumentationBreakpoint = function(instrumentation) {};
+/** @typedef {!{instrumentation: string}} */
+Protocol.DebuggerAgent.SetInstrumentationBreakpointRequest;
+/** @typedef {!{breakpointId: Protocol.Debugger.BreakpointId}} */
+Protocol.DebuggerAgent.SetInstrumentationBreakpointResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetInstrumentationBreakpointRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetInstrumentationBreakpointResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setInstrumentationBreakpoint = function(obj) {};
+
+/**
+ * @param {number} lineNumber
+ * @param {string=} opt_url
+ * @param {string=} opt_urlRegex
+ * @param {string=} opt_scriptHash
+ * @param {number=} opt_columnNumber
+ * @param {string=} opt_condition
+ * @return {!Promise<?Protocol.Debugger.BreakpointId>}
+ */
+Protocol.DebuggerAgent.prototype.setBreakpointByUrl = function(lineNumber, opt_url, opt_urlRegex, opt_scriptHash, opt_columnNumber, opt_condition) {};
+/** @typedef {!{columnNumber: (number|undefined), urlRegex: (string|undefined), url: (string|undefined), lineNumber: number, scriptHash: (string|undefined), condition: (string|undefined)}} */
+Protocol.DebuggerAgent.SetBreakpointByUrlRequest;
+/** @typedef {!{breakpointId: Protocol.Debugger.BreakpointId, locations: !Array<Protocol.Debugger.Location>}} */
+Protocol.DebuggerAgent.SetBreakpointByUrlResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBreakpointByUrlRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBreakpointByUrlResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBreakpointByUrl = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @param {string=} opt_condition
+ * @return {!Promise<?Protocol.Debugger.BreakpointId>}
+ */
+Protocol.DebuggerAgent.prototype.setBreakpointOnFunctionCall = function(objectId, opt_condition) {};
+/** @typedef {!{condition: (string|undefined), objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.DebuggerAgent.SetBreakpointOnFunctionCallRequest;
+/** @typedef {!{breakpointId: Protocol.Debugger.BreakpointId}} */
+Protocol.DebuggerAgent.SetBreakpointOnFunctionCallResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBreakpointOnFunctionCallRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBreakpointOnFunctionCallResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBreakpointOnFunctionCall = function(obj) {};
+
+/**
+ * @param {boolean} active
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setBreakpointsActive = function(active) {};
+/** @typedef {!{active: boolean}} */
+Protocol.DebuggerAgent.SetBreakpointsActiveRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetBreakpointsActiveResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetBreakpointsActiveRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetBreakpointsActiveResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setBreakpointsActive = function(obj) {};
+
+/**
+ * @param {string} state
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setPauseOnExceptions = function(state) {};
+/** @typedef {!{state: string}} */
+Protocol.DebuggerAgent.SetPauseOnExceptionsRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetPauseOnExceptionsResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetPauseOnExceptionsRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetPauseOnExceptionsResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setPauseOnExceptions = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.CallArgument} newValue
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setReturnValue = function(newValue) {};
+/** @typedef {!{newValue: Protocol.Runtime.CallArgument}} */
+Protocol.DebuggerAgent.SetReturnValueRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetReturnValueResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetReturnValueRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetReturnValueResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setReturnValue = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {string} scriptSource
+ * @param {boolean=} opt_dryRun
+ * @return {!Promise<?Array<Protocol.Debugger.CallFrame>>}
+ */
+Protocol.DebuggerAgent.prototype.setScriptSource = function(scriptId, scriptSource, opt_dryRun) {};
+/** @typedef {!{scriptId: Protocol.Runtime.ScriptId, dryRun: (boolean|undefined), scriptSource: string}} */
+Protocol.DebuggerAgent.SetScriptSourceRequest;
+/** @typedef {!{stackChanged: boolean, asyncStackTrace: Protocol.Runtime.StackTrace, exceptionDetails: Protocol.Runtime.ExceptionDetails, callFrames: !Array<Protocol.Debugger.CallFrame>, asyncStackTraceId: Protocol.Runtime.StackTraceId}} */
+Protocol.DebuggerAgent.SetScriptSourceResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetScriptSourceRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetScriptSourceResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setScriptSource = function(obj) {};
+
+/**
+ * @param {boolean} skip
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setSkipAllPauses = function(skip) {};
+/** @typedef {!{skip: boolean}} */
+Protocol.DebuggerAgent.SetSkipAllPausesRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetSkipAllPausesResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetSkipAllPausesRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetSkipAllPausesResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setSkipAllPauses = function(obj) {};
+
+/**
+ * @param {number} scopeNumber
+ * @param {string} variableName
+ * @param {Protocol.Runtime.CallArgument} newValue
+ * @param {Protocol.Debugger.CallFrameId} callFrameId
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.setVariableValue = function(scopeNumber, variableName, newValue, callFrameId) {};
+/** @typedef {!{callFrameId: Protocol.Debugger.CallFrameId, scopeNumber: number, variableName: string, newValue: Protocol.Runtime.CallArgument}} */
+Protocol.DebuggerAgent.SetVariableValueRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.SetVariableValueResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.SetVariableValueRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.SetVariableValueResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_setVariableValue = function(obj) {};
+
+/**
+ * @param {boolean=} opt_breakOnAsyncCall
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.stepInto = function(opt_breakOnAsyncCall) {};
+/** @typedef {!{breakOnAsyncCall: (boolean|undefined)}} */
+Protocol.DebuggerAgent.StepIntoRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.StepIntoResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.StepIntoRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.StepIntoResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_stepInto = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.stepOut = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.StepOutRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.StepOutResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.StepOutRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.StepOutResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_stepOut = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.DebuggerAgent.prototype.stepOver = function() {};
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.StepOverRequest;
+/** @typedef {Object|undefined} */
+Protocol.DebuggerAgent.StepOverResponse;
+/**
+ * @param {!Protocol.DebuggerAgent.StepOverRequest} obj
+ * @return {!Promise<!Protocol.DebuggerAgent.StepOverResponse>} */
+Protocol.DebuggerAgent.prototype.invoke_stepOver = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Debugger.BreakpointId;
+
+/** @typedef {string} */
+Protocol.Debugger.CallFrameId;
+
+/** @typedef {!{scriptId:(Protocol.Runtime.ScriptId), lineNumber:(number), columnNumber:(number|undefined)}} */
+Protocol.Debugger.Location;
+
+/** @typedef {!{lineNumber:(number), columnNumber:(number)}} */
+Protocol.Debugger.ScriptPosition;
+
+/** @typedef {!{callFrameId:(Protocol.Debugger.CallFrameId), functionName:(string), functionLocation:(Protocol.Debugger.Location|undefined), location:(Protocol.Debugger.Location), url:(string), scopeChain:(!Array<Protocol.Debugger.Scope>), this:(Protocol.Runtime.RemoteObject), returnValue:(Protocol.Runtime.RemoteObject|undefined)}} */
+Protocol.Debugger.CallFrame;
+
+/** @enum {string} */
+Protocol.Debugger.ScopeType = {
+    Global: "global",
+    Local: "local",
+    With: "with",
+    Closure: "closure",
+    Catch: "catch",
+    Block: "block",
+    Script: "script",
+    Eval: "eval",
+    Module: "module"
+};
+
+/** @typedef {!{type:(Protocol.Debugger.ScopeType), object:(Protocol.Runtime.RemoteObject), name:(string|undefined), startLocation:(Protocol.Debugger.Location|undefined), endLocation:(Protocol.Debugger.Location|undefined)}} */
+Protocol.Debugger.Scope;
+
+/** @typedef {!{lineNumber:(number), lineContent:(string)}} */
+Protocol.Debugger.SearchMatch;
+
+/** @enum {string} */
+Protocol.Debugger.BreakLocationType = {
+    DebuggerStatement: "debuggerStatement",
+    Call: "call",
+    Return: "return"
+};
+
+/** @typedef {!{scriptId:(Protocol.Runtime.ScriptId), lineNumber:(number), columnNumber:(number|undefined), type:(Protocol.Debugger.BreakLocationType|undefined)}} */
+Protocol.Debugger.BreakLocation;
+/** @constructor */
+Protocol.DebuggerDispatcher = function() {};
+/**
+ * @param {Protocol.Debugger.BreakpointId} breakpointId
+ * @param {Protocol.Debugger.Location} location
+ */
+Protocol.DebuggerDispatcher.prototype.breakpointResolved = function(breakpointId, location) {};
+/**
+ * @param {!Array<Protocol.Debugger.CallFrame>} callFrames
+ * @param {string} reason
+ * @param {!Object=} opt_data
+ * @param {!Array<string>=} opt_hitBreakpoints
+ * @param {Protocol.Runtime.StackTrace=} opt_asyncStackTrace
+ * @param {Protocol.Runtime.StackTraceId=} opt_asyncStackTraceId
+ * @param {Protocol.Runtime.StackTraceId=} opt_asyncCallStackTraceId
+ */
+Protocol.DebuggerDispatcher.prototype.paused = function(callFrames, reason, opt_data, opt_hitBreakpoints, opt_asyncStackTrace, opt_asyncStackTraceId, opt_asyncCallStackTraceId) {};
+Protocol.DebuggerDispatcher.prototype.resumed = function() {};
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {string} url
+ * @param {number} startLine
+ * @param {number} startColumn
+ * @param {number} endLine
+ * @param {number} endColumn
+ * @param {Protocol.Runtime.ExecutionContextId} executionContextId
+ * @param {string} hash
+ * @param {!Object=} opt_executionContextAuxData
+ * @param {string=} opt_sourceMapURL
+ * @param {boolean=} opt_hasSourceURL
+ * @param {boolean=} opt_isModule
+ * @param {number=} opt_length
+ * @param {Protocol.Runtime.StackTrace=} opt_stackTrace
+ */
+Protocol.DebuggerDispatcher.prototype.scriptFailedToParse = function(scriptId, url, startLine, startColumn, endLine, endColumn, executionContextId, hash, opt_executionContextAuxData, opt_sourceMapURL, opt_hasSourceURL, opt_isModule, opt_length, opt_stackTrace) {};
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {string} url
+ * @param {number} startLine
+ * @param {number} startColumn
+ * @param {number} endLine
+ * @param {number} endColumn
+ * @param {Protocol.Runtime.ExecutionContextId} executionContextId
+ * @param {string} hash
+ * @param {!Object=} opt_executionContextAuxData
+ * @param {boolean=} opt_isLiveEdit
+ * @param {string=} opt_sourceMapURL
+ * @param {boolean=} opt_hasSourceURL
+ * @param {boolean=} opt_isModule
+ * @param {number=} opt_length
+ * @param {Protocol.Runtime.StackTrace=} opt_stackTrace
+ */
+Protocol.DebuggerDispatcher.prototype.scriptParsed = function(scriptId, url, startLine, startColumn, endLine, endColumn, executionContextId, hash, opt_executionContextAuxData, opt_isLiveEdit, opt_sourceMapURL, opt_hasSourceURL, opt_isModule, opt_length, opt_stackTrace) {};
+Protocol.HeapProfiler = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.HeapProfilerAgent = function(){};
+
+/**
+ * @param {Protocol.HeapProfiler.HeapSnapshotObjectId} heapObjectId
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.addInspectedHeapObject = function(heapObjectId) {};
+/** @typedef {!{heapObjectId: Protocol.HeapProfiler.HeapSnapshotObjectId}} */
+Protocol.HeapProfilerAgent.AddInspectedHeapObjectRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.AddInspectedHeapObjectResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.AddInspectedHeapObjectRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.AddInspectedHeapObjectResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_addInspectedHeapObject = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.collectGarbage = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.CollectGarbageRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.CollectGarbageResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.CollectGarbageRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.CollectGarbageResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_collectGarbage = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.DisableResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.DisableResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.EnableResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.EnableResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @return {!Promise<?Protocol.HeapProfiler.HeapSnapshotObjectId>}
+ */
+Protocol.HeapProfilerAgent.prototype.getHeapObjectId = function(objectId) {};
+/** @typedef {!{objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.HeapProfilerAgent.GetHeapObjectIdRequest;
+/** @typedef {!{heapSnapshotObjectId: Protocol.HeapProfiler.HeapSnapshotObjectId}} */
+Protocol.HeapProfilerAgent.GetHeapObjectIdResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.GetHeapObjectIdRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.GetHeapObjectIdResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_getHeapObjectId = function(obj) {};
+
+/**
+ * @param {Protocol.HeapProfiler.HeapSnapshotObjectId} objectId
+ * @param {string=} opt_objectGroup
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.HeapProfilerAgent.prototype.getObjectByHeapObjectId = function(objectId, opt_objectGroup) {};
+/** @typedef {!{objectGroup: (string|undefined), objectId: Protocol.HeapProfiler.HeapSnapshotObjectId}} */
+Protocol.HeapProfilerAgent.GetObjectByHeapObjectIdRequest;
+/** @typedef {!{result: Protocol.Runtime.RemoteObject}} */
+Protocol.HeapProfilerAgent.GetObjectByHeapObjectIdResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.GetObjectByHeapObjectIdRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.GetObjectByHeapObjectIdResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_getObjectByHeapObjectId = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.HeapProfiler.SamplingHeapProfile>}
+ */
+Protocol.HeapProfilerAgent.prototype.getSamplingProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.GetSamplingProfileRequest;
+/** @typedef {!{profile: Protocol.HeapProfiler.SamplingHeapProfile}} */
+Protocol.HeapProfilerAgent.GetSamplingProfileResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.GetSamplingProfileRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.GetSamplingProfileResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_getSamplingProfile = function(obj) {};
+
+/**
+ * @param {number=} opt_samplingInterval
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.startSampling = function(opt_samplingInterval) {};
+/** @typedef {!{samplingInterval: (number|undefined)}} */
+Protocol.HeapProfilerAgent.StartSamplingRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.StartSamplingResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.StartSamplingRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.StartSamplingResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_startSampling = function(obj) {};
+
+/**
+ * @param {boolean=} opt_trackAllocations
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.startTrackingHeapObjects = function(opt_trackAllocations) {};
+/** @typedef {!{trackAllocations: (boolean|undefined)}} */
+Protocol.HeapProfilerAgent.StartTrackingHeapObjectsRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.StartTrackingHeapObjectsResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.StartTrackingHeapObjectsRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.StartTrackingHeapObjectsResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_startTrackingHeapObjects = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.HeapProfiler.SamplingHeapProfile>}
+ */
+Protocol.HeapProfilerAgent.prototype.stopSampling = function() {};
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.StopSamplingRequest;
+/** @typedef {!{profile: Protocol.HeapProfiler.SamplingHeapProfile}} */
+Protocol.HeapProfilerAgent.StopSamplingResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.StopSamplingRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.StopSamplingResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_stopSampling = function(obj) {};
+
+/**
+ * @param {boolean=} opt_reportProgress
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.stopTrackingHeapObjects = function(opt_reportProgress) {};
+/** @typedef {!{reportProgress: (boolean|undefined)}} */
+Protocol.HeapProfilerAgent.StopTrackingHeapObjectsRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.StopTrackingHeapObjectsResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.StopTrackingHeapObjectsRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.StopTrackingHeapObjectsResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_stopTrackingHeapObjects = function(obj) {};
+
+/**
+ * @param {boolean=} opt_reportProgress
+ * @return {!Promise<undefined>}
+ */
+Protocol.HeapProfilerAgent.prototype.takeHeapSnapshot = function(opt_reportProgress) {};
+/** @typedef {!{reportProgress: (boolean|undefined)}} */
+Protocol.HeapProfilerAgent.TakeHeapSnapshotRequest;
+/** @typedef {Object|undefined} */
+Protocol.HeapProfilerAgent.TakeHeapSnapshotResponse;
+/**
+ * @param {!Protocol.HeapProfilerAgent.TakeHeapSnapshotRequest} obj
+ * @return {!Promise<!Protocol.HeapProfilerAgent.TakeHeapSnapshotResponse>} */
+Protocol.HeapProfilerAgent.prototype.invoke_takeHeapSnapshot = function(obj) {};
+
+/** @typedef {string} */
+Protocol.HeapProfiler.HeapSnapshotObjectId;
+
+/** @typedef {!{callFrame:(Protocol.Runtime.CallFrame), selfSize:(number), id:(number), children:(!Array<Protocol.HeapProfiler.SamplingHeapProfileNode>)}} */
+Protocol.HeapProfiler.SamplingHeapProfileNode;
+
+/** @typedef {!{size:(number), nodeId:(number), ordinal:(number)}} */
+Protocol.HeapProfiler.SamplingHeapProfileSample;
+
+/** @typedef {!{head:(Protocol.HeapProfiler.SamplingHeapProfileNode), samples:(!Array<Protocol.HeapProfiler.SamplingHeapProfileSample>)}} */
+Protocol.HeapProfiler.SamplingHeapProfile;
+/** @constructor */
+Protocol.HeapProfilerDispatcher = function() {};
+/**
+ * @param {string} chunk
+ */
+Protocol.HeapProfilerDispatcher.prototype.addHeapSnapshotChunk = function(chunk) {};
+/**
+ * @param {!Array<number>} statsUpdate
+ */
+Protocol.HeapProfilerDispatcher.prototype.heapStatsUpdate = function(statsUpdate) {};
+/**
+ * @param {number} lastSeenObjectId
+ * @param {number} timestamp
+ */
+Protocol.HeapProfilerDispatcher.prototype.lastSeenObjectId = function(lastSeenObjectId, timestamp) {};
+/**
+ * @param {number} done
+ * @param {number} total
+ * @param {boolean=} opt_finished
+ */
+Protocol.HeapProfilerDispatcher.prototype.reportHeapSnapshotProgress = function(done, total, opt_finished) {};
+Protocol.HeapProfilerDispatcher.prototype.resetProfiles = function() {};
+Protocol.Profiler = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.ProfilerAgent = function(){};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.DisableResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.DisableResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.EnableResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.EnableResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Profiler.ScriptCoverage>>}
+ */
+Protocol.ProfilerAgent.prototype.getBestEffortCoverage = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.GetBestEffortCoverageRequest;
+/** @typedef {!{result: !Array<Protocol.Profiler.ScriptCoverage>}} */
+Protocol.ProfilerAgent.GetBestEffortCoverageResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.GetBestEffortCoverageRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.GetBestEffortCoverageResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_getBestEffortCoverage = function(obj) {};
+
+/**
+ * @param {number} interval
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.setSamplingInterval = function(interval) {};
+/** @typedef {!{interval: number}} */
+Protocol.ProfilerAgent.SetSamplingIntervalRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.SetSamplingIntervalResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.SetSamplingIntervalRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.SetSamplingIntervalResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_setSamplingInterval = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.start = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StartRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StartResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StartRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StartResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_start = function(obj) {};
+
+/**
+ * @param {boolean=} opt_callCount
+ * @param {boolean=} opt_detailed
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.startPreciseCoverage = function(opt_callCount, opt_detailed) {};
+/** @typedef {!{detailed: (boolean|undefined), callCount: (boolean|undefined)}} */
+Protocol.ProfilerAgent.StartPreciseCoverageRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StartPreciseCoverageResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StartPreciseCoverageRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StartPreciseCoverageResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_startPreciseCoverage = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.startTypeProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StartTypeProfileRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StartTypeProfileResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StartTypeProfileRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StartTypeProfileResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_startTypeProfile = function(obj) {};
+
+/**
+ * @return {!Promise<?Protocol.Profiler.Profile>}
+ */
+Protocol.ProfilerAgent.prototype.stop = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StopRequest;
+/** @typedef {!{profile: Protocol.Profiler.Profile}} */
+Protocol.ProfilerAgent.StopResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StopRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StopResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_stop = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.stopPreciseCoverage = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StopPreciseCoverageRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StopPreciseCoverageResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StopPreciseCoverageRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StopPreciseCoverageResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_stopPreciseCoverage = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.ProfilerAgent.prototype.stopTypeProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StopTypeProfileRequest;
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.StopTypeProfileResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.StopTypeProfileRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.StopTypeProfileResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_stopTypeProfile = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Profiler.ScriptCoverage>>}
+ */
+Protocol.ProfilerAgent.prototype.takePreciseCoverage = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.TakePreciseCoverageRequest;
+/** @typedef {!{result: !Array<Protocol.Profiler.ScriptCoverage>}} */
+Protocol.ProfilerAgent.TakePreciseCoverageResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.TakePreciseCoverageRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.TakePreciseCoverageResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_takePreciseCoverage = function(obj) {};
+
+/**
+ * @return {!Promise<?Array<Protocol.Profiler.ScriptTypeProfile>>}
+ */
+Protocol.ProfilerAgent.prototype.takeTypeProfile = function() {};
+/** @typedef {Object|undefined} */
+Protocol.ProfilerAgent.TakeTypeProfileRequest;
+/** @typedef {!{result: !Array<Protocol.Profiler.ScriptTypeProfile>}} */
+Protocol.ProfilerAgent.TakeTypeProfileResponse;
+/**
+ * @param {!Protocol.ProfilerAgent.TakeTypeProfileRequest} obj
+ * @return {!Promise<!Protocol.ProfilerAgent.TakeTypeProfileResponse>} */
+Protocol.ProfilerAgent.prototype.invoke_takeTypeProfile = function(obj) {};
+
+/** @typedef {!{id:(number), callFrame:(Protocol.Runtime.CallFrame), hitCount:(number|undefined), children:(!Array<number>|undefined), deoptReason:(string|undefined), positionTicks:(!Array<Protocol.Profiler.PositionTickInfo>|undefined)}} */
+Protocol.Profiler.ProfileNode;
+
+/** @typedef {!{nodes:(!Array<Protocol.Profiler.ProfileNode>), startTime:(number), endTime:(number), samples:(!Array<number>|undefined), timeDeltas:(!Array<number>|undefined)}} */
+Protocol.Profiler.Profile;
+
+/** @typedef {!{line:(number), ticks:(number)}} */
+Protocol.Profiler.PositionTickInfo;
+
+/** @typedef {!{startOffset:(number), endOffset:(number), count:(number)}} */
+Protocol.Profiler.CoverageRange;
+
+/** @typedef {!{functionName:(string), ranges:(!Array<Protocol.Profiler.CoverageRange>), isBlockCoverage:(boolean)}} */
+Protocol.Profiler.FunctionCoverage;
+
+/** @typedef {!{scriptId:(Protocol.Runtime.ScriptId), url:(string), functions:(!Array<Protocol.Profiler.FunctionCoverage>)}} */
+Protocol.Profiler.ScriptCoverage;
+
+/** @typedef {!{name:(string)}} */
+Protocol.Profiler.TypeObject;
+
+/** @typedef {!{offset:(number), types:(!Array<Protocol.Profiler.TypeObject>)}} */
+Protocol.Profiler.TypeProfileEntry;
+
+/** @typedef {!{scriptId:(Protocol.Runtime.ScriptId), url:(string), entries:(!Array<Protocol.Profiler.TypeProfileEntry>)}} */
+Protocol.Profiler.ScriptTypeProfile;
+/** @interface */
+Protocol.ProfilerDispatcher = function() {};
+/**
+ * @param {string} id
+ * @param {Protocol.Debugger.Location} location
+ * @param {Protocol.Profiler.Profile} profile
+ * @param {string=} opt_title
+ */
+Protocol.ProfilerDispatcher.prototype.consoleProfileFinished = function(id, location, profile, opt_title) {};
+/**
+ * @param {string} id
+ * @param {Protocol.Debugger.Location} location
+ * @param {string=} opt_title
+ */
+Protocol.ProfilerDispatcher.prototype.consoleProfileStarted = function(id, location, opt_title) {};
+Protocol.Runtime = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.RuntimeAgent = function(){};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} promiseObjectId
+ * @param {boolean=} opt_returnByValue
+ * @param {boolean=} opt_generatePreview
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.RuntimeAgent.prototype.awaitPromise = function(promiseObjectId, opt_returnByValue, opt_generatePreview) {};
+/** @typedef {!{returnByValue: (boolean|undefined), generatePreview: (boolean|undefined), promiseObjectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.RuntimeAgent.AwaitPromiseRequest;
+/** @typedef {!{exceptionDetails: Protocol.Runtime.ExceptionDetails, result: Protocol.Runtime.RemoteObject}} */
+Protocol.RuntimeAgent.AwaitPromiseResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.AwaitPromiseRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.AwaitPromiseResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_awaitPromise = function(obj) {};
+
+/**
+ * @param {string} functionDeclaration
+ * @param {Protocol.Runtime.RemoteObjectId=} opt_objectId
+ * @param {!Array<Protocol.Runtime.CallArgument>=} opt__arguments
+ * @param {boolean=} opt_silent
+ * @param {boolean=} opt_returnByValue
+ * @param {boolean=} opt_generatePreview
+ * @param {boolean=} opt_userGesture
+ * @param {boolean=} opt_awaitPromise
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @param {string=} opt_objectGroup
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.RuntimeAgent.prototype.callFunctionOn = function(functionDeclaration, opt_objectId, opt__arguments, opt_silent, opt_returnByValue, opt_generatePreview, opt_userGesture, opt_awaitPromise, opt_executionContextId, opt_objectGroup) {};
+/** @typedef {!{objectGroup: (string|undefined), silent: (boolean|undefined), objectId: (Protocol.Runtime.RemoteObjectId|undefined), functionDeclaration: string, generatePreview: (boolean|undefined), executionContextId: (Protocol.Runtime.ExecutionContextId|undefined), returnByValue: (boolean|undefined), _arguments: (!Array<Protocol.Runtime.CallArgument>|undefined), userGesture: (boolean|undefined), awaitPromise: (boolean|undefined)}} */
+Protocol.RuntimeAgent.CallFunctionOnRequest;
+/** @typedef {!{exceptionDetails: Protocol.Runtime.ExceptionDetails, result: Protocol.Runtime.RemoteObject}} */
+Protocol.RuntimeAgent.CallFunctionOnResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.CallFunctionOnRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.CallFunctionOnResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_callFunctionOn = function(obj) {};
+
+/**
+ * @param {string} expression
+ * @param {string} sourceURL
+ * @param {boolean} persistScript
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @return {!Promise<?Protocol.Runtime.ScriptId>}
+ */
+Protocol.RuntimeAgent.prototype.compileScript = function(expression, sourceURL, persistScript, opt_executionContextId) {};
+/** @typedef {!{persistScript: boolean, sourceURL: string, expression: string, executionContextId: (Protocol.Runtime.ExecutionContextId|undefined)}} */
+Protocol.RuntimeAgent.CompileScriptRequest;
+/** @typedef {!{scriptId: Protocol.Runtime.ScriptId, exceptionDetails: Protocol.Runtime.ExceptionDetails}} */
+Protocol.RuntimeAgent.CompileScriptResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.CompileScriptRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.CompileScriptResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_compileScript = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.disable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.DisableRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.DisableResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.DisableRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.DisableResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_disable = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.discardConsoleEntries = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.DiscardConsoleEntriesRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.DiscardConsoleEntriesResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.DiscardConsoleEntriesRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.DiscardConsoleEntriesResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_discardConsoleEntries = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.enable = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.EnableRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.EnableResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.EnableRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.EnableResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_enable = function(obj) {};
+
+/**
+ * @param {string} expression
+ * @param {string=} opt_objectGroup
+ * @param {boolean=} opt_includeCommandLineAPI
+ * @param {boolean=} opt_silent
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_contextId
+ * @param {boolean=} opt_returnByValue
+ * @param {boolean=} opt_generatePreview
+ * @param {boolean=} opt_userGesture
+ * @param {boolean=} opt_awaitPromise
+ * @param {boolean=} opt_throwOnSideEffect
+ * @param {Protocol.Runtime.TimeDelta=} opt_timeout
+ * @param {boolean=} opt_disableBreaks
+ * @param {boolean=} opt_replMode
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.RuntimeAgent.prototype.evaluate = function(expression, opt_objectGroup, opt_includeCommandLineAPI, opt_silent, opt_contextId, opt_returnByValue, opt_generatePreview, opt_userGesture, opt_awaitPromise, opt_throwOnSideEffect, opt_timeout, opt_disableBreaks, opt_replMode) {};
+/** @typedef {!{objectGroup: (string|undefined), includeCommandLineAPI: (boolean|undefined), contextId: (Protocol.Runtime.ExecutionContextId|undefined), silent: (boolean|undefined), throwOnSideEffect: (boolean|undefined), generatePreview: (boolean|undefined), replMode: (boolean|undefined), returnByValue: (boolean|undefined), timeout: (Protocol.Runtime.TimeDelta|undefined), expression: string, userGesture: (boolean|undefined), disableBreaks: (boolean|undefined), awaitPromise: (boolean|undefined)}} */
+Protocol.RuntimeAgent.EvaluateRequest;
+/** @typedef {!{exceptionDetails: Protocol.Runtime.ExceptionDetails, result: Protocol.Runtime.RemoteObject}} */
+Protocol.RuntimeAgent.EvaluateResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.EvaluateRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.EvaluateResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_evaluate = function(obj) {};
+
+/**
+ * @return {!Promise<?string>}
+ */
+Protocol.RuntimeAgent.prototype.getIsolateId = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.GetIsolateIdRequest;
+/** @typedef {!{id: string}} */
+Protocol.RuntimeAgent.GetIsolateIdResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.GetIsolateIdRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.GetIsolateIdResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_getIsolateId = function(obj) {};
+
+/**
+ * @return {!Promise<?number>}
+ */
+Protocol.RuntimeAgent.prototype.getHeapUsage = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.GetHeapUsageRequest;
+/** @typedef {!{totalSize: number, usedSize: number}} */
+Protocol.RuntimeAgent.GetHeapUsageResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.GetHeapUsageRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.GetHeapUsageResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_getHeapUsage = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @param {boolean=} opt_ownProperties
+ * @param {boolean=} opt_accessorPropertiesOnly
+ * @param {boolean=} opt_generatePreview
+ * @return {!Promise<?Array<Protocol.Runtime.PropertyDescriptor>>}
+ */
+Protocol.RuntimeAgent.prototype.getProperties = function(objectId, opt_ownProperties, opt_accessorPropertiesOnly, opt_generatePreview) {};
+/** @typedef {!{ownProperties: (boolean|undefined), generatePreview: (boolean|undefined), accessorPropertiesOnly: (boolean|undefined), objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.RuntimeAgent.GetPropertiesRequest;
+/** @typedef {!{internalProperties: !Array<Protocol.Runtime.InternalPropertyDescriptor>, exceptionDetails: Protocol.Runtime.ExceptionDetails, result: !Array<Protocol.Runtime.PropertyDescriptor>, privateProperties: !Array<Protocol.Runtime.PrivatePropertyDescriptor>}} */
+Protocol.RuntimeAgent.GetPropertiesResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.GetPropertiesRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.GetPropertiesResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_getProperties = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @return {!Promise<?Array<string>>}
+ */
+Protocol.RuntimeAgent.prototype.globalLexicalScopeNames = function(opt_executionContextId) {};
+/** @typedef {!{executionContextId: (Protocol.Runtime.ExecutionContextId|undefined)}} */
+Protocol.RuntimeAgent.GlobalLexicalScopeNamesRequest;
+/** @typedef {!{names: !Array<string>}} */
+Protocol.RuntimeAgent.GlobalLexicalScopeNamesResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.GlobalLexicalScopeNamesRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.GlobalLexicalScopeNamesResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_globalLexicalScopeNames = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} prototypeObjectId
+ * @param {string=} opt_objectGroup
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.RuntimeAgent.prototype.queryObjects = function(prototypeObjectId, opt_objectGroup) {};
+/** @typedef {!{prototypeObjectId: Protocol.Runtime.RemoteObjectId, objectGroup: (string|undefined)}} */
+Protocol.RuntimeAgent.QueryObjectsRequest;
+/** @typedef {!{objects: Protocol.Runtime.RemoteObject}} */
+Protocol.RuntimeAgent.QueryObjectsResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.QueryObjectsRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.QueryObjectsResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_queryObjects = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.RemoteObjectId} objectId
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.releaseObject = function(objectId) {};
+/** @typedef {!{objectId: Protocol.Runtime.RemoteObjectId}} */
+Protocol.RuntimeAgent.ReleaseObjectRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.ReleaseObjectResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.ReleaseObjectRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.ReleaseObjectResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_releaseObject = function(obj) {};
+
+/**
+ * @param {string} objectGroup
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.releaseObjectGroup = function(objectGroup) {};
+/** @typedef {!{objectGroup: string}} */
+Protocol.RuntimeAgent.ReleaseObjectGroupRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.ReleaseObjectGroupResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.ReleaseObjectGroupRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.ReleaseObjectGroupResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_releaseObjectGroup = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.runIfWaitingForDebugger = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.RunIfWaitingForDebuggerRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.RunIfWaitingForDebuggerResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.RunIfWaitingForDebuggerRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.RunIfWaitingForDebuggerResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_runIfWaitingForDebugger = function(obj) {};
+
+/**
+ * @param {Protocol.Runtime.ScriptId} scriptId
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @param {string=} opt_objectGroup
+ * @param {boolean=} opt_silent
+ * @param {boolean=} opt_includeCommandLineAPI
+ * @param {boolean=} opt_returnByValue
+ * @param {boolean=} opt_generatePreview
+ * @param {boolean=} opt_awaitPromise
+ * @return {!Promise<?Protocol.Runtime.RemoteObject>}
+ */
+Protocol.RuntimeAgent.prototype.runScript = function(scriptId, opt_executionContextId, opt_objectGroup, opt_silent, opt_includeCommandLineAPI, opt_returnByValue, opt_generatePreview, opt_awaitPromise) {};
+/** @typedef {!{objectGroup: (string|undefined), includeCommandLineAPI: (boolean|undefined), silent: (boolean|undefined), generatePreview: (boolean|undefined), executionContextId: (Protocol.Runtime.ExecutionContextId|undefined), returnByValue: (boolean|undefined), scriptId: Protocol.Runtime.ScriptId, awaitPromise: (boolean|undefined)}} */
+Protocol.RuntimeAgent.RunScriptRequest;
+/** @typedef {!{exceptionDetails: Protocol.Runtime.ExceptionDetails, result: Protocol.Runtime.RemoteObject}} */
+Protocol.RuntimeAgent.RunScriptResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.RunScriptRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.RunScriptResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_runScript = function(obj) {};
+
+/**
+ * @param {number} maxDepth
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.setAsyncCallStackDepth = function(maxDepth) {};
+/** @typedef {!{maxDepth: number}} */
+Protocol.RuntimeAgent.SetAsyncCallStackDepthRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.SetAsyncCallStackDepthResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.SetAsyncCallStackDepthRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.SetAsyncCallStackDepthResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_setAsyncCallStackDepth = function(obj) {};
+
+/**
+ * @param {boolean} enabled
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.setCustomObjectFormatterEnabled = function(enabled) {};
+/** @typedef {!{enabled: boolean}} */
+Protocol.RuntimeAgent.SetCustomObjectFormatterEnabledRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.SetCustomObjectFormatterEnabledResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.SetCustomObjectFormatterEnabledRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.SetCustomObjectFormatterEnabledResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_setCustomObjectFormatterEnabled = function(obj) {};
+
+/**
+ * @param {number} size
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.setMaxCallStackSizeToCapture = function(size) {};
+/** @typedef {!{size: number}} */
+Protocol.RuntimeAgent.SetMaxCallStackSizeToCaptureRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.SetMaxCallStackSizeToCaptureResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.SetMaxCallStackSizeToCaptureRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.SetMaxCallStackSizeToCaptureResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_setMaxCallStackSizeToCapture = function(obj) {};
+
+/**
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.terminateExecution = function() {};
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.TerminateExecutionRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.TerminateExecutionResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.TerminateExecutionRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.TerminateExecutionResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_terminateExecution = function(obj) {};
+
+/**
+ * @param {string} name
+ * @param {Protocol.Runtime.ExecutionContextId=} opt_executionContextId
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.addBinding = function(name, opt_executionContextId) {};
+/** @typedef {!{name: string, executionContextId: (Protocol.Runtime.ExecutionContextId|undefined)}} */
+Protocol.RuntimeAgent.AddBindingRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.AddBindingResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.AddBindingRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.AddBindingResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_addBinding = function(obj) {};
+
+/**
+ * @param {string} name
+ * @return {!Promise<undefined>}
+ */
+Protocol.RuntimeAgent.prototype.removeBinding = function(name) {};
+/** @typedef {!{name: string}} */
+Protocol.RuntimeAgent.RemoveBindingRequest;
+/** @typedef {Object|undefined} */
+Protocol.RuntimeAgent.RemoveBindingResponse;
+/**
+ * @param {!Protocol.RuntimeAgent.RemoveBindingRequest} obj
+ * @return {!Promise<!Protocol.RuntimeAgent.RemoveBindingResponse>} */
+Protocol.RuntimeAgent.prototype.invoke_removeBinding = function(obj) {};
+
+/** @typedef {string} */
+Protocol.Runtime.ScriptId;
+
+/** @typedef {string} */
+Protocol.Runtime.RemoteObjectId;
+
+/** @typedef {string} */
+Protocol.Runtime.UnserializableValue;
+
+/** @enum {string} */
+Protocol.Runtime.RemoteObjectType = {
+    Object: "object",
+    Function: "function",
+    Undefined: "undefined",
+    String: "string",
+    Number: "number",
+    Boolean: "boolean",
+    Symbol: "symbol",
+    Bigint: "bigint"
+};
+
+/** @enum {string} */
+Protocol.Runtime.RemoteObjectSubtype = {
+    Array: "array",
+    Null: "null",
+    Node: "node",
+    Regexp: "regexp",
+    Date: "date",
+    Map: "map",
+    Set: "set",
+    Weakmap: "weakmap",
+    Weakset: "weakset",
+    Iterator: "iterator",
+    Generator: "generator",
+    Error: "error",
+    Proxy: "proxy",
+    Promise: "promise",
+    Typedarray: "typedarray",
+    Arraybuffer: "arraybuffer",
+    Dataview: "dataview"
+};
+
+/** @typedef {!{type:(Protocol.Runtime.RemoteObjectType), subtype:(Protocol.Runtime.RemoteObjectSubtype|undefined), className:(string|undefined), value:(*|undefined), unserializableValue:(Protocol.Runtime.UnserializableValue|undefined), description:(string|undefined), objectId:(Protocol.Runtime.RemoteObjectId|undefined), preview:(Protocol.Runtime.ObjectPreview|undefined), customPreview:(Protocol.Runtime.CustomPreview|undefined)}} */
+Protocol.Runtime.RemoteObject;
+
+/** @typedef {!{header:(string), bodyGetterId:(Protocol.Runtime.RemoteObjectId|undefined)}} */
+Protocol.Runtime.CustomPreview;
+
+/** @enum {string} */
+Protocol.Runtime.ObjectPreviewType = {
+    Object: "object",
+    Function: "function",
+    Undefined: "undefined",
+    String: "string",
+    Number: "number",
+    Boolean: "boolean",
+    Symbol: "symbol",
+    Bigint: "bigint"
+};
+
+/** @enum {string} */
+Protocol.Runtime.ObjectPreviewSubtype = {
+    Array: "array",
+    Null: "null",
+    Node: "node",
+    Regexp: "regexp",
+    Date: "date",
+    Map: "map",
+    Set: "set",
+    Weakmap: "weakmap",
+    Weakset: "weakset",
+    Iterator: "iterator",
+    Generator: "generator",
+    Error: "error"
+};
+
+/** @typedef {!{type:(Protocol.Runtime.ObjectPreviewType), subtype:(Protocol.Runtime.ObjectPreviewSubtype|undefined), description:(string|undefined), overflow:(boolean), properties:(!Array<Protocol.Runtime.PropertyPreview>), entries:(!Array<Protocol.Runtime.EntryPreview>|undefined)}} */
+Protocol.Runtime.ObjectPreview;
+
+/** @enum {string} */
+Protocol.Runtime.PropertyPreviewType = {
+    Object: "object",
+    Function: "function",
+    Undefined: "undefined",
+    String: "string",
+    Number: "number",
+    Boolean: "boolean",
+    Symbol: "symbol",
+    Accessor: "accessor",
+    Bigint: "bigint"
+};
+
+/** @enum {string} */
+Protocol.Runtime.PropertyPreviewSubtype = {
+    Array: "array",
+    Null: "null",
+    Node: "node",
+    Regexp: "regexp",
+    Date: "date",
+    Map: "map",
+    Set: "set",
+    Weakmap: "weakmap",
+    Weakset: "weakset",
+    Iterator: "iterator",
+    Generator: "generator",
+    Error: "error"
+};
+
+/** @typedef {!{name:(string), type:(Protocol.Runtime.PropertyPreviewType), value:(string|undefined), valuePreview:(Protocol.Runtime.ObjectPreview|undefined), subtype:(Protocol.Runtime.PropertyPreviewSubtype|undefined)}} */
+Protocol.Runtime.PropertyPreview;
+
+/** @typedef {!{key:(Protocol.Runtime.ObjectPreview|undefined), value:(Protocol.Runtime.ObjectPreview)}} */
+Protocol.Runtime.EntryPreview;
+
+/** @typedef {!{name:(string), value:(Protocol.Runtime.RemoteObject|undefined), writable:(boolean|undefined), get:(Protocol.Runtime.RemoteObject|undefined), set:(Protocol.Runtime.RemoteObject|undefined), configurable:(boolean), enumerable:(boolean), wasThrown:(boolean|undefined), isOwn:(boolean|undefined), symbol:(Protocol.Runtime.RemoteObject|undefined)}} */
+Protocol.Runtime.PropertyDescriptor;
+
+/** @typedef {!{name:(string), value:(Protocol.Runtime.RemoteObject|undefined)}} */
+Protocol.Runtime.InternalPropertyDescriptor;
+
+/** @typedef {!{name:(string), value:(Protocol.Runtime.RemoteObject)}} */
+Protocol.Runtime.PrivatePropertyDescriptor;
+
+/** @typedef {!{value:(*|undefined), unserializableValue:(Protocol.Runtime.UnserializableValue|undefined), objectId:(Protocol.Runtime.RemoteObjectId|undefined)}} */
+Protocol.Runtime.CallArgument;
+
+/** @typedef {number} */
+Protocol.Runtime.ExecutionContextId;
+
+/** @typedef {!{id:(Protocol.Runtime.ExecutionContextId), origin:(string), name:(string), auxData:(!Object|undefined)}} */
+Protocol.Runtime.ExecutionContextDescription;
+
+/** @typedef {!{exceptionId:(number), text:(string), lineNumber:(number), columnNumber:(number), scriptId:(Protocol.Runtime.ScriptId|undefined), url:(string|undefined), stackTrace:(Protocol.Runtime.StackTrace|undefined), exception:(Protocol.Runtime.RemoteObject|undefined), executionContextId:(Protocol.Runtime.ExecutionContextId|undefined)}} */
+Protocol.Runtime.ExceptionDetails;
+
+/** @typedef {number} */
+Protocol.Runtime.Timestamp;
+
+/** @typedef {number} */
+Protocol.Runtime.TimeDelta;
+
+/** @typedef {!{functionName:(string), scriptId:(Protocol.Runtime.ScriptId), url:(string), lineNumber:(number), columnNumber:(number)}} */
+Protocol.Runtime.CallFrame;
+
+/** @typedef {!{description:(string|undefined), callFrames:(!Array<Protocol.Runtime.CallFrame>), parent:(Protocol.Runtime.StackTrace|undefined), parentId:(Protocol.Runtime.StackTraceId|undefined)}} */
+Protocol.Runtime.StackTrace;
+
+/** @typedef {string} */
+Protocol.Runtime.UniqueDebuggerId;
+
+/** @typedef {!{id:(string), debuggerId:(Protocol.Runtime.UniqueDebuggerId|undefined)}} */
+Protocol.Runtime.StackTraceId;
+/** @constructor */
+Protocol.RuntimeDispatcher = function() {};
+/**
+ * @param {string} name
+ * @param {string} payload
+ * @param {Protocol.Runtime.ExecutionContextId} executionContextId
+ */
+Protocol.RuntimeDispatcher.prototype.bindingCalled = function(name, payload, executionContextId) {};
+/**
+ * @param {string} type
+ * @param {!Array<Protocol.Runtime.RemoteObject>} args
+ * @param {Protocol.Runtime.ExecutionContextId} executionContextId
+ * @param {Protocol.Runtime.Timestamp} timestamp
+ * @param {Protocol.Runtime.StackTrace=} opt_stackTrace
+ * @param {string=} opt_context
+ */
+Protocol.RuntimeDispatcher.prototype.consoleAPICalled = function(type, args, executionContextId, timestamp, opt_stackTrace, opt_context) {};
+/**
+ * @param {string} reason
+ * @param {number} exceptionId
+ */
+Protocol.RuntimeDispatcher.prototype.exceptionRevoked = function(reason, exceptionId) {};
+/**
+ * @param {Protocol.Runtime.Timestamp} timestamp
+ * @param {Protocol.Runtime.ExceptionDetails} exceptionDetails
+ */
+Protocol.RuntimeDispatcher.prototype.exceptionThrown = function(timestamp, exceptionDetails) {};
+/**
+ * @param {Protocol.Runtime.ExecutionContextDescription} context
+ */
+Protocol.RuntimeDispatcher.prototype.executionContextCreated = function(context) {};
+/**
+ * @param {Protocol.Runtime.ExecutionContextId} executionContextId
+ */
+Protocol.RuntimeDispatcher.prototype.executionContextDestroyed = function(executionContextId) {};
+Protocol.RuntimeDispatcher.prototype.executionContextsCleared = function() {};
+/**
+ * @param {Protocol.Runtime.RemoteObject} object
+ * @param {!Object} hints
+ */
+Protocol.RuntimeDispatcher.prototype.inspectRequested = function(object, hints) {};
+Protocol.Schema = {};
+
+
+/**
+ * @constructor
+*/
+Protocol.SchemaAgent = function(){};
+
+/**
+ * @return {!Promise<?Array<Protocol.Schema.Domain>>}
+ */
+Protocol.SchemaAgent.prototype.getDomains = function() {};
+/** @typedef {Object|undefined} */
+Protocol.SchemaAgent.GetDomainsRequest;
+/** @typedef {!{domains: !Array<Protocol.Schema.Domain>}} */
+Protocol.SchemaAgent.GetDomainsResponse;
+/**
+ * @param {!Protocol.SchemaAgent.GetDomainsRequest} obj
+ * @return {!Promise<!Protocol.SchemaAgent.GetDomainsResponse>} */
+Protocol.SchemaAgent.prototype.invoke_getDomains = function(obj) {};
+
+/** @typedef {!{name:(string), version:(string)}} */
+Protocol.Schema.Domain;
+/** @interface */
+Protocol.SchemaDispatcher = function() {};
+/** @return {!Protocol.AccessibilityAgent}*/
+Protocol.TargetBase.prototype.accessibilityAgent = function(){};
+/**
+ * @param {!Protocol.AccessibilityDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerAccessibilityDispatcher = function(dispatcher) {}
+/** @return {!Protocol.AnimationAgent}*/
+Protocol.TargetBase.prototype.animationAgent = function(){};
+/**
+ * @param {!Protocol.AnimationDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerAnimationDispatcher = function(dispatcher) {}
+/** @return {!Protocol.ApplicationCacheAgent}*/
+Protocol.TargetBase.prototype.applicationCacheAgent = function(){};
+/**
+ * @param {!Protocol.ApplicationCacheDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerApplicationCacheDispatcher = function(dispatcher) {}
+/** @return {!Protocol.AuditsAgent}*/
+Protocol.TargetBase.prototype.auditsAgent = function(){};
+/**
+ * @param {!Protocol.AuditsDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerAuditsDispatcher = function(dispatcher) {}
+/** @return {!Protocol.BackgroundServiceAgent}*/
+Protocol.TargetBase.prototype.backgroundServiceAgent = function(){};
+/**
+ * @param {!Protocol.BackgroundServiceDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerBackgroundServiceDispatcher = function(dispatcher) {}
+/** @return {!Protocol.BrowserAgent}*/
+Protocol.TargetBase.prototype.browserAgent = function(){};
+/**
+ * @param {!Protocol.BrowserDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerBrowserDispatcher = function(dispatcher) {}
+/** @return {!Protocol.CSSAgent}*/
+Protocol.TargetBase.prototype.cssAgent = function(){};
+/**
+ * @param {!Protocol.CSSDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerCSSDispatcher = function(dispatcher) {}
+/** @return {!Protocol.CacheStorageAgent}*/
+Protocol.TargetBase.prototype.cacheStorageAgent = function(){};
+/**
+ * @param {!Protocol.CacheStorageDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerCacheStorageDispatcher = function(dispatcher) {}
+/** @return {!Protocol.CastAgent}*/
+Protocol.TargetBase.prototype.castAgent = function(){};
+/**
+ * @param {!Protocol.CastDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerCastDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DOMAgent}*/
+Protocol.TargetBase.prototype.domAgent = function(){};
+/**
+ * @param {!Protocol.DOMDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDOMDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DOMDebuggerAgent}*/
+Protocol.TargetBase.prototype.domdebuggerAgent = function(){};
+/**
+ * @param {!Protocol.DOMDebuggerDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDOMDebuggerDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DOMSnapshotAgent}*/
+Protocol.TargetBase.prototype.domsnapshotAgent = function(){};
+/**
+ * @param {!Protocol.DOMSnapshotDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDOMSnapshotDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DOMStorageAgent}*/
+Protocol.TargetBase.prototype.domstorageAgent = function(){};
+/**
+ * @param {!Protocol.DOMStorageDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDOMStorageDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DatabaseAgent}*/
+Protocol.TargetBase.prototype.databaseAgent = function(){};
+/**
+ * @param {!Protocol.DatabaseDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDatabaseDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DeviceOrientationAgent}*/
+Protocol.TargetBase.prototype.deviceOrientationAgent = function(){};
+/**
+ * @param {!Protocol.DeviceOrientationDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDeviceOrientationDispatcher = function(dispatcher) {}
+/** @return {!Protocol.EmulationAgent}*/
+Protocol.TargetBase.prototype.emulationAgent = function(){};
+/**
+ * @param {!Protocol.EmulationDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerEmulationDispatcher = function(dispatcher) {}
+/** @return {!Protocol.HeadlessExperimentalAgent}*/
+Protocol.TargetBase.prototype.headlessExperimentalAgent = function(){};
+/**
+ * @param {!Protocol.HeadlessExperimentalDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerHeadlessExperimentalDispatcher = function(dispatcher) {}
+/** @return {!Protocol.IOAgent}*/
+Protocol.TargetBase.prototype.ioAgent = function(){};
+/**
+ * @param {!Protocol.IODispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerIODispatcher = function(dispatcher) {}
+/** @return {!Protocol.IndexedDBAgent}*/
+Protocol.TargetBase.prototype.indexedDBAgent = function(){};
+/**
+ * @param {!Protocol.IndexedDBDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerIndexedDBDispatcher = function(dispatcher) {}
+/** @return {!Protocol.InputAgent}*/
+Protocol.TargetBase.prototype.inputAgent = function(){};
+/**
+ * @param {!Protocol.InputDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerInputDispatcher = function(dispatcher) {}
+/** @return {!Protocol.InspectorAgent}*/
+Protocol.TargetBase.prototype.inspectorAgent = function(){};
+/**
+ * @param {!Protocol.InspectorDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerInspectorDispatcher = function(dispatcher) {}
+/** @return {!Protocol.LayerTreeAgent}*/
+Protocol.TargetBase.prototype.layerTreeAgent = function(){};
+/**
+ * @param {!Protocol.LayerTreeDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerLayerTreeDispatcher = function(dispatcher) {}
+/** @return {!Protocol.LogAgent}*/
+Protocol.TargetBase.prototype.logAgent = function(){};
+/**
+ * @param {!Protocol.LogDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerLogDispatcher = function(dispatcher) {}
+/** @return {!Protocol.MemoryAgent}*/
+Protocol.TargetBase.prototype.memoryAgent = function(){};
+/**
+ * @param {!Protocol.MemoryDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerMemoryDispatcher = function(dispatcher) {}
+/** @return {!Protocol.NetworkAgent}*/
+Protocol.TargetBase.prototype.networkAgent = function(){};
+/**
+ * @param {!Protocol.NetworkDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerNetworkDispatcher = function(dispatcher) {}
+/** @return {!Protocol.OverlayAgent}*/
+Protocol.TargetBase.prototype.overlayAgent = function(){};
+/**
+ * @param {!Protocol.OverlayDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerOverlayDispatcher = function(dispatcher) {}
+/** @return {!Protocol.PageAgent}*/
+Protocol.TargetBase.prototype.pageAgent = function(){};
+/**
+ * @param {!Protocol.PageDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerPageDispatcher = function(dispatcher) {}
+/** @return {!Protocol.PerformanceAgent}*/
+Protocol.TargetBase.prototype.performanceAgent = function(){};
+/**
+ * @param {!Protocol.PerformanceDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerPerformanceDispatcher = function(dispatcher) {}
+/** @return {!Protocol.SecurityAgent}*/
+Protocol.TargetBase.prototype.securityAgent = function(){};
+/**
+ * @param {!Protocol.SecurityDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerSecurityDispatcher = function(dispatcher) {}
+/** @return {!Protocol.ServiceWorkerAgent}*/
+Protocol.TargetBase.prototype.serviceWorkerAgent = function(){};
+/**
+ * @param {!Protocol.ServiceWorkerDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerServiceWorkerDispatcher = function(dispatcher) {}
+/** @return {!Protocol.StorageAgent}*/
+Protocol.TargetBase.prototype.storageAgent = function(){};
+/**
+ * @param {!Protocol.StorageDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerStorageDispatcher = function(dispatcher) {}
+/** @return {!Protocol.SystemInfoAgent}*/
+Protocol.TargetBase.prototype.systemInfoAgent = function(){};
+/**
+ * @param {!Protocol.SystemInfoDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerSystemInfoDispatcher = function(dispatcher) {}
+/** @return {!Protocol.TargetAgent}*/
+Protocol.TargetBase.prototype.targetAgent = function(){};
+/**
+ * @param {!Protocol.TargetDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerTargetDispatcher = function(dispatcher) {}
+/** @return {!Protocol.TetheringAgent}*/
+Protocol.TargetBase.prototype.tetheringAgent = function(){};
+/**
+ * @param {!Protocol.TetheringDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerTetheringDispatcher = function(dispatcher) {}
+/** @return {!Protocol.TracingAgent}*/
+Protocol.TargetBase.prototype.tracingAgent = function(){};
+/**
+ * @param {!Protocol.TracingDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerTracingDispatcher = function(dispatcher) {}
+/** @return {!Protocol.FetchAgent}*/
+Protocol.TargetBase.prototype.fetchAgent = function(){};
+/**
+ * @param {!Protocol.FetchDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerFetchDispatcher = function(dispatcher) {}
+/** @return {!Protocol.WebAudioAgent}*/
+Protocol.TargetBase.prototype.webAudioAgent = function(){};
+/**
+ * @param {!Protocol.WebAudioDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerWebAudioDispatcher = function(dispatcher) {}
+/** @return {!Protocol.WebAuthnAgent}*/
+Protocol.TargetBase.prototype.webAuthnAgent = function(){};
+/**
+ * @param {!Protocol.WebAuthnDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerWebAuthnDispatcher = function(dispatcher) {}
+/** @return {!Protocol.MediaAgent}*/
+Protocol.TargetBase.prototype.mediaAgent = function(){};
+/**
+ * @param {!Protocol.MediaDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerMediaDispatcher = function(dispatcher) {}
+/** @return {!Protocol.ConsoleAgent}*/
+Protocol.TargetBase.prototype.consoleAgent = function(){};
+/**
+ * @param {!Protocol.ConsoleDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerConsoleDispatcher = function(dispatcher) {}
+/** @return {!Protocol.DebuggerAgent}*/
+Protocol.TargetBase.prototype.debuggerAgent = function(){};
+/**
+ * @param {!Protocol.DebuggerDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerDebuggerDispatcher = function(dispatcher) {}
+/** @return {!Protocol.HeapProfilerAgent}*/
+Protocol.TargetBase.prototype.heapProfilerAgent = function(){};
+/**
+ * @param {!Protocol.HeapProfilerDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerHeapProfilerDispatcher = function(dispatcher) {}
+/** @return {!Protocol.ProfilerAgent}*/
+Protocol.TargetBase.prototype.profilerAgent = function(){};
+/**
+ * @param {!Protocol.ProfilerDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerProfilerDispatcher = function(dispatcher) {}
+/** @return {!Protocol.RuntimeAgent}*/
+Protocol.TargetBase.prototype.runtimeAgent = function(){};
+/**
+ * @param {!Protocol.RuntimeDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerRuntimeDispatcher = function(dispatcher) {}
+/** @return {!Protocol.SchemaAgent}*/
+Protocol.TargetBase.prototype.schemaAgent = function(){};
+/**
+ * @param {!Protocol.SchemaDispatcher} dispatcher
+ */
+Protocol.TargetBase.prototype.registerSchemaDispatcher = function(dispatcher) {}
diff --git a/node_modules/devtools-protocol/json/browser_protocol.json b/node_modules/devtools-protocol/json/browser_protocol.json
index cac2819..2904af2 100644
--- a/node_modules/devtools-protocol/json/browser_protocol.json
+++ b/node_modules/devtools-protocol/json/browser_protocol.json
@@ -58,7 +58,6 @@
                     "description": "Enum of possible native property sources (as a subtype of a particular AXValueSourceType).",
                     "type": "string",
                     "enum": [
-                        "description",
                         "figcaption",
                         "label",
                         "labelfor",
@@ -382,23 +381,10 @@
                     "experimental": true,
                     "parameters": [
                         {
-                            "name": "depth",
+                            "name": "max_depth",
                             "description": "The maximum depth at which descendants of the root node should be retrieved.\nIf omitted, the full tree is returned.",
                             "optional": true,
                             "type": "integer"
-                        },
-                        {
-                            "name": "max_depth",
-                            "description": "Deprecated. This parameter has been renamed to `depth`. If depth is not provided, max_depth will be used.",
-                            "deprecated": true,
-                            "optional": true,
-                            "type": "integer"
-                        },
-                        {
-                            "name": "frameId",
-                            "description": "The frame for whose document the AX tree should be retrieved.\nIf omited, the root frame is used.",
-                            "optional": true,
-                            "$ref": "Page.FrameId"
                         }
                     ],
                     "returns": [
@@ -419,12 +405,6 @@
                         {
                             "name": "id",
                             "$ref": "AXNodeId"
-                        },
-                        {
-                            "name": "frameId",
-                            "description": "The frame in whose document the node resides.\nIf omitted, the root frame is used.",
-                            "optional": true,
-                            "$ref": "Page.FrameId"
                         }
                     ],
                     "returns": [
@@ -834,6 +814,181 @@
             ]
         },
         {
+            "domain": "ApplicationCache",
+            "experimental": true,
+            "dependencies": [
+                "Page"
+            ],
+            "types": [
+                {
+                    "id": "ApplicationCacheResource",
+                    "description": "Detailed application cache resource information.",
+                    "type": "object",
+                    "properties": [
+                        {
+                            "name": "url",
+                            "description": "Resource url.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "size",
+                            "description": "Resource size.",
+                            "type": "integer"
+                        },
+                        {
+                            "name": "type",
+                            "description": "Resource type.",
+                            "type": "string"
+                        }
+                    ]
+                },
+                {
+                    "id": "ApplicationCache",
+                    "description": "Detailed application cache information.",
+                    "type": "object",
+                    "properties": [
+                        {
+                            "name": "manifestURL",
+                            "description": "Manifest URL.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "size",
+                            "description": "Application cache size.",
+                            "type": "number"
+                        },
+                        {
+                            "name": "creationTime",
+                            "description": "Application cache creation time.",
+                            "type": "number"
+                        },
+                        {
+                            "name": "updateTime",
+                            "description": "Application cache update time.",
+                            "type": "number"
+                        },
+                        {
+                            "name": "resources",
+                            "description": "Application cache resources.",
+                            "type": "array",
+                            "items": {
+                                "$ref": "ApplicationCacheResource"
+                            }
+                        }
+                    ]
+                },
+                {
+                    "id": "FrameWithManifest",
+                    "description": "Frame identifier - manifest URL pair.",
+                    "type": "object",
+                    "properties": [
+                        {
+                            "name": "frameId",
+                            "description": "Frame identifier.",
+                            "$ref": "Page.FrameId"
+                        },
+                        {
+                            "name": "manifestURL",
+                            "description": "Manifest URL.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "status",
+                            "description": "Application cache status.",
+                            "type": "integer"
+                        }
+                    ]
+                }
+            ],
+            "commands": [
+                {
+                    "name": "enable",
+                    "description": "Enables application cache domain notifications."
+                },
+                {
+                    "name": "getApplicationCacheForFrame",
+                    "description": "Returns relevant application cache data for the document in given frame.",
+                    "parameters": [
+                        {
+                            "name": "frameId",
+                            "description": "Identifier of the frame containing document whose application cache is retrieved.",
+                            "$ref": "Page.FrameId"
+                        }
+                    ],
+                    "returns": [
+                        {
+                            "name": "applicationCache",
+                            "description": "Relevant application cache data for the document in given frame.",
+                            "$ref": "ApplicationCache"
+                        }
+                    ]
+                },
+                {
+                    "name": "getFramesWithManifests",
+                    "description": "Returns array of frame identifiers with manifest urls for each frame containing a document\nassociated with some application cache.",
+                    "returns": [
+                        {
+                            "name": "frameIds",
+                            "description": "Array of frame identifiers with manifest urls for each frame containing a document\nassociated with some application cache.",
+                            "type": "array",
+                            "items": {
+                                "$ref": "FrameWithManifest"
+                            }
+                        }
+                    ]
+                },
+                {
+                    "name": "getManifestForFrame",
+                    "description": "Returns manifest URL for document in the given frame.",
+                    "parameters": [
+                        {
+                            "name": "frameId",
+                            "description": "Identifier of the frame containing document whose manifest is retrieved.",
+                            "$ref": "Page.FrameId"
+                        }
+                    ],
+                    "returns": [
+                        {
+                            "name": "manifestURL",
+                            "description": "Manifest URL for document in the given frame.",
+                            "type": "string"
+                        }
+                    ]
+                }
+            ],
+            "events": [
+                {
+                    "name": "applicationCacheStatusUpdated",
+                    "parameters": [
+                        {
+                            "name": "frameId",
+                            "description": "Identifier of the frame containing document whose application cache updated status.",
+                            "$ref": "Page.FrameId"
+                        },
+                        {
+                            "name": "manifestURL",
+                            "description": "Manifest URL.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "status",
+                            "description": "Updated application cache status.",
+                            "type": "integer"
+                        }
+                    ]
+                },
+                {
+                    "name": "networkStateUpdated",
+                    "parameters": [
+                        {
+                            "name": "isNowOnline",
+                            "type": "boolean"
+                        }
+                    ]
+                }
+            ]
+        },
+        {
             "domain": "Audits",
             "description": "Audits domain allows investigation of page violations and possible improvements.",
             "experimental": true,
@@ -896,9 +1051,7 @@
                         "ExcludeSameSiteUnspecifiedTreatedAsLax",
                         "ExcludeSameSiteNoneInsecure",
                         "ExcludeSameSiteLax",
-                        "ExcludeSameSiteStrict",
-                        "ExcludeInvalidSameParty",
-                        "ExcludeSamePartyCrossPartyContext"
+                        "ExcludeSameSiteStrict"
                     ]
                 },
                 {
@@ -930,16 +1083,9 @@
                     "properties": [
                         {
                             "name": "cookie",
-                            "description": "If AffectedCookie is not set then rawCookieLine contains the raw\nSet-Cookie header string. This hints at a problem where the\ncookie line is syntactically or semantically malformed in a way\nthat no valid cookie could be created.",
-                            "optional": true,
                             "$ref": "AffectedCookie"
                         },
                         {
-                            "name": "rawCookieLine",
-                            "optional": true,
-                            "type": "string"
-                        },
-                        {
                             "name": "cookieWarningReasons",
                             "type": "array",
                             "items": {
@@ -1138,8 +1284,7 @@
                         "kEvalViolation",
                         "kURLViolation",
                         "kTrustedTypesSinkViolation",
-                        "kTrustedTypesPolicyViolation",
-                        "kWasmEvalViolation"
+                        "kTrustedTypesPolicyViolation"
                     ]
                 },
                 {
@@ -1354,9 +1499,7 @@
                         "InvalidAttributionSourceEventId",
                         "InvalidAttributionData",
                         "AttributionSourceUntrustworthyOrigin",
-                        "AttributionUntrustworthyOrigin",
-                        "AttributionTriggerDataTooLarge",
-                        "AttributionEventSourceTriggerDataTooLarge"
+                        "AttributionUntrustworthyOrigin"
                     ]
                 },
                 {
@@ -1419,90 +1562,6 @@
                     ]
                 },
                 {
-                    "id": "NavigatorUserAgentIssueDetails",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "url",
-                            "type": "string"
-                        },
-                        {
-                            "name": "location",
-                            "optional": true,
-                            "$ref": "SourceCodeLocation"
-                        }
-                    ]
-                },
-                {
-                    "id": "WasmCrossOriginModuleSharingIssueDetails",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "wasmModuleUrl",
-                            "type": "string"
-                        },
-                        {
-                            "name": "sourceOrigin",
-                            "type": "string"
-                        },
-                        {
-                            "name": "targetOrigin",
-                            "type": "string"
-                        },
-                        {
-                            "name": "isWarning",
-                            "type": "boolean"
-                        }
-                    ]
-                },
-                {
-                    "id": "GenericIssueErrorType",
-                    "type": "string",
-                    "enum": [
-                        "CrossOriginPortalPostMessageError"
-                    ]
-                },
-                {
-                    "id": "GenericIssueDetails",
-                    "description": "Depending on the concrete errorType, different properties are set.",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "errorType",
-                            "description": "Issues with the same errorType are aggregated in the frontend.",
-                            "$ref": "GenericIssueErrorType"
-                        },
-                        {
-                            "name": "frameId",
-                            "optional": true,
-                            "$ref": "Page.FrameId"
-                        }
-                    ]
-                },
-                {
-                    "id": "DeprecationIssueDetails",
-                    "description": "This issue tracks information needed to print a deprecation message.\nThe formatting is inherited from the old console.log version, see more at:\nhttps://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/frame/deprecation.cc\nTODO(crbug.com/1264960): Re-work format to add i18n support per:\nhttps://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/public/devtools_protocol/README.md",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "affectedFrame",
-                            "optional": true,
-                            "$ref": "AffectedFrame"
-                        },
-                        {
-                            "name": "sourceCodeLocation",
-                            "$ref": "SourceCodeLocation"
-                        },
-                        {
-                            "name": "message",
-                            "description": "The content of the deprecation issue (this won't be translated),\ne.g. \"window.inefficientLegacyStorageMethod will be removed in M97,\naround January 2022. Please use Web Storage or Indexed Database\ninstead. This standard was abandoned in January, 1970. See\nhttps://www.chromestatus.com/feature/5684870116278272 for more details.\"",
-                            "deprecated": true,
-                            "optional": true,
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
                     "id": "InspectorIssueCode",
                     "description": "A unique identifier for the type of issue. Each type may use one of the\noptional fields in InspectorIssueDetails to convey more specific\ninformation about the kind of issue.",
                     "type": "string",
@@ -1517,11 +1576,7 @@
                         "LowTextContrastIssue",
                         "CorsIssue",
                         "AttributionReportingIssue",
-                        "QuirksModeIssue",
-                        "NavigatorUserAgentIssue",
-                        "WasmCrossOriginModuleSharingIssue",
-                        "GenericIssue",
-                        "DeprecationIssue"
+                        "QuirksModeIssue"
                     ]
                 },
                 {
@@ -1583,35 +1638,10 @@
                             "name": "quirksModeIssueDetails",
                             "optional": true,
                             "$ref": "QuirksModeIssueDetails"
-                        },
-                        {
-                            "name": "navigatorUserAgentIssueDetails",
-                            "optional": true,
-                            "$ref": "NavigatorUserAgentIssueDetails"
-                        },
-                        {
-                            "name": "wasmCrossOriginModuleSharingIssue",
-                            "optional": true,
-                            "$ref": "WasmCrossOriginModuleSharingIssueDetails"
-                        },
-                        {
-                            "name": "genericIssueDetails",
-                            "optional": true,
-                            "$ref": "GenericIssueDetails"
-                        },
-                        {
-                            "name": "deprecationIssueDetails",
-                            "optional": true,
-                            "$ref": "DeprecationIssueDetails"
                         }
                     ]
                 },
                 {
-                    "id": "IssueId",
-                    "description": "A unique id for a DevTools inspector issue. Allows other entities (e.g.\nexceptions, CDP message, console messages, etc.) to reference an issue.",
-                    "type": "string"
-                },
-                {
                     "id": "InspectorIssue",
                     "description": "An inspector issue reported from the back-end.",
                     "type": "object",
@@ -1623,12 +1653,6 @@
                         {
                             "name": "details",
                             "$ref": "InspectorIssueDetails"
-                        },
-                        {
-                            "name": "issueId",
-                            "description": "A unique id for this issue. May be omitted if no other entity (e.g.\nexception, CDP message, etc.) is referencing this issue.",
-                            "optional": true,
-                            "$ref": "IssueId"
                         }
                     ]
                 }
@@ -2605,7 +2629,7 @@
                         },
                         {
                             "name": "sourceURL",
-                            "description": "Stylesheet resource URL. Empty if this is a constructed stylesheet created using\nnew CSSStyleSheet() (but non-empty if this is a constructed sylesheet imported\nas a CSS module script).",
+                            "description": "Stylesheet resource URL.",
                             "type": "string"
                         },
                         {
@@ -2653,7 +2677,7 @@
                         },
                         {
                             "name": "isConstructed",
-                            "description": "True if this stylesheet is created through new CSSStyleSheet() or imported as a\nCSS module script.",
+                            "description": "Whether this stylesheet is a constructed stylesheet (created using new CSSStyleSheet()).",
                             "type": "boolean"
                         },
                         {
@@ -2717,16 +2741,6 @@
                             "items": {
                                 "$ref": "CSSMedia"
                             }
-                        },
-                        {
-                            "name": "containerQueries",
-                            "description": "Container query list array (for rules involving container queries).\nThe array enumerates container queries starting with the innermost one, going outwards.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "array",
-                            "items": {
-                                "$ref": "CSSContainerQuery"
-                            }
                         }
                     ]
                 },
@@ -3021,37 +3035,6 @@
                     ]
                 },
                 {
-                    "id": "CSSContainerQuery",
-                    "description": "CSS container query rule descriptor.",
-                    "experimental": true,
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "text",
-                            "description": "Container query text.",
-                            "type": "string"
-                        },
-                        {
-                            "name": "range",
-                            "description": "The associated rule header range in the enclosing stylesheet (if\navailable).",
-                            "optional": true,
-                            "$ref": "SourceRange"
-                        },
-                        {
-                            "name": "styleSheetId",
-                            "description": "Identifier of the stylesheet containing this object (if exists).",
-                            "optional": true,
-                            "$ref": "StyleSheetId"
-                        },
-                        {
-                            "name": "name",
-                            "description": "Optional name for the container.",
-                            "optional": true,
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
                     "id": "PlatformFontUsage",
                     "description": "Information about amount of glyphs that were rendered with given font.",
                     "type": "object",
@@ -3612,32 +3595,6 @@
                     ]
                 },
                 {
-                    "name": "setContainerQueryText",
-                    "description": "Modifies the expression of a container query.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "styleSheetId",
-                            "$ref": "StyleSheetId"
-                        },
-                        {
-                            "name": "range",
-                            "$ref": "SourceRange"
-                        },
-                        {
-                            "name": "text",
-                            "type": "string"
-                        }
-                    ],
-                    "returns": [
-                        {
-                            "name": "containerQuery",
-                            "description": "The resulting CSS container query rule after modification.",
-                            "$ref": "CSSContainerQuery"
-                        }
-                    ]
-                },
-                {
                     "name": "setRuleSelector",
                     "description": "Modifies the rule selector.",
                     "parameters": [
@@ -4208,7 +4165,6 @@
                         "target-text",
                         "spelling-error",
                         "grammar-error",
-                        "highlight",
                         "first-line-inherited",
                         "scrollbar",
                         "scrollbar-thumb",
@@ -5559,52 +5515,6 @@
                             "$ref": "NodeId"
                         }
                     ]
-                },
-                {
-                    "name": "getContainerForNode",
-                    "description": "Returns the container of the given node based on container query conditions.\nIf containerName is given, it will find the nearest container with a matching name;\notherwise it will find the nearest container regardless of its container name.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "nodeId",
-                            "$ref": "NodeId"
-                        },
-                        {
-                            "name": "containerName",
-                            "optional": true,
-                            "type": "string"
-                        }
-                    ],
-                    "returns": [
-                        {
-                            "name": "nodeId",
-                            "description": "The container node for the given node, or null if not found.",
-                            "optional": true,
-                            "$ref": "NodeId"
-                        }
-                    ]
-                },
-                {
-                    "name": "getQueryingDescendantsForContainer",
-                    "description": "Returns the descendants of a container query container that have\ncontainer queries against this container.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "nodeId",
-                            "description": "Id of the container node to find querying descendants from.",
-                            "$ref": "NodeId"
-                        }
-                    ],
-                    "returns": [
-                        {
-                            "name": "nodeIds",
-                            "description": "Descendant nodes with container queries against the given container.",
-                            "type": "array",
-                            "items": {
-                                "$ref": "NodeId"
-                            }
-                        }
-                    ]
                 }
             ],
             "events": [
@@ -6098,35 +6008,6 @@
             ]
         },
         {
-            "domain": "EventBreakpoints",
-            "description": "EventBreakpoints permits setting breakpoints on particular operations and\nevents in targets that run JavaScript but do not have a DOM.\nJavaScript execution will stop on these operations as if there was a regular\nbreakpoint set.",
-            "experimental": true,
-            "commands": [
-                {
-                    "name": "setInstrumentationBreakpoint",
-                    "description": "Sets breakpoint on particular native event.",
-                    "parameters": [
-                        {
-                            "name": "eventName",
-                            "description": "Instrumentation name to stop on.",
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
-                    "name": "removeInstrumentationBreakpoint",
-                    "description": "Removes breakpoint on particular native event.",
-                    "parameters": [
-                        {
-                            "name": "eventName",
-                            "description": "Instrumentation name to stop on.",
-                            "type": "string"
-                        }
-                    ]
-                }
-            ]
-        },
-        {
             "domain": "DOMSnapshot",
             "description": "This domain facilitates obtaining document snapshots with DOM, layout, and style information.",
             "experimental": true,
@@ -6607,12 +6488,6 @@
                             }
                         },
                         {
-                            "name": "shadowRootType",
-                            "description": "Type of the shadow root the `Node` is in. String values are equal to the `ShadowRootType` enum.",
-                            "optional": true,
-                            "$ref": "RareStringData"
-                        },
-                        {
                             "name": "nodeName",
                             "description": "`Node`'s nodeName.",
                             "optional": true,
@@ -7483,19 +7358,6 @@
                     ]
                 },
                 {
-                    "name": "setAutoDarkModeOverride",
-                    "description": "Automatically render all web contents using a dark theme.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "enabled",
-                            "description": "Whether to enable or disable automatic dark mode.\nIf not specified, any existing override will be cleared.",
-                            "optional": true,
-                            "type": "boolean"
-                        }
-                    ]
-                },
-                {
                     "name": "setCPUThrottlingRate",
                     "description": "Enables CPU throttling to emulate slow CPUs.",
                     "experimental": true,
@@ -8681,15 +8543,6 @@
                             }
                         },
                         {
-                            "name": "files",
-                            "description": "List of filenames that should be included when dropping",
-                            "optional": true,
-                            "type": "array",
-                            "items": {
-                                "type": "string"
-                            }
-                        },
-                        {
                             "name": "dragOperationsMask",
                             "description": "Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16",
                             "type": "integer"
@@ -8854,40 +8707,6 @@
                     ]
                 },
                 {
-                    "name": "imeSetComposition",
-                    "description": "This method sets the current candidate text for ime.\nUse imeCommitComposition to commit the final text.\nUse imeSetComposition with empty string as text to cancel composition.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "text",
-                            "description": "The text to insert",
-                            "type": "string"
-                        },
-                        {
-                            "name": "selectionStart",
-                            "description": "selection start",
-                            "type": "integer"
-                        },
-                        {
-                            "name": "selectionEnd",
-                            "description": "selection end",
-                            "type": "integer"
-                        },
-                        {
-                            "name": "replacementStart",
-                            "description": "replacement start",
-                            "optional": true,
-                            "type": "integer"
-                        },
-                        {
-                            "name": "replacementEnd",
-                            "description": "replacement end",
-                            "optional": true,
-                            "type": "integer"
-                        }
-                    ]
-                },
-                {
                     "name": "dispatchMouseEvent",
                     "description": "Dispatches a mouse event to the page.",
                     "parameters": [
@@ -9787,14 +9606,6 @@
                             "type": "string"
                         },
                         {
-                            "name": "category",
-                            "optional": true,
-                            "type": "string",
-                            "enum": [
-                                "cors"
-                            ]
-                        },
-                        {
                             "name": "timestamp",
                             "description": "Timestamp when this entry was added.",
                             "$ref": "Runtime.Timestamp"
@@ -10446,13 +10257,6 @@
                             "experimental": true,
                             "optional": true,
                             "$ref": "TrustTokenParams"
-                        },
-                        {
-                            "name": "isSameSite",
-                            "description": "True if this resource request is considered to be the 'same site' as the\nrequest correspondinfg to the main frame.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "boolean"
                         }
                     ]
                 },
@@ -10642,8 +10446,6 @@
                         "HeaderDisallowedByPreflightResponse",
                         "RedirectContainsCredentials",
                         "InsecurePrivateNetwork",
-                        "InvalidPrivateNetworkAccess",
-                        "UnexpectedPrivateNetworkAccess",
                         "NoCorsRedirectModeNotFollow"
                     ]
                 },
@@ -10739,8 +10541,7 @@
                         },
                         {
                             "name": "headersText",
-                            "description": "HTTP response headers text. This has been replaced by the headers in Network.responseReceivedExtraInfo.",
-                            "deprecated": true,
+                            "description": "HTTP response headers text.",
                             "optional": true,
                             "type": "string"
                         },
@@ -10757,8 +10558,7 @@
                         },
                         {
                             "name": "requestHeadersText",
-                            "description": "HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo.",
-                            "deprecated": true,
+                            "description": "HTTP request headers text.",
                             "optional": true,
                             "type": "string"
                         },
@@ -11106,8 +10906,7 @@
                         "SchemefulSameSiteLax",
                         "SchemefulSameSiteUnspecifiedTreatedAsLax",
                         "SamePartyFromCrossPartyContext",
-                        "SamePartyConflictsWithOtherAttributes",
-                        "NameValuePairExceedsMaxSize"
+                        "SamePartyConflictsWithOtherAttributes"
                     ]
                 },
                 {
@@ -11128,8 +10927,7 @@
                         "SchemefulSameSiteStrict",
                         "SchemefulSameSiteLax",
                         "SchemefulSameSiteUnspecifiedTreatedAsLax",
-                        "SamePartyFromCrossPartyContext",
-                        "NameValuePairExceedsMaxSize"
+                        "SamePartyFromCrossPartyContext"
                     ]
                 },
                 {
@@ -11552,9 +11350,7 @@
                     "enum": [
                         "Allow",
                         "BlockFromInsecureToMorePrivate",
-                        "WarnFromInsecureToMorePrivate",
-                        "PreflightBlock",
-                        "PreflightWarn"
+                        "WarnFromInsecureToMorePrivate"
                     ]
                 },
                 {
@@ -11569,18 +11365,6 @@
                     ]
                 },
                 {
-                    "id": "ConnectTiming",
-                    "experimental": true,
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "requestTime",
-                            "description": "Timing's requestTime is a baseline in seconds, while the other numbers are ticks in\nmilliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for\nthe same request (but not for redirected requests).",
-                            "type": "number"
-                        }
-                    ]
-                },
-                {
                     "id": "ClientSecurityState",
                     "experimental": true,
                     "type": "object",
@@ -11641,7 +11425,7 @@
                     "type": "string",
                     "enum": [
                         "None",
-                        "Credentialless",
+                        "CorsOrCredentialless",
                         "RequireCorp"
                     ]
                 },
@@ -11688,73 +11472,6 @@
                     ]
                 },
                 {
-                    "id": "ReportStatus",
-                    "description": "The status of a Reporting API report.",
-                    "experimental": true,
-                    "type": "string",
-                    "enum": [
-                        "Queued",
-                        "Pending",
-                        "MarkedForRemoval",
-                        "Success"
-                    ]
-                },
-                {
-                    "id": "ReportId",
-                    "experimental": true,
-                    "type": "string"
-                },
-                {
-                    "id": "ReportingApiReport",
-                    "description": "An object representing a report generated by the Reporting API.",
-                    "experimental": true,
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "id",
-                            "$ref": "ReportId"
-                        },
-                        {
-                            "name": "initiatorUrl",
-                            "description": "The URL of the document that triggered the report.",
-                            "type": "string"
-                        },
-                        {
-                            "name": "destination",
-                            "description": "The name of the endpoint group that should be used to deliver the report.",
-                            "type": "string"
-                        },
-                        {
-                            "name": "type",
-                            "description": "The type of the report (specifies the set of data that is contained in the report body).",
-                            "type": "string"
-                        },
-                        {
-                            "name": "timestamp",
-                            "description": "When the report was generated.",
-                            "$ref": "Network.TimeSinceEpoch"
-                        },
-                        {
-                            "name": "depth",
-                            "description": "How many uploads deep the related request was.",
-                            "type": "integer"
-                        },
-                        {
-                            "name": "completedAttempts",
-                            "description": "The number of delivery attempts made so far, not including an active attempt.",
-                            "type": "integer"
-                        },
-                        {
-                            "name": "body",
-                            "type": "object"
-                        },
-                        {
-                            "name": "status",
-                            "$ref": "ReportStatus"
-                        }
-                    ]
-                },
-                {
                     "id": "LoadNetworkResourcePageResult",
                     "description": "An object providing the result of a network resource load.",
                     "experimental": true,
@@ -12361,6 +12078,23 @@
                     ]
                 },
                 {
+                    "name": "setDataSizeLimitsForTest",
+                    "description": "For testing.",
+                    "experimental": true,
+                    "parameters": [
+                        {
+                            "name": "maxTotalSize",
+                            "description": "Maximum total buffer size.",
+                            "type": "integer"
+                        },
+                        {
+                            "name": "maxResourceSize",
+                            "description": "Maximum per-resource size.",
+                            "type": "integer"
+                        }
+                    ]
+                },
+                {
                     "name": "setExtraHTTPHeaders",
                     "description": "Specifies whether to always send extra HTTP headers with the requests from this page.",
                     "parameters": [
@@ -12450,26 +12184,13 @@
                     ]
                 },
                 {
-                    "name": "enableReportingApi",
-                    "description": "Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.\nEnabling triggers 'reportingApiReportAdded' for all existing reports.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "enable",
-                            "description": "Whether to enable or disable events for the Reporting API",
-                            "type": "boolean"
-                        }
-                    ]
-                },
-                {
                     "name": "loadNetworkResource",
                     "description": "Fetches the resource and returns the content.",
                     "experimental": true,
                     "parameters": [
                         {
                             "name": "frameId",
-                            "description": "Frame id to get the resource for. Mandatory for frame targets, and\nshould be omitted for worker targets.",
-                            "optional": true,
+                            "description": "Frame id to get the resource for.",
                             "$ref": "Page.FrameId"
                         },
                         {
@@ -12745,12 +12466,6 @@
                             "$ref": "Initiator"
                         },
                         {
-                            "name": "redirectHasExtraInfo",
-                            "description": "In the case that redirectResponse is populated, this flag indicates whether\nrequestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted\nfor the request which was just redirected.",
-                            "experimental": true,
-                            "type": "boolean"
-                        },
-                        {
                             "name": "redirectResponse",
                             "description": "Redirect response data.",
                             "optional": true,
@@ -12845,12 +12560,6 @@
                             "$ref": "Response"
                         },
                         {
-                            "name": "hasExtraInfo",
-                            "description": "Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be\nor were emitted for this request.",
-                            "experimental": true,
-                            "type": "boolean"
-                        },
-                        {
                             "name": "frameId",
                             "description": "Frame identifier.",
                             "optional": true,
@@ -13089,12 +12798,6 @@
                             "$ref": "Headers"
                         },
                         {
-                            "name": "connectTiming",
-                            "description": "Connection timing information for the request.",
-                            "experimental": true,
-                            "$ref": "ConnectTiming"
-                        },
-                        {
                             "name": "clientSecurityState",
                             "description": "The client security state set for the request.",
                             "optional": true,
@@ -13131,11 +12834,6 @@
                             "$ref": "IPAddressSpace"
                         },
                         {
-                            "name": "statusCode",
-                            "description": "The status code of the response. This is useful in cases the request failed and no responseReceived\nevent is triggered, which is the case for, e.g., CORS errors. This is also the correct status code\nfor cached requests, where the status in responseReceived is a 200 and this will be 304.",
-                            "type": "integer"
-                        },
-                        {
                             "name": "headersText",
                             "description": "Raw response header text as it was received over the wire. The raw text may not always be\navailable, such as in the case of HTTP/2 or QUIC.",
                             "optional": true,
@@ -13192,115 +12890,6 @@
                             "type": "integer"
                         }
                     ]
-                },
-                {
-                    "name": "subresourceWebBundleMetadataReceived",
-                    "description": "Fired once when parsing the .wbn file has succeeded.\nThe event contains the information about the web bundle contents.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "requestId",
-                            "description": "Request identifier. Used to match this information to another event.",
-                            "$ref": "RequestId"
-                        },
-                        {
-                            "name": "urls",
-                            "description": "A list of URLs of resources in the subresource Web Bundle.",
-                            "type": "array",
-                            "items": {
-                                "type": "string"
-                            }
-                        }
-                    ]
-                },
-                {
-                    "name": "subresourceWebBundleMetadataError",
-                    "description": "Fired once when parsing the .wbn file has failed.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "requestId",
-                            "description": "Request identifier. Used to match this information to another event.",
-                            "$ref": "RequestId"
-                        },
-                        {
-                            "name": "errorMessage",
-                            "description": "Error message",
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
-                    "name": "subresourceWebBundleInnerResponseParsed",
-                    "description": "Fired when handling requests for resources within a .wbn file.\nNote: this will only be fired for resources that are requested by the webpage.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "innerRequestId",
-                            "description": "Request identifier of the subresource request",
-                            "$ref": "RequestId"
-                        },
-                        {
-                            "name": "innerRequestURL",
-                            "description": "URL of the subresource resource.",
-                            "type": "string"
-                        },
-                        {
-                            "name": "bundleRequestId",
-                            "description": "Bundle request identifier. Used to match this information to another event.\nThis made be absent in case when the instrumentation was enabled only\nafter webbundle was parsed.",
-                            "optional": true,
-                            "$ref": "RequestId"
-                        }
-                    ]
-                },
-                {
-                    "name": "subresourceWebBundleInnerResponseError",
-                    "description": "Fired when request for resources within a .wbn file failed.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "innerRequestId",
-                            "description": "Request identifier of the subresource request",
-                            "$ref": "RequestId"
-                        },
-                        {
-                            "name": "innerRequestURL",
-                            "description": "URL of the subresource resource.",
-                            "type": "string"
-                        },
-                        {
-                            "name": "errorMessage",
-                            "description": "Error message",
-                            "type": "string"
-                        },
-                        {
-                            "name": "bundleRequestId",
-                            "description": "Bundle request identifier. Used to match this information to another event.\nThis made be absent in case when the instrumentation was enabled only\nafter webbundle was parsed.",
-                            "optional": true,
-                            "$ref": "RequestId"
-                        }
-                    ]
-                },
-                {
-                    "name": "reportingApiReportAdded",
-                    "description": "Is sent whenever a new report is added.\nAnd after 'enableReportingApi' for all existing reports.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "report",
-                            "$ref": "ReportingApiReport"
-                        }
-                    ]
-                },
-                {
-                    "name": "reportingApiReportUpdated",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "report",
-                            "$ref": "ReportingApiReport"
-                        }
-                    ]
                 }
             ]
         },
@@ -13703,12 +13292,6 @@
                             "description": "The contrast algorithm to use for the contrast ratio (default: aa).",
                             "optional": true,
                             "$ref": "ContrastAlgorithm"
-                        },
-                        {
-                            "name": "containerQueryContainerHighlightConfig",
-                            "description": "The container query container highlight configuration (default: all transparent).",
-                            "optional": true,
-                            "$ref": "ContainerQueryContainerHighlightConfig"
                         }
                     ]
                 },
@@ -13825,80 +13408,6 @@
                     ]
                 },
                 {
-                    "id": "ContainerQueryHighlightConfig",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "containerQueryContainerHighlightConfig",
-                            "description": "A descriptor for the highlight appearance of container query containers.",
-                            "$ref": "ContainerQueryContainerHighlightConfig"
-                        },
-                        {
-                            "name": "nodeId",
-                            "description": "Identifier of the container node to highlight.",
-                            "$ref": "DOM.NodeId"
-                        }
-                    ]
-                },
-                {
-                    "id": "ContainerQueryContainerHighlightConfig",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "containerBorder",
-                            "description": "The style of the container border.",
-                            "optional": true,
-                            "$ref": "LineStyle"
-                        },
-                        {
-                            "name": "descendantBorder",
-                            "description": "The style of the descendants' borders.",
-                            "optional": true,
-                            "$ref": "LineStyle"
-                        }
-                    ]
-                },
-                {
-                    "id": "IsolatedElementHighlightConfig",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "isolationModeHighlightConfig",
-                            "description": "A descriptor for the highlight appearance of an element in isolation mode.",
-                            "$ref": "IsolationModeHighlightConfig"
-                        },
-                        {
-                            "name": "nodeId",
-                            "description": "Identifier of the isolated element to highlight.",
-                            "$ref": "DOM.NodeId"
-                        }
-                    ]
-                },
-                {
-                    "id": "IsolationModeHighlightConfig",
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "resizerColor",
-                            "description": "The fill color of the resizers (default: transparent).",
-                            "optional": true,
-                            "$ref": "DOM.RGBA"
-                        },
-                        {
-                            "name": "resizerHandleColor",
-                            "description": "The fill color for resizer handles (default: transparent).",
-                            "optional": true,
-                            "$ref": "DOM.RGBA"
-                        },
-                        {
-                            "name": "maskColor",
-                            "description": "The fill color for the mask covering non-isolated elements (default: transparent).",
-                            "optional": true,
-                            "$ref": "DOM.RGBA"
-                        }
-                    ]
-                },
-                {
                     "id": "InspectMode",
                     "type": "string",
                     "enum": [
@@ -14006,8 +13515,7 @@
                 },
                 {
                     "name": "highlightFrame",
-                    "description": "Highlights owner element of the frame with given id.\nDeprecated: Doesn't work reliablity and cannot be fixed due to process\nseparatation (the owner node might be in a different process). Determine\nthe owner node in the client and use highlightNode.",
-                    "deprecated": true,
+                    "description": "Highlights owner element of the frame with given id.",
                     "parameters": [
                         {
                             "name": "frameId",
@@ -14255,19 +13763,6 @@
                     ]
                 },
                 {
-                    "name": "setShowContainerQueryOverlays",
-                    "parameters": [
-                        {
-                            "name": "containerQueryHighlightConfigs",
-                            "description": "An array of node identifiers and descriptors for the highlight appearance.",
-                            "type": "array",
-                            "items": {
-                                "$ref": "ContainerQueryHighlightConfig"
-                            }
-                        }
-                    ]
-                },
-                {
                     "name": "setShowPaintRects",
                     "description": "Requests that backend shows paint rectangles",
                     "parameters": [
@@ -14343,20 +13838,6 @@
                             "$ref": "HingeConfig"
                         }
                     ]
-                },
-                {
-                    "name": "setShowIsolatedElements",
-                    "description": "Show elements in isolation mode with overlays.",
-                    "parameters": [
-                        {
-                            "name": "isolatedElementHighlightConfigs",
-                            "description": "An array of node identifiers and descriptors for the highlight appearance.",
-                            "type": "array",
-                            "items": {
-                                "$ref": "IsolatedElementHighlightConfig"
-                            }
-                        }
-                    ]
                 }
             ],
             "events": [
@@ -14426,36 +13907,6 @@
                     ]
                 },
                 {
-                    "id": "AdFrameExplanation",
-                    "experimental": true,
-                    "type": "string",
-                    "enum": [
-                        "ParentIsAd",
-                        "CreatedByAdScript",
-                        "MatchedBlockingRule"
-                    ]
-                },
-                {
-                    "id": "AdFrameStatus",
-                    "description": "Indicates whether a frame has been identified as an ad and why.",
-                    "experimental": true,
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "adFrameType",
-                            "$ref": "AdFrameType"
-                        },
-                        {
-                            "name": "explanations",
-                            "optional": true,
-                            "type": "array",
-                            "items": {
-                                "$ref": "AdFrameExplanation"
-                            }
-                        }
-                    ]
-                },
-                {
                     "id": "SecureContextType",
                     "description": "Indicates whether the frame is a secure context and why it is the case.",
                     "experimental": true,
@@ -14504,18 +13955,16 @@
                         "ch-device-memory",
                         "ch-downlink",
                         "ch-ect",
+                        "ch-lang",
                         "ch-prefers-color-scheme",
                         "ch-rtt",
                         "ch-ua",
                         "ch-ua-arch",
-                        "ch-ua-bitness",
                         "ch-ua-platform",
                         "ch-ua-model",
                         "ch-ua-mobile",
                         "ch-ua-full-version",
                         "ch-ua-platform-version",
-                        "ch-ua-reduced",
-                        "ch-viewport-height",
                         "ch-viewport-width",
                         "ch-width",
                         "clipboard-read",
@@ -14536,7 +13985,6 @@
                         "hid",
                         "idle-detection",
                         "interest-cohort",
-                        "keyboard-map",
                         "magnetometer",
                         "microphone",
                         "midi",
@@ -14553,7 +14001,6 @@
                         "usb",
                         "vertical-scroll",
                         "web-share",
-                        "window-placement",
                         "xr-spatial-tracking"
                     ]
                 },
@@ -14618,8 +14065,7 @@
                         "WrongVersion",
                         "FeatureDisabled",
                         "TokenDisabled",
-                        "FeatureDisabledForUser",
-                        "UnknownTrial"
+                        "FeatureDisabledForUser"
                     ]
                 },
                 {
@@ -14731,7 +14177,7 @@
                             "name": "parentId",
                             "description": "Parent frame identifier.",
                             "optional": true,
-                            "$ref": "FrameId"
+                            "type": "string"
                         },
                         {
                             "name": "loaderId",
@@ -14780,11 +14226,11 @@
                             "type": "string"
                         },
                         {
-                            "name": "adFrameStatus",
-                            "description": "Indicates whether this frame was tagged as an ad and why.",
+                            "name": "adFrameType",
+                            "description": "Indicates whether this frame was tagged as an ad.",
                             "experimental": true,
                             "optional": true,
-                            "$ref": "AdFrameStatus"
+                            "$ref": "AdFrameType"
                         },
                         {
                             "name": "secureContextType",
@@ -14806,6 +14252,16 @@
                             "items": {
                                 "$ref": "GatedAPIFeatures"
                             }
+                        },
+                        {
+                            "name": "originTrials",
+                            "description": "Frame document's origin trials with at least one token present.",
+                            "experimental": true,
+                            "optional": true,
+                            "type": "array",
+                            "items": {
+                                "$ref": "OriginTrial"
+                            }
                         }
                     ]
                 },
@@ -15344,164 +14800,6 @@
                         "Navigation",
                         "BackForwardCacheRestore"
                     ]
-                },
-                {
-                    "id": "BackForwardCacheNotRestoredReason",
-                    "description": "List of not restored reasons for back-forward cache.",
-                    "experimental": true,
-                    "type": "string",
-                    "enum": [
-                        "NotMainFrame",
-                        "BackForwardCacheDisabled",
-                        "RelatedActiveContentsExist",
-                        "HTTPStatusNotOK",
-                        "SchemeNotHTTPOrHTTPS",
-                        "Loading",
-                        "WasGrantedMediaAccess",
-                        "DisableForRenderFrameHostCalled",
-                        "DomainNotAllowed",
-                        "HTTPMethodNotGET",
-                        "SubframeIsNavigating",
-                        "Timeout",
-                        "CacheLimit",
-                        "JavaScriptExecution",
-                        "RendererProcessKilled",
-                        "RendererProcessCrashed",
-                        "GrantedMediaStreamAccess",
-                        "SchedulerTrackedFeatureUsed",
-                        "ConflictingBrowsingInstance",
-                        "CacheFlushed",
-                        "ServiceWorkerVersionActivation",
-                        "SessionRestored",
-                        "ServiceWorkerPostMessage",
-                        "EnteredBackForwardCacheBeforeServiceWorkerHostAdded",
-                        "RenderFrameHostReused_SameSite",
-                        "RenderFrameHostReused_CrossSite",
-                        "ServiceWorkerClaim",
-                        "IgnoreEventAndEvict",
-                        "HaveInnerContents",
-                        "TimeoutPuttingInCache",
-                        "BackForwardCacheDisabledByLowMemory",
-                        "BackForwardCacheDisabledByCommandLine",
-                        "NetworkRequestDatapipeDrainedAsBytesConsumer",
-                        "NetworkRequestRedirected",
-                        "NetworkRequestTimeout",
-                        "NetworkExceedsBufferLimit",
-                        "NavigationCancelledWhileRestoring",
-                        "NotMostRecentNavigationEntry",
-                        "BackForwardCacheDisabledForPrerender",
-                        "UserAgentOverrideDiffers",
-                        "ForegroundCacheLimit",
-                        "BrowsingInstanceNotSwapped",
-                        "BackForwardCacheDisabledForDelegate",
-                        "OptInUnloadHeaderNotPresent",
-                        "UnloadHandlerExistsInMainFrame",
-                        "UnloadHandlerExistsInSubFrame",
-                        "ServiceWorkerUnregistration",
-                        "CacheControlNoStore",
-                        "CacheControlNoStoreCookieModified",
-                        "CacheControlNoStoreHTTPOnlyCookieModified",
-                        "NoResponseHead",
-                        "Unknown",
-                        "ActivationNavigationsDisallowedForBug1234857",
-                        "WebSocket",
-                        "WebTransport",
-                        "WebRTC",
-                        "MainResourceHasCacheControlNoStore",
-                        "MainResourceHasCacheControlNoCache",
-                        "SubresourceHasCacheControlNoStore",
-                        "SubresourceHasCacheControlNoCache",
-                        "ContainsPlugins",
-                        "DocumentLoaded",
-                        "DedicatedWorkerOrWorklet",
-                        "OutstandingNetworkRequestOthers",
-                        "OutstandingIndexedDBTransaction",
-                        "RequestedNotificationsPermission",
-                        "RequestedMIDIPermission",
-                        "RequestedAudioCapturePermission",
-                        "RequestedVideoCapturePermission",
-                        "RequestedBackForwardCacheBlockedSensors",
-                        "RequestedBackgroundWorkPermission",
-                        "BroadcastChannel",
-                        "IndexedDBConnection",
-                        "WebXR",
-                        "SharedWorker",
-                        "WebLocks",
-                        "WebHID",
-                        "WebShare",
-                        "RequestedStorageAccessGrant",
-                        "WebNfc",
-                        "OutstandingNetworkRequestFetch",
-                        "OutstandingNetworkRequestXHR",
-                        "AppBanner",
-                        "Printing",
-                        "WebDatabase",
-                        "PictureInPicture",
-                        "Portal",
-                        "SpeechRecognizer",
-                        "IdleManager",
-                        "PaymentManager",
-                        "SpeechSynthesis",
-                        "KeyboardLock",
-                        "WebOTPService",
-                        "OutstandingNetworkRequestDirectSocket",
-                        "InjectedJavascript",
-                        "InjectedStyleSheet",
-                        "Dummy",
-                        "ContentSecurityHandler",
-                        "ContentWebAuthenticationAPI",
-                        "ContentFileChooser",
-                        "ContentSerial",
-                        "ContentFileSystemAccess",
-                        "ContentMediaDevicesDispatcherHost",
-                        "ContentWebBluetooth",
-                        "ContentWebUSB",
-                        "ContentMediaSession",
-                        "ContentMediaSessionService",
-                        "EmbedderPopupBlockerTabHelper",
-                        "EmbedderSafeBrowsingTriggeredPopupBlocker",
-                        "EmbedderSafeBrowsingThreatDetails",
-                        "EmbedderAppBannerManager",
-                        "EmbedderDomDistillerViewerSource",
-                        "EmbedderDomDistillerSelfDeletingRequestDelegate",
-                        "EmbedderOomInterventionTabHelper",
-                        "EmbedderOfflinePage",
-                        "EmbedderChromePasswordManagerClientBindCredentialManager",
-                        "EmbedderPermissionRequestManager",
-                        "EmbedderModalDialog",
-                        "EmbedderExtensions",
-                        "EmbedderExtensionMessaging",
-                        "EmbedderExtensionMessagingForOpenPort",
-                        "EmbedderExtensionSentMessageToCachedFrame"
-                    ]
-                },
-                {
-                    "id": "BackForwardCacheNotRestoredReasonType",
-                    "description": "Types of not restored reasons for back-forward cache.",
-                    "experimental": true,
-                    "type": "string",
-                    "enum": [
-                        "SupportPending",
-                        "PageSupportNeeded",
-                        "Circumstantial"
-                    ]
-                },
-                {
-                    "id": "BackForwardCacheNotRestoredExplanation",
-                    "experimental": true,
-                    "type": "object",
-                    "properties": [
-                        {
-                            "name": "type",
-                            "description": "Type of the reason",
-                            "$ref": "BackForwardCacheNotRestoredReasonType"
-                        },
-                        {
-                            "name": "reason",
-                            "description": "Not restored reason",
-                            "$ref": "BackForwardCacheNotRestoredReason"
-                        }
-                    ]
                 }
             ],
             "commands": [
@@ -15570,8 +14868,7 @@
                             "type": "string",
                             "enum": [
                                 "jpeg",
-                                "png",
-                                "webp"
+                                "png"
                             ]
                         },
                         {
@@ -15764,25 +15061,6 @@
                     ]
                 },
                 {
-                    "name": "getAppId",
-                    "description": "Returns the unique (PWA) app id.\nOnly returns values if the feature flag 'WebAppEnableManifestId' is enabled",
-                    "experimental": true,
-                    "returns": [
-                        {
-                            "name": "appId",
-                            "description": "App id, either from manifest's id attribute or computed from start_url",
-                            "optional": true,
-                            "type": "string"
-                        },
-                        {
-                            "name": "recommendedId",
-                            "description": "Recommendation for manifest's id attribute to match current id computed from start_url",
-                            "optional": true,
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
                     "name": "getCookies",
                     "description": "Returns all browser cookies. Depending on the backend support, will return detailed cookie\ninformation in the `cookies` field.",
                     "experimental": true,
@@ -16258,26 +15536,6 @@
                     ]
                 },
                 {
-                    "name": "getOriginTrials",
-                    "description": "Get Origin Trials on given frame.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "frameId",
-                            "$ref": "FrameId"
-                        }
-                    ],
-                    "returns": [
-                        {
-                            "name": "originTrials",
-                            "type": "array",
-                            "items": {
-                                "$ref": "OriginTrial"
-                            }
-                        }
-                    ]
-                },
-                {
                     "name": "setDeviceMetricsOverride",
                     "description": "Overrides the values of device screen dimensions (window.screen.width, window.screen.height,\nwindow.innerWidth, window.innerHeight, and \"device-width\"/\"device-height\"-related CSS media\nquery results).",
                     "experimental": true,
@@ -16581,8 +15839,19 @@
                     "experimental": true
                 },
                 {
+                    "name": "setProduceCompilationCache",
+                    "description": "Forces compilation cache to be generated for every subresource script.\nSee also: `Page.produceCompilationCache`.",
+                    "experimental": true,
+                    "parameters": [
+                        {
+                            "name": "enabled",
+                            "type": "boolean"
+                        }
+                    ]
+                },
+                {
                     "name": "produceCompilationCache",
-                    "description": "Requests backend to produce compilation cache for the specified scripts.\n`scripts` are appeneded to the list of scripts for which the cache\nwould be produced. The list may be reset during page navigation.\nWhen script with a matching URL is encountered, the cache is optionally\nproduced upon backend discretion, based on internal heuristics.\nSee also: `Page.compilationCacheProduced`.",
+                    "description": "Requests backend to produce compilation cache for the specified scripts.\nUnlike setProduceCompilationCache, this allows client to only produce cache\nfor specific scripts. `scripts` are appeneded to the list of scripts\nfor which the cache for would produced. Disabling compilation cache with\n`setProduceCompilationCache` would reset all pending cache requests.\nThe list may also be reset during page navigation.\nWhen script with a matching URL is encountered, the cache is optionally\nproduced upon backend discretion, based on internal heuristics.\nSee also: `Page.compilationCacheProduced`.",
                     "experimental": true,
                     "parameters": [
                         {
@@ -17006,14 +16275,6 @@
                             "name": "frameId",
                             "description": "The frame id of the associated frame.",
                             "$ref": "FrameId"
-                        },
-                        {
-                            "name": "notRestoredExplanations",
-                            "description": "Array of reasons why the page could not be cached. This must not be empty.",
-                            "type": "array",
-                            "items": {
-                                "$ref": "BackForwardCacheNotRestoredExplanation"
-                            }
                         }
                     ]
                 },
@@ -18959,7 +18220,6 @@
                         {
                             "name": "browserContextId",
                             "description": "The browser context to create the page in.",
-                            "experimental": true,
                             "optional": true,
                             "$ref": "Browser.BrowserContextID"
                         },
@@ -19079,7 +18339,7 @@
                 },
                 {
                     "name": "setAutoAttach",
-                    "description": "Controls whether to automatically attach to new targets which are considered to be related to\nthis one. When turned on, attaches to all existing related targets as well. When turned off,\nautomatically detaches from all currently attached targets.\nThis also clears all targets added by `autoAttachRelated` from the list of targets to watch\nfor creation of related targets.",
+                    "description": "Controls whether to automatically attach to new targets which are considered to be related to\nthis one. When turned on, attaches to all existing related targets as well. When turned off,\nautomatically detaches from all currently attached targets.",
                     "experimental": true,
                     "parameters": [
                         {
@@ -19101,22 +18361,6 @@
                     ]
                 },
                 {
-                    "name": "autoAttachRelated",
-                    "description": "Adds the specified target to the list of targets that will be monitored for any related target\ncreation (such as child frames, child workers and new versions of service worker) and reported\nthrough `attachedToTarget`. The specified target is also auto-attached.\nThis cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent\n`setAutoAttach`. Only available at the Browser target.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "targetId",
-                            "$ref": "TargetID"
-                        },
-                        {
-                            "name": "waitForDebuggerOnStart",
-                            "description": "Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger`\nto run paused targets.",
-                            "type": "boolean"
-                        }
-                    ]
-                },
-                {
                     "name": "setDiscoverTargets",
                     "description": "Controls whether to discover available targets and notify via\n`targetCreated/targetInfoChanged/targetDestroyed` events.",
                     "parameters": [
@@ -19634,7 +18878,7 @@
                 },
                 {
                     "id": "RequestStage",
-                    "description": "Stages of the request to handle. Request will intercept before the request is\nsent. Response will intercept after the response is received (but before response\nbody is received).",
+                    "description": "Stages of the request to handle. Request will intercept before the request is\nsent. Response will intercept after the response is received (but before response\nbody is received.",
                     "type": "string",
                     "enum": [
                         "Request",
@@ -19815,7 +19059,7 @@
                         },
                         {
                             "name": "body",
-                            "description": "A response body. If absent, original response body will be used if\nthe request is intercepted at the response stage and empty body\nwill be used if the request is intercepted at the request stage. (Encoded as a base64 string when passed over JSON)",
+                            "description": "A response body. (Encoded as a base64 string when passed over JSON)",
                             "optional": true,
                             "type": "string"
                         },
@@ -19862,13 +19106,6 @@
                             "items": {
                                 "$ref": "HeaderEntry"
                             }
-                        },
-                        {
-                            "name": "interceptResponse",
-                            "description": "If set, overrides response interception behavior for this request.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "boolean"
                         }
                     ]
                 },
@@ -19889,45 +19126,6 @@
                     ]
                 },
                 {
-                    "name": "continueResponse",
-                    "description": "Continues loading of the paused response, optionally modifying the\nresponse headers. If either responseCode or headers are modified, all of them\nmust be present.",
-                    "experimental": true,
-                    "parameters": [
-                        {
-                            "name": "requestId",
-                            "description": "An id the client received in requestPaused event.",
-                            "$ref": "RequestId"
-                        },
-                        {
-                            "name": "responseCode",
-                            "description": "An HTTP response code. If absent, original response code will be used.",
-                            "optional": true,
-                            "type": "integer"
-                        },
-                        {
-                            "name": "responsePhrase",
-                            "description": "A textual representation of responseCode.\nIf absent, a standard phrase matching responseCode is used.",
-                            "optional": true,
-                            "type": "string"
-                        },
-                        {
-                            "name": "responseHeaders",
-                            "description": "Response headers. If absent, original response headers will be used.",
-                            "optional": true,
-                            "type": "array",
-                            "items": {
-                                "$ref": "HeaderEntry"
-                            }
-                        },
-                        {
-                            "name": "binaryResponseHeaders",
-                            "description": "Alternative way of specifying response headers as a \\0-separated\nseries of name: value pairs. Prefer the above method unless you\nneed to represent some non-UTF8 values that can't be transmitted\nover the protocol as text. (Encoded as a base64 string when passed over JSON)",
-                            "optional": true,
-                            "type": "string"
-                        }
-                    ]
-                },
-                {
                     "name": "getResponseBody",
                     "description": "Causes the body of the response to be received from the server and\nreturned as a single string. May only be issued for a request that\nis paused in the Response stage and is mutually exclusive with\ntakeResponseBodyForInterceptionAsStream. Calling other methods that\naffect the request or disabling fetch domain before body is received\nresults in an undefined behavior.",
                     "parameters": [
@@ -20005,12 +19203,6 @@
                             "type": "integer"
                         },
                         {
-                            "name": "responseStatusText",
-                            "description": "Response status text if intercepted at response stage.",
-                            "optional": true,
-                            "type": "string"
-                        },
-                        {
                             "name": "responseHeaders",
                             "description": "Response headers if intercepted at the response stage.",
                             "optional": true,
diff --git a/node_modules/devtools-protocol/json/js_protocol.json b/node_modules/devtools-protocol/json/js_protocol.json
index 727d69e..84a21e6 100644
--- a/node_modules/devtools-protocol/json/js_protocol.json
+++ b/node_modules/devtools-protocol/json/js_protocol.json
@@ -389,7 +389,7 @@
                     "parameters": [
                         {
                             "name": "maxScriptsCacheSize",
-                            "description": "The maximum size in bytes of collected scripts (not referenced by other heap objects)\nthe debugger can hold. Puts no limit if parameter is omitted.",
+                            "description": "The maximum size in bytes of collected scripts (not referenced by other heap objects)\nthe debugger can hold. Puts no limit if paramter is omitted.",
                             "experimental": true,
                             "optional": true,
                             "type": "number"
@@ -599,7 +599,6 @@
                 {
                     "name": "restartFrame",
                     "description": "Restarts particular call frame from the beginning.",
-                    "deprecated": true,
                     "parameters": [
                         {
                             "name": "callFrameId",
@@ -1547,12 +1546,6 @@
                             "name": "treatGlobalObjectsAsRoots",
                             "optional": true,
                             "type": "boolean"
-                        },
-                        {
-                            "name": "captureNumericValue",
-                            "description": "If true, numerical values are included in the snapshot",
-                            "optional": true,
-                            "type": "boolean"
                         }
                     ]
                 },
@@ -1567,13 +1560,7 @@
                         },
                         {
                             "name": "treatGlobalObjectsAsRoots",
-                            "description": "If true, a raw snapshot without artificial roots will be generated",
-                            "optional": true,
-                            "type": "boolean"
-                        },
-                        {
-                            "name": "captureNumericValue",
-                            "description": "If true, numerical values are included in the snapshot",
+                            "description": "If true, a raw snapshot without artifical roots will be generated",
                             "optional": true,
                             "type": "boolean"
                         }
@@ -1886,6 +1873,47 @@
                             }
                         }
                     ]
+                },
+                {
+                    "id": "CounterInfo",
+                    "description": "Collected counter information.",
+                    "experimental": true,
+                    "type": "object",
+                    "properties": [
+                        {
+                            "name": "name",
+                            "description": "Counter name.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "value",
+                            "description": "Counter value.",
+                            "type": "integer"
+                        }
+                    ]
+                },
+                {
+                    "id": "RuntimeCallCounterInfo",
+                    "description": "Runtime call counter information.",
+                    "experimental": true,
+                    "type": "object",
+                    "properties": [
+                        {
+                            "name": "name",
+                            "description": "Counter name.",
+                            "type": "string"
+                        },
+                        {
+                            "name": "value",
+                            "description": "Counter value.",
+                            "type": "number"
+                        },
+                        {
+                            "name": "time",
+                            "description": "Counter time in seconds.",
+                            "type": "number"
+                        }
+                    ]
                 }
             ],
             "commands": [
@@ -2011,6 +2039,56 @@
                             }
                         }
                     ]
+                },
+                {
+                    "name": "enableCounters",
+                    "description": "Enable counters collection.",
+                    "experimental": true
+                },
+                {
+                    "name": "disableCounters",
+                    "description": "Disable counters collection.",
+                    "experimental": true
+                },
+                {
+                    "name": "getCounters",
+                    "description": "Retrieve counters.",
+                    "experimental": true,
+                    "returns": [
+                        {
+                            "name": "result",
+                            "description": "Collected counters information.",
+                            "type": "array",
+                            "items": {
+                                "$ref": "CounterInfo"
+                            }
+                        }
+                    ]
+                },
+                {
+                    "name": "enableRuntimeCallStats",
+                    "description": "Enable run time call stats collection.",
+                    "experimental": true
+                },
+                {
+                    "name": "disableRuntimeCallStats",
+                    "description": "Disable run time call stats collection.",
+                    "experimental": true
+                },
+                {
+                    "name": "getRuntimeCallStats",
+                    "description": "Retrieve run time call stats.",
+                    "experimental": true,
+                    "returns": [
+                        {
+                            "name": "result",
+                            "description": "Collected runtime call counter information.",
+                            "type": "array",
+                            "items": {
+                                "$ref": "RuntimeCallCounterInfo"
+                            }
+                        }
+                    ]
                 }
             ],
             "events": [
@@ -2061,7 +2139,7 @@
                 },
                 {
                     "name": "preciseCoverageDeltaUpdate",
-                    "description": "Reports coverage delta since the last poll (either from an event like this, or from\n`takePreciseCoverage` for the current isolate. May only be sent if precise code\ncoverage has been started. This event can be trigged by the embedder to, for example,\ntrigger collection of coverage data immediately at a certain point in time.",
+                    "description": "Reports coverage delta since the last poll (either from an event like this, or from\n`takePreciseCoverage` for the current isolate. May only be sent if precise code\ncoverage has been started. This event can be trigged by the embedder to, for example,\ntrigger collection of coverage data immediatelly at a certain point in time.",
                     "experimental": true,
                     "parameters": [
                         {
@@ -2070,7 +2148,7 @@
                             "type": "number"
                         },
                         {
-                            "name": "occasion",
+                            "name": "occassion",
                             "description": "Identifier for distinguishing coverage events.",
                             "type": "string"
                         },
@@ -2543,7 +2621,7 @@
                         },
                         {
                             "name": "uniqueId",
-                            "description": "A system-unique execution context identifier. Unlike the id, this is unique across\nmultiple processes, so can be reliably used to identify specific context while backend\nperforms a cross-process navigation.",
+                            "description": "A system-unique execution context identifier. Unlike the id, this is unique accross\nmultiple processes, so can be reliably used to identify specific context while backend\nperforms a cross-process navigation.",
                             "experimental": true,
                             "type": "string"
                         },
@@ -2609,13 +2687,6 @@
                             "description": "Identifier of the context where exception happened.",
                             "optional": true,
                             "$ref": "ExecutionContextId"
-                        },
-                        {
-                            "name": "exceptionMetaData",
-                            "description": "Dictionary with entries of meta data that the client associated\nwith this exception, such as information about associated network\nrequests, etc.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "object"
                         }
                     ]
                 },
@@ -2822,13 +2893,6 @@
                             "description": "Symbolic group name that can be used to release multiple objects. If objectGroup is not\nspecified and objectId is, objectGroup will be inherited from object.",
                             "optional": true,
                             "type": "string"
-                        },
-                        {
-                            "name": "throwOnSideEffect",
-                            "description": "Whether to throw an exception if side effect cannot be ruled out during evaluation.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "boolean"
                         }
                     ],
                     "returns": [
@@ -2993,7 +3057,7 @@
                         },
                         {
                             "name": "uniqueContextId",
-                            "description": "An alternative way to specify the execution context to evaluate in.\nCompared to contextId that may be reused across processes, this is guaranteed to be\nsystem-unique, so it can be used to prevent accidental evaluation of the expression\nin context different than intended (e.g. as a result of navigation across process\nboundaries).\nThis is mutually exclusive with `contextId`.",
+                            "description": "An alternative way to specify the execution context to evaluate in.\nCompared to contextId that may be reused accross processes, this is guaranteed to be\nsystem-unique, so it can be used to prevent accidental evaluation of the expression\nin context different than intended (e.g. as a result of navigation accross process\nboundaries).\nThis is mutually exclusive with `contextId`.",
                             "experimental": true,
                             "optional": true,
                             "type": "string"
@@ -3070,13 +3134,6 @@
                             "experimental": true,
                             "optional": true,
                             "type": "boolean"
-                        },
-                        {
-                            "name": "nonIndexedPropertiesOnly",
-                            "description": "If true, returns non-indexed properties only.",
-                            "experimental": true,
-                            "optional": true,
-                            "type": "boolean"
                         }
                     ],
                     "returns": [
@@ -3299,8 +3356,7 @@
                         },
                         {
                             "name": "executionContextId",
-                            "description": "If specified, the binding would only be exposed to the specified\nexecution context. If omitted and `executionContextName` is not set,\nthe binding is exposed to all execution contexts of the target.\nThis parameter is mutually exclusive with `executionContextName`.\nDeprecated in favor of `executionContextName` due to an unclear use case\nand bugs in implementation (crbug.com/1169639). `executionContextId` will be\nremoved in the future.",
-                            "deprecated": true,
+                            "description": "If specified, the binding would only be exposed to the specified\nexecution context. If omitted and `executionContextName` is not set,\nthe binding is exposed to all execution contexts of the target.\nThis parameter is mutually exclusive with `executionContextName`.",
                             "optional": true,
                             "$ref": "ExecutionContextId"
                         },
@@ -3476,13 +3532,6 @@
                         {
                             "name": "hints",
                             "type": "object"
-                        },
-                        {
-                            "name": "executionContextId",
-                            "description": "Identifier of the context where the call was made.",
-                            "experimental": true,
-                            "optional": true,
-                            "$ref": "ExecutionContextId"
                         }
                     ]
                 }
diff --git a/node_modules/devtools-protocol/package.json b/node_modules/devtools-protocol/package.json
index 7e91f04..32372bb 100644
--- a/node_modules/devtools-protocol/package.json
+++ b/node_modules/devtools-protocol/package.json
@@ -1,6 +1,6 @@
 {
   "name": "devtools-protocol",
-  "version": "0.0.937139",
+  "version": "0.0.883894",
   "description": "The Chrome DevTools Protocol JSON",
   "repository": "https://github.com/ChromeDevTools/devtools-protocol",
   "author": "The Chromium Authors",
@@ -9,6 +9,7 @@
     "url": "https://github.com/ChromeDevTools/devtools-protocol/issues"
   },
   "files": [
+    "externs",
     "json",
     "pdl",
     "types"
diff --git a/node_modules/devtools-protocol/pdl/browser_protocol.pdl b/node_modules/devtools-protocol/pdl/browser_protocol.pdl
index 653ad3c..c049c77 100644
--- a/node_modules/devtools-protocol/pdl/browser_protocol.pdl
+++ b/node_modules/devtools-protocol/pdl/browser_protocol.pdl
@@ -48,7 +48,6 @@
   # Enum of possible native property sources (as a subtype of a particular AXValueSourceType).
   type AXValueNativeSourceType extends string
     enum
-      description
       figcaption
       label
       labelfor
@@ -209,12 +208,7 @@
     parameters
       # The maximum depth at which descendants of the root node should be retrieved.
       # If omitted, the full tree is returned.
-      optional integer depth
-      # Deprecated. This parameter has been renamed to `depth`. If depth is not provided, max_depth will be used.
-      deprecated optional integer max_depth
-      # The frame for whose document the AX tree should be retrieved.
-      # If omited, the root frame is used.
-      optional Page.FrameId frameId
+      optional integer max_depth
     returns
       array of AXNode nodes
 
@@ -223,9 +217,6 @@
   experimental command getChildAXNodes
     parameters
       AXNodeId id
-      # The frame in whose document the node resides.
-      # If omitted, the root frame is used.
-      optional Page.FrameId frameId
     returns
       array of AXNode nodes
 
@@ -409,6 +400,85 @@
       # Animation that was started.
       Animation animation
 
+experimental domain ApplicationCache
+  depends on Page
+
+  # Detailed application cache resource information.
+  type ApplicationCacheResource extends object
+    properties
+      # Resource url.
+      string url
+      # Resource size.
+      integer size
+      # Resource type.
+      string type
+
+  # Detailed application cache information.
+  type ApplicationCache extends object
+    properties
+      # Manifest URL.
+      string manifestURL
+      # Application cache size.
+      number size
+      # Application cache creation time.
+      number creationTime
+      # Application cache update time.
+      number updateTime
+      # Application cache resources.
+      array of ApplicationCacheResource resources
+
+  # Frame identifier - manifest URL pair.
+  type FrameWithManifest extends object
+    properties
+      # Frame identifier.
+      Page.FrameId frameId
+      # Manifest URL.
+      string manifestURL
+      # Application cache status.
+      integer status
+
+  # Enables application cache domain notifications.
+  command enable
+
+  # Returns relevant application cache data for the document in given frame.
+  command getApplicationCacheForFrame
+    parameters
+      # Identifier of the frame containing document whose application cache is retrieved.
+      Page.FrameId frameId
+    returns
+      # Relevant application cache data for the document in given frame.
+      ApplicationCache applicationCache
+
+  # Returns array of frame identifiers with manifest urls for each frame containing a document
+  # associated with some application cache.
+  command getFramesWithManifests
+    returns
+      # Array of frame identifiers with manifest urls for each frame containing a document
+      # associated with some application cache.
+      array of FrameWithManifest frameIds
+
+  # Returns manifest URL for document in the given frame.
+  command getManifestForFrame
+    parameters
+      # Identifier of the frame containing document whose manifest is retrieved.
+      Page.FrameId frameId
+    returns
+      # Manifest URL for document in the given frame.
+      string manifestURL
+
+  event applicationCacheStatusUpdated
+    parameters
+      # Identifier of the frame containing document whose application cache updated status.
+      Page.FrameId frameId
+      # Manifest URL.
+      string manifestURL
+      # Updated application cache status.
+      integer status
+
+  event networkStateUpdated
+    parameters
+      boolean isNowOnline
+
 # Audits domain allows investigation of page violations and possible improvements.
 experimental domain Audits
   depends on Network
@@ -439,8 +509,6 @@
       ExcludeSameSiteNoneInsecure
       ExcludeSameSiteLax
       ExcludeSameSiteStrict
-      ExcludeInvalidSameParty
-      ExcludeSamePartyCrossPartyContext
 
   type SameSiteCookieWarningReason extends string
     enum
@@ -463,12 +531,7 @@
   # information without the cookie.
   type SameSiteCookieIssueDetails extends object
     properties
-      # If AffectedCookie is not set then rawCookieLine contains the raw
-      # Set-Cookie header string. This hints at a problem where the
-      # cookie line is syntactically or semantically malformed in a way
-      # that no valid cookie could be created.
-      optional AffectedCookie cookie
-      optional string rawCookieLine
+      AffectedCookie cookie
       array of SameSiteCookieWarningReason cookieWarningReasons
       array of SameSiteCookieExclusionReason cookieExclusionReasons
       # Optionally identifies the site-for-cookies and the cookie url, which
@@ -579,7 +642,6 @@
       kURLViolation
       kTrustedTypesSinkViolation
       kTrustedTypesPolicyViolation
-      kWasmEvalViolation
 
   type SourceCodeLocation extends object
     properties
@@ -661,8 +723,6 @@
       InvalidAttributionData
       AttributionSourceUntrustworthyOrigin
       AttributionUntrustworthyOrigin
-      AttributionTriggerDataTooLarge
-      AttributionEventSourceTriggerDataTooLarge
 
   # Details for issues around "Attribution Reporting API" usage.
   # Explainer: https://github.com/WICG/conversion-measurement-api
@@ -686,45 +746,6 @@
       Page.FrameId frameId
       Network.LoaderId loaderId
 
-  type NavigatorUserAgentIssueDetails extends object
-    properties
-      string url
-      optional SourceCodeLocation location
-
-  type WasmCrossOriginModuleSharingIssueDetails extends object
-    properties
-      string wasmModuleUrl
-      string sourceOrigin
-      string targetOrigin
-      boolean isWarning
-
-  type GenericIssueErrorType extends string
-    enum
-      CrossOriginPortalPostMessageError
-
-  # Depending on the concrete errorType, different properties are set.
-  type GenericIssueDetails extends object
-    properties
-      # Issues with the same errorType are aggregated in the frontend.
-      GenericIssueErrorType errorType
-      optional Page.FrameId frameId
-
-  # This issue tracks information needed to print a deprecation message.
-  # The formatting is inherited from the old console.log version, see more at:
-  # https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/frame/deprecation.cc
-  # TODO(crbug.com/1264960): Re-work format to add i18n support per:
-  # https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/public/devtools_protocol/README.md
-  type DeprecationIssueDetails extends object
-    properties
-      optional AffectedFrame affectedFrame
-      SourceCodeLocation sourceCodeLocation
-      # The content of the deprecation issue (this won't be translated),
-      # e.g. "window.inefficientLegacyStorageMethod will be removed in M97,
-      # around January 2022. Please use Web Storage or Indexed Database
-      # instead. This standard was abandoned in January, 1970. See
-      # https://www.chromestatus.com/feature/5684870116278272 for more details."
-      deprecated optional string message
-
   # A unique identifier for the type of issue. Each type may use one of the
   # optional fields in InspectorIssueDetails to convey more specific
   # information about the kind of issue.
@@ -741,10 +762,6 @@
       CorsIssue
       AttributionReportingIssue
       QuirksModeIssue
-      NavigatorUserAgentIssue
-      WasmCrossOriginModuleSharingIssue
-      GenericIssue
-      DeprecationIssue
 
   # This struct holds a list of optional fields with additional information
   # specific to the kind of issue. When adding a new issue code, please also
@@ -762,23 +779,12 @@
       optional CorsIssueDetails corsIssueDetails
       optional AttributionReportingIssueDetails attributionReportingIssueDetails
       optional QuirksModeIssueDetails quirksModeIssueDetails
-      optional NavigatorUserAgentIssueDetails navigatorUserAgentIssueDetails
-      optional WasmCrossOriginModuleSharingIssueDetails wasmCrossOriginModuleSharingIssue
-      optional GenericIssueDetails genericIssueDetails
-      optional DeprecationIssueDetails deprecationIssueDetails
-
-  # A unique id for a DevTools inspector issue. Allows other entities (e.g.
-  # exceptions, CDP message, console messages, etc.) to reference an issue.
-  type IssueId extends string
 
   # An inspector issue reported from the back-end.
   type InspectorIssue extends object
     properties
       InspectorIssueCode code
       InspectorIssueDetails details
-      # A unique id for this issue. May be omitted if no other entity (e.g.
-      # exception, CDP message, etc.) is referencing this issue.
-      optional IssueId issueId
 
   # Returns the response body and size if it were re-encoded with the specified settings. Only
   # applies to images.
@@ -1243,9 +1249,7 @@
       StyleSheetId styleSheetId
       # Owner frame identifier.
       Page.FrameId frameId
-      # Stylesheet resource URL. Empty if this is a constructed stylesheet created using
-      # new CSSStyleSheet() (but non-empty if this is a constructed sylesheet imported
-      # as a CSS module script).
+      # Stylesheet resource URL.
       string sourceURL
       # URL of source map associated with the stylesheet (if any).
       optional string sourceMapURL
@@ -1267,8 +1271,7 @@
       # <link> element's stylesheets become mutable only if DevTools modifies them.
       # Constructed stylesheets (new CSSStyleSheet()) are mutable immediately after creation.
       boolean isMutable
-      # True if this stylesheet is created through new CSSStyleSheet() or imported as a
-      # CSS module script.
+      # Whether this stylesheet is a constructed stylesheet (created using new CSSStyleSheet()).
       boolean isConstructed
       # Line offset of the stylesheet within the resource (zero based).
       number startLine
@@ -1296,9 +1299,6 @@
       # Media list array (for rules involving media queries). The array enumerates media queries
       # starting with the innermost one, going outwards.
       optional array of CSSMedia media
-      # Container query list array (for rules involving container queries).
-      # The array enumerates container queries starting with the innermost one, going outwards.
-      experimental optional array of CSSContainerQuery containerQueries
 
   # CSS coverage information.
   type RuleUsage extends object
@@ -1422,19 +1422,6 @@
       # Computed length of media query expression (if applicable).
       optional number computedLength
 
-  # CSS container query rule descriptor.
-  experimental type CSSContainerQuery extends object
-    properties
-      # Container query text.
-      string text
-      # The associated rule header range in the enclosing stylesheet (if
-      # available).
-      optional SourceRange range
-      # Identifier of the stylesheet containing this object (if exists).
-      optional StyleSheetId styleSheetId
-      # Optional name for the container.
-      optional string name
-
   # Information about amount of glyphs that were rendered with given font.
   type PlatformFontUsage extends object
     properties
@@ -1681,16 +1668,6 @@
       # The resulting CSS media rule after modification.
       CSSMedia media
 
-  # Modifies the expression of a container query.
-  experimental command setContainerQueryText
-    parameters
-      StyleSheetId styleSheetId
-      SourceRange range
-      string text
-    returns
-      # The resulting CSS container query rule after modification.
-      CSSContainerQuery containerQuery
-
   # Modifies the rule selector.
   command setRuleSelector
     parameters
@@ -1971,7 +1948,6 @@
       target-text
       spelling-error
       grammar-error
-      highlight
       first-line-inherited
       scrollbar
       scrollbar-thumb
@@ -2589,27 +2565,6 @@
       # Id of the node at given coordinates, only when enabled and requested document.
       optional NodeId nodeId
 
-  # Returns the container of the given node based on container query conditions.
-  # If containerName is given, it will find the nearest container with a matching name;
-  # otherwise it will find the nearest container regardless of its container name.
-  experimental command getContainerForNode
-    parameters
-      NodeId nodeId
-      optional string containerName
-    returns
-      # The container node for the given node, or null if not found.
-      optional NodeId nodeId
-
-  # Returns the descendants of a container query container that have
-  # container queries against this container.
-  experimental command getQueryingDescendantsForContainer
-    parameters
-      # Id of the container node to find querying descendants from.
-      NodeId nodeId
-    returns
-      # Descendant nodes with container queries against the given container.
-      array of NodeId nodeIds
-
   # Fired when `Element`'s attribute is modified.
   event attributeModified
     parameters
@@ -2842,23 +2797,6 @@
       # Resource URL substring. All XHRs having this substring in the URL will get stopped upon.
       string url
 
-# EventBreakpoints permits setting breakpoints on particular operations and
-# events in targets that run JavaScript but do not have a DOM.
-# JavaScript execution will stop on these operations as if there was a regular
-# breakpoint set.
-experimental domain EventBreakpoints
-  # Sets breakpoint on particular native event.
-  command setInstrumentationBreakpoint
-    parameters
-      # Instrumentation name to stop on.
-      string eventName
-
-  # Removes breakpoint on particular native event.
-  command removeInstrumentationBreakpoint
-    parameters
-      # Instrumentation name to stop on.
-      string eventName
-
 # This domain facilitates obtaining document snapshots with DOM, layout, and style information.
 experimental domain DOMSnapshot
   depends on CSS
@@ -3042,8 +2980,6 @@
       optional array of integer parentIndex
       # `Node`'s nodeType.
       optional array of integer nodeType
-      # Type of the shadow root the `Node` is in. String values are equal to the `ShadowRootType` enum.
-      optional RareStringData shadowRootType
       # `Node`'s nodeName.
       optional array of StringIndex nodeName
       # `Node`'s nodeValue.
@@ -3384,13 +3320,6 @@
       # Whether to enable to disable focus emulation.
       boolean enabled
 
-  # Automatically render all web contents using a dark theme.
-  experimental command setAutoDarkModeOverride
-    parameters
-      # Whether to enable or disable automatic dark mode.
-      # If not specified, any existing override will be cleared.
-      optional boolean enabled
-
   # Enables CPU throttling to emulate slow CPUs.
   experimental command setCPUThrottlingRate
     parameters
@@ -3943,8 +3872,6 @@
   experimental type DragData extends object
     properties
       array of DragDataItem items
-      # List of filenames that should be included when dropping
-      optional array of string files
       # Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16
       integer dragOperationsMask
 
@@ -4019,22 +3946,6 @@
       # The text to insert.
       string text
 
-  # This method sets the current candidate text for ime.
-  # Use imeCommitComposition to commit the final text.
-  # Use imeSetComposition with empty string as text to cancel composition.
-  experimental command imeSetComposition
-    parameters
-      # The text to insert
-      string text
-      # selection start
-      integer selectionStart
-      # selection end
-      integer selectionEnd
-      # replacement start
-      optional integer replacementStart
-      # replacement end
-      optional integer replacementEnd
-
   # Dispatches a mouse event to the page.
   command dispatchMouseEvent
     parameters
@@ -4430,8 +4341,6 @@
         error
       # Logged text.
       string text
-      optional enum category
-        cors
       # Timestamp when this entry was added.
       Runtime.Timestamp timestamp
       # URL of the resource if known.
@@ -4769,9 +4678,6 @@
       # Set for requests when the TrustToken API is used. Contains the parameters
       # passed by the developer (e.g. via "fetch") as understood by the backend.
       experimental optional TrustTokenParams trustTokenParams
-      # True if this resource request is considered to be the 'same site' as the
-      # request correspondinfg to the main frame.
-      experimental optional boolean isSameSite
 
   # Details of a signed certificate timestamp (SCT).
   type SignedCertificateTimestamp extends object
@@ -4873,14 +4779,7 @@
       MethodDisallowedByPreflightResponse
       HeaderDisallowedByPreflightResponse
       RedirectContainsCredentials
-      # Request was a private network request initiated by a non-secure context.
       InsecurePrivateNetwork
-      # Request carried a target IP address space property that did not match
-      # the target resource's address space.
-      InvalidPrivateNetworkAccess
-      # Request was a private network request yet did not carry a target IP
-      # address space.
-      UnexpectedPrivateNetworkAccess
       NoCorsRedirectModeNotFollow
 
   type CorsErrorStatus extends object
@@ -4933,14 +4832,14 @@
       string statusText
       # HTTP response headers.
       Headers headers
-      # HTTP response headers text. This has been replaced by the headers in Network.responseReceivedExtraInfo.
-      deprecated optional string headersText
+      # HTTP response headers text.
+      optional string headersText
       # Resource mimeType as determined by the browser.
       string mimeType
       # Refined HTTP request headers that were actually transmitted over the network.
       optional Headers requestHeaders
-      # HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo.
-      deprecated optional string requestHeadersText
+      # HTTP request headers text.
+      optional string requestHeadersText
       # Specifies whether physical connection was actually reused for this request.
       boolean connectionReused
       # Physical connection id that was actually used for this request.
@@ -5129,9 +5028,6 @@
       # (which is required in order to use "SameParty"); or specified the "SameSite=Strict"
       # attribute (which is forbidden when using "SameParty").
       SamePartyConflictsWithOtherAttributes
-      # The cookie's name/value pair size exceeded the size limit defined in
-      # RFC6265bis.
-      NameValuePairExceedsMaxSize
 
   # Types of reasons why a cookie may not be sent with a request.
   experimental type CookieBlockedReason extends string
@@ -5176,9 +5072,6 @@
       SchemefulSameSiteUnspecifiedTreatedAsLax
       # The cookie had the "SameParty" attribute and the request was made from a cross-party context.
       SamePartyFromCrossPartyContext
-      # The cookie's name/value pair size exceeded the size limit defined in
-      # RFC6265bis.
-      NameValuePairExceedsMaxSize
 
   # A cookie which was not stored from a response with the corresponding reason.
   experimental type BlockedSetCookieWithReason extends object
@@ -5613,6 +5506,14 @@
       # Cookies to be set.
       array of CookieParam cookies
 
+  # For testing.
+  experimental command setDataSizeLimitsForTest
+    parameters
+      # Maximum total buffer size.
+      integer maxTotalSize
+      # Maximum per-resource size.
+      integer maxResourceSize
+
   # Specifies whether to always send extra HTTP headers with the requests from this page.
   command setExtraHTTPHeaders
     parameters
@@ -5764,10 +5665,6 @@
       TimeSinceEpoch wallTime
       # Request initiator.
       Initiator initiator
-      # In the case that redirectResponse is populated, this flag indicates whether
-      # requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted
-      # for the request which was just redirected.
-      experimental boolean redirectHasExtraInfo
       # Redirect response data.
       optional Response redirectResponse
       # Type of this resource.
@@ -5808,9 +5705,6 @@
       ResourceType type
       # Response data.
       Response response
-      # Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be
-      # or were emitted for this request.
-      experimental boolean hasExtraInfo
       # Frame identifier.
       optional Page.FrameId frameId
 
@@ -5917,8 +5811,6 @@
       Allow
       BlockFromInsecureToMorePrivate
       WarnFromInsecureToMorePrivate
-      PreflightBlock
-      PreflightWarn
 
   experimental type IPAddressSpace extends string
     enum
@@ -5927,13 +5819,6 @@
       Public
       Unknown
 
-  experimental type ConnectTiming extends object
-    properties
-      # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
-      # milliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for
-      # the same request (but not for redirected requests).
-      number requestTime
-
   experimental type ClientSecurityState extends object
     properties
       boolean initiatorIsSecureContext
@@ -5953,8 +5838,6 @@
       array of BlockedCookieWithReason associatedCookies
       # Raw request headers as they will be sent over the wire.
       Headers headers
-      # Connection timing information for the request.
-      experimental ConnectTiming connectTiming
       # The client security state set for the request.
       optional ClientSecurityState clientSecurityState
 
@@ -5974,10 +5857,6 @@
       # The IP address space of the resource. The address space can only be determined once the transport
       # established the connection, so we can't send it in `requestWillBeSentExtraInfo`.
       IPAddressSpace resourceIPAddressSpace
-      # The status code of the response. This is useful in cases the request failed and no responseReceived
-      # event is triggered, which is the case for, e.g., CORS errors. This is also the correct status code
-      # for cached requests, where the status in responseReceived is a 200 and this will be 304.
-      integer statusCode
       # Raw response header text as it was received over the wire. The raw text may not always be
       # available, such as in the case of HTTP/2 or QUIC.
       optional string headersText
@@ -6012,50 +5891,6 @@
       # The number of obtained Trust Tokens on a successful "Issuance" operation.
       optional integer issuedTokenCount
 
-  # Fired once when parsing the .wbn file has succeeded.
-  # The event contains the information about the web bundle contents.
-  experimental event subresourceWebBundleMetadataReceived
-    parameters
-      # Request identifier. Used to match this information to another event.
-      RequestId requestId
-      # A list of URLs of resources in the subresource Web Bundle.
-      array of string urls
-
-  # Fired once when parsing the .wbn file has failed.
-  experimental event subresourceWebBundleMetadataError
-    parameters
-      # Request identifier. Used to match this information to another event.
-      RequestId requestId
-      # Error message
-      string errorMessage
-
-  # Fired when handling requests for resources within a .wbn file.
-  # Note: this will only be fired for resources that are requested by the webpage.
-  experimental event subresourceWebBundleInnerResponseParsed
-    parameters
-      # Request identifier of the subresource request
-      RequestId innerRequestId
-      # URL of the subresource resource.
-      string innerRequestURL
-      # Bundle request identifier. Used to match this information to another event.
-      # This made be absent in case when the instrumentation was enabled only
-      # after webbundle was parsed.
-      optional RequestId bundleRequestId
-
-  # Fired when request for resources within a .wbn file failed.
-  experimental event subresourceWebBundleInnerResponseError
-    parameters
-      # Request identifier of the subresource request
-      RequestId innerRequestId
-      # URL of the subresource resource.
-      string innerRequestURL
-      # Error message
-      string errorMessage
-      # Bundle request identifier. Used to match this information to another event.
-      # This made be absent in case when the instrumentation was enabled only
-      # after webbundle was parsed.
-      optional RequestId bundleRequestId
-
   experimental type CrossOriginOpenerPolicyValue extends string
     enum
       SameOrigin
@@ -6073,7 +5908,7 @@
   experimental type CrossOriginEmbedderPolicyValue extends string
     enum
       None
-      Credentialless
+      CorsOrCredentialless
       RequireCorp
 
   experimental type CrossOriginEmbedderPolicyStatus extends object
@@ -6096,59 +5931,6 @@
     returns
       SecurityIsolationStatus status
 
-  # Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.
-  # Enabling triggers 'reportingApiReportAdded' for all existing reports.
-  experimental command enableReportingApi
-    parameters
-      # Whether to enable or disable events for the Reporting API
-      boolean enable
-
-  # The status of a Reporting API report.
-  experimental type ReportStatus extends string
-    enum
-      # Report has been queued and no attempt has been made to deliver it yet,
-      # or attempted previous upload failed (impermanently).
-      Queued
-      # There is an ongoing attempt to upload this report.
-      Pending
-      # Deletion of this report was requested while it was pending, so it will
-      # be removed after possibly outstanding upload attempts complete (successful
-      # or not).
-      MarkedForRemoval
-      # Successfully uploaded and MarkedForRemoval.
-      Success
-
-  experimental type ReportId extends string
-
-  # An object representing a report generated by the Reporting API.
-  experimental type ReportingApiReport extends object
-    properties
-      ReportId id
-      # The URL of the document that triggered the report.
-      string initiatorUrl
-      # The name of the endpoint group that should be used to deliver the report.
-      string destination
-      # The type of the report (specifies the set of data that is contained in the report body).
-      string type
-      # When the report was generated.
-      Network.TimeSinceEpoch timestamp
-      # How many uploads deep the related request was.
-      integer depth
-      # The number of delivery attempts made so far, not including an active attempt.
-      integer completedAttempts
-      object body
-      ReportStatus status
-
-  # Is sent whenever a new report is added.
-  # And after 'enableReportingApi' for all existing reports.
-  experimental event reportingApiReportAdded
-    parameters
-      ReportingApiReport report
-
-  experimental event reportingApiReportUpdated
-    parameters
-      ReportingApiReport report
-
   # An object providing the result of a network resource load.
   experimental type LoadNetworkResourcePageResult extends object
     properties
@@ -6172,9 +5954,8 @@
   # Fetches the resource and returns the content.
   experimental command loadNetworkResource
     parameters
-      # Frame id to get the resource for. Mandatory for frame targets, and
-      # should be omitted for worker targets.
-      optional Page.FrameId frameId
+      # Frame id to get the resource for.
+      Page.FrameId frameId
       # URL of the resource to get content for.
       string url
       # Options for the request.
@@ -6333,8 +6114,6 @@
       optional FlexItemHighlightConfig flexItemHighlightConfig
       # The contrast algorithm to use for the contrast ratio (default: aa).
       optional ContrastAlgorithm contrastAlgorithm
-      # The container query container highlight configuration (default: all transparent).
-      optional ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig
 
   type ColorFormat extends string
     enum
@@ -6385,36 +6164,6 @@
       # The content box highlight outline color (default: transparent).
       optional DOM.RGBA outlineColor
 
-  type ContainerQueryHighlightConfig extends object
-    properties
-      # A descriptor for the highlight appearance of container query containers.
-      ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig
-      # Identifier of the container node to highlight.
-      DOM.NodeId nodeId
-
-  type ContainerQueryContainerHighlightConfig extends object
-    properties
-      # The style of the container border.
-      optional LineStyle containerBorder
-      # The style of the descendants' borders.
-      optional LineStyle descendantBorder
-
-  type IsolatedElementHighlightConfig extends object
-    properties
-      # A descriptor for the highlight appearance of an element in isolation mode.
-      IsolationModeHighlightConfig isolationModeHighlightConfig
-      # Identifier of the isolated element to highlight.
-      DOM.NodeId nodeId
-
-  type IsolationModeHighlightConfig extends object
-    properties
-      # The fill color of the resizers (default: transparent).
-      optional DOM.RGBA resizerColor
-      # The fill color for resizer handles (default: transparent).
-      optional DOM.RGBA resizerHandleColor
-      # The fill color for the mask covering non-isolated elements (default: transparent).
-      optional DOM.RGBA maskColor
-
   type InspectMode extends string
     enum
       searchForNode
@@ -6468,10 +6217,7 @@
   command hideHighlight
 
   # Highlights owner element of the frame with given id.
-  # Deprecated: Doesn't work reliablity and cannot be fixed due to process
-  # separatation (the owner node might be in a different process). Determine
-  # the owner node in the client and use highlightNode.
-  deprecated command highlightFrame
+  command highlightFrame
     parameters
       # Identifier of the frame to highlight.
       Page.FrameId frameId
@@ -6583,11 +6329,6 @@
       # An array of node identifiers and descriptors for the highlight appearance.
       array of ScrollSnapHighlightConfig scrollSnapHighlightConfigs
 
-  command setShowContainerQueryOverlays
-    parameters
-      # An array of node identifiers and descriptors for the highlight appearance.
-      array of ContainerQueryHighlightConfig containerQueryHighlightConfigs
-
   # Requests that backend shows paint rectangles
   command setShowPaintRects
     parameters
@@ -6629,12 +6370,6 @@
       # hinge data, null means hideHinge
       optional HingeConfig hingeConfig
 
-  # Show elements in isolation mode with overlays.
-  command setShowIsolatedElements
-    parameters
-      # An array of node identifiers and descriptors for the highlight appearance.
-      array of IsolatedElementHighlightConfig isolatedElementHighlightConfigs
-
   # Fired when the node should be inspected. This happens after call to `setInspectMode` or when
   # user manually inspects an element.
   event inspectNodeRequested
@@ -6676,18 +6411,6 @@
       # This frame is the root of an ad frame.
       root
 
-  experimental type AdFrameExplanation extends string
-    enum
-      ParentIsAd
-      CreatedByAdScript
-      MatchedBlockingRule
-
-  # Indicates whether a frame has been identified as an ad and why.
-  experimental type AdFrameStatus extends object
-    properties
-      AdFrameType adFrameType
-      optional array of AdFrameExplanation explanations
-
   # Indicates whether the frame is a secure context and why it is the case.
   experimental type SecureContextType extends string
     enum
@@ -6730,18 +6453,16 @@
       ch-device-memory
       ch-downlink
       ch-ect
+      ch-lang
       ch-prefers-color-scheme
       ch-rtt
       ch-ua
       ch-ua-arch
-      ch-ua-bitness
       ch-ua-platform
       ch-ua-model
       ch-ua-mobile
       ch-ua-full-version
       ch-ua-platform-version
-      ch-ua-reduced
-      ch-viewport-height
       ch-viewport-width
       ch-width
       clipboard-read
@@ -6762,7 +6483,6 @@
       hid
       idle-detection
       interest-cohort
-      keyboard-map
       magnetometer
       microphone
       midi
@@ -6779,7 +6499,6 @@
       usb
       vertical-scroll
       web-share
-      window-placement
       xr-spatial-tracking
 
   # Reason for a permissions policy feature to be disabled.
@@ -6816,7 +6535,6 @@
       FeatureDisabled
       TokenDisabled
       FeatureDisabledForUser
-      UnknownTrial
 
   # Status for an Origin Trial.
   experimental type OriginTrialStatus extends string
@@ -6860,7 +6578,7 @@
       # Frame unique identifier.
       FrameId id
       # Parent frame identifier.
-      optional FrameId parentId
+      optional string parentId
       # Identifier of the loader associated with this frame.
       Network.LoaderId loaderId
       # Frame's name as specified in the tag.
@@ -6880,14 +6598,16 @@
       string mimeType
       # If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment.
       experimental optional string unreachableUrl
-      # Indicates whether this frame was tagged as an ad and why.
-      experimental optional AdFrameStatus adFrameStatus
+      # Indicates whether this frame was tagged as an ad.
+      experimental optional AdFrameType adFrameType
       # Indicates whether the main document is a secure context and explains why that is the case.
       experimental SecureContextType secureContextType
       # Indicates whether this is a cross origin isolated context.
       experimental CrossOriginIsolatedContextType crossOriginIsolatedContextType
       # Indicated which gated APIs / features are available.
       experimental array of GatedAPIFeatures gatedAPIFeatures
+      # Frame document's origin trials with at least one token present.
+      experimental optional array of OriginTrial originTrials
 
   # Information about the Resource on the page.
   experimental type FrameResource extends object
@@ -7162,7 +6882,6 @@
       optional enum format
         jpeg
         png
-        webp
       # Compression quality from range [0..100] (jpeg only).
       optional integer quality
       # Capture the screenshot of a given region only.
@@ -7249,15 +6968,6 @@
     returns
       optional binary primaryIcon
 
-  # Returns the unique (PWA) app id.
-  # Only returns values if the feature flag 'WebAppEnableManifestId' is enabled
-  experimental command getAppId
-    returns
-      # App id, either from manifest's id attribute or computed from start_url
-      optional string appId
-      # Recommendation for manifest's id attribute to match current id computed from start_url
-      optional string recommendedId
-
   # Returns all browser cookies. Depending on the backend support, will return detailed cookie
   # information in the `cookies` field.
   experimental deprecated command getCookies
@@ -7470,13 +7180,6 @@
     returns
       array of PermissionsPolicyFeatureState states
 
-  # Get Origin Trials on given frame.
-  experimental command getOriginTrials
-    parameters
-      FrameId frameId
-    returns
-      array of OriginTrial originTrials
-
   # Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
   # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
   # query results).
@@ -7623,9 +7326,18 @@
   # Stops sending each frame in the `screencastFrame`.
   experimental command stopScreencast
 
+  # Forces compilation cache to be generated for every subresource script.
+  # See also: `Page.produceCompilationCache`.
+  experimental command setProduceCompilationCache
+    parameters
+      boolean enabled
+
   # Requests backend to produce compilation cache for the specified scripts.
-  # `scripts` are appeneded to the list of scripts for which the cache
-  # would be produced. The list may be reset during page navigation.
+  # Unlike setProduceCompilationCache, this allows client to only produce cache
+  # for specific scripts. `scripts` are appeneded to the list of scripts
+  # for which the cache for would produced. Disabling compilation cache with
+  # `setProduceCompilationCache` would reset all pending cache requests.
+  # The list may also be reset during page navigation.
   # When script with a matching URL is encountered, the cache is optionally
   # produced upon backend discretion, based on internal heuristics.
   # See also: `Page.compilationCacheProduced`.
@@ -7836,151 +7548,6 @@
       string name
       Network.MonotonicTime timestamp
 
-  # List of not restored reasons for back-forward cache.
-  experimental type BackForwardCacheNotRestoredReason extends string
-    enum
-      NotMainFrame
-      BackForwardCacheDisabled
-      RelatedActiveContentsExist
-      HTTPStatusNotOK
-      SchemeNotHTTPOrHTTPS
-      Loading
-      WasGrantedMediaAccess
-      DisableForRenderFrameHostCalled
-      DomainNotAllowed
-      HTTPMethodNotGET
-      SubframeIsNavigating
-      Timeout
-      CacheLimit
-      JavaScriptExecution
-      RendererProcessKilled
-      RendererProcessCrashed
-      GrantedMediaStreamAccess
-      SchedulerTrackedFeatureUsed
-      ConflictingBrowsingInstance
-      CacheFlushed
-      ServiceWorkerVersionActivation
-      SessionRestored
-      ServiceWorkerPostMessage
-      EnteredBackForwardCacheBeforeServiceWorkerHostAdded
-      RenderFrameHostReused_SameSite
-      RenderFrameHostReused_CrossSite
-      ServiceWorkerClaim
-      IgnoreEventAndEvict
-      HaveInnerContents
-      TimeoutPuttingInCache
-      BackForwardCacheDisabledByLowMemory
-      BackForwardCacheDisabledByCommandLine
-      NetworkRequestDatapipeDrainedAsBytesConsumer
-      NetworkRequestRedirected
-      NetworkRequestTimeout
-      NetworkExceedsBufferLimit
-      NavigationCancelledWhileRestoring
-      NotMostRecentNavigationEntry
-      BackForwardCacheDisabledForPrerender
-      UserAgentOverrideDiffers
-      ForegroundCacheLimit
-      BrowsingInstanceNotSwapped
-      BackForwardCacheDisabledForDelegate
-      OptInUnloadHeaderNotPresent
-      UnloadHandlerExistsInMainFrame
-      UnloadHandlerExistsInSubFrame
-      ServiceWorkerUnregistration
-      CacheControlNoStore
-      CacheControlNoStoreCookieModified
-      CacheControlNoStoreHTTPOnlyCookieModified
-      NoResponseHead
-      Unknown
-      ActivationNavigationsDisallowedForBug1234857
-      #Blocklisted features
-      WebSocket
-      WebTransport
-      WebRTC
-      MainResourceHasCacheControlNoStore
-      MainResourceHasCacheControlNoCache
-      SubresourceHasCacheControlNoStore
-      SubresourceHasCacheControlNoCache
-      ContainsPlugins
-      DocumentLoaded
-      DedicatedWorkerOrWorklet
-      OutstandingNetworkRequestOthers
-      OutstandingIndexedDBTransaction
-      RequestedNotificationsPermission
-      RequestedMIDIPermission
-      RequestedAudioCapturePermission
-      RequestedVideoCapturePermission
-      RequestedBackForwardCacheBlockedSensors
-      RequestedBackgroundWorkPermission
-      BroadcastChannel
-      IndexedDBConnection
-      WebXR
-      SharedWorker
-      WebLocks
-      WebHID
-      WebShare
-      RequestedStorageAccessGrant
-      WebNfc
-      OutstandingNetworkRequestFetch
-      OutstandingNetworkRequestXHR
-      AppBanner
-      Printing
-      WebDatabase
-      PictureInPicture
-      Portal
-      SpeechRecognizer
-      IdleManager
-      PaymentManager
-      SpeechSynthesis
-      KeyboardLock
-      WebOTPService
-      OutstandingNetworkRequestDirectSocket
-      InjectedJavascript
-      InjectedStyleSheet
-      Dummy
-      # Disabled for render frame host reasons
-      # See content/browser/renderer_host/back_forward_cache_disable.h for explanations.
-      ContentSecurityHandler
-      ContentWebAuthenticationAPI
-      ContentFileChooser
-      ContentSerial
-      ContentFileSystemAccess
-      ContentMediaDevicesDispatcherHost
-      ContentWebBluetooth
-      ContentWebUSB
-      ContentMediaSession
-      ContentMediaSessionService
-
-      # See components/back_forward_cache/back_forward_cache_disable.h for explanations.
-      EmbedderPopupBlockerTabHelper
-      EmbedderSafeBrowsingTriggeredPopupBlocker
-      EmbedderSafeBrowsingThreatDetails
-      EmbedderAppBannerManager
-      EmbedderDomDistillerViewerSource
-      EmbedderDomDistillerSelfDeletingRequestDelegate
-      EmbedderOomInterventionTabHelper
-      EmbedderOfflinePage
-      EmbedderChromePasswordManagerClientBindCredentialManager
-      EmbedderPermissionRequestManager
-      EmbedderModalDialog
-      EmbedderExtensions
-      EmbedderExtensionMessaging
-      EmbedderExtensionMessagingForOpenPort
-      EmbedderExtensionSentMessageToCachedFrame
-
-  # Types of not restored reasons for back-forward cache.
-  experimental type BackForwardCacheNotRestoredReasonType extends string
-    enum
-      SupportPending
-      PageSupportNeeded
-      Circumstantial
-
-  experimental type BackForwardCacheNotRestoredExplanation extends object
-    properties
-      # Type of the reason
-      BackForwardCacheNotRestoredReasonType type
-      # Not restored reason
-      BackForwardCacheNotRestoredReason reason
-
   # Fired for failed bfcache history navigations if BackForwardCache feature is enabled. Do
   # not assume any ordering with the Page.frameNavigated event. This event is fired only for
   # main-frame history navigation where the document changes (non-same-document navigations),
@@ -7991,8 +7558,6 @@
       Network.LoaderId loaderId
       # The frame id of the associated frame.
       FrameId frameId
-      # Array of reasons why the page could not be cached. This must not be empty.
-      array of BackForwardCacheNotRestoredExplanation notRestoredExplanations
 
   event loadEventFired
     parameters
@@ -8870,7 +8435,7 @@
       # Frame height in DIP (headless chrome only).
       optional integer height
       # The browser context to create the page in.
-      experimental optional Browser.BrowserContextID browserContextId
+      optional Browser.BrowserContextID browserContextId
       # Whether BeginFrames for this target will be controlled via DevTools (headless chrome only,
       # not supported on MacOS yet, false by default).
       experimental optional boolean enableBeginFrameControl
@@ -8924,8 +8489,6 @@
   # Controls whether to automatically attach to new targets which are considered to be related to
   # this one. When turned on, attaches to all existing related targets as well. When turned off,
   # automatically detaches from all currently attached targets.
-  # This also clears all targets added by `autoAttachRelated` from the list of targets to watch
-  # for creation of related targets.
   experimental command setAutoAttach
     parameters
       # Whether to auto-attach to related targets.
@@ -8938,18 +8501,6 @@
       # and eventually retire it. See crbug.com/991325.
       optional boolean flatten
 
-  # Adds the specified target to the list of targets that will be monitored for any related target
-  # creation (such as child frames, child workers and new versions of service worker) and reported
-  # through `attachedToTarget`. The specified target is also auto-attached.
-  # This cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent
-  # `setAutoAttach`. Only available at the Browser target.
-  experimental command autoAttachRelated
-    parameters
-      TargetID targetId
-      # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger`
-      # to run paused targets.
-      boolean waitForDebuggerOnStart
-
   # Controls whether to discover available targets and notify via
   # `targetCreated/targetInfoChanged/targetDestroyed` events.
   command setDiscoverTargets
@@ -9199,7 +8750,7 @@
 
   # Stages of the request to handle. Request will intercept before the request is
   # sent. Response will intercept after the response is received (but before response
-  # body is received).
+  # body is received.
   type RequestStage extends string
     enum
       Request
@@ -9289,9 +8840,7 @@
       # need to represent some non-UTF8 values that can't be transmitted
       # over the protocol as text.
       optional binary binaryResponseHeaders
-      # A response body. If absent, original response body will be used if
-      # the request is intercepted at the response stage and empty body
-      # will be used if the request is intercepted at the request stage.
+      # A response body.
       optional binary body
       # A textual representation of responseCode.
       # If absent, a standard phrase matching responseCode is used.
@@ -9310,8 +8859,6 @@
       optional binary postData
       # If set, overrides the request headers.
       optional array of HeaderEntry headers
-      # If set, overrides response interception behavior for this request.
-      experimental optional boolean interceptResponse
 
   # Continues a request supplying authChallengeResponse following authRequired event.
   command continueWithAuth
@@ -9321,26 +8868,6 @@
       # Response to  with an authChallenge.
       AuthChallengeResponse authChallengeResponse
 
-  # Continues loading of the paused response, optionally modifying the
-  # response headers. If either responseCode or headers are modified, all of them
-  # must be present.
-  experimental command continueResponse
-    parameters
-      # An id the client received in requestPaused event.
-      RequestId requestId
-      # An HTTP response code. If absent, original response code will be used.
-      optional integer responseCode
-      # A textual representation of responseCode.
-      # If absent, a standard phrase matching responseCode is used.
-      optional string responsePhrase
-      # Response headers. If absent, original response headers will be used.
-      optional array of HeaderEntry responseHeaders
-      # Alternative way of specifying response headers as a \0-separated
-      # series of name: value pairs. Prefer the above method unless you
-      # need to represent some non-UTF8 values that can't be transmitted
-      # over the protocol as text.
-      optional binary binaryResponseHeaders
-
   # Causes the body of the response to be received from the server and
   # returned as a single string. May only be issued for a request that
   # is paused in the Response stage and is mutually exclusive with
@@ -9393,8 +8920,6 @@
       optional Network.ErrorReason responseErrorReason
       # Response code if intercepted at response stage.
       optional integer responseStatusCode
-      # Response status text if intercepted at response stage.
-      optional string responseStatusText
       # Response headers if intercepted at the response stage.
       optional array of HeaderEntry responseHeaders
       # If the intercepted request had a corresponding Network.requestWillBeSent event fired for it,
diff --git a/node_modules/devtools-protocol/pdl/js_protocol.pdl b/node_modules/devtools-protocol/pdl/js_protocol.pdl
index b34c855..666952f 100644
--- a/node_modules/devtools-protocol/pdl/js_protocol.pdl
+++ b/node_modules/devtools-protocol/pdl/js_protocol.pdl
@@ -175,7 +175,7 @@
   command enable
     parameters
       # The maximum size in bytes of collected scripts (not referenced by other heap objects)
-      # the debugger can hold. Puts no limit if parameter is omitted.
+      # the debugger can hold. Puts no limit if paramter is omitted.
       experimental optional number maxScriptsCacheSize
     returns
       # Unique identifier of the debugger.
@@ -267,7 +267,7 @@
       BreakpointId breakpointId
 
   # Restarts particular call frame from the beginning.
-  deprecated command restartFrame
+  command restartFrame
     parameters
       # Call frame identifier to evaluate on.
       CallFrameId callFrameId
@@ -707,17 +707,13 @@
       # when the tracking is stopped.
       optional boolean reportProgress
       optional boolean treatGlobalObjectsAsRoots
-      # If true, numerical values are included in the snapshot
-      optional boolean captureNumericValue
 
   command takeHeapSnapshot
     parameters
       # If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken.
       optional boolean reportProgress
-      # If true, a raw snapshot without artificial roots will be generated
+      # If true, a raw snapshot without artifical roots will be generated
       optional boolean treatGlobalObjectsAsRoots
-      # If true, numerical values are included in the snapshot
-      optional boolean captureNumericValue
 
   event addHeapSnapshotChunk
     parameters
@@ -845,6 +841,24 @@
       # Type profile entries for parameters and return values of the functions in the script.
       array of TypeProfileEntry entries
 
+  # Collected counter information.
+  experimental type CounterInfo extends object
+    properties
+      # Counter name.
+      string name
+      # Counter value.
+      integer value
+
+  # Runtime call counter information.
+  experimental type RuntimeCallCounterInfo extends object
+    properties
+      # Counter name.
+      string name
+      # Counter value.
+      number value
+      # Counter time in seconds.
+      number time
+
   command disable
 
   command enable
@@ -909,6 +923,30 @@
       # Type profile for all scripts since startTypeProfile() was turned on.
       array of ScriptTypeProfile result
 
+  # Enable counters collection.
+  experimental command enableCounters
+
+  # Disable counters collection.
+  experimental command disableCounters
+
+  # Retrieve counters.
+  experimental command getCounters
+    returns
+      # Collected counters information.
+      array of CounterInfo result
+
+  # Enable run time call stats collection.
+  experimental command enableRuntimeCallStats
+
+  # Disable run time call stats collection.
+  experimental command disableRuntimeCallStats
+
+  # Retrieve run time call stats.
+  experimental command getRuntimeCallStats
+    returns
+      # Collected runtime call counter information.
+      array of RuntimeCallCounterInfo result
+
   event consoleProfileFinished
     parameters
       string id
@@ -930,13 +968,13 @@
   # Reports coverage delta since the last poll (either from an event like this, or from
   # `takePreciseCoverage` for the current isolate. May only be sent if precise code
   # coverage has been started. This event can be trigged by the embedder to, for example,
-  # trigger collection of coverage data immediately at a certain point in time.
+  # trigger collection of coverage data immediatelly at a certain point in time.
   experimental event preciseCoverageDeltaUpdate
     parameters
       # Monotonically increasing time (in seconds) when the coverage update was taken in the backend.
       number timestamp
       # Identifier for distinguishing coverage events.
-      string occasion
+      string occassion
       # Coverage data for the current isolate.
       array of ScriptCoverage result
 
@@ -1183,7 +1221,7 @@
       string origin
       # Human readable name describing given context.
       string name
-      # A system-unique execution context identifier. Unlike the id, this is unique across
+      # A system-unique execution context identifier. Unlike the id, this is unique accross
       # multiple processes, so can be reliably used to identify specific context while backend
       # performs a cross-process navigation.
       experimental string uniqueId
@@ -1212,10 +1250,6 @@
       optional RemoteObject exception
       # Identifier of the context where exception happened.
       optional ExecutionContextId executionContextId
-      # Dictionary with entries of meta data that the client associated
-      # with this exception, such as information about associated network
-      # requests, etc.
-      experimental optional object exceptionMetaData
 
   # Number of milliseconds since epoch.
   type Timestamp extends number
@@ -1305,8 +1339,6 @@
       # Symbolic group name that can be used to release multiple objects. If objectGroup is not
       # specified and objectId is, objectGroup will be inherited from object.
       optional string objectGroup
-      # Whether to throw an exception if side effect cannot be ruled out during evaluation.
-      experimental optional boolean throwOnSideEffect
     returns
       # Call result.
       RemoteObject result
@@ -1386,9 +1418,9 @@
       # evaluation and allows unsafe-eval. Defaults to true.
       experimental optional boolean allowUnsafeEvalBlockedByCSP
       # An alternative way to specify the execution context to evaluate in.
-      # Compared to contextId that may be reused across processes, this is guaranteed to be
+      # Compared to contextId that may be reused accross processes, this is guaranteed to be
       # system-unique, so it can be used to prevent accidental evaluation of the expression
-      # in context different than intended (e.g. as a result of navigation across process
+      # in context different than intended (e.g. as a result of navigation accross process
       # boundaries).
       # This is mutually exclusive with `contextId`.
       experimental optional string uniqueContextId
@@ -1427,8 +1459,6 @@
       experimental optional boolean accessorPropertiesOnly
       # Whether preview should be generated for the results.
       experimental optional boolean generatePreview
-      # If true, returns non-indexed properties only.
-      experimental optional boolean nonIndexedPropertiesOnly
     returns
       # Object properties.
       array of PropertyDescriptor result
@@ -1533,10 +1563,7 @@
       # execution context. If omitted and `executionContextName` is not set,
       # the binding is exposed to all execution contexts of the target.
       # This parameter is mutually exclusive with `executionContextName`.
-      # Deprecated in favor of `executionContextName` due to an unclear use case
-      # and bugs in implementation (crbug.com/1169639). `executionContextId` will be
-      # removed in the future.
-      deprecated optional ExecutionContextId executionContextId
+      optional ExecutionContextId executionContextId
       # If specified, the binding is exposed to the executionContext with
       # matching name, even for contexts created after the binding is added.
       # See also `ExecutionContext.name` and `worldName` parameter to
@@ -1632,8 +1659,6 @@
     parameters
       RemoteObject object
       object hints
-      # Identifier of the context where the call was made.
-      experimental optional ExecutionContextId executionContextId
 
 # This domain is deprecated.
 deprecated domain Schema
diff --git a/node_modules/devtools-protocol/types/protocol-mapping.d.ts b/node_modules/devtools-protocol/types/protocol-mapping.d.ts
index 6fb2f03..5efb682 100644
--- a/node_modules/devtools-protocol/types/protocol-mapping.d.ts
+++ b/node_modules/devtools-protocol/types/protocol-mapping.d.ts
@@ -56,7 +56,7 @@
          * Reports coverage delta since the last poll (either from an event like this, or from
          * `takePreciseCoverage` for the current isolate. May only be sent if precise code
          * coverage has been started. This event can be trigged by the embedder to, for example,
-         * trigger collection of coverage data immediately at a certain point in time.
+         * trigger collection of coverage data immediatelly at a certain point in time.
          */
         'Profiler.preciseCoverageDeltaUpdate': [Protocol.Profiler.PreciseCoverageDeltaUpdateEvent];
         /**
@@ -104,6 +104,8 @@
          * Event for animation that has been started.
          */
         'Animation.animationStarted': [Protocol.Animation.AnimationStartedEvent];
+        'ApplicationCache.applicationCacheStatusUpdated': [Protocol.ApplicationCache.ApplicationCacheStatusUpdatedEvent];
+        'ApplicationCache.networkStateUpdated': [Protocol.ApplicationCache.NetworkStateUpdatedEvent];
         'Audits.issueAdded': [Protocol.Audits.IssueAddedEvent];
         /**
          * Called when the recording state for the service has been updated.
@@ -352,30 +354,6 @@
          */
         'Network.trustTokenOperationDone': [Protocol.Network.TrustTokenOperationDoneEvent];
         /**
-         * Fired once when parsing the .wbn file has succeeded.
-         * The event contains the information about the web bundle contents.
-         */
-        'Network.subresourceWebBundleMetadataReceived': [Protocol.Network.SubresourceWebBundleMetadataReceivedEvent];
-        /**
-         * Fired once when parsing the .wbn file has failed.
-         */
-        'Network.subresourceWebBundleMetadataError': [Protocol.Network.SubresourceWebBundleMetadataErrorEvent];
-        /**
-         * Fired when handling requests for resources within a .wbn file.
-         * Note: this will only be fired for resources that are requested by the webpage.
-         */
-        'Network.subresourceWebBundleInnerResponseParsed': [Protocol.Network.SubresourceWebBundleInnerResponseParsedEvent];
-        /**
-         * Fired when request for resources within a .wbn file failed.
-         */
-        'Network.subresourceWebBundleInnerResponseError': [Protocol.Network.SubresourceWebBundleInnerResponseErrorEvent];
-        /**
-         * Is sent whenever a new report is added.
-         * And after 'enableReportingApi' for all existing reports.
-         */
-        'Network.reportingApiReportAdded': [Protocol.Network.ReportingApiReportAddedEvent];
-        'Network.reportingApiReportUpdated': [Protocol.Network.ReportingApiReportUpdatedEvent];
-        /**
          * Fired when the node should be inspected. This happens after call to `setInspectMode` or when
          * user manually inspects an element.
          */
@@ -1051,6 +1029,48 @@
             returnType: Protocol.Profiler.TakeTypeProfileResponse;
         };
         /**
+         * Enable counters collection.
+         */
+        'Profiler.enableCounters': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable counters collection.
+         */
+        'Profiler.disableCounters': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Retrieve counters.
+         */
+        'Profiler.getCounters': {
+            paramsType: [];
+            returnType: Protocol.Profiler.GetCountersResponse;
+        };
+        /**
+         * Enable run time call stats collection.
+         */
+        'Profiler.enableRuntimeCallStats': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable run time call stats collection.
+         */
+        'Profiler.disableRuntimeCallStats': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Retrieve run time call stats.
+         */
+        'Profiler.getRuntimeCallStats': {
+            paramsType: [];
+            returnType: Protocol.Profiler.GetRuntimeCallStatsResponse;
+        };
+        /**
          * Add handler to promise with given promise object id.
          */
         'Runtime.awaitPromise': {
@@ -1333,6 +1353,35 @@
             returnType: void;
         };
         /**
+         * Enables application cache domain notifications.
+         */
+        'ApplicationCache.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns relevant application cache data for the document in given frame.
+         */
+        'ApplicationCache.getApplicationCacheForFrame': {
+            paramsType: [Protocol.ApplicationCache.GetApplicationCacheForFrameRequest];
+            returnType: Protocol.ApplicationCache.GetApplicationCacheForFrameResponse;
+        };
+        /**
+         * Returns array of frame identifiers with manifest urls for each frame containing a document
+         * associated with some application cache.
+         */
+        'ApplicationCache.getFramesWithManifests': {
+            paramsType: [];
+            returnType: Protocol.ApplicationCache.GetFramesWithManifestsResponse;
+        };
+        /**
+         * Returns manifest URL for document in the given frame.
+         */
+        'ApplicationCache.getManifestForFrame': {
+            paramsType: [Protocol.ApplicationCache.GetManifestForFrameRequest];
+            returnType: Protocol.ApplicationCache.GetManifestForFrameResponse;
+        };
+        /**
          * Returns the response body and size if it were re-encoded with the specified settings. Only
          * applies to images.
          */
@@ -1646,13 +1695,6 @@
             returnType: Protocol.CSS.SetMediaTextResponse;
         };
         /**
-         * Modifies the expression of a container query.
-         */
-        'CSS.setContainerQueryText': {
-            paramsType: [Protocol.CSS.SetContainerQueryTextRequest];
-            returnType: Protocol.CSS.SetContainerQueryTextResponse;
-        };
-        /**
          * Modifies the rule selector.
          */
         'CSS.setRuleSelector': {
@@ -2119,23 +2161,6 @@
             returnType: Protocol.DOM.GetFrameOwnerResponse;
         };
         /**
-         * Returns the container of the given node based on container query conditions.
-         * If containerName is given, it will find the nearest container with a matching name;
-         * otherwise it will find the nearest container regardless of its container name.
-         */
-        'DOM.getContainerForNode': {
-            paramsType: [Protocol.DOM.GetContainerForNodeRequest];
-            returnType: Protocol.DOM.GetContainerForNodeResponse;
-        };
-        /**
-         * Returns the descendants of a container query container that have
-         * container queries against this container.
-         */
-        'DOM.getQueryingDescendantsForContainer': {
-            paramsType: [Protocol.DOM.GetQueryingDescendantsForContainerRequest];
-            returnType: Protocol.DOM.GetQueryingDescendantsForContainerResponse;
-        };
-        /**
          * Returns event listeners of the given object.
          */
         'DOMDebugger.getEventListeners': {
@@ -2206,20 +2231,6 @@
             returnType: void;
         };
         /**
-         * Sets breakpoint on particular native event.
-         */
-        'EventBreakpoints.setInstrumentationBreakpoint': {
-            paramsType: [Protocol.EventBreakpoints.SetInstrumentationBreakpointRequest];
-            returnType: void;
-        };
-        /**
-         * Removes breakpoint on particular native event.
-         */
-        'EventBreakpoints.removeInstrumentationBreakpoint': {
-            paramsType: [Protocol.EventBreakpoints.RemoveInstrumentationBreakpointRequest];
-            returnType: void;
-        };
-        /**
          * Disables DOM snapshot agent for the given page.
          */
         'DOMSnapshot.disable': {
@@ -2355,13 +2366,6 @@
             returnType: void;
         };
         /**
-         * Automatically render all web contents using a dark theme.
-         */
-        'Emulation.setAutoDarkModeOverride': {
-            paramsType: [Protocol.Emulation.SetAutoDarkModeOverrideRequest?];
-            returnType: void;
-        };
-        /**
          * Enables CPU throttling to emulate slow CPUs.
          */
         'Emulation.setCPUThrottlingRate': {
@@ -2634,15 +2638,6 @@
             returnType: void;
         };
         /**
-         * This method sets the current candidate text for ime.
-         * Use imeCommitComposition to commit the final text.
-         * Use imeSetComposition with empty string as text to cancel composition.
-         */
-        'Input.imeSetComposition': {
-            paramsType: [Protocol.Input.ImeSetCompositionRequest];
-            returnType: void;
-        };
-        /**
          * Dispatches a mouse event to the page.
          */
         'Input.dispatchMouseEvent': {
@@ -3070,6 +3065,13 @@
             returnType: void;
         };
         /**
+         * For testing.
+         */
+        'Network.setDataSizeLimitsForTest': {
+            paramsType: [Protocol.Network.SetDataSizeLimitsForTestRequest];
+            returnType: void;
+        };
+        /**
          * Specifies whether to always send extra HTTP headers with the requests from this page.
          */
         'Network.setExtraHTTPHeaders': {
@@ -3106,14 +3108,6 @@
             returnType: Protocol.Network.GetSecurityIsolationStatusResponse;
         };
         /**
-         * Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.
-         * Enabling triggers 'reportingApiReportAdded' for all existing reports.
-         */
-        'Network.enableReportingApi': {
-            paramsType: [Protocol.Network.EnableReportingApiRequest];
-            returnType: void;
-        };
-        /**
          * Fetches the resource and returns the content.
          */
         'Network.loadNetworkResource': {
@@ -3164,9 +3158,6 @@
         };
         /**
          * Highlights owner element of the frame with given id.
-         * Deprecated: Doesn't work reliablity and cannot be fixed due to process
-         * separatation (the owner node might be in a different process). Determine
-         * the owner node in the client and use highlightNode.
          */
         'Overlay.highlightFrame': {
             paramsType: [Protocol.Overlay.HighlightFrameRequest];
@@ -3250,10 +3241,6 @@
             paramsType: [Protocol.Overlay.SetShowScrollSnapOverlaysRequest];
             returnType: void;
         };
-        'Overlay.setShowContainerQueryOverlays': {
-            paramsType: [Protocol.Overlay.SetShowContainerQueryOverlaysRequest];
-            returnType: void;
-        };
         /**
          * Requests that backend shows paint rectangles
          */
@@ -3304,13 +3291,6 @@
             returnType: void;
         };
         /**
-         * Show elements in isolation mode with overlays.
-         */
-        'Overlay.setShowIsolatedElements': {
-            paramsType: [Protocol.Overlay.SetShowIsolatedElementsRequest];
-            returnType: void;
-        };
-        /**
          * Deprecated, please use addScriptToEvaluateOnNewDocument instead.
          */
         'Page.addScriptToEvaluateOnLoad': {
@@ -3408,14 +3388,6 @@
             returnType: Protocol.Page.GetManifestIconsResponse;
         };
         /**
-         * Returns the unique (PWA) app id.
-         * Only returns values if the feature flag 'WebAppEnableManifestId' is enabled
-         */
-        'Page.getAppId': {
-            paramsType: [];
-            returnType: Protocol.Page.GetAppIdResponse;
-        };
-        /**
          * Returns all browser cookies. Depending on the backend support, will return detailed cookie
          * information in the `cookies` field.
          */
@@ -3550,13 +3522,6 @@
             returnType: Protocol.Page.GetPermissionsPolicyStateResponse;
         };
         /**
-         * Get Origin Trials on given frame.
-         */
-        'Page.getOriginTrials': {
-            paramsType: [Protocol.Page.GetOriginTrialsRequest];
-            returnType: Protocol.Page.GetOriginTrialsResponse;
-        };
-        /**
          * Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
          * window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
          * query results).
@@ -3667,9 +3632,20 @@
             returnType: void;
         };
         /**
+         * Forces compilation cache to be generated for every subresource script.
+         * See also: `Page.produceCompilationCache`.
+         */
+        'Page.setProduceCompilationCache': {
+            paramsType: [Protocol.Page.SetProduceCompilationCacheRequest];
+            returnType: void;
+        };
+        /**
          * Requests backend to produce compilation cache for the specified scripts.
-         * `scripts` are appeneded to the list of scripts for which the cache
-         * would be produced. The list may be reset during page navigation.
+         * Unlike setProduceCompilationCache, this allows client to only produce cache
+         * for specific scripts. `scripts` are appeneded to the list of scripts
+         * for which the cache for would produced. Disabling compilation cache with
+         * `setProduceCompilationCache` would reset all pending cache requests.
+         * The list may also be reset during page navigation.
          * When script with a matching URL is encountered, the cache is optionally
          * produced upon backend discretion, based on internal heuristics.
          * See also: `Page.compilationCacheProduced`.
@@ -4048,25 +4024,12 @@
          * Controls whether to automatically attach to new targets which are considered to be related to
          * this one. When turned on, attaches to all existing related targets as well. When turned off,
          * automatically detaches from all currently attached targets.
-         * This also clears all targets added by `autoAttachRelated` from the list of targets to watch
-         * for creation of related targets.
          */
         'Target.setAutoAttach': {
             paramsType: [Protocol.Target.SetAutoAttachRequest];
             returnType: void;
         };
         /**
-         * Adds the specified target to the list of targets that will be monitored for any related target
-         * creation (such as child frames, child workers and new versions of service worker) and reported
-         * through `attachedToTarget`. The specified target is also auto-attached.
-         * This cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent
-         * `setAutoAttach`. Only available at the Browser target.
-         */
-        'Target.autoAttachRelated': {
-            paramsType: [Protocol.Target.AutoAttachRelatedRequest];
-            returnType: void;
-        };
-        /**
          * Controls whether to discover available targets and notify via
          * `targetCreated/targetInfoChanged/targetDestroyed` events.
          */
@@ -4175,15 +4138,6 @@
             returnType: void;
         };
         /**
-         * Continues loading of the paused response, optionally modifying the
-         * response headers. If either responseCode or headers are modified, all of them
-         * must be present.
-         */
-        'Fetch.continueResponse': {
-            paramsType: [Protocol.Fetch.ContinueResponseRequest];
-            returnType: void;
-        };
-        /**
          * Causes the body of the response to be received from the server and
          * returned as a single string. May only be issued for a request that
          * is paused in the Response stage and is mutually exclusive with
diff --git a/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts b/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts
index 36b7785..25ba0ac 100644
--- a/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts
+++ b/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts
@@ -26,6 +26,8 @@
 
         Animation: AnimationApi;
 
+        ApplicationCache: ApplicationCacheApi;
+
         Audits: AuditsApi;
 
         BackgroundService: BackgroundServiceApi;
@@ -42,8 +44,6 @@
 
         DOMDebugger: DOMDebuggerApi;
 
-        EventBreakpoints: EventBreakpointsApi;
-
         DOMSnapshot: DOMSnapshotApi;
 
         DOMStorage: DOMStorageApi;
@@ -422,6 +422,36 @@
          */
         takeTypeProfile(): Promise<Protocol.Profiler.TakeTypeProfileResponse>;
 
+        /**
+         * Enable counters collection.
+         */
+        enableCounters(): Promise<void>;
+
+        /**
+         * Disable counters collection.
+         */
+        disableCounters(): Promise<void>;
+
+        /**
+         * Retrieve counters.
+         */
+        getCounters(): Promise<Protocol.Profiler.GetCountersResponse>;
+
+        /**
+         * Enable run time call stats collection.
+         */
+        enableRuntimeCallStats(): Promise<void>;
+
+        /**
+         * Disable run time call stats collection.
+         */
+        disableRuntimeCallStats(): Promise<void>;
+
+        /**
+         * Retrieve run time call stats.
+         */
+        getRuntimeCallStats(): Promise<Protocol.Profiler.GetRuntimeCallStatsResponse>;
+
         on(event: 'consoleProfileFinished', listener: (params: Protocol.Profiler.ConsoleProfileFinishedEvent) => void): void;
 
         /**
@@ -433,7 +463,7 @@
          * Reports coverage delta since the last poll (either from an event like this, or from
          * `takePreciseCoverage` for the current isolate. May only be sent if precise code
          * coverage has been started. This event can be trigged by the embedder to, for example,
-         * trigger collection of coverage data immediately at a certain point in time.
+         * trigger collection of coverage data immediatelly at a certain point in time.
          */
         on(event: 'preciseCoverageDeltaUpdate', listener: (params: Protocol.Profiler.PreciseCoverageDeltaUpdateEvent) => void): void;
 
@@ -711,6 +741,34 @@
 
     }
 
+    export interface ApplicationCacheApi {
+        /**
+         * Enables application cache domain notifications.
+         */
+        enable(): Promise<void>;
+
+        /**
+         * Returns relevant application cache data for the document in given frame.
+         */
+        getApplicationCacheForFrame(params: Protocol.ApplicationCache.GetApplicationCacheForFrameRequest): Promise<Protocol.ApplicationCache.GetApplicationCacheForFrameResponse>;
+
+        /**
+         * Returns array of frame identifiers with manifest urls for each frame containing a document
+         * associated with some application cache.
+         */
+        getFramesWithManifests(): Promise<Protocol.ApplicationCache.GetFramesWithManifestsResponse>;
+
+        /**
+         * Returns manifest URL for document in the given frame.
+         */
+        getManifestForFrame(params: Protocol.ApplicationCache.GetManifestForFrameRequest): Promise<Protocol.ApplicationCache.GetManifestForFrameResponse>;
+
+        on(event: 'applicationCacheStatusUpdated', listener: (params: Protocol.ApplicationCache.ApplicationCacheStatusUpdatedEvent) => void): void;
+
+        on(event: 'networkStateUpdated', listener: (params: Protocol.ApplicationCache.NetworkStateUpdatedEvent) => void): void;
+
+    }
+
     export interface AuditsApi {
         /**
          * Returns the response body and size if it were re-encoded with the specified settings. Only
@@ -972,11 +1030,6 @@
         setMediaText(params: Protocol.CSS.SetMediaTextRequest): Promise<Protocol.CSS.SetMediaTextResponse>;
 
         /**
-         * Modifies the expression of a container query.
-         */
-        setContainerQueryText(params: Protocol.CSS.SetContainerQueryTextRequest): Promise<Protocol.CSS.SetContainerQueryTextResponse>;
-
-        /**
          * Modifies the rule selector.
          */
         setRuleSelector(params: Protocol.CSS.SetRuleSelectorRequest): Promise<Protocol.CSS.SetRuleSelectorResponse>;
@@ -1365,19 +1418,6 @@
         getFrameOwner(params: Protocol.DOM.GetFrameOwnerRequest): Promise<Protocol.DOM.GetFrameOwnerResponse>;
 
         /**
-         * Returns the container of the given node based on container query conditions.
-         * If containerName is given, it will find the nearest container with a matching name;
-         * otherwise it will find the nearest container regardless of its container name.
-         */
-        getContainerForNode(params: Protocol.DOM.GetContainerForNodeRequest): Promise<Protocol.DOM.GetContainerForNodeResponse>;
-
-        /**
-         * Returns the descendants of a container query container that have
-         * container queries against this container.
-         */
-        getQueryingDescendantsForContainer(params: Protocol.DOM.GetQueryingDescendantsForContainerRequest): Promise<Protocol.DOM.GetQueryingDescendantsForContainerResponse>;
-
-        /**
          * Fired when `Element`'s attribute is modified.
          */
         on(event: 'attributeModified', listener: (params: Protocol.DOM.AttributeModifiedEvent) => void): void;
@@ -1503,19 +1543,6 @@
 
     }
 
-    export interface EventBreakpointsApi {
-        /**
-         * Sets breakpoint on particular native event.
-         */
-        setInstrumentationBreakpoint(params: Protocol.EventBreakpoints.SetInstrumentationBreakpointRequest): Promise<void>;
-
-        /**
-         * Removes breakpoint on particular native event.
-         */
-        removeInstrumentationBreakpoint(params: Protocol.EventBreakpoints.RemoveInstrumentationBreakpointRequest): Promise<void>;
-
-    }
-
     export interface DOMSnapshotApi {
         /**
          * Disables DOM snapshot agent for the given page.
@@ -1633,11 +1660,6 @@
         setFocusEmulationEnabled(params: Protocol.Emulation.SetFocusEmulationEnabledRequest): Promise<void>;
 
         /**
-         * Automatically render all web contents using a dark theme.
-         */
-        setAutoDarkModeOverride(params: Protocol.Emulation.SetAutoDarkModeOverrideRequest): Promise<void>;
-
-        /**
          * Enables CPU throttling to emulate slow CPUs.
          */
         setCPUThrottlingRate(params: Protocol.Emulation.SetCPUThrottlingRateRequest): Promise<void>;
@@ -1856,13 +1878,6 @@
         insertText(params: Protocol.Input.InsertTextRequest): Promise<void>;
 
         /**
-         * This method sets the current candidate text for ime.
-         * Use imeCommitComposition to commit the final text.
-         * Use imeSetComposition with empty string as text to cancel composition.
-         */
-        imeSetComposition(params: Protocol.Input.ImeSetCompositionRequest): Promise<void>;
-
-        /**
          * Dispatches a mouse event to the page.
          */
         dispatchMouseEvent(params: Protocol.Input.DispatchMouseEventRequest): Promise<void>;
@@ -2215,6 +2230,11 @@
         setCookies(params: Protocol.Network.SetCookiesRequest): Promise<void>;
 
         /**
+         * For testing.
+         */
+        setDataSizeLimitsForTest(params: Protocol.Network.SetDataSizeLimitsForTestRequest): Promise<void>;
+
+        /**
          * Specifies whether to always send extra HTTP headers with the requests from this page.
          */
         setExtraHTTPHeaders(params: Protocol.Network.SetExtraHTTPHeadersRequest): Promise<void>;
@@ -2241,12 +2261,6 @@
         getSecurityIsolationStatus(params: Protocol.Network.GetSecurityIsolationStatusRequest): Promise<Protocol.Network.GetSecurityIsolationStatusResponse>;
 
         /**
-         * Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.
-         * Enabling triggers 'reportingApiReportAdded' for all existing reports.
-         */
-        enableReportingApi(params: Protocol.Network.EnableReportingApiRequest): Promise<void>;
-
-        /**
          * Fetches the resource and returns the content.
          */
         loadNetworkResource(params: Protocol.Network.LoadNetworkResourceRequest): Promise<Protocol.Network.LoadNetworkResourceResponse>;
@@ -2376,36 +2390,6 @@
          */
         on(event: 'trustTokenOperationDone', listener: (params: Protocol.Network.TrustTokenOperationDoneEvent) => void): void;
 
-        /**
-         * Fired once when parsing the .wbn file has succeeded.
-         * The event contains the information about the web bundle contents.
-         */
-        on(event: 'subresourceWebBundleMetadataReceived', listener: (params: Protocol.Network.SubresourceWebBundleMetadataReceivedEvent) => void): void;
-
-        /**
-         * Fired once when parsing the .wbn file has failed.
-         */
-        on(event: 'subresourceWebBundleMetadataError', listener: (params: Protocol.Network.SubresourceWebBundleMetadataErrorEvent) => void): void;
-
-        /**
-         * Fired when handling requests for resources within a .wbn file.
-         * Note: this will only be fired for resources that are requested by the webpage.
-         */
-        on(event: 'subresourceWebBundleInnerResponseParsed', listener: (params: Protocol.Network.SubresourceWebBundleInnerResponseParsedEvent) => void): void;
-
-        /**
-         * Fired when request for resources within a .wbn file failed.
-         */
-        on(event: 'subresourceWebBundleInnerResponseError', listener: (params: Protocol.Network.SubresourceWebBundleInnerResponseErrorEvent) => void): void;
-
-        /**
-         * Is sent whenever a new report is added.
-         * And after 'enableReportingApi' for all existing reports.
-         */
-        on(event: 'reportingApiReportAdded', listener: (params: Protocol.Network.ReportingApiReportAddedEvent) => void): void;
-
-        on(event: 'reportingApiReportUpdated', listener: (params: Protocol.Network.ReportingApiReportUpdatedEvent) => void): void;
-
     }
 
     export interface OverlayApi {
@@ -2441,9 +2425,6 @@
 
         /**
          * Highlights owner element of the frame with given id.
-         * Deprecated: Doesn't work reliablity and cannot be fixed due to process
-         * separatation (the owner node might be in a different process). Determine
-         * the owner node in the client and use highlightNode.
          */
         highlightFrame(params: Protocol.Overlay.HighlightFrameRequest): Promise<void>;
 
@@ -2501,8 +2482,6 @@
 
         setShowScrollSnapOverlays(params: Protocol.Overlay.SetShowScrollSnapOverlaysRequest): Promise<void>;
 
-        setShowContainerQueryOverlays(params: Protocol.Overlay.SetShowContainerQueryOverlaysRequest): Promise<void>;
-
         /**
          * Requests that backend shows paint rectangles
          */
@@ -2539,11 +2518,6 @@
         setShowHinge(params: Protocol.Overlay.SetShowHingeRequest): Promise<void>;
 
         /**
-         * Show elements in isolation mode with overlays.
-         */
-        setShowIsolatedElements(params: Protocol.Overlay.SetShowIsolatedElementsRequest): Promise<void>;
-
-        /**
          * Fired when the node should be inspected. This happens after call to `setInspectMode` or when
          * user manually inspects an element.
          */
@@ -2635,12 +2609,6 @@
         getManifestIcons(): Promise<Protocol.Page.GetManifestIconsResponse>;
 
         /**
-         * Returns the unique (PWA) app id.
-         * Only returns values if the feature flag 'WebAppEnableManifestId' is enabled
-         */
-        getAppId(): Promise<Protocol.Page.GetAppIdResponse>;
-
-        /**
          * Returns all browser cookies. Depending on the backend support, will return detailed cookie
          * information in the `cookies` field.
          */
@@ -2737,11 +2705,6 @@
         getPermissionsPolicyState(params: Protocol.Page.GetPermissionsPolicyStateRequest): Promise<Protocol.Page.GetPermissionsPolicyStateResponse>;
 
         /**
-         * Get Origin Trials on given frame.
-         */
-        getOriginTrials(params: Protocol.Page.GetOriginTrialsRequest): Promise<Protocol.Page.GetOriginTrialsResponse>;
-
-        /**
          * Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
          * window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
          * query results).
@@ -2822,9 +2785,18 @@
         stopScreencast(): Promise<void>;
 
         /**
+         * Forces compilation cache to be generated for every subresource script.
+         * See also: `Page.produceCompilationCache`.
+         */
+        setProduceCompilationCache(params: Protocol.Page.SetProduceCompilationCacheRequest): Promise<void>;
+
+        /**
          * Requests backend to produce compilation cache for the specified scripts.
-         * `scripts` are appeneded to the list of scripts for which the cache
-         * would be produced. The list may be reset during page navigation.
+         * Unlike setProduceCompilationCache, this allows client to only produce cache
+         * for specific scripts. `scripts` are appeneded to the list of scripts
+         * for which the cache for would produced. Disabling compilation cache with
+         * `setProduceCompilationCache` would reset all pending cache requests.
+         * The list may also be reset during page navigation.
          * When script with a matching URL is encountered, the cache is optionally
          * produced upon backend discretion, based on internal heuristics.
          * See also: `Page.compilationCacheProduced`.
@@ -3297,21 +3269,10 @@
          * Controls whether to automatically attach to new targets which are considered to be related to
          * this one. When turned on, attaches to all existing related targets as well. When turned off,
          * automatically detaches from all currently attached targets.
-         * This also clears all targets added by `autoAttachRelated` from the list of targets to watch
-         * for creation of related targets.
          */
         setAutoAttach(params: Protocol.Target.SetAutoAttachRequest): Promise<void>;
 
         /**
-         * Adds the specified target to the list of targets that will be monitored for any related target
-         * creation (such as child frames, child workers and new versions of service worker) and reported
-         * through `attachedToTarget`. The specified target is also auto-attached.
-         * This cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent
-         * `setAutoAttach`. Only available at the Browser target.
-         */
-        autoAttachRelated(params: Protocol.Target.AutoAttachRelatedRequest): Promise<void>;
-
-        /**
          * Controls whether to discover available targets and notify via
          * `targetCreated/targetInfoChanged/targetDestroyed` events.
          */
@@ -3456,13 +3417,6 @@
         continueWithAuth(params: Protocol.Fetch.ContinueWithAuthRequest): Promise<void>;
 
         /**
-         * Continues loading of the paused response, optionally modifying the
-         * response headers. If either responseCode or headers are modified, all of them
-         * must be present.
-         */
-        continueResponse(params: Protocol.Fetch.ContinueResponseRequest): Promise<void>;
-
-        /**
          * Causes the body of the response to be received from the server and
          * returned as a single string. May only be issued for a request that
          * is paused in the Response stage and is mutually exclusive with
diff --git a/node_modules/devtools-protocol/types/protocol.d.ts b/node_modules/devtools-protocol/types/protocol.d.ts
index dad4052..dc2c685 100644
--- a/node_modules/devtools-protocol/types/protocol.d.ts
+++ b/node_modules/devtools-protocol/types/protocol.d.ts
@@ -289,7 +289,7 @@
         export interface EnableRequest {
             /**
              * The maximum size in bytes of collected scripts (not referenced by other heap objects)
-             * the debugger can hold. Puts no limit if parameter is omitted.
+             * the debugger can hold. Puts no limit if paramter is omitted.
              */
             maxScriptsCacheSize?: number;
         }
@@ -1069,10 +1069,6 @@
              */
             reportProgress?: boolean;
             treatGlobalObjectsAsRoots?: boolean;
-            /**
-             * If true, numerical values are included in the snapshot
-             */
-            captureNumericValue?: boolean;
         }
 
         export interface TakeHeapSnapshotRequest {
@@ -1081,13 +1077,9 @@
              */
             reportProgress?: boolean;
             /**
-             * If true, a raw snapshot without artificial roots will be generated
+             * If true, a raw snapshot without artifical roots will be generated
              */
             treatGlobalObjectsAsRoots?: boolean;
-            /**
-             * If true, numerical values are included in the snapshot
-             */
-            captureNumericValue?: boolean;
         }
 
         export interface AddHeapSnapshotChunkEvent {
@@ -1293,6 +1285,38 @@
             entries: TypeProfileEntry[];
         }
 
+        /**
+         * Collected counter information.
+         */
+        export interface CounterInfo {
+            /**
+             * Counter name.
+             */
+            name: string;
+            /**
+             * Counter value.
+             */
+            value: integer;
+        }
+
+        /**
+         * Runtime call counter information.
+         */
+        export interface RuntimeCallCounterInfo {
+            /**
+             * Counter name.
+             */
+            name: string;
+            /**
+             * Counter value.
+             */
+            value: number;
+            /**
+             * Counter time in seconds.
+             */
+            time: number;
+        }
+
         export interface GetBestEffortCoverageResponse {
             /**
              * Coverage data for the current isolate.
@@ -1354,6 +1378,20 @@
             result: ScriptTypeProfile[];
         }
 
+        export interface GetCountersResponse {
+            /**
+             * Collected counters information.
+             */
+            result: CounterInfo[];
+        }
+
+        export interface GetRuntimeCallStatsResponse {
+            /**
+             * Collected runtime call counter information.
+             */
+            result: RuntimeCallCounterInfo[];
+        }
+
         export interface ConsoleProfileFinishedEvent {
             id: string;
             /**
@@ -1386,7 +1424,7 @@
          * Reports coverage delta since the last poll (either from an event like this, or from
          * `takePreciseCoverage` for the current isolate. May only be sent if precise code
          * coverage has been started. This event can be trigged by the embedder to, for example,
-         * trigger collection of coverage data immediately at a certain point in time.
+         * trigger collection of coverage data immediatelly at a certain point in time.
          */
         export interface PreciseCoverageDeltaUpdateEvent {
             /**
@@ -1396,7 +1434,7 @@
             /**
              * Identifier for distinguishing coverage events.
              */
-            occasion: string;
+            occassion: string;
             /**
              * Coverage data for the current isolate.
              */
@@ -1779,7 +1817,7 @@
              */
             name: string;
             /**
-             * A system-unique execution context identifier. Unlike the id, this is unique across
+             * A system-unique execution context identifier. Unlike the id, this is unique accross
              * multiple processes, so can be reliably used to identify specific context while backend
              * performs a cross-process navigation.
              */
@@ -1831,12 +1869,6 @@
              * Identifier of the context where exception happened.
              */
             executionContextId?: ExecutionContextId;
-            /**
-             * Dictionary with entries of meta data that the client associated
-             * with this exception, such as information about associated network
-             * requests, etc.
-             */
-            exceptionMetaData?: any;
         }
 
         /**
@@ -1985,10 +2017,6 @@
              * specified and objectId is, objectGroup will be inherited from object.
              */
             objectGroup?: string;
-            /**
-             * Whether to throw an exception if side effect cannot be ruled out during evaluation.
-             */
-            throwOnSideEffect?: boolean;
         }
 
         export interface CallFunctionOnResponse {
@@ -2104,9 +2132,9 @@
             allowUnsafeEvalBlockedByCSP?: boolean;
             /**
              * An alternative way to specify the execution context to evaluate in.
-             * Compared to contextId that may be reused across processes, this is guaranteed to be
+             * Compared to contextId that may be reused accross processes, this is guaranteed to be
              * system-unique, so it can be used to prevent accidental evaluation of the expression
-             * in context different than intended (e.g. as a result of navigation across process
+             * in context different than intended (e.g. as a result of navigation accross process
              * boundaries).
              * This is mutually exclusive with `contextId`.
              */
@@ -2161,10 +2189,6 @@
              * Whether preview should be generated for the results.
              */
             generatePreview?: boolean;
-            /**
-             * If true, returns non-indexed properties only.
-             */
-            nonIndexedPropertiesOnly?: boolean;
         }
 
         export interface GetPropertiesResponse {
@@ -2301,9 +2325,6 @@
              * execution context. If omitted and `executionContextName` is not set,
              * the binding is exposed to all execution contexts of the target.
              * This parameter is mutually exclusive with `executionContextName`.
-             * Deprecated in favor of `executionContextName` due to an unclear use case
-             * and bugs in implementation (crbug.com/1169639). `executionContextId` will be
-             * removed in the future.
              */
             executionContextId?: ExecutionContextId;
             /**
@@ -2439,10 +2460,6 @@
         export interface InspectRequestedEvent {
             object: RemoteObject;
             hints: any;
-            /**
-             * Identifier of the context where the call was made.
-             */
-            executionContextId?: ExecutionContextId;
         }
     }
 
@@ -2493,7 +2510,7 @@
         /**
          * Enum of possible native property sources (as a subtype of a particular AXValueSourceType).
          */
-        export type AXValueNativeSourceType = ('description' | 'figcaption' | 'label' | 'labelfor' | 'labelwrapped' | 'legend' | 'rubyannotation' | 'tablecaption' | 'title' | 'other');
+        export type AXValueNativeSourceType = ('figcaption' | 'label' | 'labelfor' | 'labelwrapped' | 'legend' | 'rubyannotation' | 'tablecaption' | 'title' | 'other');
 
         /**
          * A single source for a computed AX property.
@@ -2673,16 +2690,7 @@
              * The maximum depth at which descendants of the root node should be retrieved.
              * If omitted, the full tree is returned.
              */
-            depth?: integer;
-            /**
-             * Deprecated. This parameter has been renamed to `depth`. If depth is not provided, max_depth will be used.
-             */
             max_depth?: integer;
-            /**
-             * The frame for whose document the AX tree should be retrieved.
-             * If omited, the root frame is used.
-             */
-            frameId?: Page.FrameId;
         }
 
         export interface GetFullAXTreeResponse {
@@ -2691,11 +2699,6 @@
 
         export interface GetChildAXNodesRequest {
             id: AXNodeId;
-            /**
-             * The frame in whose document the node resides.
-             * If omitted, the root frame is used.
-             */
-            frameId?: Page.FrameId;
         }
 
         export interface GetChildAXNodesResponse {
@@ -2980,6 +2983,126 @@
         }
     }
 
+    export namespace ApplicationCache {
+
+        /**
+         * Detailed application cache resource information.
+         */
+        export interface ApplicationCacheResource {
+            /**
+             * Resource url.
+             */
+            url: string;
+            /**
+             * Resource size.
+             */
+            size: integer;
+            /**
+             * Resource type.
+             */
+            type: string;
+        }
+
+        /**
+         * Detailed application cache information.
+         */
+        export interface ApplicationCache {
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Application cache size.
+             */
+            size: number;
+            /**
+             * Application cache creation time.
+             */
+            creationTime: number;
+            /**
+             * Application cache update time.
+             */
+            updateTime: number;
+            /**
+             * Application cache resources.
+             */
+            resources: ApplicationCacheResource[];
+        }
+
+        /**
+         * Frame identifier - manifest URL pair.
+         */
+        export interface FrameWithManifest {
+            /**
+             * Frame identifier.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Application cache status.
+             */
+            status: integer;
+        }
+
+        export interface GetApplicationCacheForFrameRequest {
+            /**
+             * Identifier of the frame containing document whose application cache is retrieved.
+             */
+            frameId: Page.FrameId;
+        }
+
+        export interface GetApplicationCacheForFrameResponse {
+            /**
+             * Relevant application cache data for the document in given frame.
+             */
+            applicationCache: ApplicationCache;
+        }
+
+        export interface GetFramesWithManifestsResponse {
+            /**
+             * Array of frame identifiers with manifest urls for each frame containing a document
+             * associated with some application cache.
+             */
+            frameIds: FrameWithManifest[];
+        }
+
+        export interface GetManifestForFrameRequest {
+            /**
+             * Identifier of the frame containing document whose manifest is retrieved.
+             */
+            frameId: Page.FrameId;
+        }
+
+        export interface GetManifestForFrameResponse {
+            /**
+             * Manifest URL for document in the given frame.
+             */
+            manifestURL: string;
+        }
+
+        export interface ApplicationCacheStatusUpdatedEvent {
+            /**
+             * Identifier of the frame containing document whose application cache updated status.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Updated application cache status.
+             */
+            status: integer;
+        }
+
+        export interface NetworkStateUpdatedEvent {
+            isNowOnline: boolean;
+        }
+    }
+
     /**
      * Audits domain allows investigation of page violations and possible improvements.
      */
@@ -3015,7 +3138,7 @@
             frameId: Page.FrameId;
         }
 
-        export type SameSiteCookieExclusionReason = ('ExcludeSameSiteUnspecifiedTreatedAsLax' | 'ExcludeSameSiteNoneInsecure' | 'ExcludeSameSiteLax' | 'ExcludeSameSiteStrict' | 'ExcludeInvalidSameParty' | 'ExcludeSamePartyCrossPartyContext');
+        export type SameSiteCookieExclusionReason = ('ExcludeSameSiteUnspecifiedTreatedAsLax' | 'ExcludeSameSiteNoneInsecure' | 'ExcludeSameSiteLax' | 'ExcludeSameSiteStrict');
 
         export type SameSiteCookieWarningReason = ('WarnSameSiteUnspecifiedCrossSiteContext' | 'WarnSameSiteNoneInsecure' | 'WarnSameSiteUnspecifiedLaxAllowUnsafe' | 'WarnSameSiteStrictLaxDowngradeStrict' | 'WarnSameSiteStrictCrossDowngradeStrict' | 'WarnSameSiteStrictCrossDowngradeLax' | 'WarnSameSiteLaxCrossDowngradeStrict' | 'WarnSameSiteLaxCrossDowngradeLax');
 
@@ -3027,14 +3150,7 @@
          * information without the cookie.
          */
         export interface SameSiteCookieIssueDetails {
-            /**
-             * If AffectedCookie is not set then rawCookieLine contains the raw
-             * Set-Cookie header string. This hints at a problem where the
-             * cookie line is syntactically or semantically malformed in a way
-             * that no valid cookie could be created.
-             */
-            cookie?: AffectedCookie;
-            rawCookieLine?: string;
+            cookie: AffectedCookie;
             cookieWarningReasons: SameSiteCookieWarningReason[];
             cookieExclusionReasons: SameSiteCookieExclusionReason[];
             /**
@@ -3119,7 +3235,7 @@
             frame: AffectedFrame;
         }
 
-        export type ContentSecurityPolicyViolationType = ('kInlineViolation' | 'kEvalViolation' | 'kURLViolation' | 'kTrustedTypesSinkViolation' | 'kTrustedTypesPolicyViolation' | 'kWasmEvalViolation');
+        export type ContentSecurityPolicyViolationType = ('kInlineViolation' | 'kEvalViolation' | 'kURLViolation' | 'kTrustedTypesSinkViolation' | 'kTrustedTypesPolicyViolation');
 
         export interface SourceCodeLocation {
             scriptId?: Runtime.ScriptId;
@@ -3201,7 +3317,7 @@
             clientSecurityState?: Network.ClientSecurityState;
         }
 
-        export type AttributionReportingIssueType = ('PermissionPolicyDisabled' | 'InvalidAttributionSourceEventId' | 'InvalidAttributionData' | 'AttributionSourceUntrustworthyOrigin' | 'AttributionUntrustworthyOrigin' | 'AttributionTriggerDataTooLarge' | 'AttributionEventSourceTriggerDataTooLarge');
+        export type AttributionReportingIssueType = ('PermissionPolicyDisabled' | 'InvalidAttributionSourceEventId' | 'InvalidAttributionData' | 'AttributionSourceUntrustworthyOrigin' | 'AttributionUntrustworthyOrigin');
 
         /**
          * Details for issues around "Attribution Reporting API" usage.
@@ -3231,57 +3347,12 @@
             loaderId: Network.LoaderId;
         }
 
-        export interface NavigatorUserAgentIssueDetails {
-            url: string;
-            location?: SourceCodeLocation;
-        }
-
-        export interface WasmCrossOriginModuleSharingIssueDetails {
-            wasmModuleUrl: string;
-            sourceOrigin: string;
-            targetOrigin: string;
-            isWarning: boolean;
-        }
-
-        export type GenericIssueErrorType = ('CrossOriginPortalPostMessageError');
-
-        /**
-         * Depending on the concrete errorType, different properties are set.
-         */
-        export interface GenericIssueDetails {
-            /**
-             * Issues with the same errorType are aggregated in the frontend.
-             */
-            errorType: GenericIssueErrorType;
-            frameId?: Page.FrameId;
-        }
-
-        /**
-         * This issue tracks information needed to print a deprecation message.
-         * The formatting is inherited from the old console.log version, see more at:
-         * https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/frame/deprecation.cc
-         * TODO(crbug.com/1264960): Re-work format to add i18n support per:
-         * https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/public/devtools_protocol/README.md
-         */
-        export interface DeprecationIssueDetails {
-            affectedFrame?: AffectedFrame;
-            sourceCodeLocation: SourceCodeLocation;
-            /**
-             * The content of the deprecation issue (this won't be translated),
-             * e.g. "window.inefficientLegacyStorageMethod will be removed in M97,
-             * around January 2022. Please use Web Storage or Indexed Database
-             * instead. This standard was abandoned in January, 1970. See
-             * https://www.chromestatus.com/feature/5684870116278272 for more details."
-             */
-            message?: string;
-        }
-
         /**
          * A unique identifier for the type of issue. Each type may use one of the
          * optional fields in InspectorIssueDetails to convey more specific
          * information about the kind of issue.
          */
-        export type InspectorIssueCode = ('SameSiteCookieIssue' | 'MixedContentIssue' | 'BlockedByResponseIssue' | 'HeavyAdIssue' | 'ContentSecurityPolicyIssue' | 'SharedArrayBufferIssue' | 'TrustedWebActivityIssue' | 'LowTextContrastIssue' | 'CorsIssue' | 'AttributionReportingIssue' | 'QuirksModeIssue' | 'NavigatorUserAgentIssue' | 'WasmCrossOriginModuleSharingIssue' | 'GenericIssue' | 'DeprecationIssue');
+        export type InspectorIssueCode = ('SameSiteCookieIssue' | 'MixedContentIssue' | 'BlockedByResponseIssue' | 'HeavyAdIssue' | 'ContentSecurityPolicyIssue' | 'SharedArrayBufferIssue' | 'TrustedWebActivityIssue' | 'LowTextContrastIssue' | 'CorsIssue' | 'AttributionReportingIssue' | 'QuirksModeIssue');
 
         /**
          * This struct holds a list of optional fields with additional information
@@ -3300,29 +3371,14 @@
             corsIssueDetails?: CorsIssueDetails;
             attributionReportingIssueDetails?: AttributionReportingIssueDetails;
             quirksModeIssueDetails?: QuirksModeIssueDetails;
-            navigatorUserAgentIssueDetails?: NavigatorUserAgentIssueDetails;
-            wasmCrossOriginModuleSharingIssue?: WasmCrossOriginModuleSharingIssueDetails;
-            genericIssueDetails?: GenericIssueDetails;
-            deprecationIssueDetails?: DeprecationIssueDetails;
         }
 
         /**
-         * A unique id for a DevTools inspector issue. Allows other entities (e.g.
-         * exceptions, CDP message, console messages, etc.) to reference an issue.
-         */
-        export type IssueId = string;
-
-        /**
          * An inspector issue reported from the back-end.
          */
         export interface InspectorIssue {
             code: InspectorIssueCode;
             details: InspectorIssueDetails;
-            /**
-             * A unique id for this issue. May be omitted if no other entity (e.g.
-             * exception, CDP message, etc.) is referencing this issue.
-             */
-            issueId?: IssueId;
         }
 
         export const enum GetEncodedResponseRequestEncoding {
@@ -3937,9 +3993,7 @@
              */
             frameId: Page.FrameId;
             /**
-             * Stylesheet resource URL. Empty if this is a constructed stylesheet created using
-             * new CSSStyleSheet() (but non-empty if this is a constructed sylesheet imported
-             * as a CSS module script).
+             * Stylesheet resource URL.
              */
             sourceURL: string;
             /**
@@ -3979,8 +4033,7 @@
              */
             isMutable: boolean;
             /**
-             * True if this stylesheet is created through new CSSStyleSheet() or imported as a
-             * CSS module script.
+             * Whether this stylesheet is a constructed stylesheet (created using new CSSStyleSheet()).
              */
             isConstructed: boolean;
             /**
@@ -4031,11 +4084,6 @@
              * starting with the innermost one, going outwards.
              */
             media?: CSSMedia[];
-            /**
-             * Container query list array (for rules involving container queries).
-             * The array enumerates container queries starting with the innermost one, going outwards.
-             */
-            containerQueries?: CSSContainerQuery[];
         }
 
         /**
@@ -4256,29 +4304,6 @@
         }
 
         /**
-         * CSS container query rule descriptor.
-         */
-        export interface CSSContainerQuery {
-            /**
-             * Container query text.
-             */
-            text: string;
-            /**
-             * The associated rule header range in the enclosing stylesheet (if
-             * available).
-             */
-            range?: SourceRange;
-            /**
-             * Identifier of the stylesheet containing this object (if exists).
-             */
-            styleSheetId?: StyleSheetId;
-            /**
-             * Optional name for the container.
-             */
-            name?: string;
-        }
-
-        /**
          * Information about amount of glyphs that were rendered with given font.
          */
         export interface PlatformFontUsage {
@@ -4634,19 +4659,6 @@
             media: CSSMedia;
         }
 
-        export interface SetContainerQueryTextRequest {
-            styleSheetId: StyleSheetId;
-            range: SourceRange;
-            text: string;
-        }
-
-        export interface SetContainerQueryTextResponse {
-            /**
-             * The resulting CSS container query rule after modification.
-             */
-            containerQuery: CSSContainerQuery;
-        }
-
         export interface SetRuleSelectorRequest {
             styleSheetId: StyleSheetId;
             range: SourceRange;
@@ -4999,7 +5011,7 @@
         /**
          * Pseudo element type.
          */
-        export type PseudoType = ('first-line' | 'first-letter' | 'before' | 'after' | 'marker' | 'backdrop' | 'selection' | 'target-text' | 'spelling-error' | 'grammar-error' | 'highlight' | 'first-line-inherited' | 'scrollbar' | 'scrollbar-thumb' | 'scrollbar-button' | 'scrollbar-track' | 'scrollbar-track-piece' | 'scrollbar-corner' | 'resizer' | 'input-list-button');
+        export type PseudoType = ('first-line' | 'first-letter' | 'before' | 'after' | 'marker' | 'backdrop' | 'selection' | 'target-text' | 'spelling-error' | 'grammar-error' | 'first-line-inherited' | 'scrollbar' | 'scrollbar-thumb' | 'scrollbar-button' | 'scrollbar-track' | 'scrollbar-track-piece' | 'scrollbar-corner' | 'resizer' | 'input-list-button');
 
         /**
          * Shadow root type.
@@ -5900,32 +5912,6 @@
             nodeId?: NodeId;
         }
 
-        export interface GetContainerForNodeRequest {
-            nodeId: NodeId;
-            containerName?: string;
-        }
-
-        export interface GetContainerForNodeResponse {
-            /**
-             * The container node for the given node, or null if not found.
-             */
-            nodeId?: NodeId;
-        }
-
-        export interface GetQueryingDescendantsForContainerRequest {
-            /**
-             * Id of the container node to find querying descendants from.
-             */
-            nodeId: NodeId;
-        }
-
-        export interface GetQueryingDescendantsForContainerResponse {
-            /**
-             * Descendant nodes with container queries against the given container.
-             */
-            nodeIds: NodeId[];
-        }
-
         /**
          * Fired when `Element`'s attribute is modified.
          */
@@ -6282,29 +6268,6 @@
     }
 
     /**
-     * EventBreakpoints permits setting breakpoints on particular operations and
-     * events in targets that run JavaScript but do not have a DOM.
-     * JavaScript execution will stop on these operations as if there was a regular
-     * breakpoint set.
-     */
-    export namespace EventBreakpoints {
-
-        export interface SetInstrumentationBreakpointRequest {
-            /**
-             * Instrumentation name to stop on.
-             */
-            eventName: string;
-        }
-
-        export interface RemoveInstrumentationBreakpointRequest {
-            /**
-             * Instrumentation name to stop on.
-             */
-            eventName: string;
-        }
-    }
-
-    /**
      * This domain facilitates obtaining document snapshots with DOM, layout, and style information.
      */
     export namespace DOMSnapshot {
@@ -6619,10 +6582,6 @@
              */
             nodeType?: integer[];
             /**
-             * Type of the shadow root the `Node` is in. String values are equal to the `ShadowRootType` enum.
-             */
-            shadowRootType?: RareStringData;
-            /**
              * `Node`'s nodeName.
              */
             nodeName?: StringIndex[];
@@ -7086,14 +7045,6 @@
             enabled: boolean;
         }
 
-        export interface SetAutoDarkModeOverrideRequest {
-            /**
-             * Whether to enable or disable automatic dark mode.
-             * If not specified, any existing override will be cleared.
-             */
-            enabled?: boolean;
-        }
-
         export interface SetCPUThrottlingRateRequest {
             /**
              * Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
@@ -7888,10 +7839,6 @@
         export interface DragData {
             items: DragDataItem[];
             /**
-             * List of filenames that should be included when dropping
-             */
-            files?: string[];
-            /**
              * Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16
              */
             dragOperationsMask: integer;
@@ -8010,29 +7957,6 @@
             text: string;
         }
 
-        export interface ImeSetCompositionRequest {
-            /**
-             * The text to insert
-             */
-            text: string;
-            /**
-             * selection start
-             */
-            selectionStart: integer;
-            /**
-             * selection end
-             */
-            selectionEnd: integer;
-            /**
-             * replacement start
-             */
-            replacementStart?: integer;
-            /**
-             * replacement end
-             */
-            replacementEnd?: integer;
-        }
-
         export const enum DispatchMouseEventRequestType {
             MousePressed = 'mousePressed',
             MouseReleased = 'mouseReleased',
@@ -8641,10 +8565,6 @@
             Error = 'error',
         }
 
-        export const enum LogEntryCategory {
-            Cors = 'cors',
-        }
-
         /**
          * Log entry.
          */
@@ -8662,10 +8582,6 @@
              */
             text: string;
             /**
-             *  (LogEntryCategory enum)
-             */
-            category?: ('cors');
-            /**
              * Timestamp when this entry was added.
              */
             timestamp: Runtime.Timestamp;
@@ -9064,11 +8980,6 @@
              * passed by the developer (e.g. via "fetch") as understood by the backend.
              */
             trustTokenParams?: TrustTokenParams;
-            /**
-             * True if this resource request is considered to be the 'same site' as the
-             * request correspondinfg to the main frame.
-             */
-            isSameSite?: boolean;
         }
 
         /**
@@ -9180,7 +9091,7 @@
         /**
          * The reason why request was blocked.
          */
-        export type CorsError = ('DisallowedByMode' | 'InvalidResponse' | 'WildcardOriginNotAllowed' | 'MissingAllowOriginHeader' | 'MultipleAllowOriginValues' | 'InvalidAllowOriginValue' | 'AllowOriginMismatch' | 'InvalidAllowCredentials' | 'CorsDisabledScheme' | 'PreflightInvalidStatus' | 'PreflightDisallowedRedirect' | 'PreflightWildcardOriginNotAllowed' | 'PreflightMissingAllowOriginHeader' | 'PreflightMultipleAllowOriginValues' | 'PreflightInvalidAllowOriginValue' | 'PreflightAllowOriginMismatch' | 'PreflightInvalidAllowCredentials' | 'PreflightMissingAllowExternal' | 'PreflightInvalidAllowExternal' | 'InvalidAllowMethodsPreflightResponse' | 'InvalidAllowHeadersPreflightResponse' | 'MethodDisallowedByPreflightResponse' | 'HeaderDisallowedByPreflightResponse' | 'RedirectContainsCredentials' | 'InsecurePrivateNetwork' | 'InvalidPrivateNetworkAccess' | 'UnexpectedPrivateNetworkAccess' | 'NoCorsRedirectModeNotFollow');
+        export type CorsError = ('DisallowedByMode' | 'InvalidResponse' | 'WildcardOriginNotAllowed' | 'MissingAllowOriginHeader' | 'MultipleAllowOriginValues' | 'InvalidAllowOriginValue' | 'AllowOriginMismatch' | 'InvalidAllowCredentials' | 'CorsDisabledScheme' | 'PreflightInvalidStatus' | 'PreflightDisallowedRedirect' | 'PreflightWildcardOriginNotAllowed' | 'PreflightMissingAllowOriginHeader' | 'PreflightMultipleAllowOriginValues' | 'PreflightInvalidAllowOriginValue' | 'PreflightAllowOriginMismatch' | 'PreflightInvalidAllowCredentials' | 'PreflightMissingAllowExternal' | 'PreflightInvalidAllowExternal' | 'InvalidAllowMethodsPreflightResponse' | 'InvalidAllowHeadersPreflightResponse' | 'MethodDisallowedByPreflightResponse' | 'HeaderDisallowedByPreflightResponse' | 'RedirectContainsCredentials' | 'InsecurePrivateNetwork' | 'NoCorsRedirectModeNotFollow');
 
         export interface CorsErrorStatus {
             corsError: CorsError;
@@ -9239,7 +9150,7 @@
              */
             headers: Headers;
             /**
-             * HTTP response headers text. This has been replaced by the headers in Network.responseReceivedExtraInfo.
+             * HTTP response headers text.
              */
             headersText?: string;
             /**
@@ -9251,7 +9162,7 @@
              */
             requestHeaders?: Headers;
             /**
-             * HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo.
+             * HTTP request headers text.
              */
             requestHeadersText?: string;
             /**
@@ -9506,12 +9417,12 @@
         /**
          * Types of reasons why a cookie may not be stored from a response.
          */
-        export type SetCookieBlockedReason = ('SecureOnly' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'SyntaxError' | 'SchemeNotSupported' | 'OverwriteSecure' | 'InvalidDomain' | 'InvalidPrefix' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext' | 'SamePartyConflictsWithOtherAttributes' | 'NameValuePairExceedsMaxSize');
+        export type SetCookieBlockedReason = ('SecureOnly' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'SyntaxError' | 'SchemeNotSupported' | 'OverwriteSecure' | 'InvalidDomain' | 'InvalidPrefix' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext' | 'SamePartyConflictsWithOtherAttributes');
 
         /**
          * Types of reasons why a cookie may not be sent with a request.
          */
-        export type CookieBlockedReason = ('SecureOnly' | 'NotOnPath' | 'DomainMismatch' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext' | 'NameValuePairExceedsMaxSize');
+        export type CookieBlockedReason = ('SecureOnly' | 'NotOnPath' | 'DomainMismatch' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext');
 
         /**
          * A cookie which was not stored from a response with the corresponding reason.
@@ -9809,19 +9720,10 @@
          */
         export type ContentEncoding = ('deflate' | 'gzip' | 'br');
 
-        export type PrivateNetworkRequestPolicy = ('Allow' | 'BlockFromInsecureToMorePrivate' | 'WarnFromInsecureToMorePrivate' | 'PreflightBlock' | 'PreflightWarn');
+        export type PrivateNetworkRequestPolicy = ('Allow' | 'BlockFromInsecureToMorePrivate' | 'WarnFromInsecureToMorePrivate');
 
         export type IPAddressSpace = ('Local' | 'Private' | 'Public' | 'Unknown');
 
-        export interface ConnectTiming {
-            /**
-             * Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
-             * milliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for
-             * the same request (but not for redirected requests).
-             */
-            requestTime: number;
-        }
-
         export interface ClientSecurityState {
             initiatorIsSecureContext: boolean;
             initiatorIPAddressSpace: IPAddressSpace;
@@ -9837,7 +9739,7 @@
             reportOnlyReportingEndpoint?: string;
         }
 
-        export type CrossOriginEmbedderPolicyValue = ('None' | 'Credentialless' | 'RequireCorp');
+        export type CrossOriginEmbedderPolicyValue = ('None' | 'CorsOrCredentialless' | 'RequireCorp');
 
         export interface CrossOriginEmbedderPolicyStatus {
             value: CrossOriginEmbedderPolicyValue;
@@ -9852,46 +9754,6 @@
         }
 
         /**
-         * The status of a Reporting API report.
-         */
-        export type ReportStatus = ('Queued' | 'Pending' | 'MarkedForRemoval' | 'Success');
-
-        export type ReportId = string;
-
-        /**
-         * An object representing a report generated by the Reporting API.
-         */
-        export interface ReportingApiReport {
-            id: ReportId;
-            /**
-             * The URL of the document that triggered the report.
-             */
-            initiatorUrl: string;
-            /**
-             * The name of the endpoint group that should be used to deliver the report.
-             */
-            destination: string;
-            /**
-             * The type of the report (specifies the set of data that is contained in the report body).
-             */
-            type: string;
-            /**
-             * When the report was generated.
-             */
-            timestamp: Network.TimeSinceEpoch;
-            /**
-             * How many uploads deep the related request was.
-             */
-            depth: integer;
-            /**
-             * The number of delivery attempts made so far, not including an active attempt.
-             */
-            completedAttempts: integer;
-            body: any;
-            status: ReportStatus;
-        }
-
-        /**
          * An object providing the result of a network resource load.
          */
         export interface LoadNetworkResourcePageResult {
@@ -10263,6 +10125,17 @@
             cookies: CookieParam[];
         }
 
+        export interface SetDataSizeLimitsForTestRequest {
+            /**
+             * Maximum total buffer size.
+             */
+            maxTotalSize: integer;
+            /**
+             * Maximum per-resource size.
+             */
+            maxResourceSize: integer;
+        }
+
         export interface SetExtraHTTPHeadersRequest {
             /**
              * Map with extra HTTP headers.
@@ -10315,19 +10188,11 @@
             status: SecurityIsolationStatus;
         }
 
-        export interface EnableReportingApiRequest {
-            /**
-             * Whether to enable or disable events for the Reporting API
-             */
-            enable: boolean;
-        }
-
         export interface LoadNetworkResourceRequest {
             /**
-             * Frame id to get the resource for. Mandatory for frame targets, and
-             * should be omitted for worker targets.
+             * Frame id to get the resource for.
              */
-            frameId?: Page.FrameId;
+            frameId: Page.FrameId;
             /**
              * URL of the resource to get content for.
              */
@@ -10551,12 +10416,6 @@
              */
             initiator: Initiator;
             /**
-             * In the case that redirectResponse is populated, this flag indicates whether
-             * requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted
-             * for the request which was just redirected.
-             */
-            redirectHasExtraInfo: boolean;
-            /**
              * Redirect response data.
              */
             redirectResponse?: Response;
@@ -10631,11 +10490,6 @@
              */
             response: Response;
             /**
-             * Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be
-             * or were emitted for this request.
-             */
-            hasExtraInfo: boolean;
-            /**
              * Frame identifier.
              */
             frameId?: Page.FrameId;
@@ -10838,10 +10692,6 @@
              */
             headers: Headers;
             /**
-             * Connection timing information for the request.
-             */
-            connectTiming: ConnectTiming;
-            /**
              * The client security state set for the request.
              */
             clientSecurityState?: ClientSecurityState;
@@ -10873,12 +10723,6 @@
              */
             resourceIPAddressSpace: IPAddressSpace;
             /**
-             * The status code of the response. This is useful in cases the request failed and no responseReceived
-             * event is triggered, which is the case for, e.g., CORS errors. This is also the correct status code
-             * for cached requests, where the status in responseReceived is a 200 and this will be 304.
-             */
-            statusCode: integer;
-            /**
              * Raw response header text as it was received over the wire. The raw text may not always be
              * available, such as in the case of HTTP/2 or QUIC.
              */
@@ -10927,92 +10771,6 @@
              */
             issuedTokenCount?: integer;
         }
-
-        /**
-         * Fired once when parsing the .wbn file has succeeded.
-         * The event contains the information about the web bundle contents.
-         */
-        export interface SubresourceWebBundleMetadataReceivedEvent {
-            /**
-             * Request identifier. Used to match this information to another event.
-             */
-            requestId: RequestId;
-            /**
-             * A list of URLs of resources in the subresource Web Bundle.
-             */
-            urls: string[];
-        }
-
-        /**
-         * Fired once when parsing the .wbn file has failed.
-         */
-        export interface SubresourceWebBundleMetadataErrorEvent {
-            /**
-             * Request identifier. Used to match this information to another event.
-             */
-            requestId: RequestId;
-            /**
-             * Error message
-             */
-            errorMessage: string;
-        }
-
-        /**
-         * Fired when handling requests for resources within a .wbn file.
-         * Note: this will only be fired for resources that are requested by the webpage.
-         */
-        export interface SubresourceWebBundleInnerResponseParsedEvent {
-            /**
-             * Request identifier of the subresource request
-             */
-            innerRequestId: RequestId;
-            /**
-             * URL of the subresource resource.
-             */
-            innerRequestURL: string;
-            /**
-             * Bundle request identifier. Used to match this information to another event.
-             * This made be absent in case when the instrumentation was enabled only
-             * after webbundle was parsed.
-             */
-            bundleRequestId?: RequestId;
-        }
-
-        /**
-         * Fired when request for resources within a .wbn file failed.
-         */
-        export interface SubresourceWebBundleInnerResponseErrorEvent {
-            /**
-             * Request identifier of the subresource request
-             */
-            innerRequestId: RequestId;
-            /**
-             * URL of the subresource resource.
-             */
-            innerRequestURL: string;
-            /**
-             * Error message
-             */
-            errorMessage: string;
-            /**
-             * Bundle request identifier. Used to match this information to another event.
-             * This made be absent in case when the instrumentation was enabled only
-             * after webbundle was parsed.
-             */
-            bundleRequestId?: RequestId;
-        }
-
-        /**
-         * Is sent whenever a new report is added.
-         * And after 'enableReportingApi' for all existing reports.
-         */
-        export interface ReportingApiReportAddedEvent {
-            report: ReportingApiReport;
-        }
-
-        export interface ReportingApiReportUpdatedEvent {
-            report: ReportingApiReport;
-        }
     }
 
     /**
@@ -11287,10 +11045,6 @@
              * The contrast algorithm to use for the contrast ratio (default: aa).
              */
             contrastAlgorithm?: ContrastAlgorithm;
-            /**
-             * The container query container highlight configuration (default: all transparent).
-             */
-            containerQueryContainerHighlightConfig?: ContainerQueryContainerHighlightConfig;
         }
 
         export type ColorFormat = ('rgb' | 'hsl' | 'hex');
@@ -11368,54 +11122,6 @@
             outlineColor?: DOM.RGBA;
         }
 
-        export interface ContainerQueryHighlightConfig {
-            /**
-             * A descriptor for the highlight appearance of container query containers.
-             */
-            containerQueryContainerHighlightConfig: ContainerQueryContainerHighlightConfig;
-            /**
-             * Identifier of the container node to highlight.
-             */
-            nodeId: DOM.NodeId;
-        }
-
-        export interface ContainerQueryContainerHighlightConfig {
-            /**
-             * The style of the container border.
-             */
-            containerBorder?: LineStyle;
-            /**
-             * The style of the descendants' borders.
-             */
-            descendantBorder?: LineStyle;
-        }
-
-        export interface IsolatedElementHighlightConfig {
-            /**
-             * A descriptor for the highlight appearance of an element in isolation mode.
-             */
-            isolationModeHighlightConfig: IsolationModeHighlightConfig;
-            /**
-             * Identifier of the isolated element to highlight.
-             */
-            nodeId: DOM.NodeId;
-        }
-
-        export interface IsolationModeHighlightConfig {
-            /**
-             * The fill color of the resizers (default: transparent).
-             */
-            resizerColor?: DOM.RGBA;
-            /**
-             * The fill color for resizer handles (default: transparent).
-             */
-            resizerHandleColor?: DOM.RGBA;
-            /**
-             * The fill color for the mask covering non-isolated elements (default: transparent).
-             */
-            maskColor?: DOM.RGBA;
-        }
-
         export type InspectMode = ('searchForNode' | 'searchForUAShadowDOM' | 'captureAreaScreenshot' | 'showDistances' | 'none');
 
         export interface GetHighlightObjectForTestRequest {
@@ -11636,13 +11342,6 @@
             scrollSnapHighlightConfigs: ScrollSnapHighlightConfig[];
         }
 
-        export interface SetShowContainerQueryOverlaysRequest {
-            /**
-             * An array of node identifiers and descriptors for the highlight appearance.
-             */
-            containerQueryHighlightConfigs: ContainerQueryHighlightConfig[];
-        }
-
         export interface SetShowPaintRectsRequest {
             /**
              * True for showing paint rectangles
@@ -11689,13 +11388,6 @@
             hingeConfig?: HingeConfig;
         }
 
-        export interface SetShowIsolatedElementsRequest {
-            /**
-             * An array of node identifiers and descriptors for the highlight appearance.
-             */
-            isolatedElementHighlightConfigs: IsolatedElementHighlightConfig[];
-        }
-
         /**
          * Fired when the node should be inspected. This happens after call to `setInspectMode` or when
          * user manually inspects an element.
@@ -11740,16 +11432,6 @@
          */
         export type AdFrameType = ('none' | 'child' | 'root');
 
-        export type AdFrameExplanation = ('ParentIsAd' | 'CreatedByAdScript' | 'MatchedBlockingRule');
-
-        /**
-         * Indicates whether a frame has been identified as an ad and why.
-         */
-        export interface AdFrameStatus {
-            adFrameType: AdFrameType;
-            explanations?: AdFrameExplanation[];
-        }
-
         /**
          * Indicates whether the frame is a secure context and why it is the case.
          */
@@ -11766,7 +11448,7 @@
          * All Permissions Policy features. This enum should match the one defined
          * in third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5.
          */
-        export type PermissionsPolicyFeature = ('accelerometer' | 'ambient-light-sensor' | 'attribution-reporting' | 'autoplay' | 'camera' | 'ch-dpr' | 'ch-device-memory' | 'ch-downlink' | 'ch-ect' | 'ch-prefers-color-scheme' | 'ch-rtt' | 'ch-ua' | 'ch-ua-arch' | 'ch-ua-bitness' | 'ch-ua-platform' | 'ch-ua-model' | 'ch-ua-mobile' | 'ch-ua-full-version' | 'ch-ua-platform-version' | 'ch-ua-reduced' | 'ch-viewport-height' | 'ch-viewport-width' | 'ch-width' | 'clipboard-read' | 'clipboard-write' | 'cross-origin-isolated' | 'direct-sockets' | 'display-capture' | 'document-domain' | 'encrypted-media' | 'execution-while-out-of-viewport' | 'execution-while-not-rendered' | 'focus-without-user-activation' | 'fullscreen' | 'frobulate' | 'gamepad' | 'geolocation' | 'gyroscope' | 'hid' | 'idle-detection' | 'interest-cohort' | 'keyboard-map' | 'magnetometer' | 'microphone' | 'midi' | 'otp-credentials' | 'payment' | 'picture-in-picture' | 'publickey-credentials-get' | 'screen-wake-lock' | 'serial' | 'shared-autofill' | 'storage-access-api' | 'sync-xhr' | 'trust-token-redemption' | 'usb' | 'vertical-scroll' | 'web-share' | 'window-placement' | 'xr-spatial-tracking');
+        export type PermissionsPolicyFeature = ('accelerometer' | 'ambient-light-sensor' | 'attribution-reporting' | 'autoplay' | 'camera' | 'ch-dpr' | 'ch-device-memory' | 'ch-downlink' | 'ch-ect' | 'ch-lang' | 'ch-prefers-color-scheme' | 'ch-rtt' | 'ch-ua' | 'ch-ua-arch' | 'ch-ua-platform' | 'ch-ua-model' | 'ch-ua-mobile' | 'ch-ua-full-version' | 'ch-ua-platform-version' | 'ch-viewport-width' | 'ch-width' | 'clipboard-read' | 'clipboard-write' | 'cross-origin-isolated' | 'direct-sockets' | 'display-capture' | 'document-domain' | 'encrypted-media' | 'execution-while-out-of-viewport' | 'execution-while-not-rendered' | 'focus-without-user-activation' | 'fullscreen' | 'frobulate' | 'gamepad' | 'geolocation' | 'gyroscope' | 'hid' | 'idle-detection' | 'interest-cohort' | 'magnetometer' | 'microphone' | 'midi' | 'otp-credentials' | 'payment' | 'picture-in-picture' | 'publickey-credentials-get' | 'screen-wake-lock' | 'serial' | 'shared-autofill' | 'storage-access-api' | 'sync-xhr' | 'trust-token-redemption' | 'usb' | 'vertical-scroll' | 'web-share' | 'xr-spatial-tracking');
 
         /**
          * Reason for a permissions policy feature to be disabled.
@@ -11788,7 +11470,7 @@
          * Origin Trial(https://www.chromium.org/blink/origin-trials) support.
          * Status for an Origin Trial token.
          */
-        export type OriginTrialTokenStatus = ('Success' | 'NotSupported' | 'Insecure' | 'Expired' | 'WrongOrigin' | 'InvalidSignature' | 'Malformed' | 'WrongVersion' | 'FeatureDisabled' | 'TokenDisabled' | 'FeatureDisabledForUser' | 'UnknownTrial');
+        export type OriginTrialTokenStatus = ('Success' | 'NotSupported' | 'Insecure' | 'Expired' | 'WrongOrigin' | 'InvalidSignature' | 'Malformed' | 'WrongVersion' | 'FeatureDisabled' | 'TokenDisabled' | 'FeatureDisabledForUser');
 
         /**
          * Status for an Origin Trial.
@@ -11833,7 +11515,7 @@
             /**
              * Parent frame identifier.
              */
-            parentId?: FrameId;
+            parentId?: string;
             /**
              * Identifier of the loader associated with this frame.
              */
@@ -11870,9 +11552,9 @@
              */
             unreachableUrl?: string;
             /**
-             * Indicates whether this frame was tagged as an ad and why.
+             * Indicates whether this frame was tagged as an ad.
              */
-            adFrameStatus?: AdFrameStatus;
+            adFrameType?: AdFrameType;
             /**
              * Indicates whether the main document is a secure context and explains why that is the case.
              */
@@ -11885,6 +11567,10 @@
              * Indicated which gated APIs / features are available.
              */
             gatedAPIFeatures: GatedAPIFeatures[];
+            /**
+             * Frame document's origin trials with at least one token present.
+             */
+            originTrials?: OriginTrial[];
         }
 
         /**
@@ -12248,27 +11934,6 @@
          */
         export type NavigationType = ('Navigation' | 'BackForwardCacheRestore');
 
-        /**
-         * List of not restored reasons for back-forward cache.
-         */
-        export type BackForwardCacheNotRestoredReason = ('NotMainFrame' | 'BackForwardCacheDisabled' | 'RelatedActiveContentsExist' | 'HTTPStatusNotOK' | 'SchemeNotHTTPOrHTTPS' | 'Loading' | 'WasGrantedMediaAccess' | 'DisableForRenderFrameHostCalled' | 'DomainNotAllowed' | 'HTTPMethodNotGET' | 'SubframeIsNavigating' | 'Timeout' | 'CacheLimit' | 'JavaScriptExecution' | 'RendererProcessKilled' | 'RendererProcessCrashed' | 'GrantedMediaStreamAccess' | 'SchedulerTrackedFeatureUsed' | 'ConflictingBrowsingInstance' | 'CacheFlushed' | 'ServiceWorkerVersionActivation' | 'SessionRestored' | 'ServiceWorkerPostMessage' | 'EnteredBackForwardCacheBeforeServiceWorkerHostAdded' | 'RenderFrameHostReused_SameSite' | 'RenderFrameHostReused_CrossSite' | 'ServiceWorkerClaim' | 'IgnoreEventAndEvict' | 'HaveInnerContents' | 'TimeoutPuttingInCache' | 'BackForwardCacheDisabledByLowMemory' | 'BackForwardCacheDisabledByCommandLine' | 'NetworkRequestDatapipeDrainedAsBytesConsumer' | 'NetworkRequestRedirected' | 'NetworkRequestTimeout' | 'NetworkExceedsBufferLimit' | 'NavigationCancelledWhileRestoring' | 'NotMostRecentNavigationEntry' | 'BackForwardCacheDisabledForPrerender' | 'UserAgentOverrideDiffers' | 'ForegroundCacheLimit' | 'BrowsingInstanceNotSwapped' | 'BackForwardCacheDisabledForDelegate' | 'OptInUnloadHeaderNotPresent' | 'UnloadHandlerExistsInMainFrame' | 'UnloadHandlerExistsInSubFrame' | 'ServiceWorkerUnregistration' | 'CacheControlNoStore' | 'CacheControlNoStoreCookieModified' | 'CacheControlNoStoreHTTPOnlyCookieModified' | 'NoResponseHead' | 'Unknown' | 'ActivationNavigationsDisallowedForBug1234857' | 'WebSocket' | 'WebTransport' | 'WebRTC' | 'MainResourceHasCacheControlNoStore' | 'MainResourceHasCacheControlNoCache' | 'SubresourceHasCacheControlNoStore' | 'SubresourceHasCacheControlNoCache' | 'ContainsPlugins' | 'DocumentLoaded' | 'DedicatedWorkerOrWorklet' | 'OutstandingNetworkRequestOthers' | 'OutstandingIndexedDBTransaction' | 'RequestedNotificationsPermission' | 'RequestedMIDIPermission' | 'RequestedAudioCapturePermission' | 'RequestedVideoCapturePermission' | 'RequestedBackForwardCacheBlockedSensors' | 'RequestedBackgroundWorkPermission' | 'BroadcastChannel' | 'IndexedDBConnection' | 'WebXR' | 'SharedWorker' | 'WebLocks' | 'WebHID' | 'WebShare' | 'RequestedStorageAccessGrant' | 'WebNfc' | 'OutstandingNetworkRequestFetch' | 'OutstandingNetworkRequestXHR' | 'AppBanner' | 'Printing' | 'WebDatabase' | 'PictureInPicture' | 'Portal' | 'SpeechRecognizer' | 'IdleManager' | 'PaymentManager' | 'SpeechSynthesis' | 'KeyboardLock' | 'WebOTPService' | 'OutstandingNetworkRequestDirectSocket' | 'InjectedJavascript' | 'InjectedStyleSheet' | 'Dummy' | 'ContentSecurityHandler' | 'ContentWebAuthenticationAPI' | 'ContentFileChooser' | 'ContentSerial' | 'ContentFileSystemAccess' | 'ContentMediaDevicesDispatcherHost' | 'ContentWebBluetooth' | 'ContentWebUSB' | 'ContentMediaSession' | 'ContentMediaSessionService' | 'EmbedderPopupBlockerTabHelper' | 'EmbedderSafeBrowsingTriggeredPopupBlocker' | 'EmbedderSafeBrowsingThreatDetails' | 'EmbedderAppBannerManager' | 'EmbedderDomDistillerViewerSource' | 'EmbedderDomDistillerSelfDeletingRequestDelegate' | 'EmbedderOomInterventionTabHelper' | 'EmbedderOfflinePage' | 'EmbedderChromePasswordManagerClientBindCredentialManager' | 'EmbedderPermissionRequestManager' | 'EmbedderModalDialog' | 'EmbedderExtensions' | 'EmbedderExtensionMessaging' | 'EmbedderExtensionMessagingForOpenPort' | 'EmbedderExtensionSentMessageToCachedFrame');
-
-        /**
-         * Types of not restored reasons for back-forward cache.
-         */
-        export type BackForwardCacheNotRestoredReasonType = ('SupportPending' | 'PageSupportNeeded' | 'Circumstantial');
-
-        export interface BackForwardCacheNotRestoredExplanation {
-            /**
-             * Type of the reason
-             */
-            type: BackForwardCacheNotRestoredReasonType;
-            /**
-             * Not restored reason
-             */
-            reason: BackForwardCacheNotRestoredReason;
-        }
-
         export interface AddScriptToEvaluateOnLoadRequest {
             scriptSource: string;
         }
@@ -12305,14 +11970,13 @@
         export const enum CaptureScreenshotRequestFormat {
             Jpeg = 'jpeg',
             Png = 'png',
-            Webp = 'webp',
         }
 
         export interface CaptureScreenshotRequest {
             /**
              * Image compression format (defaults to png). (CaptureScreenshotRequestFormat enum)
              */
-            format?: ('jpeg' | 'png' | 'webp');
+            format?: ('jpeg' | 'png');
             /**
              * Compression quality from range [0..100] (jpeg only).
              */
@@ -12414,17 +12078,6 @@
             primaryIcon?: string;
         }
 
-        export interface GetAppIdResponse {
-            /**
-             * App id, either from manifest's id attribute or computed from start_url
-             */
-            appId?: string;
-            /**
-             * Recommendation for manifest's id attribute to match current id computed from start_url
-             */
-            recommendedId?: string;
-        }
-
         export interface GetCookiesResponse {
             /**
              * Array of cookie objects.
@@ -12736,14 +12389,6 @@
             states: PermissionsPolicyFeatureState[];
         }
 
-        export interface GetOriginTrialsRequest {
-            frameId: FrameId;
-        }
-
-        export interface GetOriginTrialsResponse {
-            originTrials: OriginTrial[];
-        }
-
         export interface SetDeviceMetricsOverrideRequest {
             /**
              * Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
@@ -12932,6 +12577,10 @@
             state: ('frozen' | 'active');
         }
 
+        export interface SetProduceCompilationCacheRequest {
+            enabled: boolean;
+        }
+
         export interface ProduceCompilationCacheRequest {
             scripts: CompilationCacheParams[];
         }
@@ -13247,10 +12896,6 @@
              * The frame id of the associated frame.
              */
             frameId: FrameId;
-            /**
-             * Array of reasons why the page could not be cached. This must not be empty.
-             */
-            notRestoredExplanations: BackForwardCacheNotRestoredExplanation[];
         }
 
         export interface LoadEventFiredEvent {
@@ -14534,15 +14179,6 @@
             flatten?: boolean;
         }
 
-        export interface AutoAttachRelatedRequest {
-            targetId: TargetID;
-            /**
-             * Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger`
-             * to run paused targets.
-             */
-            waitForDebuggerOnStart: boolean;
-        }
-
         export interface SetDiscoverTargetsRequest {
             /**
              * Whether to discover available targets.
@@ -14895,7 +14531,7 @@
         /**
          * Stages of the request to handle. Request will intercept before the request is
          * sent. Response will intercept after the response is received (but before response
-         * body is received).
+         * body is received.
          */
         export type RequestStage = ('Request' | 'Response');
 
@@ -15024,9 +14660,7 @@
              */
             binaryResponseHeaders?: string;
             /**
-             * A response body. If absent, original response body will be used if
-             * the request is intercepted at the response stage and empty body
-             * will be used if the request is intercepted at the request stage. (Encoded as a base64 string when passed over JSON)
+             * A response body. (Encoded as a base64 string when passed over JSON)
              */
             body?: string;
             /**
@@ -15057,10 +14691,6 @@
              * If set, overrides the request headers.
              */
             headers?: HeaderEntry[];
-            /**
-             * If set, overrides response interception behavior for this request.
-             */
-            interceptResponse?: boolean;
         }
 
         export interface ContinueWithAuthRequest {
@@ -15074,33 +14704,6 @@
             authChallengeResponse: AuthChallengeResponse;
         }
 
-        export interface ContinueResponseRequest {
-            /**
-             * An id the client received in requestPaused event.
-             */
-            requestId: RequestId;
-            /**
-             * An HTTP response code. If absent, original response code will be used.
-             */
-            responseCode?: integer;
-            /**
-             * A textual representation of responseCode.
-             * If absent, a standard phrase matching responseCode is used.
-             */
-            responsePhrase?: string;
-            /**
-             * Response headers. If absent, original response headers will be used.
-             */
-            responseHeaders?: HeaderEntry[];
-            /**
-             * Alternative way of specifying response headers as a \0-separated
-             * series of name: value pairs. Prefer the above method unless you
-             * need to represent some non-UTF8 values that can't be transmitted
-             * over the protocol as text. (Encoded as a base64 string when passed over JSON)
-             */
-            binaryResponseHeaders?: string;
-        }
-
         export interface GetResponseBodyRequest {
             /**
              * Identifier for the intercepted request to get body for.
@@ -15161,10 +14764,6 @@
              */
             responseStatusCode?: integer;
             /**
-             * Response status text if intercepted at response stage.
-             */
-            responseStatusText?: string;
-            /**
              * Response headers if intercepted at the response stage.
              */
             responseHeaders?: HeaderEntry[];
diff --git a/node_modules/eslint/node_modules/debug/LICENSE b/node_modules/eslint/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/eslint/node_modules/debug/LICENSE
+++ b/node_modules/eslint/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/eslint/node_modules/debug/README.md b/node_modules/eslint/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/eslint/node_modules/debug/README.md
+++ b/node_modules/eslint/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/eslint/node_modules/debug/package.json b/node_modules/eslint/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/eslint/node_modules/debug/package.json
+++ b/node_modules/eslint/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/eslint/node_modules/debug/src/common.js b/node_modules/eslint/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/eslint/node_modules/debug/src/common.js
+++ b/node_modules/eslint/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/mkdirp-classic/LICENSE b/node_modules/mkdirp-classic/LICENSE
deleted file mode 100644
index f6b3a0d..0000000
--- a/node_modules/mkdirp-classic/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2020 James Halliday ([email protected]) and Mathias Buus
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/node_modules/mkdirp-classic/README.md b/node_modules/mkdirp-classic/README.md
deleted file mode 100644
index be5ac93..0000000
--- a/node_modules/mkdirp-classic/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# mkdirp-classic
-
-Just a non-deprecated mirror of [mkdirp 0.5.2](https://github.com/substack/node-mkdirp/tree/0.5.1)
-for use in modules where we depend on the non promise interface.
-
-```
-npm install mkdirp-classic
-```
-
-## Usage
-
-``` js
-// See the above link
-```
-
-## License
-
-MIT
diff --git a/node_modules/mkdirp-classic/index.js b/node_modules/mkdirp-classic/index.js
deleted file mode 100644
index 6ce241b..0000000
--- a/node_modules/mkdirp-classic/index.js
+++ /dev/null
@@ -1,98 +0,0 @@
-var path = require('path');
-var fs = require('fs');
-var _0777 = parseInt('0777', 8);
-
-module.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
-
-function mkdirP (p, opts, f, made) {
-    if (typeof opts === 'function') {
-        f = opts;
-        opts = {};
-    }
-    else if (!opts || typeof opts !== 'object') {
-        opts = { mode: opts };
-    }
-    
-    var mode = opts.mode;
-    var xfs = opts.fs || fs;
-    
-    if (mode === undefined) {
-        mode = _0777 & (~process.umask());
-    }
-    if (!made) made = null;
-    
-    var cb = f || function () {};
-    p = path.resolve(p);
-    
-    xfs.mkdir(p, mode, function (er) {
-        if (!er) {
-            made = made || p;
-            return cb(null, made);
-        }
-        switch (er.code) {
-            case 'ENOENT':
-                mkdirP(path.dirname(p), opts, function (er, made) {
-                    if (er) cb(er, made);
-                    else mkdirP(p, opts, cb, made);
-                });
-                break;
-
-            // In the case of any other error, just see if there's a dir
-            // there already.  If so, then hooray!  If not, then something
-            // is borked.
-            default:
-                xfs.stat(p, function (er2, stat) {
-                    // if the stat fails, then that's super weird.
-                    // let the original error be the failure reason.
-                    if (er2 || !stat.isDirectory()) cb(er, made)
-                    else cb(null, made);
-                });
-                break;
-        }
-    });
-}
-
-mkdirP.sync = function sync (p, opts, made) {
-    if (!opts || typeof opts !== 'object') {
-        opts = { mode: opts };
-    }
-    
-    var mode = opts.mode;
-    var xfs = opts.fs || fs;
-    
-    if (mode === undefined) {
-        mode = _0777 & (~process.umask());
-    }
-    if (!made) made = null;
-
-    p = path.resolve(p);
-
-    try {
-        xfs.mkdirSync(p, mode);
-        made = made || p;
-    }
-    catch (err0) {
-        switch (err0.code) {
-            case 'ENOENT' :
-                made = sync(path.dirname(p), opts, made);
-                sync(p, opts, made);
-                break;
-
-            // In the case of any other error, just see if there's a dir
-            // there already.  If so, then hooray!  If not, then something
-            // is borked.
-            default:
-                var stat;
-                try {
-                    stat = xfs.statSync(p);
-                }
-                catch (err1) {
-                    throw err0;
-                }
-                if (!stat.isDirectory()) throw err0;
-                break;
-        }
-    }
-
-    return made;
-};
diff --git a/node_modules/mkdirp-classic/package.json b/node_modules/mkdirp-classic/package.json
deleted file mode 100644
index c8b5407..0000000
--- a/node_modules/mkdirp-classic/package.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-  "name": "mkdirp-classic",
-  "version": "0.5.3",
-  "description": "Mirror of mkdirp 0.5.2",
-  "main": "index.js",
-  "dependencies": {},
-  "devDependencies": {},
-  "repository": {
-    "type": "git",
-    "url": "https://github.com/mafintosh/mkdirp-classic.git"
-  },
-  "author": "Mathias Buus (@mafintosh)",
-  "license": "MIT",
-  "bugs": {
-    "url": "https://github.com/mafintosh/mkdirp-classic/issues"
-  },
-  "homepage": "https://github.com/mafintosh/mkdirp-classic"
-}
diff --git a/node_modules/node-fetch/CHANGELOG.md b/node_modules/node-fetch/CHANGELOG.md
new file mode 100644
index 0000000..543d3d9
--- /dev/null
+++ b/node_modules/node-fetch/CHANGELOG.md
@@ -0,0 +1,272 @@
+
+Changelog
+=========
+
+
+# 2.x release
+
+## v2.6.1
+
+**This is an important security release. It is strongly recommended to update as soon as possible.**
+
+- Fix: honor the `size` option after following a redirect.
+
+## v2.6.0
+
+- Enhance: `options.agent`, it now accepts a function that returns custom http(s).Agent instance based on current URL, see readme for more information.
+- Fix: incorrect `Content-Length` was returned for stream body in 2.5.0 release; note that `node-fetch` doesn't calculate content length for stream body.
+- Fix: `Response.url` should return empty string instead of `null` by default.
+
+## v2.5.0
+
+- Enhance: `Response` object now includes `redirected` property.
+- Enhance: `fetch()` now accepts third-party `Blob` implementation as body.
+- Other: disable `package-lock.json` generation as we never commit them.
+- Other: dev dependency update.
+- Other: readme update.
+
+## v2.4.1
+
+- Fix: `Blob` import rule for node < 10, as `Readable` isn't a named export.
+
+## v2.4.0
+
+- Enhance: added `Brotli` compression support (using node's zlib).
+- Enhance: updated `Blob` implementation per spec.
+- Fix: set content type automatically for `URLSearchParams`.
+- Fix: `Headers` now reject empty header names.
+- Fix: test cases, as node 12+ no longer accepts invalid header response.
+
+## v2.3.0
+
+- Enhance: added `AbortSignal` support, with README example.
+- Enhance: handle invalid `Location` header during redirect by rejecting them explicitly with `FetchError`.
+- Fix: update `browser.js` to support react-native environment, where `self` isn't available globally.
+
+## v2.2.1
+
+- Fix: `compress` flag shouldn't overwrite existing `Accept-Encoding` header.
+- Fix: multiple `import` rules, where `PassThrough` etc. doesn't have a named export when using node <10 and `--exerimental-modules` flag.
+- Other: Better README.
+
+## v2.2.0
+
+- Enhance: Support all `ArrayBuffer` view types
+- Enhance: Support Web Workers
+- Enhance: Support Node.js' `--experimental-modules` mode; deprecate `.es.js` file
+- Fix: Add `__esModule` property to the exports object
+- Other: Better example in README for writing response to a file
+- Other: More tests for Agent
+
+## v2.1.2
+
+- Fix: allow `Body` methods to work on `ArrayBuffer`-backed `Body` objects
+- Fix: reject promise returned by `Body` methods when the accumulated `Buffer` exceeds the maximum size
+- Fix: support custom `Host` headers with any casing
+- Fix: support importing `fetch()` from TypeScript in `browser.js`
+- Fix: handle the redirect response body properly
+
+## v2.1.1
+
+Fix packaging errors in v2.1.0.
+
+## v2.1.0
+
+- Enhance: allow using ArrayBuffer as the `body` of a `fetch()` or `Request`
+- Fix: store HTTP headers of a `Headers` object internally with the given case, for compatibility with older servers that incorrectly treated header names in a case-sensitive manner
+- Fix: silently ignore invalid HTTP headers
+- Fix: handle HTTP redirect responses without a `Location` header just like non-redirect responses
+- Fix: include bodies when following a redirection when appropriate
+
+## v2.0.0
+
+This is a major release. Check [our upgrade guide](https://github.com/bitinn/node-fetch/blob/master/UPGRADE-GUIDE.md) for an overview on some key differences between v1 and v2.
+
+### General changes
+
+- Major: Node.js 0.10.x and 0.12.x support is dropped
+- Major: `require('node-fetch/lib/response')` etc. is now unsupported; use `require('node-fetch').Response` or ES6 module imports
+- Enhance: start testing on Node.js v4.x, v6.x, v8.x LTS, as well as v9.x stable
+- Enhance: use Rollup to produce a distributed bundle (less memory overhead and faster startup)
+- Enhance: make `Object.prototype.toString()` on Headers, Requests, and Responses return correct class strings
+- Other: rewrite in ES2015 using Babel
+- Other: use Codecov for code coverage tracking
+- Other: update package.json script for npm 5
+- Other: `encoding` module is now optional (alpha.7)
+- Other: expose browser.js through package.json, avoid bundling mishaps (alpha.9)
+- Other: allow TypeScript to `import` node-fetch by exposing default (alpha.9)
+
+### HTTP requests
+
+- Major: overwrite user's `Content-Length` if we can be sure our information is correct (per spec)
+- Fix: errors in a response are caught before the body is accessed
+- Fix: support WHATWG URL objects, created by `whatwg-url` package or `require('url').URL` in Node.js 7+
+
+### Response and Request classes
+
+- Major: `response.text()` no longer attempts to detect encoding, instead always opting for UTF-8 (per spec); use `response.textConverted()` for the v1 behavior
+- Major: make `response.json()` throw error instead of returning an empty object on 204 no-content respose (per spec; reverts behavior changed in v1.6.2)
+- Major: internal methods are no longer exposed
+- Major: throw error when a `GET` or `HEAD` Request is constructed with a non-null body (per spec)
+- Enhance: add `response.arrayBuffer()` (also applies to Requests)
+- Enhance: add experimental `response.blob()` (also applies to Requests)
+- Enhance: `URLSearchParams` is now accepted as a body
+- Enhance: wrap `response.json()` json parsing error as `FetchError`
+- Fix: fix Request and Response with `null` body
+
+### Headers class
+
+- Major: remove `headers.getAll()`; make `get()` return all headers delimited by commas (per spec)
+- Enhance: make Headers iterable
+- Enhance: make Headers constructor accept an array of tuples
+- Enhance: make sure header names and values are valid in HTTP
+- Fix: coerce Headers prototype function parameters to strings, where applicable
+
+### Documentation
+
+- Enhance: more comprehensive API docs
+- Enhance: add a list of default headers in README
+
+
+# 1.x release
+
+## backport releases (v1.7.0 and beyond)
+
+See [changelog on 1.x branch](https://github.com/bitinn/node-fetch/blob/1.x/CHANGELOG.md) for details.
+
+## v1.6.3
+
+- Enhance: error handling document to explain `FetchError` design
+- Fix: support `form-data` 2.x releases (requires `form-data` >= 2.1.0)
+
+## v1.6.2
+
+- Enhance: minor document update
+- Fix: response.json() returns empty object on 204 no-content response instead of throwing a syntax error
+
+## v1.6.1
+
+- Fix: if `res.body` is a non-stream non-formdata object, we will call `body.toString` and send it as a string
+- Fix: `counter` value is incorrectly set to `follow` value when wrapping Request instance
+- Fix: documentation update
+
+## v1.6.0
+
+- Enhance: added `res.buffer()` api for convenience, it returns body as a Node.js buffer
+- Enhance: better old server support by handling raw deflate response
+- Enhance: skip encoding detection for non-HTML/XML response
+- Enhance: minor document update
+- Fix: HEAD request doesn't need decompression, as body is empty
+- Fix: `req.body` now accepts a Node.js buffer
+
+## v1.5.3
+
+- Fix: handle 204 and 304 responses when body is empty but content-encoding is gzip/deflate
+- Fix: allow resolving response and cloned response in any order
+- Fix: avoid setting `content-length` when `form-data` body use streams
+- Fix: send DELETE request with content-length when body is present
+- Fix: allow any url when calling new Request, but still reject non-http(s) url in fetch
+
+## v1.5.2
+
+- Fix: allow node.js core to handle keep-alive connection pool when passing a custom agent
+
+## v1.5.1
+
+- Fix: redirect mode `manual` should work even when there is no redirection or broken redirection
+
+## v1.5.0
+
+- Enhance: rejected promise now use custom `Error` (thx to @pekeler)
+- Enhance: `FetchError` contains `err.type` and `err.code`, allows for better error handling (thx to @pekeler)
+- Enhance: basic support for redirect mode `manual` and `error`, allows for location header extraction (thx to @jimmywarting for the initial PR)
+
+## v1.4.1
+
+- Fix: wrapping Request instance with FormData body again should preserve the body as-is
+
+## v1.4.0
+
+- Enhance: Request and Response now have `clone` method (thx to @kirill-konshin for the initial PR)
+- Enhance: Request and Response now have proper string and buffer body support (thx to @kirill-konshin)
+- Enhance: Body constructor has been refactored out (thx to @kirill-konshin)
+- Enhance: Headers now has `forEach` method (thx to @tricoder42)
+- Enhance: back to 100% code coverage
+- Fix: better form-data support (thx to @item4)
+- Fix: better character encoding detection under chunked encoding (thx to @dsuket for the initial PR)
+
+## v1.3.3
+
+- Fix: make sure `Content-Length` header is set when body is string for POST/PUT/PATCH requests
+- Fix: handle body stream error, for cases such as incorrect `Content-Encoding` header
+- Fix: when following certain redirects, use `GET` on subsequent request per Fetch Spec
+- Fix: `Request` and `Response` constructors now parse headers input using `Headers`
+
+## v1.3.2
+
+- Enhance: allow auto detect of form-data input (no `FormData` spec on node.js, this is form-data specific feature)
+
+## v1.3.1
+
+- Enhance: allow custom host header to be set (server-side only feature, as it's a forbidden header on client-side)
+
+## v1.3.0
+
+- Enhance: now `fetch.Request` is exposed as well
+
+## v1.2.1
+
+- Enhance: `Headers` now normalized `Number` value to `String`, prevent common mistakes
+
+## v1.2.0
+
+- Enhance: now fetch.Headers and fetch.Response are exposed, making testing easier
+
+## v1.1.2
+
+- Fix: `Headers` should only support `String` and `Array` properties, and ignore others
+
+## v1.1.1
+
+- Enhance: now req.headers accept both plain object and `Headers` instance
+
+## v1.1.0
+
+- Enhance: timeout now also applies to response body (in case of slow response)
+- Fix: timeout is now cleared properly when fetch is done/has failed
+
+## v1.0.6
+
+- Fix: less greedy content-type charset matching
+
+## v1.0.5
+
+- Fix: when `follow = 0`, fetch should not follow redirect
+- Enhance: update tests for better coverage
+- Enhance: code formatting
+- Enhance: clean up doc
+
+## v1.0.4
+
+- Enhance: test iojs support
+- Enhance: timeout attached to socket event only fire once per redirect
+
+## v1.0.3
+
+- Fix: response size limit should reject large chunk
+- Enhance: added character encoding detection for xml, such as rss/atom feed (encoding in DTD)
+
+## v1.0.2
+
+- Fix: added res.ok per spec change
+
+## v1.0.0
+
+- Enhance: better test coverage and doc
+
+
+# 0.x release
+
+## v0.1
+
+- Major: initial public release
diff --git a/node_modules/node-fetch/lib/index.es.js b/node_modules/node-fetch/lib/index.es.js
index 2938d48..61906c9 100644
--- a/node_modules/node-fetch/lib/index.es.js
+++ b/node_modules/node-fetch/lib/index.es.js
@@ -3,7 +3,6 @@
 import Stream from 'stream';
 import http from 'http';
 import Url from 'url';
-import whatwgUrl from 'whatwg-url';
 import https from 'https';
 import zlib from 'zlib';
 
@@ -1138,32 +1137,11 @@
 });
 
 const INTERNALS$2 = Symbol('Request internals');
-const URL = whatwgUrl.URL;
 
 // fix an issue where "format", "parse" aren't a named export for node <10
 const parse_url = Url.parse;
 const format_url = Url.format;
 
-/**
- * Wrapper around `new URL` to handle arbitrary URLs
- *
- * @param  {string} urlStr
- * @return {void}
- */
-function parseURL(urlStr) {
-	/*
- 	Check whether the URL is absolute or not
- 		Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
- 	Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
- */
-	if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
-		urlStr = new URL(urlStr).toString();
-	}
-
-	// Fallback to old implementation for arbitrary URLs
-	return parse_url(urlStr);
-}
-
 const streamDestructionSupported = 'destroy' in Stream.Readable.prototype;
 
 /**
@@ -1200,14 +1178,14 @@
 				// in order to support Node.js' Url objects; though WHATWG's URL objects
 				// will fall into this branch also (since their `toString()` will return
 				// `href` property anyway)
-				parsedURL = parseURL(input.href);
+				parsedURL = parse_url(input.href);
 			} else {
 				// coerce input to a string before attempting to parse
-				parsedURL = parseURL(`${input}`);
+				parsedURL = parse_url(`${input}`);
 			}
 			input = {};
 		} else {
-			parsedURL = parseURL(input.url);
+			parsedURL = parse_url(input.url);
 		}
 
 		let method = init.method || input.method || 'GET';
diff --git a/node_modules/node-fetch/lib/index.js b/node_modules/node-fetch/lib/index.js
index 4c5b8ff..4b241bf 100644
--- a/node_modules/node-fetch/lib/index.js
+++ b/node_modules/node-fetch/lib/index.js
@@ -7,7 +7,6 @@
 var Stream = _interopDefault(require('stream'));
 var http = _interopDefault(require('http'));
 var Url = _interopDefault(require('url'));
-var whatwgUrl = _interopDefault(require('whatwg-url'));
 var https = _interopDefault(require('https'));
 var zlib = _interopDefault(require('zlib'));
 
@@ -1142,32 +1141,11 @@
 });
 
 const INTERNALS$2 = Symbol('Request internals');
-const URL = whatwgUrl.URL;
 
 // fix an issue where "format", "parse" aren't a named export for node <10
 const parse_url = Url.parse;
 const format_url = Url.format;
 
-/**
- * Wrapper around `new URL` to handle arbitrary URLs
- *
- * @param  {string} urlStr
- * @return {void}
- */
-function parseURL(urlStr) {
-	/*
- 	Check whether the URL is absolute or not
- 		Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
- 	Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
- */
-	if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
-		urlStr = new URL(urlStr).toString();
-	}
-
-	// Fallback to old implementation for arbitrary URLs
-	return parse_url(urlStr);
-}
-
 const streamDestructionSupported = 'destroy' in Stream.Readable.prototype;
 
 /**
@@ -1204,14 +1182,14 @@
 				// in order to support Node.js' Url objects; though WHATWG's URL objects
 				// will fall into this branch also (since their `toString()` will return
 				// `href` property anyway)
-				parsedURL = parseURL(input.href);
+				parsedURL = parse_url(input.href);
 			} else {
 				// coerce input to a string before attempting to parse
-				parsedURL = parseURL(`${input}`);
+				parsedURL = parse_url(`${input}`);
 			}
 			input = {};
 		} else {
-			parsedURL = parseURL(input.url);
+			parsedURL = parse_url(input.url);
 		}
 
 		let method = init.method || input.method || 'GET';
diff --git a/node_modules/node-fetch/lib/index.mjs b/node_modules/node-fetch/lib/index.mjs
index 7e41619..ecf59af 100644
--- a/node_modules/node-fetch/lib/index.mjs
+++ b/node_modules/node-fetch/lib/index.mjs
@@ -1,7 +1,6 @@
 import Stream from 'stream';
 import http from 'http';
 import Url from 'url';
-import whatwgUrl from 'whatwg-url';
 import https from 'https';
 import zlib from 'zlib';
 
@@ -1136,32 +1135,11 @@
 });
 
 const INTERNALS$2 = Symbol('Request internals');
-const URL = whatwgUrl.URL;
 
 // fix an issue where "format", "parse" aren't a named export for node <10
 const parse_url = Url.parse;
 const format_url = Url.format;
 
-/**
- * Wrapper around `new URL` to handle arbitrary URLs
- *
- * @param  {string} urlStr
- * @return {void}
- */
-function parseURL(urlStr) {
-	/*
- 	Check whether the URL is absolute or not
- 		Scheme: https://tools.ietf.org/html/rfc3986#section-3.1
- 	Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3
- */
-	if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) {
-		urlStr = new URL(urlStr).toString();
-	}
-
-	// Fallback to old implementation for arbitrary URLs
-	return parse_url(urlStr);
-}
-
 const streamDestructionSupported = 'destroy' in Stream.Readable.prototype;
 
 /**
@@ -1198,14 +1176,14 @@
 				// in order to support Node.js' Url objects; though WHATWG's URL objects
 				// will fall into this branch also (since their `toString()` will return
 				// `href` property anyway)
-				parsedURL = parseURL(input.href);
+				parsedURL = parse_url(input.href);
 			} else {
 				// coerce input to a string before attempting to parse
-				parsedURL = parseURL(`${input}`);
+				parsedURL = parse_url(`${input}`);
 			}
 			input = {};
 		} else {
-			parsedURL = parseURL(input.url);
+			parsedURL = parse_url(input.url);
 		}
 
 		let method = init.method || input.method || 'GET';
diff --git a/node_modules/node-fetch/package.json b/node_modules/node-fetch/package.json
index c5f3088..baeeba9 100644
--- a/node_modules/node-fetch/package.json
+++ b/node_modules/node-fetch/package.json
@@ -1,8 +1,8 @@
 {
   "name": "node-fetch",
-  "version": "2.6.5",
+  "version": "2.6.1",
   "description": "A light-weight module that brings window.fetch to node.js",
-  "main": "lib/index.js",
+  "main": "lib/index",
   "browser": "./browser.js",
   "module": "lib/index.mjs",
   "files": [
@@ -36,9 +36,6 @@
     "url": "https://github.com/bitinn/node-fetch/issues"
   },
   "homepage": "https://github.com/bitinn/node-fetch",
-  "dependencies": {
-    "whatwg-url": "^5.0.0"
-  },
   "devDependencies": {
     "@ungap/url-search-params": "^0.1.2",
     "abort-controller": "^1.1.0",
@@ -51,7 +48,7 @@
     "chai-as-promised": "^7.1.1",
     "chai-iterator": "^1.1.1",
     "chai-string": "~1.3.0",
-    "codecov": "3.3.0",
+    "codecov": "^3.3.0",
     "cross-env": "^5.2.0",
     "form-data": "^2.3.3",
     "is-builtin-module": "^1.0.0",
@@ -63,6 +60,7 @@
     "rollup": "^0.63.4",
     "rollup-plugin-babel": "^3.0.7",
     "string-to-arraybuffer": "^1.0.2",
-    "teeny-request": "3.7.0"
-  }
+    "whatwg-url": "^5.0.0"
+  },
+  "dependencies": {}
 }
diff --git a/node_modules/progress/lib/node-progress.js b/node_modules/progress/lib/node-progress.js
index 8eb0740..5b56c15 100644
--- a/node_modules/progress/lib/node-progress.js
+++ b/node_modules/progress/lib/node-progress.js
@@ -98,7 +98,7 @@
 
   // progress complete
   if (this.curr >= this.total) {
-    this.render(undefined, true);
+    this.render();
     this.complete = true;
     this.terminate();
     this.callback(this);
@@ -114,15 +114,14 @@
  * @api public
  */
 
-ProgressBar.prototype.render = function (tokens, force) {
-  force = force !== undefined ? force : false;
+ProgressBar.prototype.render = function (tokens) {
   if (tokens) this.tokens = tokens;
 
   if (!this.stream.isTTY) return;
 
   var now = Date.now();
   var delta = now - this.lastRender;
-  if (!force && (delta < this.renderThrottle)) {
+  if (delta < this.renderThrottle) {
     return;
   } else {
     this.lastRender = now;
diff --git a/node_modules/progress/package.json b/node_modules/progress/package.json
index bb81fa0..a962d98 100644
--- a/node_modules/progress/package.json
+++ b/node_modules/progress/package.json
@@ -1,6 +1,6 @@
 {
   "name": "progress",
-  "version": "2.0.3",
+  "version": "2.0.1",
   "description": "Flexible ascii progress bar",
   "repository": {
     "type": "git",
diff --git a/node_modules/puppeteer/CHANGELOG.md b/node_modules/puppeteer/CHANGELOG.md
index 14c032e..6c675ea 100644
--- a/node_modules/puppeteer/CHANGELOG.md
+++ b/node_modules/puppeteer/CHANGELOG.md
@@ -2,130 +2,6 @@
 
 All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
 
-### [12.0.1](https://github.com/puppeteer/puppeteer/compare/v12.0.0...v12.0.1) (2021-11-29)
-
-
-### Bug Fixes
-
-* handle extraInfo events even if event.hasExtraInfo === false ([#7808](https://github.com/puppeteer/puppeteer/issues/7808)) ([6ee2feb](https://github.com/puppeteer/puppeteer/commit/6ee2feb1eafdd399f0af50cdc4517f21bcb55121)), closes [#7805](https://github.com/puppeteer/puppeteer/issues/7805)
-
-## [12.0.0](https://github.com/puppeteer/puppeteer/compare/v11.0.0...v12.0.0) (2021-11-26)
-
-
-### âš  BREAKING CHANGES
-
-* **chromium:** roll to Chromium 97.0.4692.0 (r938248)
-
-### Features
-
-* **chromium:** roll to Chromium 97.0.4692.0 (r938248) ([ac162c5](https://github.com/puppeteer/puppeteer/commit/ac162c561ee43dd69eff38e1b354a41bb42c9eba)), closes [#7458](https://github.com/puppeteer/puppeteer/issues/7458)
-* support for custom user data (profile) directory for Firefox ([#7684](https://github.com/puppeteer/puppeteer/issues/7684)) ([790c7a0](https://github.com/puppeteer/puppeteer/commit/790c7a0eb92291efebaa37e80c72f5cb5f46bbdb))
-
-
-### Bug Fixes
-
-* **ariaqueryhandler:** allow single quotes in aria attribute selector ([#7750](https://github.com/puppeteer/puppeteer/issues/7750)) ([b0319ec](https://github.com/puppeteer/puppeteer/commit/b0319ecc89f8ea3d31ab9aee5e1cd33d2a4e62be)), closes [#7721](https://github.com/puppeteer/puppeteer/issues/7721)
-* clearer jsdoc for behavior of `headless` when `devtools` is true ([#7748](https://github.com/puppeteer/puppeteer/issues/7748)) ([9f9b4ed](https://github.com/puppeteer/puppeteer/commit/9f9b4ed72ab0bb43d002a0024122d6f5eab231aa))
-* null check for frame in FrameManager ([#7773](https://github.com/puppeteer/puppeteer/issues/7773)) ([23ee295](https://github.com/puppeteer/puppeteer/commit/23ee295f348d114617f2a86d0bb792936f413ac5)), closes [#7749](https://github.com/puppeteer/puppeteer/issues/7749)
-* only kill the process when there is no browser instance available ([#7762](https://github.com/puppeteer/puppeteer/issues/7762)) ([51e6169](https://github.com/puppeteer/puppeteer/commit/51e61696c1c20cc09bd4fc068ae1dfa259c41745)), closes [#7668](https://github.com/puppeteer/puppeteer/issues/7668)
-* parse statusText from the extraInfo event ([#7798](https://github.com/puppeteer/puppeteer/issues/7798)) ([a26b12b](https://github.com/puppeteer/puppeteer/commit/a26b12b7c775c36271cd4c98e39bbd59f4356320)), closes [#7458](https://github.com/puppeteer/puppeteer/issues/7458)
-* try to remove the temporary user data directory after the process has been killed ([#7761](https://github.com/puppeteer/puppeteer/issues/7761)) ([fc94a28](https://github.com/puppeteer/puppeteer/commit/fc94a28778cfdb3cb8bcd882af3ebcdacf85c94e))
-
-## [11.0.0](https://github.com/puppeteer/puppeteer/compare/v10.4.0...v11.0.0) (2021-11-02)
-
-
-### âš  BREAKING CHANGES
-
-* **oop iframes:** integrate OOP iframes with the frame manager (#7556)
-
-### Features
-
-* improve error message for response.buffer() ([#7669](https://github.com/puppeteer/puppeteer/issues/7669)) ([03c9ecc](https://github.com/puppeteer/puppeteer/commit/03c9ecca400a02684cd60229550dbad1190a5b6e))
-* **oop iframes:** integrate OOP iframes with the frame manager ([#7556](https://github.com/puppeteer/puppeteer/issues/7556)) ([4d9dc8c](https://github.com/puppeteer/puppeteer/commit/4d9dc8c0e613f22d4cdf237e8bd0b0da3c588edb)), closes [#2548](https://github.com/puppeteer/puppeteer/issues/2548)
-* add custom debugging port option ([#4993](https://github.com/puppeteer/puppeteer/issues/4993)) ([26145e9](https://github.com/puppeteer/puppeteer/commit/26145e9a24af7caed6ece61031f2cafa6abd505f))
-* add initiator to HTTPRequest ([#7614](https://github.com/puppeteer/puppeteer/issues/7614)) ([a271145](https://github.com/puppeteer/puppeteer/commit/a271145b0663ef9de1903dd0eb9fd5366465bed7))
-* allow to customize tmpdir ([#7243](https://github.com/puppeteer/puppeteer/issues/7243)) ([b1f6e86](https://github.com/puppeteer/puppeteer/commit/b1f6e8692b0bc7e8551b2a78169c830cd80a7acb))
-* handle unhandled promise rejections in tests ([#7722](https://github.com/puppeteer/puppeteer/issues/7722)) ([07febca](https://github.com/puppeteer/puppeteer/commit/07febca04b391893cfc872250e4391da142d4fe2))
-
-
-### Bug Fixes
-
-* add support for relative install paths to BrowserFetcher ([#7613](https://github.com/puppeteer/puppeteer/issues/7613)) ([eebf452](https://github.com/puppeteer/puppeteer/commit/eebf452d38b79bb2ea1a1ba84c3d2ea6f2f9f899)), closes [#7592](https://github.com/puppeteer/puppeteer/issues/7592)
-* add webp to screenshot quality option allow list ([#7631](https://github.com/puppeteer/puppeteer/issues/7631)) ([b20c2bf](https://github.com/puppeteer/puppeteer/commit/b20c2bfa24cbdd4a1b9cefca2e0a9407e442baf5))
-* prevent Target closed errors on streams ([#7728](https://github.com/puppeteer/puppeteer/issues/7728)) ([5b792de](https://github.com/puppeteer/puppeteer/commit/5b792de7a97611441777d1ac99cb95516301d7dc))
-* request an animation frame to fix flaky clickablePoint test ([#7587](https://github.com/puppeteer/puppeteer/issues/7587)) ([7341d9f](https://github.com/puppeteer/puppeteer/commit/7341d9fadd1466a5b2f2bde8631f3b02cf9a7d8a))
-* setup husky properly ([#7727](https://github.com/puppeteer/puppeteer/issues/7727)) ([8b712e7](https://github.com/puppeteer/puppeteer/commit/8b712e7b642b58193437f26d4e104a9e412f388d)), closes [#7726](https://github.com/puppeteer/puppeteer/issues/7726)
-* updated troubleshooting.md to meet latest dependencies changes ([#7656](https://github.com/puppeteer/puppeteer/issues/7656)) ([edb0197](https://github.com/puppeteer/puppeteer/commit/edb01972b9606d8b05b979a588eda0d622315981))
-* **launcher:** launcher.launch() should pass 'timeout' option [#5180](https://github.com/puppeteer/puppeteer/issues/5180) ([#7596](https://github.com/puppeteer/puppeteer/issues/7596)) ([113489d](https://github.com/puppeteer/puppeteer/commit/113489d3b58e2907374a4e6e5133bf46630695d1))
-* **page:** fallback to default in exposeFunction when using imported module  ([#6365](https://github.com/puppeteer/puppeteer/issues/6365)) ([44c9ec6](https://github.com/puppeteer/puppeteer/commit/44c9ec67c57dccf3e186c86f14f3a8da9a8eb971))
-* **page:** fix page.off method for request event ([#7624](https://github.com/puppeteer/puppeteer/issues/7624)) ([d0cb943](https://github.com/puppeteer/puppeteer/commit/d0cb9436a302418086f6763e0e58ae3732a20b62)), closes [#7572](https://github.com/puppeteer/puppeteer/issues/7572)
-
-## [10.4.0](https://github.com/puppeteer/puppeteer/compare/v10.2.0...v10.4.0) (2021-09-21)
-
-
-### Features
-
-* add webp to screenshot options ([#7565](https://github.com/puppeteer/puppeteer/issues/7565)) ([43a9268](https://github.com/puppeteer/puppeteer/commit/43a926832505a57922016907a264165676424557))
-* **page:** expose page.client() ([#7582](https://github.com/puppeteer/puppeteer/issues/7582)) ([99ca842](https://github.com/puppeteer/puppeteer/commit/99ca842124a1edef5e66426621885141a9feaca5))
-* **page:** mark page.client() as internal ([#7585](https://github.com/puppeteer/puppeteer/issues/7585)) ([8451951](https://github.com/puppeteer/puppeteer/commit/84519514831f304f9076ca235fe474f797616b2c))
-* add ability to specify offsets for JSHandle.click ([#7573](https://github.com/puppeteer/puppeteer/issues/7573)) ([2b5c001](https://github.com/puppeteer/puppeteer/commit/2b5c0019dc3744196c5858edeaa901dff9973ef5))
-* add durableStorage to allowed permissions ([#5295](https://github.com/puppeteer/puppeteer/issues/5295)) ([eda5171](https://github.com/puppeteer/puppeteer/commit/eda51712790b9260626dc53cfb58a72805c45582))
-* add id option to addScriptTag ([#5477](https://github.com/puppeteer/puppeteer/issues/5477)) ([300be5d](https://github.com/puppeteer/puppeteer/commit/300be5d167b6e7e532e725fdb86966081a5d0093))
-* add more Android models to DeviceDescriptors ([#7210](https://github.com/puppeteer/puppeteer/issues/7210)) ([b5020dc](https://github.com/puppeteer/puppeteer/commit/b5020dc04121b265c77662237dfb177d6de06053)), closes [/github.com/aerokube/moon-deploy/blob/master/moon-local.yaml#L199](https://github.com/puppeteer//github.com/aerokube/moon-deploy/blob/master/moon-local.yaml/issues/L199)
-* add proxy and bypass list parameters to createIncognitoBrowserContext ([#7516](https://github.com/puppeteer/puppeteer/issues/7516)) ([8e45a1c](https://github.com/puppeteer/puppeteer/commit/8e45a1c882207cc36e87be2a917b661eb841c4bf)), closes [#678](https://github.com/puppeteer/puppeteer/issues/678)
-* add threshold to Page.isIntersectingViewport ([#6497](https://github.com/puppeteer/puppeteer/issues/6497)) ([54c4318](https://github.com/puppeteer/puppeteer/commit/54c43180161c3c512e4698e7f2e85ce3c6f0ab50))
-* add unit test support for bisect ([#7553](https://github.com/puppeteer/puppeteer/issues/7553)) ([a0b1f6b](https://github.com/puppeteer/puppeteer/commit/a0b1f6b401abae2fbc5a8987061644adfaa7b482))
-* add User-Agent with Puppeteer version to WebSocket request ([#5614](https://github.com/puppeteer/puppeteer/issues/5614)) ([6a2bf0a](https://github.com/puppeteer/puppeteer/commit/6a2bf0aabaa4df72c7838f5a6cd742e8f9c72be6))
-* extend husky checks ([#7574](https://github.com/puppeteer/puppeteer/issues/7574)) ([7316086](https://github.com/puppeteer/puppeteer/commit/73160869417275200be19bd37372b6218dbc5f63))
-* **api:** implement `Page.waitForNetworkIdle()` ([#5140](https://github.com/puppeteer/puppeteer/issues/5140)) ([3c6029c](https://github.com/puppeteer/puppeteer/commit/3c6029c702291ca7ef637b66e78d72e03156fe58))
-* **coverage:** option for raw V8 script coverage ([#6454](https://github.com/puppeteer/puppeteer/issues/6454)) ([cb4470a](https://github.com/puppeteer/puppeteer/commit/cb4470a6d9b0a7f73836458bb3d5779eb85ac5f2))
-* support timeout for page.pdf() call ([#7508](https://github.com/puppeteer/puppeteer/issues/7508)) ([f90af66](https://github.com/puppeteer/puppeteer/commit/f90af6639d801e764bdb479b9543b7f8f2b926df))
-* **typescript:** allow using puppeteer without dom lib ([#6998](https://github.com/puppeteer/puppeteer/issues/6998)) ([723052d](https://github.com/puppeteer/puppeteer/commit/723052d5bb3c3d1d3908508467512bea4d8fdc80)), closes [#6989](https://github.com/puppeteer/puppeteer/issues/6989)
-
-
-### Bug Fixes
-
-* **docs:** deploy includes website documentation ([#7469](https://github.com/puppeteer/puppeteer/issues/7469)) ([6fde41c](https://github.com/puppeteer/puppeteer/commit/6fde41c6b6657986df1bbce3f2e0f7aa499f2be4))
-* **docs:** names in version 9.1.1 ([#7517](https://github.com/puppeteer/puppeteer/issues/7517)) ([44b22bb](https://github.com/puppeteer/puppeteer/commit/44b22bbc2629e3c75c1494b299a66790b371fb0a))
-* **frame:** fix Frame.waitFor's XPath pattern detection ([#5184](https://github.com/puppeteer/puppeteer/issues/5184)) ([caa2b73](https://github.com/puppeteer/puppeteer/commit/caa2b732fe58f32ec03f2a9fa8568f20188203c5))
-* **install:** respect environment proxy config when downloading Firef… ([#6577](https://github.com/puppeteer/puppeteer/issues/6577)) ([9399c97](https://github.com/puppeteer/puppeteer/commit/9399c9786fba4e45e1c5485ddbb197d2d4f1735f)), closes [#6573](https://github.com/puppeteer/puppeteer/issues/6573)
-* added names in V9.1.1 ([#7547](https://github.com/puppeteer/puppeteer/issues/7547)) ([d132b8b](https://github.com/puppeteer/puppeteer/commit/d132b8b041696e6d5b9a99d0be1acf1cf943efef))
-* **test:** tweak waitForNetworkIdle delay in test between downloads ([#7564](https://github.com/puppeteer/puppeteer/issues/7564)) ([a21b737](https://github.com/puppeteer/puppeteer/commit/a21b7376e7feaf23066d67948d52480516f42496))
-* **types:** allow evaluate functions to take a readonly array as an argument ([#7072](https://github.com/puppeteer/puppeteer/issues/7072)) ([491614c](https://github.com/puppeteer/puppeteer/commit/491614c7f8cfa50b902d0275064e611c2a48c3b2))
-* update firefox prefs documentation link ([#7539](https://github.com/puppeteer/puppeteer/issues/7539)) ([2aec355](https://github.com/puppeteer/puppeteer/commit/2aec35553bc6e0305f40837bb3665ddbd02aa889))
-* use non-deprecated tracing categories api ([#7413](https://github.com/puppeteer/puppeteer/issues/7413)) ([040a0e5](https://github.com/puppeteer/puppeteer/commit/040a0e561b4f623f7929130b90be129f94ebb642))
-
-## [10.2.0](https://github.com/puppeteer/puppeteer/compare/v10.1.0...v10.2.0) (2021-08-04)
-
-
-### Features
-
-* **api:** make `page.isDragInterceptionEnabled` a method ([#7419](https://github.com/puppeteer/puppeteer/issues/7419)) ([dd470c7](https://github.com/puppeteer/puppeteer/commit/dd470c7a226a8422a938a7b0fffa58ffc6b78512)), closes [#7150](https://github.com/puppeteer/puppeteer/issues/7150)
-* **chromium:** roll to Chromium 93.0.4577.0 (r901912) ([#7387](https://github.com/puppeteer/puppeteer/issues/7387)) ([e10faad](https://github.com/puppeteer/puppeteer/commit/e10faad4f239b1120491bb54fcba0216acd3a646))
-* add channel parameter for puppeteer.launch ([#7389](https://github.com/puppeteer/puppeteer/issues/7389)) ([d70f60e](https://github.com/puppeteer/puppeteer/commit/d70f60e0619b8659d191fa492e3db4bc221ae982))
-* add cooperative request intercepts ([#6735](https://github.com/puppeteer/puppeteer/issues/6735)) ([b5e6474](https://github.com/puppeteer/puppeteer/commit/b5e6474374ae6a88fc73cdb1a9906764c2ac5d70))
-* add support for useragentdata ([#7378](https://github.com/puppeteer/puppeteer/issues/7378)) ([7200b1a](https://github.com/puppeteer/puppeteer/commit/7200b1a6fb9dfdfb65d50f0000339333e71b1b2a))
-
-
-### Bug Fixes
-
-* **browser-runner:** reject promise on error ([#7338](https://github.com/puppeteer/puppeteer/issues/7338)) ([5eb20e2](https://github.com/puppeteer/puppeteer/commit/5eb20e29a21ea0e0368fa8937ef38f7c7693ab34))
-* add script to remove html comments from docs markdown ([#7394](https://github.com/puppeteer/puppeteer/issues/7394)) ([ea3df80](https://github.com/puppeteer/puppeteer/commit/ea3df80ed136a03d7698d2319106af5df8d48b58))
-
-## [10.1.0](https://github.com/puppeteer/puppeteer/compare/v10.0.0...v10.1.0) (2021-06-29)
-
-
-### Features
-
-* add a streaming version for page.pdf ([e3699e2](https://github.com/puppeteer/puppeteer/commit/e3699e248bc9c1f7a6ead9a07d68ae8b65905443))
-* add drag-and-drop support ([#7150](https://github.com/puppeteer/puppeteer/issues/7150)) ([a91b8ac](https://github.com/puppeteer/puppeteer/commit/a91b8aca3728b2c2e310e9446897d729bf983377))
-* add page.emulateCPUThrottling ([#7343](https://github.com/puppeteer/puppeteer/issues/7343)) ([4ce4110](https://github.com/puppeteer/puppeteer/commit/4ce41106288938b9d366c550e7a424812920683d))
-
-
-### Bug Fixes
-
-* remove redundant await while fetching target ([#7351](https://github.com/puppeteer/puppeteer/issues/7351)) ([083b297](https://github.com/puppeteer/puppeteer/commit/083b297a6741c6b1dd23867f441130655fac8f7d))
-
 ## [10.0.0](https://github.com/puppeteer/puppeteer/compare/v9.1.1...v10.0.0) (2021-05-31)
 
 
diff --git a/node_modules/puppeteer/README.md b/node_modules/puppeteer/README.md
index b9b74c1..d40f06c 100644
--- a/node_modules/puppeteer/README.md
+++ b/node_modules/puppeteer/README.md
@@ -8,7 +8,7 @@
 
 <img src="https://user-images.githubusercontent.com/10379601/29446482-04f7036a-841f-11e7-9872-91d1fc2ea683.png" height="200" align="right">
 
-###### [API](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md) | [FAQ](#faq) | [Contributing](https://github.com/puppeteer/puppeteer/blob/main/CONTRIBUTING.md) | [Troubleshooting](https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md)
+###### [API](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md) | [FAQ](#faq) | [Contributing](https://github.com/puppeteer/puppeteer/blob/main/CONTRIBUTING.md) | [Troubleshooting](https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md)
 
 > Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over the [DevTools Protocol](https://chromedevtools.github.io/devtools-protocol/). Puppeteer runs [headless](https://developers.google.com/web/updates/2017/04/headless-chrome) by default, but can be configured to run full (non-headless) Chrome or Chromium.
 
@@ -26,6 +26,8 @@
 - Test Chrome Extensions.
 <!-- [END usecases] -->
 
+Give it a spin: https://try-puppeteer.appspot.com/
+
 <!-- [START getstarted] -->
 
 ## Getting Started
@@ -39,7 +41,7 @@
 # or "yarn add puppeteer"
 ```
 
-Note: When you install Puppeteer, it downloads a recent version of Chromium (~170MB Mac, ~282MB Linux, ~280MB Win) that is guaranteed to work with the API. To skip the download, download into another path, or download a different browser, see [Environment variables](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#environment-variables).
+Note: When you install Puppeteer, it downloads a recent version of Chromium (~170MB Mac, ~282MB Linux, ~280MB Win) that is guaranteed to work with the API. To skip the download, or to download a different browser, see [Environment variables](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#environment-variables).
 
 ### puppeteer-core
 
@@ -64,7 +66,7 @@
 Node 8.9.0+. Starting from v3.0.0 Puppeteer starts to rely on Node 10.18.1+. All examples below use async/await which is only supported in Node v7.6.0 or greater.
 
 Puppeteer will be familiar to people using other browser testing frameworks. You create an instance
-of `Browser`, open pages, and then manipulate them with [Puppeteer's API](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#).
+of `Browser`, open pages, and then manipulate them with [Puppeteer's API](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#).
 
 **Example** - navigating to https://example.com and saving a screenshot as _example.png_:
 
@@ -89,7 +91,7 @@
 node example.js
 ```
 
-Puppeteer sets an initial page size to 800×600px, which defines the screenshot size. The page size can be customized with [`Page.setViewport()`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#pagesetviewportviewport).
+Puppeteer sets an initial page size to 800×600px, which defines the screenshot size. The page size can be customized with [`Page.setViewport()`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#pagesetviewportviewport).
 
 **Example** - create a PDF.
 
@@ -116,7 +118,7 @@
 node hn.js
 ```
 
-See [`Page.pdf()`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#pagepdfoptions) for more information about creating pdfs.
+See [`Page.pdf()`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#pagepdfoptions) for more information about creating pdfs.
 
 **Example** - evaluate script in the context of the page
 
@@ -151,7 +153,7 @@
 node get-dimensions.js
 ```
 
-See [`Page.evaluate()`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#pageevaluatepagefunction-args) for more information on `evaluate` and related methods like `evaluateOnNewDocument` and `exposeFunction`.
+See [`Page.evaluate()`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#pageevaluatepagefunction-args) for more information on `evaluate` and related methods like `evaluateOnNewDocument` and `exposeFunction`.
 
 <!-- [END getstarted] -->
 
@@ -161,7 +163,7 @@
 
 **1. Uses Headless mode**
 
-Puppeteer launches Chromium in [headless mode](https://developers.google.com/web/updates/2017/04/headless-chrome). To launch a full version of Chromium, set the [`headless` option](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#puppeteerlaunchoptions) when launching a browser:
+Puppeteer launches Chromium in [headless mode](https://developers.google.com/web/updates/2017/04/headless-chrome). To launch a full version of Chromium, set the [`headless` option](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#puppeteerlaunchoptions) when launching a browser:
 
 ```js
 const browser = await puppeteer.launch({ headless: false }); // default is true
@@ -177,9 +179,9 @@
 const browser = await puppeteer.launch({ executablePath: '/path/to/Chrome' });
 ```
 
-You can also use Puppeteer with Firefox Nightly (experimental support). See [`Puppeteer.launch()`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#puppeteerlaunchoptions) for more information.
+You can also use Puppeteer with Firefox Nightly (experimental support). See [`Puppeteer.launch()`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#puppeteerlaunchoptions) for more information.
 
-See [`this article`](https://www.howtogeek.com/202825/what%E2%80%99s-the-difference-between-chromium-and-chrome/) for a description of the differences between Chromium and Chrome. [`This article`](https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/chromium_browser_vs_google_chrome.md) describes some differences for Linux users.
+See [`this article`](https://www.howtogeek.com/202825/what%E2%80%99s-the-difference-between-chromium-and-chrome/) for a description of the differences between Chromium and Chrome. [`This article`](https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md) describes some differences for Linux users.
 
 **3. Creates a fresh user profile**
 
@@ -189,7 +191,7 @@
 
 ## Resources
 
-- [API Documentation](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md)
+- [API Documentation](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md)
 - [Examples](https://github.com/puppeteer/puppeteer/tree/main/examples/)
 - [Community list of Puppeteer resources](https://github.com/transitive-bullshit/awesome-puppeteer)
 
@@ -331,7 +333,7 @@
 
 Official Firefox support is currently experimental. The ongoing collaboration with Mozilla aims to support common end-to-end testing use cases, for which developers expect cross-browser coverage. The Puppeteer team needs input from users to stabilize Firefox support and to bring missing APIs to our attention.
 
-From Puppeteer v2.1.0 onwards you can specify [`puppeteer.launch({product: 'firefox'})`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#puppeteerlaunchoptions) to run your Puppeteer scripts in Firefox Nightly, without any additional custom patches. While [an older experiment](https://www.npmjs.com/package/puppeteer-firefox) required a patched version of Firefox, [the current approach](https://wiki.mozilla.org/Remote) works with “stock” Firefox.
+From Puppeteer v2.1.0 onwards you can specify [`puppeteer.launch({product: 'firefox'})`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#puppeteerlaunchoptions) to run your Puppeteer scripts in Firefox Nightly, without any additional custom patches. While [an older experiment](https://www.npmjs.com/package/puppeteer-firefox) required a patched version of Firefox, [the current approach](https://wiki.mozilla.org/Remote) works with “stock” Firefox.
 
 We will continue to collaborate with other browser vendors to bring Puppeteer support to browsers such as Safari.
 This effort includes exploration of a standard for executing cross-browser commands (instead of relying on the non-standard DevTools Protocol used by Chrome).
@@ -431,34 +433,13 @@
 
 You may find that Puppeteer does not behave as expected when controlling pages that incorporate audio and video. (For example, [video playback/screenshots is likely to fail](https://github.com/puppeteer/puppeteer/issues/291).) There are two reasons for this:
 
-- Puppeteer is bundled with Chromium — not Chrome — and so by default, it inherits all of [Chromium's media-related limitations](https://www.chromium.org/audio-video). This means that Puppeteer does not support licensed formats such as AAC or H.264. (However, it is possible to force Puppeteer to use a separately-installed version Chrome instead of Chromium via the [`executablePath` option to `puppeteer.launch`](https://github.com/puppeteer/puppeteer/blob/v12.0.1/docs/api.md#puppeteerlaunchoptions). You should only use this configuration if you need an official release of Chrome that supports these media formats.)
+- Puppeteer is bundled with Chromium — not Chrome — and so by default, it inherits all of [Chromium's media-related limitations](https://www.chromium.org/audio-video). This means that Puppeteer does not support licensed formats such as AAC or H.264. (However, it is possible to force Puppeteer to use a separately-installed version Chrome instead of Chromium via the [`executablePath` option to `puppeteer.launch`](https://github.com/puppeteer/puppeteer/blob/v10.0.0/docs/api.md#puppeteerlaunchoptions). You should only use this configuration if you need an official release of Chrome that supports these media formats.)
 - Since Puppeteer (in all configurations) controls a desktop version of Chromium/Chrome, features that are only supported by the mobile version of Chrome are not supported. This means that Puppeteer [does not support HTTP Live Streaming (HLS)](https://caniuse.com/#feat=http-live-streaming).
 
 #### Q: I am having trouble installing / running Puppeteer in my test environment. Where should I look for help?
 
 We have a [troubleshooting](https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md) guide for various operating systems that lists the required dependencies.
 
-#### Q: Chromium gets downloaded on every `npm ci` run. How can I cache the download?
-
-The default download path is `node_modules/puppeteer/.local-chromium`. However, you can change that path with the `PUPPETEER_DOWNLOAD_PATH` environment variable.
-
-Puppeteer uses that variable to resolve the Chromium executable location during launch, so you don’t need to specify `PUPPETEER_EXECUTABLE_PATH` as well.
-
-For example, if you wish to keep the Chromium download in `~/.npm/chromium`:
-
-```sh
-export PUPPETEER_DOWNLOAD_PATH=~/.npm/chromium
-npm ci
-
-# by default the Chromium executable path is inferred
-# from the download path
-npm test
-
-# a new run of npm ci will check for the existence of
-# Chromium in ~/.npm/chromium
-npm ci
-```
-
 #### Q: How do I try/test a prerelease version of Puppeteer?
 
 You can check out this repo or install the latest prerelease from npm:
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map
index 5b1f72a..7ad7ca2 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"AriaQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAoHzD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,oBAKzB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"AriaQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAkHzD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,oBAKzB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js
index 5b8e71a..ba86860 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js
@@ -25,20 +25,20 @@
     const filteredNodes = nodes.filter((node) => node.role.value !== 'StaticText');
     return filteredNodes;
 }
-const normalizeValue = (value) => value.replace(/ +/g, ' ').trim();
-const knownAttributes = new Set(['name', 'role']);
-const attributeRegexp = /\[\s*(?<attribute>\w+)\s*=\s*(?<quote>"|')(?<value>\\.|.*?(?=\k<quote>))\k<quote>\s*\]/g;
 function parseAriaSelector(selector) {
+    const normalize = (value) => value.replace(/ +/g, ' ').trim();
+    const knownAttributes = new Set(['name', 'role']);
     const queryOptions = {};
-    const defaultName = selector.replace(attributeRegexp, (_, attribute, quote, value) => {
+    const attributeRegexp = /\[\s*(?<attribute>\w+)\s*=\s*"(?<value>\\.|[^"\\]*)"\s*\]/g;
+    const defaultName = selector.replace(attributeRegexp, (_, attribute, value) => {
         attribute = attribute.trim();
         if (!knownAttributes.has(attribute))
             throw new Error(`Unknown aria attribute "${attribute}" in selector`);
-        queryOptions[attribute] = normalizeValue(value);
+        queryOptions[attribute] = normalize(value);
         return '';
     });
     if (defaultName && !queryOptions.name)
-        queryOptions.name = normalizeValue(defaultName);
+        queryOptions.name = normalize(defaultName);
     return queryOptions;
 }
 const queryOne = async (element, selector) => {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js.map
index 55c2d27..51c01b8 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/AriaQueryHandler.js.map
@@ -1 +1 @@
-{"version":3,"file":"AriaQueryHandler.js","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"AriaQueryHandler.js","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts
index 88961034..01bc449 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts
@@ -22,22 +22,6 @@
 import { ChildProcess } from 'child_process';
 import { Viewport } from './PuppeteerViewport.js';
 /**
- * BrowserContext options.
- *
- * @public
- */
-export interface BrowserContextOptions {
-    /**
-     * Proxy server with optional port to use for all requests.
-     * Username and password can be set in `Page.authenticate`.
-     */
-    proxyServer?: string;
-    /**
-     * Bypass the proxy for the given semi-colon-separated list of hosts.
-     */
-    proxyBypassList?: string[];
-}
-/**
  * @internal
  */
 export declare type BrowserCloseCallback = () => Promise<void> | void;
@@ -48,7 +32,7 @@
 /**
  * @public
  */
-export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'persistent-storage' | 'idle-detection' | 'midi-sysex';
+export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'idle-detection' | 'midi-sysex';
 /**
  * @public
  */
@@ -162,8 +146,6 @@
     private _targetFilterCallback;
     private _defaultContext;
     private _contexts;
-    private _screenshotTaskQueue;
-    private _ignoredTargets;
     /**
      * @internal
      * Used in Target.ts directly so cannot be marked private.
@@ -195,7 +177,7 @@
      * })();
      * ```
      */
-    createIncognitoBrowserContext(options?: BrowserContextOptions): Promise<BrowserContext>;
+    createIncognitoBrowserContext(): Promise<BrowserContext>;
     /**
      * Returns an array of all open browser contexts. In a newly created browser, this will
      * return a single instance of {@link BrowserContext}.
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts.map
index 7f6c616..e99fa5a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Browser.d.ts","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Browser.d.ts","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js
index aa36895..ac4a160 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js
@@ -21,7 +21,6 @@
 const Target_js_1 = require("./Target.js");
 const EventEmitter_js_1 = require("./EventEmitter.js");
 const Connection_js_1 = require("./Connection.js");
-const TaskQueue_js_1 = require("./TaskQueue.js");
 const WEB_PERMISSION_TO_PROTOCOL_PERMISSION = new Map([
     ['geolocation', 'geolocation'],
     ['midi', 'midi'],
@@ -39,7 +38,6 @@
     ['clipboard-read', 'clipboardReadWrite'],
     ['clipboard-write', 'clipboardReadWrite'],
     ['payment-handler', 'paymentHandler'],
-    ['persistent-storage', 'durableStorage'],
     ['idle-detection', 'idleDetection'],
     // chrome-specific permissions we have.
     ['midi-sysex', 'midiSysex'],
@@ -95,11 +93,9 @@
      */
     constructor(connection, contextIds, ignoreHTTPSErrors, defaultViewport, process, closeCallback, targetFilterCallback) {
         super();
-        this._ignoredTargets = new Set();
         this._ignoreHTTPSErrors = ignoreHTTPSErrors;
         this._defaultViewport = defaultViewport;
         this._process = process;
-        this._screenshotTaskQueue = new TaskQueue_js_1.TaskQueue();
         this._connection = connection;
         this._closeCallback = closeCallback || function () { };
         this._targetFilterCallback = targetFilterCallback || (() => true);
@@ -145,12 +141,8 @@
      * })();
      * ```
      */
-    async createIncognitoBrowserContext(options = {}) {
-        const { proxyServer = '', proxyBypassList = [] } = options;
-        const { browserContextId } = await this._connection.send('Target.createBrowserContext', {
-            proxyServer,
-            proxyBypassList: proxyBypassList && proxyBypassList.join(','),
-        });
+    async createIncognitoBrowserContext() {
+        const { browserContextId } = await this._connection.send('Target.createBrowserContext');
         const context = new BrowserContext(this._connection, this, browserContextId);
         this._contexts.set(browserContextId, context);
         return context;
@@ -186,11 +178,10 @@
             : this._defaultContext;
         const shouldAttachToTarget = this._targetFilterCallback(targetInfo);
         if (!shouldAttachToTarget) {
-            this._ignoredTargets.add(targetInfo.targetId);
             return;
         }
-        const target = new Target_js_1.Target(targetInfo, context, () => this._connection.createSession(targetInfo), this._ignoreHTTPSErrors, this._defaultViewport, this._screenshotTaskQueue);
-        (0, assert_js_1.assert)(!this._targets.has(event.targetInfo.targetId), 'Target should not exist before targetCreated');
+        const target = new Target_js_1.Target(targetInfo, context, () => this._connection.createSession(targetInfo), this._ignoreHTTPSErrors, this._defaultViewport);
+        assert_js_1.assert(!this._targets.has(event.targetInfo.targetId), 'Target should not exist before targetCreated');
         this._targets.set(event.targetInfo.targetId, target);
         if (await target._initializedPromise) {
             this.emit("targetcreated" /* TargetCreated */, target);
@@ -198,8 +189,6 @@
         }
     }
     async _targetDestroyed(event) {
-        if (this._ignoredTargets.has(event.targetId))
-            return;
         const target = this._targets.get(event.targetId);
         target._initializedCallback(false);
         this._targets.delete(event.targetId);
@@ -212,10 +201,8 @@
         }
     }
     _targetInfoChanged(event) {
-        if (this._ignoredTargets.has(event.targetInfo.targetId))
-            return;
         const target = this._targets.get(event.targetInfo.targetId);
-        (0, assert_js_1.assert)(target, 'target should exist before targetInfoChanged');
+        assert_js_1.assert(target, 'target should exist before targetInfoChanged');
         const previousURL = target.url();
         const wasInitialized = target._isInitialized;
         target._targetInfoChanged(event.targetInfo);
@@ -262,8 +249,8 @@
             url: 'about:blank',
             browserContextId: contextId || undefined,
         });
-        const target = this._targets.get(targetId);
-        (0, assert_js_1.assert)(await target._initializedPromise, 'Failed to create target for page');
+        const target = await this._targets.get(targetId);
+        assert_js_1.assert(await target._initializedPromise, 'Failed to create target for page');
         const page = await target.page();
         return page;
     }
@@ -533,7 +520,7 @@
      * Only incognito browser contexts can be closed.
      */
     async close() {
-        (0, assert_js_1.assert)(this._id, 'Non-incognito profiles cannot be closed!');
+        assert_js_1.assert(this._id, 'Non-incognito profiles cannot be closed!');
         await this._browser._disposeContext(this._id);
     }
 }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js.map
index 8775a0f..6f1b376 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Browser.js.map
@@ -1 +1 @@
-{"version":3,"file":"Browser.js","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Browser.js","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,2CAAqC;AACrC,2CAAqC;AACrC,2CAAqC;AACrC,uDAAiD;AACjD,mDAAsE;AAkBtE,MAAM,qCAAqC,GAAG,IAAI,GAAG,CAGnD;IACA,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,iCAAiC;IACjC,oBAAoB;IACpB,CAAC,QAAQ,EAAE,cAAc,CAAC;IAC1B,CAAC,YAAY,EAAE,cAAc,CAAC;IAC9B,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;IACrC,CAAC,sBAAsB,EAAE,SAAS,CAAC;IACnC,CAAC,eAAe,EAAE,SAAS,CAAC;IAC5B,CAAC,WAAW,EAAE,SAAS,CAAC;IACxB,CAAC,cAAc,EAAE,SAAS,CAAC;IAC3B,CAAC,sBAAsB,EAAE,qBAAqB,CAAC;IAC/C,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IACxC,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;IACzC,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;IACrC,CAAC,gBAAgB,EAAE,eAAe,CAAC;IACnC,uCAAuC;IACvC,CAAC,YAAY,EAAE,WAAW,CAAC;CAC5B,CAAC,CAAC;AAkFH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAa,OAAQ,SAAQ,8BAAY;IAuCvC;;OAEG;IACH,YACE,UAAsB,EACtB,UAAoB,EACpB,iBAA0B,EAC1B,eAAiC,EACjC,OAAsB,EACtB,aAAoC,EACpC,oBAA2C;QAE3C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;QAC5C,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,aAAa,IAAI,cAAmB,CAAC,CAAC;QAC5D,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,IAAI,CAAC,GAAY,EAAE,CAAC,IAAI,CAAC,CAAC;QAE3E,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACxE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,IAAI,CAAC,SAAS,CAAC,GAAG,CAChB,SAAS,EACT,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,CACtD,CAAC;QAEJ,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,uCAAuB,CAAC,YAAY,EAAE,GAAG,EAAE,CAC7D,IAAI,CAAC,IAAI,mCAAmC,CAC7C,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,sBAAsB,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,WAAW,CAAC,EAAE,CACjB,wBAAwB,EACxB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CACjC,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,CACjB,0BAA0B,EAC1B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CACnC,CAAC;IACJ,CAAC;IA/ED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,UAAsB,EACtB,UAAoB,EACpB,iBAA0B,EAC1B,eAAiC,EACjC,OAAsB,EACtB,aAAoC,EACpC,oBAA2C;QAE3C,MAAM,OAAO,GAAG,IAAI,OAAO,CACzB,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,OAAO,EACP,aAAa,EACb,oBAAoB,CACrB,CAAC;QACF,MAAM,UAAU,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,OAAO,OAAO,CAAC;IACjB,CAAC;IA0DD;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,6BAA6B;QACjC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CACtD,6BAA6B,CAC9B,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,cAAc,CAChC,IAAI,CAAC,WAAW,EAChB,IAAI,EACJ,gBAAgB,CACjB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,SAAkB;QACtC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,8BAA8B,EAAE;YAC1D,gBAAgB,EAAE,SAAS,IAAI,SAAS;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,cAAc,CAC1B,KAAyC;QAEzC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC;QACxC,MAAM,OAAO,GACX,gBAAgB,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACtD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACtC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;QAE3B,MAAM,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,CAAC,oBAAoB,EAAE;YACzB,OAAO;SACR;QAED,MAAM,MAAM,GAAG,IAAI,kBAAM,CACvB,UAAU,EACV,OAAO,EACP,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,EAChD,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,gBAAgB,CACtB,CAAC;QACF,kBAAM,CACJ,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAC7C,8CAA8C,CAC/C,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAErD,IAAI,MAAM,MAAM,CAAC,mBAAmB,EAAE;YACpC,IAAI,CAAC,IAAI,sCAAqC,MAAM,CAAC,CAAC;YACtD,OAAO,CAAC,IAAI,sCAA4C,MAAM,CAAC,CAAC;SACjE;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,KAA2B;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,MAAM,MAAM,CAAC,mBAAmB,EAAE;YACpC,IAAI,CAAC,IAAI,0CAAuC,MAAM,CAAC,CAAC;YACxD,MAAM;iBACH,cAAc,EAAE;iBAChB,IAAI,0CAA8C,MAAM,CAAC,CAAC;SAC9D;IACH,CAAC;IAEO,kBAAkB,CACxB,KAA6C;QAE7C,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC5D,kBAAM,CAAC,MAAM,EAAE,8CAA8C,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC7C,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,cAAc,IAAI,WAAW,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE;YAClD,IAAI,CAAC,IAAI,sCAAqC,MAAM,CAAC,CAAC;YACtD,MAAM;iBACH,cAAc,EAAE;iBAChB,IAAI,sCAA4C,MAAM,CAAC,CAAC;SAC5D;IACH,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAkB;QAC3C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACtE,GAAG,EAAE,aAAa;YAClB,gBAAgB,EAAE,SAAS,IAAI,SAAS;SACzC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,kBAAM,CACJ,MAAM,MAAM,CAAC,mBAAmB,EAChC,kCAAkC,CACnC,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAC9C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,CAClC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,SAAS,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,aAAa,CACjB,SAAiC,EACjC,UAAgC,EAAE;QAElC,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QACpC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,cAAc;YAAE,OAAO,cAAc,CAAC;QAC1C,IAAI,OAAO,CAAC;QACZ,MAAM,aAAa,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,EAAE,sCAAqC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,sCAAqC,KAAK,CAAC,CAAC;QACnD,IAAI;YACF,IAAI,CAAC,OAAO;gBAAE,OAAO,MAAM,aAAa,CAAC;YACzC,OAAO,MAAM,kBAAM,CAAC,eAAe,CACjC,aAAa,EACb,QAAQ,EACR,OAAO,CACR,CAAC;SACH;gBAAS;YACR,IAAI,CAAC,cAAc,sCAAqC,KAAK,CAAC,CAAC;YAC/D,IAAI,CAAC,cAAc,sCAAqC,KAAK,CAAC,CAAC;SAChE;QAED,SAAS,KAAK,CAAC,MAAc;YAC3B,IAAI,SAAS,CAAC,MAAM,CAAC;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CACzD,CAAC;QACF,iBAAiB;QACjB,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,SAAS,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;IACnC,CAAC;IAEO,WAAW;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACrD,CAAC;CACF;AAhYD,0BAgYC;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,cAAe,SAAQ,8BAAY;IAK9C;;OAEG;IACH,YAAY,UAAsB,EAAE,OAAgB,EAAE,SAAkB;QACtE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ;aACjB,OAAO,EAAE;aACT,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CACX,SAAiC,EACjC,UAAgC,EAAE;QAElC,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAChC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,IAAI,IAAI,SAAS,CAAC,MAAM,CAAC,EACjE,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,IAAI,CAAC,OAAO,EAAE;aACX,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC;aAC5C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAClC,CAAC;QACF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,WAAW;QACT,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;IACpB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,mBAAmB,CACvB,MAAc,EACd,WAAyB;QAEzB,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;YACzD,MAAM,kBAAkB,GACtB,qCAAqC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,kBAAkB;gBACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,UAAU,CAAC,CAAC;YACvD,OAAO,kBAAkB,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,0BAA0B,EAAE;YACtD,MAAM;YACN,gBAAgB,EAAE,IAAI,CAAC,GAAG,IAAI,SAAS;YACvC,WAAW,EAAE,mBAAmB;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,wBAAwB;QAC5B,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,0BAA0B,EAAE;YACtD,gBAAgB,EAAE,IAAI,CAAC,GAAG,IAAI,SAAS;SACxC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK;QACT,kBAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;CACF;AArJD,wCAqJC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js
index 83f3267..d945ccd 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js
@@ -54,7 +54,7 @@
  */
 const connectToBrowser = async (options) => {
     const { browserWSEndpoint, browserURL, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, transport, slowMo = 0, targetFilter, } = options;
-    (0, assert_js_1.assert)(Number(!!browserWSEndpoint) + Number(!!browserURL) + Number(!!transport) ===
+    assert_js_1.assert(Number(!!browserWSEndpoint) + Number(!!browserURL) + Number(!!transport) ===
         1, 'Exactly one of browserWSEndpoint, browserURL or transport must be passed to puppeteer.connect');
     let connection = null;
     if (transport) {
@@ -77,7 +77,7 @@
 exports.connectToBrowser = connectToBrowser;
 async function getWSEndpoint(browserURL) {
     const endpointURL = new URL('/json/version', browserURL);
-    const fetch = await (0, fetch_js_1.getFetch)();
+    const fetch = await fetch_js_1.getFetch();
     try {
         const result = await fetch(endpointURL.toString(), {
             method: 'GET',
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js.map
index 8228708..f1649ab 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/BrowserConnector.js.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserConnector.js","sourceRoot":"","sources":["../../../../src/common/BrowserConnector.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"BrowserConnector.js","sourceRoot":"","sources":["../../../../src/common/BrowserConnector.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts
index b652c7a..19b84f0 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts
@@ -2,7 +2,6 @@
 import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
 import { ConnectionTransport } from './ConnectionTransport.js';
 import { EventEmitter } from './EventEmitter.js';
-import { ProtocolError } from './Errors.js';
 /**
  * @public
  */
@@ -13,7 +12,7 @@
 export interface ConnectionCallback {
     resolve: Function;
     reject: Function;
-    error: ProtocolError;
+    error: Error;
     method: string;
 }
 /**
@@ -25,7 +24,7 @@
     readonly Disconnected: symbol;
 };
 /**
- * @public
+ * @internal
  */
 export declare class Connection extends EventEmitter {
     _url: string;
@@ -64,7 +63,6 @@
     error: {
         message: string;
         data: any;
-        code: number;
     };
     result?: any;
 }
@@ -85,7 +83,7 @@
  * events can be subscribed to with `CDPSession.on` method.
  *
  * Useful links: {@link https://chromedevtools.github.io/devtools-protocol/ | DevTools Protocol Viewer}
- * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/HEAD/README.md | Getting Started with DevTools Protocol}.
+ * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md | Getting Started with DevTools Protocol}.
  *
  * @example
  * ```js
@@ -128,9 +126,5 @@
      * @internal
      */
     _onClosed(): void;
-    /**
-     * @internal
-     */
-    id(): string;
 }
 //# sourceMappingURL=Connection.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts.map
index ee5ae5a..3d9290b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js
index 6b0dd01..336f9cf 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js
@@ -18,10 +18,9 @@
  */
 const assert_js_1 = require("./assert.js");
 const Debug_js_1 = require("./Debug.js");
-const debugProtocolSend = (0, Debug_js_1.debug)('puppeteer:protocol:SEND â–º');
-const debugProtocolReceive = (0, Debug_js_1.debug)('puppeteer:protocol:RECV â—€');
+const debugProtocolSend = Debug_js_1.debug('puppeteer:protocol:SEND â–º');
+const debugProtocolReceive = Debug_js_1.debug('puppeteer:protocol:RECV â—€');
 const EventEmitter_js_1 = require("./EventEmitter.js");
-const Errors_js_1 = require("./Errors.js");
 /**
  * Internal events that the Connection class emits.
  *
@@ -31,7 +30,7 @@
     Disconnected: Symbol('Connection.Disconnected'),
 };
 /**
- * @public
+ * @internal
  */
 class Connection extends EventEmitter_js_1.EventEmitter {
     constructor(url, transport, delay = 0) {
@@ -69,12 +68,7 @@
         const params = paramArgs.length ? paramArgs[0] : undefined;
         const id = this._rawSend({ method, params });
         return new Promise((resolve, reject) => {
-            this._callbacks.set(id, {
-                resolve,
-                reject,
-                error: new Errors_js_1.ProtocolError(),
-                method,
-            });
+            this._callbacks.set(id, { resolve, reject, error: new Error(), method });
         });
     }
     _rawSend(message) {
@@ -179,7 +173,7 @@
  * events can be subscribed to with `CDPSession.on` method.
  *
  * Useful links: {@link https://chromedevtools.github.io/devtools-protocol/ | DevTools Protocol Viewer}
- * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/HEAD/README.md | Getting Started with DevTools Protocol}.
+ * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md | Getting Started with DevTools Protocol}.
  *
  * @example
  * ```js
@@ -220,12 +214,7 @@
             params,
         });
         return new Promise((resolve, reject) => {
-            this._callbacks.set(id, {
-                resolve,
-                reject,
-                error: new Errors_js_1.ProtocolError(),
-                method,
-            });
+            this._callbacks.set(id, { resolve, reject, error: new Error(), method });
         });
     }
     /**
@@ -241,7 +230,7 @@
                 callback.resolve(object.result);
         }
         else {
-            (0, assert_js_1.assert)(!object.id);
+            assert_js_1.assert(!object.id);
             this.emit(object.method, object.params);
         }
     }
@@ -266,12 +255,6 @@
         this._connection = null;
         this.emit(exports.CDPSessionEmittedEvents.Disconnected);
     }
-    /**
-     * @internal
-     */
-    id() {
-        return this._sessionId;
-    }
 }
 exports.CDPSession = CDPSession;
 /**
@@ -284,16 +267,15 @@
     let message = `Protocol error (${method}): ${object.error.message}`;
     if ('data' in object.error)
         message += ` ${object.error.data}`;
-    return rewriteError(error, message, object.error.message);
+    return rewriteError(error, message);
 }
 /**
  * @param {!Error} error
  * @param {string} message
  * @returns {!Error}
  */
-function rewriteError(error, message, originalMessage) {
+function rewriteError(error, message) {
     error.message = message;
-    error.originalMessage = originalMessage;
     return error;
 }
 //# sourceMappingURL=Connection.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js.map
index af1a5f6..957939b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Connection.js.map
@@ -1 +1 @@
-{"version":3,"file":"Connection.js","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Connection.js","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts
index b7fc436..177091f 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts
@@ -42,16 +42,6 @@
     }>;
 }
 /**
- * The CoverageEntry class for JavaScript
- * @public
- */
-export interface JSCoverageEntry extends CoverageEntry {
-    /**
-     * Raw V8 script coverage entry.
-     */
-    rawScriptCoverage?: Protocol.Profiler.ScriptCoverage;
-}
-/**
  * Set of configurable options for JS coverage.
  * @public
  */
@@ -64,10 +54,6 @@
      * Whether anonymous scripts generated by the page should be reported.
      */
     reportAnonymousScripts?: boolean;
-    /**
-     * Whether the result includes raw V8 script coverage entries.
-     */
-    includeRawScriptCoverage?: boolean;
 }
 /**
  * Set of configurable options for CSS coverage.
@@ -126,8 +112,8 @@
     _cssCoverage: CSSCoverage;
     constructor(client: CDPSession);
     /**
-     * @param options - Set of configurable options for coverage defaults to
-     * `resetOnNavigation : true, reportAnonymousScripts : false`
+     * @param options - Set of configurable options for coverage defaults to `{
+     * resetOnNavigation : true, reportAnonymousScripts : false }`
      * @returns Promise that resolves when coverage is started.
      *
      * @remarks
@@ -145,10 +131,10 @@
      * JavaScript Coverage doesn't include anonymous scripts by default.
      * However, scripts with sourceURLs are reported.
      */
-    stopJSCoverage(): Promise<JSCoverageEntry[]>;
+    stopJSCoverage(): Promise<CoverageEntry[]>;
     /**
-     * @param options - Set of configurable options for coverage, defaults to
-     * `resetOnNavigation : true`
+     * @param options - Set of configurable options for coverage, defaults to `{
+     * resetOnNavigation : true }`
      * @returns Promise that resolves when coverage is started.
      */
     startCSSCoverage(options?: CSSCoverageOptions): Promise<void>;
@@ -172,16 +158,14 @@
     _eventListeners: PuppeteerEventListener[];
     _resetOnNavigation: boolean;
     _reportAnonymousScripts: boolean;
-    _includeRawScriptCoverage: boolean;
     constructor(client: CDPSession);
     start(options?: {
         resetOnNavigation?: boolean;
         reportAnonymousScripts?: boolean;
-        includeRawScriptCoverage?: boolean;
     }): Promise<void>;
     _onExecutionContextsCleared(): void;
     _onScriptParsed(event: Protocol.Debugger.ScriptParsedEvent): Promise<void>;
-    stop(): Promise<JSCoverageEntry[]>;
+    stop(): Promise<CoverageEntry[]>;
 }
 /**
  * @public
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts.map
index 73e45d0..149e0e7 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Coverage.d.ts","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAsB,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD;;OAEG;IACH,iBAAiB,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,QAAQ;IACnB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,WAAW,CAAC;gBAEd,MAAM,EAAE,UAAU;IAK9B;;;;;;;;;;OAUG;IACG,eAAe,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;;;OAOG;IACG,cAAc,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAIlD;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;;;;;OAMG;IACG,eAAe,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAGlD;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,WAAW,sBAA6B;IACxC,cAAc,sBAA6B;IAC3C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;IAChC,yBAAyB,UAAS;gBAEtB,MAAM,EAAE,UAAU;IAIxB,KAAK,CACT,OAAO,GAAE;QACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,wBAAwB,CAAC,EAAE,OAAO,CAAC;KAC/B,GACL,OAAO,CAAC,IAAI,CAAC;IAoChB,2BAA2B,IAAI,IAAI;IAM7B,eAAe,CACnB,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBV,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;CAsCzC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,eAAe,sBAA6B;IAC5C,kBAAkB,sBAA6B;IAC/C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CAAC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BzE,2BAA2B,IAAI,IAAI;IAM7B,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBtE,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAuCvC"}
\ No newline at end of file
+{"version":3,"file":"Coverage.d.ts","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAsB,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,QAAQ;IACnB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,WAAW,CAAC;gBAEd,MAAM,EAAE,UAAU;IAK9B;;;;;;;;;;OAUG;IACG,eAAe,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;;;OAOG;IACG,cAAc,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAIhD;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;;;;;OAMG;IACG,eAAe,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAGlD;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,WAAW,sBAA6B;IACxC,cAAc,sBAA6B;IAC3C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CACT,OAAO,GAAE;QACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAC;KAC7B,GACL,OAAO,CAAC,IAAI,CAAC;IAgChB,2BAA2B,IAAI,IAAI;IAM7B,eAAe,CACnB,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBV,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAkCvC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,eAAe,sBAA6B;IAC5C,kBAAkB,sBAA6B;IAC/C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CAAC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BzE,2BAA2B,IAAI,IAAI;IAM7B,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBtE,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAuCvC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js
index 62abc2e..47fcfa1 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js
@@ -61,8 +61,8 @@
         this._cssCoverage = new CSSCoverage(client);
     }
     /**
-     * @param options - Set of configurable options for coverage defaults to
-     * `resetOnNavigation : true, reportAnonymousScripts : false`
+     * @param options - Set of configurable options for coverage defaults to `{
+     * resetOnNavigation : true, reportAnonymousScripts : false }`
      * @returns Promise that resolves when coverage is started.
      *
      * @remarks
@@ -86,8 +86,8 @@
         return await this._jsCoverage.stop();
     }
     /**
-     * @param options - Set of configurable options for coverage, defaults to
-     * `resetOnNavigation : true`
+     * @param options - Set of configurable options for coverage, defaults to `{
+     * resetOnNavigation : true }`
      * @returns Promise that resolves when coverage is started.
      */
     async startCSSCoverage(options = {}) {
@@ -116,15 +116,13 @@
         this._eventListeners = [];
         this._resetOnNavigation = false;
         this._reportAnonymousScripts = false;
-        this._includeRawScriptCoverage = false;
         this._client = client;
     }
     async start(options = {}) {
-        (0, assert_js_1.assert)(!this._enabled, 'JSCoverage is already enabled');
-        const { resetOnNavigation = true, reportAnonymousScripts = false, includeRawScriptCoverage = false, } = options;
+        assert_js_1.assert(!this._enabled, 'JSCoverage is already enabled');
+        const { resetOnNavigation = true, reportAnonymousScripts = false } = options;
         this._resetOnNavigation = resetOnNavigation;
         this._reportAnonymousScripts = reportAnonymousScripts;
-        this._includeRawScriptCoverage = includeRawScriptCoverage;
         this._enabled = true;
         this._scriptURLs.clear();
         this._scriptSources.clear();
@@ -135,7 +133,7 @@
         await Promise.all([
             this._client.send('Profiler.enable'),
             this._client.send('Profiler.startPreciseCoverage', {
-                callCount: this._includeRawScriptCoverage,
+                callCount: false,
                 detailed: true,
             }),
             this._client.send('Debugger.enable'),
@@ -164,11 +162,11 @@
         }
         catch (error) {
             // This might happen if the page has already navigated away.
-            (0, helper_js_1.debugError)(error);
+            helper_js_1.debugError(error);
         }
     }
     async stop() {
-        (0, assert_js_1.assert)(this._enabled, 'JSCoverage is not enabled');
+        assert_js_1.assert(this._enabled, 'JSCoverage is not enabled');
         this._enabled = false;
         const result = await Promise.all([
             this._client.send('Profiler.takePreciseCoverage'),
@@ -190,12 +188,7 @@
             for (const func of entry.functions)
                 flattenRanges.push(...func.ranges);
             const ranges = convertToDisjointRanges(flattenRanges);
-            if (!this._includeRawScriptCoverage) {
-                coverage.push({ url, ranges, text });
-            }
-            else {
-                coverage.push({ url, ranges, text, rawScriptCoverage: entry });
-            }
+            coverage.push({ url, ranges, text });
         }
         return coverage;
     }
@@ -215,7 +208,7 @@
         this._client = client;
     }
     async start(options = {}) {
-        (0, assert_js_1.assert)(!this._enabled, 'CSSCoverage is already enabled');
+        assert_js_1.assert(!this._enabled, 'CSSCoverage is already enabled');
         const { resetOnNavigation = true } = options;
         this._resetOnNavigation = resetOnNavigation;
         this._enabled = true;
@@ -251,11 +244,11 @@
         }
         catch (error) {
             // This might happen if the page has already navigated away.
-            (0, helper_js_1.debugError)(error);
+            helper_js_1.debugError(error);
         }
     }
     async stop() {
-        (0, assert_js_1.assert)(this._enabled, 'CSSCoverage is not enabled');
+        assert_js_1.assert(this._enabled, 'CSSCoverage is not enabled');
         this._enabled = false;
         const ruleTrackingResponse = await this._client.send('CSS.stopRuleUsageTracking');
         await Promise.all([
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js.map
index 8eef6c3..edd46ab 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Coverage.js.map
@@ -1 +1 @@
-{"version":3,"file":"Coverage.js","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Coverage.js","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts
index d6c3673..bcd8edf 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts
@@ -21,7 +21,6 @@
 import { MouseButton } from './Input.js';
 import { FrameManager, Frame } from './FrameManager.js';
 import { SerializableOrJSHandle, EvaluateHandleFn, WrapElementHandle, EvaluateFn, EvaluateFnReturnType, UnwrapPromiseLike } from './EvalTypes.js';
-import { CDPSession } from './Connection.js';
 /**
  * @public
  */
@@ -42,7 +41,6 @@
  */
 export declare class DOMWorld {
     private _frameManager;
-    private _client;
     private _frame;
     private _timeoutSettings;
     private _documentPromise?;
@@ -60,7 +58,7 @@
     _boundFunctions: Map<string, Function>;
     private _ctxBindings;
     private static bindingIdentifier;
-    constructor(client: CDPSession, frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
+    constructor(frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
     frame(): Frame;
     _setContext(context?: ExecutionContext): Promise<void>;
     _hasContext(): boolean;
@@ -92,7 +90,6 @@
         url?: string;
         path?: string;
         content?: string;
-        id?: string;
         type?: string;
     }): Promise<ElementHandle>;
     /**
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts.map
index 5a084bc..feb8194 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"DOMWorld.d.ts","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DOMWorld.d.ts","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js
index ba2e875..1a4f65c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js
@@ -26,7 +26,7 @@
  * @internal
  */
 class DOMWorld {
-    constructor(client, frameManager, frame, timeoutSettings) {
+    constructor(frameManager, frame, timeoutSettings) {
         this._documentPromise = null;
         this._contextPromise = null;
         this._contextResolveCallback = null;
@@ -45,21 +45,17 @@
         // If multiple waitFor are set up asynchronously, we need to wait for the
         // first one to set up the binding in the page before running the others.
         this._settingUpBinding = null;
-        // Keep own reference to client because it might differ from the FrameManager's
-        // client for OOP iframes.
-        this._client = client;
         this._frameManager = frameManager;
         this._frame = frame;
         this._timeoutSettings = timeoutSettings;
         this._setContext(null);
-        this._client.on('Runtime.bindingCalled', (event) => this._onBindingCalled(event));
+        frameManager._client.on('Runtime.bindingCalled', (event) => this._onBindingCalled(event));
     }
     frame() {
         return this._frame;
     }
     async _setContext(context) {
         if (context) {
-            (0, assert_js_1.assert)(this._contextResolveCallback, 'Execution Context has already been set.');
             this._ctxBindings.clear();
             this._contextResolveCallback.call(null, context);
             this._contextResolveCallback = null;
@@ -165,11 +161,11 @@
      * `url` or `content`.
      */
     async addScriptTag(options) {
-        const { url = null, path = null, content = null, id = '', type = '', } = options;
+        const { url = null, path = null, content = null, type = '' } = options;
         if (url !== null) {
             try {
                 const context = await this.executionContext();
-                return (await context.evaluateHandle(addScriptUrl, url, id, type)).asElement();
+                return (await context.evaluateHandle(addScriptUrl, url, type)).asElement();
             }
             catch (error) {
                 throw new Error(`Loading script from ${url} failed`);
@@ -183,18 +179,16 @@
             let contents = await fs.promises.readFile(path, 'utf8');
             contents += '//# sourceURL=' + path.replace(/\n/g, '');
             const context = await this.executionContext();
-            return (await context.evaluateHandle(addScriptContent, contents, id, type)).asElement();
+            return (await context.evaluateHandle(addScriptContent, contents, type)).asElement();
         }
         if (content !== null) {
             const context = await this.executionContext();
-            return (await context.evaluateHandle(addScriptContent, content, id, type)).asElement();
+            return (await context.evaluateHandle(addScriptContent, content, type)).asElement();
         }
         throw new Error('Provide an object with a `url`, `path` or `content` property');
-        async function addScriptUrl(url, id, type) {
+        async function addScriptUrl(url, type) {
             const script = document.createElement('script');
             script.src = url;
-            if (id)
-                script.id = id;
             if (type)
                 script.type = type;
             const promise = new Promise((res, rej) => {
@@ -205,12 +199,10 @@
             await promise;
             return script;
         }
-        function addScriptContent(content, id, type = 'text/javascript') {
+        function addScriptContent(content, type = 'text/javascript') {
             const script = document.createElement('script');
             script.type = type;
             script.text = content;
-            if (id)
-                script.id = id;
             let error = null;
             script.onerror = (e) => (error = e);
             document.head.appendChild(script);
@@ -282,25 +274,25 @@
     }
     async click(selector, options) {
         const handle = await this.$(selector);
-        (0, assert_js_1.assert)(handle, 'No node found for selector: ' + selector);
+        assert_js_1.assert(handle, 'No node found for selector: ' + selector);
         await handle.click(options);
         await handle.dispose();
     }
     async focus(selector) {
         const handle = await this.$(selector);
-        (0, assert_js_1.assert)(handle, 'No node found for selector: ' + selector);
+        assert_js_1.assert(handle, 'No node found for selector: ' + selector);
         await handle.focus();
         await handle.dispose();
     }
     async hover(selector) {
         const handle = await this.$(selector);
-        (0, assert_js_1.assert)(handle, 'No node found for selector: ' + selector);
+        assert_js_1.assert(handle, 'No node found for selector: ' + selector);
         await handle.hover();
         await handle.dispose();
     }
     async select(selector, ...values) {
         const handle = await this.$(selector);
-        (0, assert_js_1.assert)(handle, 'No node found for selector: ' + selector);
+        assert_js_1.assert(handle, 'No node found for selector: ' + selector);
         const result = await handle.select(...values);
         await handle.dispose();
         return result;
@@ -312,12 +304,12 @@
     }
     async type(selector, text, options) {
         const handle = await this.$(selector);
-        (0, assert_js_1.assert)(handle, 'No node found for selector: ' + selector);
+        assert_js_1.assert(handle, 'No node found for selector: ' + selector);
         await handle.type(text, options);
         await handle.dispose();
     }
     async waitForSelector(selector, options) {
-        const { updatedSelector, queryHandler } = (0, QueryHandler_js_1.getQueryHandlerAndSelector)(selector);
+        const { updatedSelector, queryHandler } = QueryHandler_js_1.getQueryHandlerAndSelector(selector);
         return queryHandler.waitFor(this, updatedSelector, options);
     }
     /**
@@ -355,7 +347,7 @@
                     return;
                 }
                 else {
-                    (0, helper_js_1.debugError)(error);
+                    helper_js_1.debugError(error);
                     return;
                 }
             }
@@ -396,7 +388,7 @@
             // the next execution context if needed.
             if (error.message.includes('Protocol error'))
                 return;
-            (0, helper_js_1.debugError)(error);
+            helper_js_1.debugError(error);
         }
         function deliverResult(name, seq, result) {
             globalThis[name].callbacks.get(seq).resolve(result);
@@ -486,9 +478,9 @@
         this._runCount = 0;
         this._terminated = false;
         if (helper_js_1.helper.isString(options.polling))
-            (0, assert_js_1.assert)(options.polling === 'raf' || options.polling === 'mutation', 'Unknown polling option: ' + options.polling);
+            assert_js_1.assert(options.polling === 'raf' || options.polling === 'mutation', 'Unknown polling option: ' + options.polling);
         else if (helper_js_1.helper.isNumber(options.polling))
-            (0, assert_js_1.assert)(options.polling > 0, 'Cannot poll with non-positive interval: ' + options.polling);
+            assert_js_1.assert(options.polling > 0, 'Cannot poll with non-positive interval: ' + options.polling);
         else
             throw new Error('Unknown polling options: ' + options.polling);
         function getPredicateBody(predicateBody) {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js.map
index 9b16cdf..8d86954 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DOMWorld.js.map
@@ -1 +1 @@
-{"version":3,"file":"DOMWorld.js","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DOMWorld.js","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map
index 4146e0d..d57455d 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"DeviceDescriptors.d.ts","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AA+mCD;;GAEG;AACH,oBAAY,UAAU,GAAG;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,UAAe,CAAC"}
\ No newline at end of file
+{"version":3,"file":"DeviceDescriptors.d.ts","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AA6+BD;;GAEG;AACH,oBAAY,UAAU,GAAG;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,UAAe,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js
index 9d08747..c515049 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js
@@ -162,78 +162,6 @@
         },
     },
     {
-        name: 'Galaxy S8',
-        userAgent: 'Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36',
-        viewport: {
-            width: 360,
-            height: 740,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy S8 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36',
-        viewport: {
-            width: 740,
-            height: 360,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Galaxy S9+',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36',
-        viewport: {
-            width: 320,
-            height: 658,
-            deviceScaleFactor: 4.5,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy S9+ landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36',
-        viewport: {
-            width: 658,
-            height: 320,
-            deviceScaleFactor: 4.5,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Galaxy Tab S4',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36',
-        viewport: {
-            width: 712,
-            height: 1138,
-            deviceScaleFactor: 2.25,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy Tab S4 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36',
-        viewport: {
-            width: 1138,
-            height: 712,
-            deviceScaleFactor: 2.25,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
         name: 'iPad',
         userAgent: 'Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1',
         viewport: {
@@ -1013,54 +941,6 @@
             isLandscape: true,
         },
     },
-    {
-        name: 'Pixel 3',
-        userAgent: 'Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36',
-        viewport: {
-            width: 393,
-            height: 786,
-            deviceScaleFactor: 2.75,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Pixel 3 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36',
-        viewport: {
-            width: 786,
-            height: 393,
-            deviceScaleFactor: 2.75,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Pixel 4',
-        userAgent: 'Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36',
-        viewport: {
-            width: 353,
-            height: 745,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Pixel 4 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36',
-        viewport: {
-            width: 745,
-            height: 353,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
 ];
 /**
  * @internal
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js.map
index 9577ad4..3b5e2d6 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/DeviceDescriptors.js.map
@@ -1 +1 @@
-{"version":3,"file":"DeviceDescriptors.js","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DeviceDescriptors.js","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js
index 29ae941..fcdc929 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js
@@ -76,7 +76,7 @@
      * @returns A promise that resolves when the dialog has been accepted.
      */
     async accept(promptText) {
-        (0, assert_js_1.assert)(!this._handled, 'Cannot accept dialog which is already handled!');
+        assert_js_1.assert(!this._handled, 'Cannot accept dialog which is already handled!');
         this._handled = true;
         await this._client.send('Page.handleJavaScriptDialog', {
             accept: true,
@@ -87,7 +87,7 @@
      * @returns A promise which will resolve once the dialog has been dismissed
      */
     async dismiss() {
-        (0, assert_js_1.assert)(!this._handled, 'Cannot dismiss dialog which is already handled!');
+        assert_js_1.assert(!this._handled, 'Cannot dismiss dialog which is already handled!');
         this._handled = true;
         await this._client.send('Page.handleJavaScriptDialog', {
             accept: false,
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js.map
index 09bd56a..e802077 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Dialog.js.map
@@ -1 +1 @@
-{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../../src/common/Dialog.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,2CAAqC;AAIrC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,MAAM;IAOjB;;OAEG;IACH,YACE,MAAkB,EAClB,IAA8B,EAC9B,OAAe,EACf,YAAY,GAAG,EAAE;QATX,aAAQ,GAAG,KAAK,CAAC;QAWvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,UAAmB;QAC9B,IAAA,kBAAM,EAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,gDAAgD,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;YACrD,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAA,kBAAM,EAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,iDAAiD,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;YACrD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;CACF;AArED,wBAqEC"}
\ No newline at end of file
+{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../../src/common/Dialog.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,2CAAqC;AAIrC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,MAAM;IAOjB;;OAEG;IACH,YACE,MAAkB,EAClB,IAA8B,EAC9B,OAAe,EACf,YAAY,GAAG,EAAE;QATX,aAAQ,GAAG,KAAK,CAAC;QAWvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,UAAmB;QAC9B,kBAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,gDAAgD,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;YACrD,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,kBAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,iDAAiD,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;YACrD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;CACF;AArED,wBAqEC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts
index 27341a6..39862a6 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts
@@ -17,7 +17,7 @@
  * @public
  */
 export declare class CustomError extends Error {
-    constructor(message?: string);
+    constructor(message: string);
 }
 /**
  * TimeoutError is emitted whenever certain operations are terminated due to timeout.
@@ -32,15 +32,6 @@
 export declare class TimeoutError extends CustomError {
 }
 /**
- * ProtocolError is emitted whenever there is an error from the protocol.
- *
- * @public
- */
-export declare class ProtocolError extends CustomError {
-    code?: number;
-    originalMessage: string;
-}
-/**
  * @public
  */
 export declare type PuppeteerErrors = Record<string, typeof CustomError>;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts.map
index 67071c9..1b23f3a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,CAAC,EAAE,MAAM;CAK7B;AAED;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,WAAW;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CAChC;AACD;;GAEG;AACH,oBAAY,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,CAAC,CAAC;AACjE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAE7B,CAAC"}
\ No newline at end of file
+{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAK5B;AAED;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD;;GAEG;AACH,oBAAY,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,CAAC,CAAC;AACjE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAE7B,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js
index a92ce33..588c4fa 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 Object.defineProperty(exports, "__esModule", { value: true });
-exports.puppeteerErrors = exports.ProtocolError = exports.TimeoutError = exports.CustomError = void 0;
+exports.puppeteerErrors = exports.TimeoutError = exports.CustomError = void 0;
 /**
  * @public
  */
@@ -41,14 +41,6 @@
 }
 exports.TimeoutError = TimeoutError;
 /**
- * ProtocolError is emitted whenever there is an error from the protocol.
- *
- * @public
- */
-class ProtocolError extends CustomError {
-}
-exports.ProtocolError = ProtocolError;
-/**
  * @public
  */
 exports.puppeteerErrors = {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js.map
index 37ad7b9..c81d5ec 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Errors.js.map
@@ -1 +1 @@
-{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AACH,MAAa,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACF;AAND,kCAMC;AAED;;;;;;;;;GASG;AACH,MAAa,YAAa,SAAQ,WAAW;CAAG;AAAhD,oCAAgD;AAChD;;;;GAIG;AACH,MAAa,aAAc,SAAQ,WAAW;CAG7C;AAHD,sCAGC;AAKD;;GAEG;AACU,QAAA,eAAe,GAAoB;IAC9C,YAAY;CACb,CAAC"}
\ No newline at end of file
+{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;GAEG;AACH,MAAa,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACF;AAND,kCAMC;AAED;;;;;;;;;GASG;AACH,MAAa,YAAa,SAAQ,WAAW;CAAG;AAAhD,oCAAgD;AAKhD;;GAEG;AACU,QAAA,eAAe,GAAoB;IAC9C,YAAY;CACb,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts
index 9b3c6a3..992a0de 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts
@@ -37,7 +37,7 @@
 /**
  * @public
  */
-export declare type JSONArray = readonly Serializable[];
+export declare type JSONArray = Serializable[];
 /**
  * @public
  */
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts.map
index a980498..46692b3 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/EvalTypes.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"EvalTypes.d.ts","sourceRoot":"","sources":["../../../../src/common/EvalTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAC9E;;GAEG;AACH,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1E;;GAEG;AACH,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,CACjE,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,MAAM,CAAC,GACR,CAAC,GACD,GAAG,CAAC;AAER;;GAEG;AACH,oBAAY,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAElE;;GAEG;AACH,oBAAY,YAAY,GACpB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,oBAAY,SAAS,GAAG,SAAS,YAAY,EAAE,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,oBAAY,sBAAsB,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE7D;;;IAGI;AACJ,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE5E;;;IAGI;AACJ,oBAAY,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC"}
\ No newline at end of file
+{"version":3,"file":"EvalTypes.d.ts","sourceRoot":"","sources":["../../../../src/common/EvalTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAC9E;;GAEG;AACH,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1E;;GAEG;AACH,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,CACjE,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,MAAM,CAAC,GACR,CAAC,GACD,GAAG,CAAC;AAER;;GAEG;AACH,oBAAY,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAElE;;GAEG;AACH,oBAAY,YAAY,GACpB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,oBAAY,SAAS,GAAG,YAAY,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,oBAAY,sBAAsB,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE7D;;;IAGI;AACJ,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE5E;;;IAGI;AACJ,oBAAY,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js
index 5ef7c40..d2b71c0 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js
@@ -23,7 +23,7 @@
      */
     constructor() {
         this.eventsMap = new Map();
-        this.emitter = (0, index_js_1.default)(this.eventsMap);
+        this.emitter = index_js_1.default(this.eventsMap);
     }
     /**
      * Bind an event listener to fire when an event occurs.
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js.map
index 4ae2bd0..c2fecee 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/EventEmitter.js.map
@@ -1 +1 @@
-{"version":3,"file":"EventEmitter.js","sourceRoot":"","sources":["../../../../src/common/EventEmitter.ts"],"names":[],"mappings":";;;;;;AAAA,8EAIwC;AA0BxC;;;;;;;;;;;GAWG;AACH,MAAa,YAAY;IAIvB;;OAEG;IACH;QALQ,cAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;QAMlD,IAAI,CAAC,OAAO,GAAG,IAAA,kBAAI,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,EAAE,CAAC,KAAgB,EAAE,OAAgB;QACnC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,KAAgB,EAAE,OAAgB;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,KAAgB,EAAE,OAAgB;QAC/C,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,KAAgB,EAAE,OAAgB;QAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CAAC,KAAgB,EAAE,SAAmB;QACxC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,KAAgB,EAAE,OAAgB;QACrC,MAAM,WAAW,GAAY,CAAC,SAAS,EAAE,EAAE;YACzC,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,KAAgB;QAC5B,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAAiB;QAClC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,mBAAmB,CAAC,KAAgB;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;CACF;AA1GD,oCA0GC"}
\ No newline at end of file
+{"version":3,"file":"EventEmitter.js","sourceRoot":"","sources":["../../../../src/common/EventEmitter.ts"],"names":[],"mappings":";;;;;;AAAA,8EAIwC;AA0BxC;;;;;;;;;;;GAWG;AACH,MAAa,YAAY;IAIvB;;OAEG;IACH;QALQ,cAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;QAMlD,IAAI,CAAC,OAAO,GAAG,kBAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,EAAE,CAAC,KAAgB,EAAE,OAAgB;QACnC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,KAAgB,EAAE,OAAgB;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,KAAgB,EAAE,OAAgB;QAC/C,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,KAAgB,EAAE,OAAgB;QAC5C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CAAC,KAAgB,EAAE,SAAmB;QACxC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,KAAgB,EAAE,OAAgB;QACrC,MAAM,WAAW,GAAY,CAAC,SAAS,EAAE,EAAE;YACzC,OAAO,CAAC,SAAS,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,KAAgB;QAC5B,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAAiB;QAClC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,mBAAmB,CAAC,KAAgB;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;CACF;AA1GD,oCA0GC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js
index 34f19eb..6c0e9e5 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js
@@ -175,7 +175,7 @@
                 throw new Error('Evaluation failed: ' + helper_js_1.helper.getExceptionMessage(exceptionDetails));
             return returnByValue
                 ? helper_js_1.helper.valueFromRemoteObject(remoteObject)
-                : (0, JSHandle_js_1.createJSHandle)(this, remoteObject);
+                : JSHandle_js_1.createJSHandle(this, remoteObject);
         }
         if (typeof pageFunction !== 'function')
             throw new Error(`Expected to get |string| or |function| as the first argument, but got "${pageFunction}" instead.`);
@@ -221,7 +221,7 @@
             throw new Error('Evaluation failed: ' + helper_js_1.helper.getExceptionMessage(exceptionDetails));
         return returnByValue
             ? helper_js_1.helper.valueFromRemoteObject(remoteObject)
-            : (0, JSHandle_js_1.createJSHandle)(this, remoteObject);
+            : JSHandle_js_1.createJSHandle(this, remoteObject);
         /**
          * @param {*} arg
          * @returns {*}
@@ -289,12 +289,12 @@
      * @returns A handle to an array of objects with the given prototype.
      */
     async queryObjects(prototypeHandle) {
-        (0, assert_js_1.assert)(!prototypeHandle._disposed, 'Prototype JSHandle is disposed!');
-        (0, assert_js_1.assert)(prototypeHandle._remoteObject.objectId, 'Prototype JSHandle must not be referencing primitive value');
+        assert_js_1.assert(!prototypeHandle._disposed, 'Prototype JSHandle is disposed!');
+        assert_js_1.assert(prototypeHandle._remoteObject.objectId, 'Prototype JSHandle must not be referencing primitive value');
         const response = await this._client.send('Runtime.queryObjects', {
             prototypeObjectId: prototypeHandle._remoteObject.objectId,
         });
-        return (0, JSHandle_js_1.createJSHandle)(this, response.objects);
+        return JSHandle_js_1.createJSHandle(this, response.objects);
     }
     /**
      * @internal
@@ -304,14 +304,14 @@
             backendNodeId: backendNodeId,
             executionContextId: this._contextId,
         });
-        return (0, JSHandle_js_1.createJSHandle)(this, object);
+        return JSHandle_js_1.createJSHandle(this, object);
     }
     /**
      * @internal
      */
     async _adoptElementHandle(elementHandle) {
-        (0, assert_js_1.assert)(elementHandle.executionContext() !== this, 'Cannot adopt handle that already belongs to this execution context');
-        (0, assert_js_1.assert)(this._world, 'Cannot adopt handle without DOMWorld');
+        assert_js_1.assert(elementHandle.executionContext() !== this, 'Cannot adopt handle that already belongs to this execution context');
+        assert_js_1.assert(this._world, 'Cannot adopt handle without DOMWorld');
         const nodeInfo = await this._client.send('DOM.describeNode', {
             objectId: elementHandle._remoteObject.objectId,
         });
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js.map
index 0893ca6..4d875ce 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/ExecutionContext.js.map
@@ -1 +1 @@
-{"version":3,"file":"ExecutionContext.js","sourceRoot":"","sources":["../../../../src/common/ExecutionContext.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"ExecutionContext.js","sourceRoot":"","sources":["../../../../src/common/ExecutionContext.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js
index 187447c..a480bcc 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js
@@ -56,7 +56,7 @@
      * then they are resolved relative to the {@link https://nodejs.org/api/process.html#process_process_cwd | current working directory}.
      */
     async accept(filePaths) {
-        (0, assert_js_1.assert)(!this._handled, 'Cannot accept FileChooser which is already handled!');
+        assert_js_1.assert(!this._handled, 'Cannot accept FileChooser which is already handled!');
         this._handled = true;
         await this._element.uploadFile(...filePaths);
     }
@@ -64,7 +64,7 @@
      * Closes the file chooser without selecting any files.
      */
     cancel() {
-        (0, assert_js_1.assert)(!this._handled, 'Cannot cancel FileChooser which is already handled!');
+        assert_js_1.assert(!this._handled, 'Cannot cancel FileChooser which is already handled!');
         this._handled = true;
     }
 }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js.map
index d3ec19b..0456a5d 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FileChooser.js.map
@@ -1 +1 @@
-{"version":3,"file":"FileChooser.js","sourceRoot":"","sources":["../../../../src/common/FileChooser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAIH,2CAAqC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAa,WAAW;IAKtB;;OAEG;IACH,YACE,OAAsB,EACtB,KAA2C;QAPrC,aAAQ,GAAG,KAAK,CAAC;QASvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,SAAmB;QAC9B,IAAA,kBAAM,EACJ,CAAC,IAAI,CAAC,QAAQ,EACd,qDAAqD,CACtD,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAA,kBAAM,EACJ,CAAC,IAAI,CAAC,QAAQ,EACd,qDAAqD,CACtD,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AA/CD,kCA+CC"}
\ No newline at end of file
+{"version":3,"file":"FileChooser.js","sourceRoot":"","sources":["../../../../src/common/FileChooser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAIH,2CAAqC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAa,WAAW;IAKtB;;OAEG;IACH,YACE,OAAsB,EACtB,KAA2C;QAPrC,aAAQ,GAAG,KAAK,CAAC;QASvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,SAAmB;QAC9B,kBAAM,CACJ,CAAC,IAAI,CAAC,QAAQ,EACd,qDAAqD,CACtD,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,kBAAM,CACJ,CAAC,IAAI,CAAC,QAAQ,EACd,qDAAqD,CACtD,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AA/CD,kCA+CC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts
index 56110d6..b0dd478 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts
@@ -53,10 +53,8 @@
     private _contextIdToContext;
     private _isolatedWorlds;
     private _mainFrame;
-    private _disconnectPromise?;
     constructor(client: CDPSession, page: Page, ignoreHTTPSErrors: boolean, timeoutSettings: TimeoutSettings);
-    private setupEventListeners;
-    initialize(client?: CDPSession): Promise<void>;
+    initialize(): Promise<void>;
     networkManager(): NetworkManager;
     navigateFrame(frame: Frame, url: string, options?: {
         referer?: string;
@@ -67,24 +65,23 @@
         timeout?: number;
         waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
     }): Promise<HTTPResponse | null>;
-    private _onAttachedToTarget;
-    private _onDetachedFromTarget;
+    private _onFrameMoved;
     _onLifecycleEvent(event: Protocol.Page.LifecycleEventEvent): void;
     _onFrameStoppedLoading(frameId: string): void;
-    _handleFrameTree(session: CDPSession, frameTree: Protocol.Page.FrameTree): void;
+    _handleFrameTree(frameTree: Protocol.Page.FrameTree): void;
     page(): Page;
     mainFrame(): Frame;
     frames(): Frame[];
     frame(frameId: string): Frame | null;
-    _onFrameAttached(session: CDPSession, frameId: string, parentFrameId?: string): void;
+    _onFrameAttached(frameId: string, parentFrameId?: string): void;
     _onFrameNavigated(framePayload: Protocol.Page.Frame): void;
-    _ensureIsolatedWorld(session: CDPSession, name: string): Promise<void>;
+    _ensureIsolatedWorld(name: string): Promise<void>;
     _onFrameNavigatedWithinDocument(frameId: string, url: string): void;
-    _onFrameDetached(frameId: string, reason: Protocol.Page.FrameDetachedEventReason): void;
-    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription, session: CDPSession): void;
+    _onFrameDetached(frameId: string): void;
+    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription): void;
     private _onExecutionContextDestroyed;
     private _onExecutionContextsCleared;
-    executionContextById(contextId: number, session?: CDPSession): ExecutionContext;
+    executionContextById(contextId: number): ExecutionContext;
     private _removeFramesRecursively;
 }
 /**
@@ -243,16 +240,7 @@
     /**
      * @internal
      */
-    _client: CDPSession;
-    /**
-     * @internal
-     */
-    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string, client: CDPSession);
-    /**
-     * @internal
-     */
-    _updateClient(client: CDPSession): void;
-    isOOPFrame(): boolean;
+    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string);
     /**
      * @remarks
      *
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts.map
index 4707ab3..d3ec63c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"FrameManager.d.ts","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,OAAO,EAAE,gBAAgB,EAAyB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAEL,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAc,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAKxB;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;CAUrC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,eAAe,CAAiB;IACxC,gBAAgB,EAAE,eAAe,CAAC;IAClC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,mBAAmB,CAAuC;IAClE,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAiB;gBAG1C,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,IAAI,EACV,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,eAAe;IAUlC,OAAO,CAAC,mBAAmB;IA0CrB,UAAU,CAAC,MAAM,GAAE,UAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgClE,cAAc,IAAI,cAAc;IAI1B,aAAa,CACjB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;KAC5D,GACL,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAgDzB,sBAAsB,CAC1B,KAAK,EAAE,KAAK,EACZ,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;KAC5D,GACL,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;YAiBjB,mBAAmB;YAgBnB,qBAAqB;IAWnC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,GAAG,IAAI;IAOjE,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO7C,gBAAgB,CACd,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,GACjC,IAAI;IAgBP,IAAI,IAAI,IAAI;IAIZ,SAAS,IAAI,KAAK;IAIlB,MAAM,IAAI,KAAK,EAAE;IAIjB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAIpC,gBAAgB,CACd,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI;IAkBP,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI;IAoCpD,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB5E,+BAA+B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAQnE,gBAAgB,CACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,wBAAwB,GAC7C,IAAI;IAUP,0BAA0B,CACxB,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,2BAA2B,EAC5D,OAAO,EAAE,UAAU,GAClB,IAAI;IA+BP,OAAO,CAAC,4BAA4B;IAWpC,OAAO,CAAC,2BAA2B;IAUnC,oBAAoB,CAClB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,UAAyB,GACjC,gBAAgB;IAOnB,OAAO,CAAC,wBAAwB;CAOjC;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,qBAAa,KAAK;IAChB;;OAEG;IACH,aAAa,EAAE,YAAY,CAAC;IAC5B,OAAO,CAAC,YAAY,CAAC,CAAQ;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,SAAS,CAAS;IAC1B;;OAEG;IACH,SAAS,SAAM;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,gBAAgB,cAAqB;IACrC;;OAEG;IACH,UAAU,EAAE,QAAQ,CAAC;IACrB;;OAEG;IACH,eAAe,EAAE,QAAQ,CAAC;IAC1B;;OAEG;IACH,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB;;OAEG;IACH,OAAO,EAAE,UAAU,CAAC;IAEpB;;OAEG;gBAED,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,KAAK,GAAG,IAAI,EACzB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU;IAgBpB;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAgBvC,UAAU,IAAI,OAAO;IAIrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACG,IAAI,CACR,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;KAC5D,GACL,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,iBAAiB,CACrB,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;KAC5D,GACL,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAI/B;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAI7C;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,WAAW,SAAS,QAAQ,GAAG,QAAQ,EAC1D,YAAY,EAAE,gBAAgB,EAC9B,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,WAAW,CAAC;IAIvB;;;;;;;;OAQG;IACG,QAAQ,CAAC,CAAC,SAAS,UAAU,EACjC,YAAY,EAAE,CAAC,EACf,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;IAItD;;;;;;OAMG;IACG,CAAC,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EACjC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAInC;;;;OAIG;IACG,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAItD;;;;;;;;;;;;;;;;;;OAkBG;IACG,KAAK,CAAC,UAAU,EACpB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,CACZ,OAAO,EAAE,OAAO,EAChB,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,EACrC,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAIzC;;;;;;;;;;;;;;;;;;OAkBG;IACG,MAAM,CAAC,UAAU,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,EACrC,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAIzC;;;;;OAKG;IACG,EAAE,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAClC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAInC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAIhC;;;;;;OAMG;IACG,UAAU,CACd,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;KAC5D,GACL,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;;;OASG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,GAAG,IAAI,MAAM;IAIb;;OAEG;IACH,WAAW,IAAI,KAAK,GAAG,IAAI;IAI3B;;OAEG;IACH,WAAW,IAAI,KAAK,EAAE;IAItB;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;;;;;OAQG;IACG,YAAY,CAChB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,aAAa,CAAC;IAIzB;;;;;;;;;OASG;IACG,WAAW,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,aAAa,CAAC;IAI3E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KAChB,GACL,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;;OAQG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;;;;;;;OAUG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIhE;;;;;;;;;;;OAWG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAC1B,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CACL,2BAA2B,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,EACvD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACrC,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IA2B3B;;;;;;;;;;;;;;;;;OAiBG;IACH,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAYhC;;;;;;;;;;;;;;OAcG;IACG,YAAY,CAChB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAShC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,eAAe,CACb,YAAY,EAAE,QAAQ,GAAG,MAAM,EAC/B,OAAO,GAAE,2BAAgC,EACzC,GAAG,IAAI,EAAE,sBAAsB,EAAE,GAChC,OAAO,CAAC,QAAQ,CAAC;IAIpB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B;;OAEG;IACH,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI;IAKnD;;OAEG;IACH,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI3C;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAQvD;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAKzB;;OAEG;IACH,OAAO,IAAI,IAAI;CAOhB"}
\ No newline at end of file
+{"version":3,"file":"FrameManager.d.ts","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js
index 04b1f64..227745f 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js
@@ -16,6 +16,7 @@
  */
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.Frame = exports.FrameManager = exports.FrameManagerEmittedEvents = void 0;
+const Debug_js_1 = require("../common/Debug.js");
 const EventEmitter_js_1 = require("./EventEmitter.js");
 const assert_js_1 = require("./assert.js");
 const helper_js_1 = require("./helper.js");
@@ -23,9 +24,7 @@
 const LifecycleWatcher_js_1 = require("./LifecycleWatcher.js");
 const DOMWorld_js_1 = require("./DOMWorld.js");
 const NetworkManager_js_1 = require("./NetworkManager.js");
-const Connection_js_1 = require("./Connection.js");
 const UTILITY_WORLD_NAME = '__puppeteer_utility_world__';
-const xPathPattern = /^\(\/\/[^\)]+\)|^\/\//;
 /**
  * We use symbols to prevent external parties listening to these events.
  * They are internal to Puppeteer.
@@ -54,70 +53,31 @@
         this._page = page;
         this._networkManager = new NetworkManager_js_1.NetworkManager(client, ignoreHTTPSErrors, this);
         this._timeoutSettings = timeoutSettings;
-        this.setupEventListeners(this._client);
+        this._client.on('Page.frameAttached', (event) => this._onFrameAttached(event.frameId, event.parentFrameId));
+        this._client.on('Page.frameNavigated', (event) => this._onFrameNavigated(event.frame));
+        this._client.on('Page.navigatedWithinDocument', (event) => this._onFrameNavigatedWithinDocument(event.frameId, event.url));
+        this._client.on('Page.frameDetached', (event) => this._onFrameDetached(event.frameId));
+        this._client.on('Page.frameStoppedLoading', (event) => this._onFrameStoppedLoading(event.frameId));
+        this._client.on('Runtime.executionContextCreated', (event) => this._onExecutionContextCreated(event.context));
+        this._client.on('Runtime.executionContextDestroyed', (event) => this._onExecutionContextDestroyed(event.executionContextId));
+        this._client.on('Runtime.executionContextsCleared', () => this._onExecutionContextsCleared());
+        this._client.on('Page.lifecycleEvent', (event) => this._onLifecycleEvent(event));
+        this._client.on('Target.attachedToTarget', async (event) => this._onFrameMoved(event));
     }
-    setupEventListeners(session) {
-        session.on('Page.frameAttached', (event) => {
-            this._onFrameAttached(session, event.frameId, event.parentFrameId);
-        });
-        session.on('Page.frameNavigated', (event) => {
-            this._onFrameNavigated(event.frame);
-        });
-        session.on('Page.navigatedWithinDocument', (event) => {
-            this._onFrameNavigatedWithinDocument(event.frameId, event.url);
-        });
-        session.on('Page.frameDetached', (event) => {
-            this._onFrameDetached(event.frameId, event.reason);
-        });
-        session.on('Page.frameStoppedLoading', (event) => {
-            this._onFrameStoppedLoading(event.frameId);
-        });
-        session.on('Runtime.executionContextCreated', (event) => {
-            this._onExecutionContextCreated(event.context, session);
-        });
-        session.on('Runtime.executionContextDestroyed', (event) => {
-            this._onExecutionContextDestroyed(event.executionContextId, session);
-        });
-        session.on('Runtime.executionContextsCleared', () => {
-            this._onExecutionContextsCleared(session);
-        });
-        session.on('Page.lifecycleEvent', (event) => {
-            this._onLifecycleEvent(event);
-        });
-        session.on('Target.attachedToTarget', async (event) => {
-            this._onAttachedToTarget(event);
-        });
-        session.on('Target.detachedFromTarget', async (event) => {
-            this._onDetachedFromTarget(event);
-        });
-    }
-    async initialize(client = this._client) {
-        try {
-            const result = await Promise.all([
-                client.send('Page.enable'),
-                client.send('Page.getFrameTree'),
-            ]);
-            const { frameTree } = result[1];
-            this._handleFrameTree(client, frameTree);
-            await Promise.all([
-                client.send('Page.setLifecycleEventsEnabled', { enabled: true }),
-                client
-                    .send('Runtime.enable')
-                    .then(() => this._ensureIsolatedWorld(client, UTILITY_WORLD_NAME)),
-                // TODO: Network manager is not aware of OOP iframes yet.
-                client === this._client
-                    ? this._networkManager.initialize()
-                    : Promise.resolve(),
-            ]);
-        }
-        catch (error) {
-            // The target might have been closed before the initialization finished.
-            if (error.message.includes('Target closed') ||
-                error.message.includes('Session closed')) {
-                return;
-            }
-            throw error;
-        }
+    async initialize() {
+        const result = await Promise.all([
+            this._client.send('Page.enable'),
+            this._client.send('Page.getFrameTree'),
+        ]);
+        const { frameTree } = result[1];
+        this._handleFrameTree(frameTree);
+        await Promise.all([
+            this._client.send('Page.setLifecycleEventsEnabled', { enabled: true }),
+            this._client
+                .send('Runtime.enable')
+                .then(() => this._ensureIsolatedWorld(UTILITY_WORLD_NAME)),
+            this._networkManager.initialize(),
+        ]);
     }
     networkManager() {
         return this._networkManager;
@@ -142,7 +102,7 @@
         watcher.dispose();
         if (error)
             throw error;
-        return await watcher.navigationResponse();
+        return watcher.navigationResponse();
         async function navigate(client, url, referrer, frameId) {
             try {
                 const response = await client.send('Page.navigate', {
@@ -172,25 +132,17 @@
         watcher.dispose();
         if (error)
             throw error;
-        return await watcher.navigationResponse();
+        return watcher.navigationResponse();
     }
-    async _onAttachedToTarget(event) {
+    async _onFrameMoved(event) {
         if (event.targetInfo.type !== 'iframe') {
             return;
         }
-        const frame = this._frames.get(event.targetInfo.targetId);
-        const session = Connection_js_1.Connection.fromSession(this._client).session(event.sessionId);
-        frame._updateClient(session);
-        this.setupEventListeners(session);
-        await this.initialize(session);
-    }
-    async _onDetachedFromTarget(event) {
-        const frame = this._frames.get(event.targetId);
-        if (frame && frame.isOOPFrame()) {
-            // When an OOP iframe is removed from the page, it
-            // will only get a Target.detachedFromTarget event.
-            this._removeFramesRecursively(frame);
-        }
+        // TODO(sadym): Remove debug message once proper OOPIF support is
+        // implemented: https://github.com/puppeteer/puppeteer/issues/2548
+        Debug_js_1.debug('puppeteer:frame')(`The frame '${event.targetInfo.targetId}' moved to another session. ` +
+            `Out-of-process iframes (OOPIF) are not supported by Puppeteer yet. ` +
+            `https://github.com/puppeteer/puppeteer/issues/2548`);
     }
     _onLifecycleEvent(event) {
         const frame = this._frames.get(event.frameId);
@@ -206,16 +158,14 @@
         frame._onLoadingStopped();
         this.emit(exports.FrameManagerEmittedEvents.LifecycleEvent, frame);
     }
-    _handleFrameTree(session, frameTree) {
-        if (frameTree.frame.parentId) {
-            this._onFrameAttached(session, frameTree.frame.id, frameTree.frame.parentId);
-        }
+    _handleFrameTree(frameTree) {
+        if (frameTree.frame.parentId)
+            this._onFrameAttached(frameTree.frame.id, frameTree.frame.parentId);
         this._onFrameNavigated(frameTree.frame);
         if (!frameTree.childFrames)
             return;
-        for (const child of frameTree.childFrames) {
-            this._handleFrameTree(session, child);
-        }
+        for (const child of frameTree.childFrames)
+            this._handleFrameTree(child);
     }
     page() {
         return this._page;
@@ -229,20 +179,12 @@
     frame(frameId) {
         return this._frames.get(frameId) || null;
     }
-    _onFrameAttached(session, frameId, parentFrameId) {
-        if (this._frames.has(frameId)) {
-            const frame = this._frames.get(frameId);
-            if (session && frame.isOOPFrame()) {
-                // If an OOP iframes becomes a normal iframe again
-                // it is first attached to the parent page before
-                // the target is removed.
-                frame._updateClient(session);
-            }
+    _onFrameAttached(frameId, parentFrameId) {
+        if (this._frames.has(frameId))
             return;
-        }
-        (0, assert_js_1.assert)(parentFrameId);
+        assert_js_1.assert(parentFrameId);
         const parentFrame = this._frames.get(parentFrameId);
-        const frame = new Frame(this, parentFrame, frameId, session);
+        const frame = new Frame(this, parentFrame, frameId);
         this._frames.set(frame._id, frame);
         this.emit(exports.FrameManagerEmittedEvents.FrameAttached, frame);
     }
@@ -251,7 +193,7 @@
         let frame = isMainFrame
             ? this._mainFrame
             : this._frames.get(framePayload.id);
-        (0, assert_js_1.assert)(isMainFrame || frame, 'We either navigate top level or have old version of the navigated frame');
+        assert_js_1.assert(isMainFrame || frame, 'We either navigate top level or have old version of the navigated frame');
         // Detach all child frames first.
         if (frame) {
             for (const child of frame.childFrames())
@@ -266,7 +208,7 @@
             }
             else {
                 // Initial main frame navigation.
-                frame = new Frame(this, null, framePayload.id, this._client);
+                frame = new Frame(this, null, framePayload.id);
             }
             this._frames.set(framePayload.id, frame);
             this._mainFrame = frame;
@@ -275,23 +217,22 @@
         frame._navigated(framePayload);
         this.emit(exports.FrameManagerEmittedEvents.FrameNavigated, frame);
     }
-    async _ensureIsolatedWorld(session, name) {
-        const key = `${session.id()}:${name}`;
-        if (this._isolatedWorlds.has(key))
+    async _ensureIsolatedWorld(name) {
+        if (this._isolatedWorlds.has(name))
             return;
-        this._isolatedWorlds.add(key);
-        await session.send('Page.addScriptToEvaluateOnNewDocument', {
+        this._isolatedWorlds.add(name);
+        await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
             source: `//# sourceURL=${ExecutionContext_js_1.EVALUATION_SCRIPT_URL}`,
             worldName: name,
         });
         // Frames might be removed before we send this.
-        await Promise.all(this.frames()
-            .filter((frame) => frame._client === session)
-            .map((frame) => session.send('Page.createIsolatedWorld', {
+        await Promise.all(this.frames().map((frame) => this._client
+            .send('Page.createIsolatedWorld', {
             frameId: frame._id,
             worldName: name,
             grantUniveralAccess: true,
-        })));
+        })
+            .catch(helper_js_1.debugError)));
     }
     _onFrameNavigatedWithinDocument(frameId, url) {
         const frame = this._frames.get(frameId);
@@ -301,25 +242,17 @@
         this.emit(exports.FrameManagerEmittedEvents.FrameNavigatedWithinDocument, frame);
         this.emit(exports.FrameManagerEmittedEvents.FrameNavigated, frame);
     }
-    _onFrameDetached(frameId, reason) {
+    _onFrameDetached(frameId) {
         const frame = this._frames.get(frameId);
-        if (reason === 'remove') {
-            // Only remove the frame if the reason for the detached event is
-            // an actual removement of the frame.
-            // For frames that become OOP iframes, the reason would be 'swap'.
-            if (frame)
-                this._removeFramesRecursively(frame);
-        }
+        if (frame)
+            this._removeFramesRecursively(frame);
     }
-    _onExecutionContextCreated(contextPayload, session) {
+    _onExecutionContextCreated(contextPayload) {
         const auxData = contextPayload.auxData;
         const frameId = auxData ? auxData.frameId : null;
         const frame = this._frames.get(frameId) || null;
         let world = null;
         if (frame) {
-            // Only care about execution contexts created for the current session.
-            if (frame._client !== session)
-                return;
             if (contextPayload.auxData && !!contextPayload.auxData['isDefault']) {
                 world = frame._mainWorld;
             }
@@ -331,36 +264,29 @@
                 world = frame._secondaryWorld;
             }
         }
-        const context = new ExecutionContext_js_1.ExecutionContext((frame === null || frame === void 0 ? void 0 : frame._client) || this._client, contextPayload, world);
+        const context = new ExecutionContext_js_1.ExecutionContext(this._client, contextPayload, world);
         if (world)
             world._setContext(context);
-        const key = `${session.id()}:${contextPayload.id}`;
-        this._contextIdToContext.set(key, context);
+        this._contextIdToContext.set(contextPayload.id, context);
     }
-    _onExecutionContextDestroyed(executionContextId, session) {
-        const key = `${session.id()}:${executionContextId}`;
-        const context = this._contextIdToContext.get(key);
+    _onExecutionContextDestroyed(executionContextId) {
+        const context = this._contextIdToContext.get(executionContextId);
         if (!context)
             return;
-        this._contextIdToContext.delete(key);
+        this._contextIdToContext.delete(executionContextId);
         if (context._world)
             context._world._setContext(null);
     }
-    _onExecutionContextsCleared(session) {
-        for (const [key, context] of this._contextIdToContext.entries()) {
-            // Make sure to only clear execution contexts that belong
-            // to the current session.
-            if (context._client !== session)
-                continue;
+    _onExecutionContextsCleared() {
+        for (const context of this._contextIdToContext.values()) {
             if (context._world)
                 context._world._setContext(null);
-            this._contextIdToContext.delete(key);
         }
+        this._contextIdToContext.clear();
     }
-    executionContextById(contextId, session = this._client) {
-        const key = `${session.id()}:${contextId}`;
-        const context = this._contextIdToContext.get(key);
-        (0, assert_js_1.assert)(context, 'INTERNAL ERROR: missing context with id = ' + contextId);
+    executionContextById(contextId) {
+        const context = this._contextIdToContext.get(contextId);
+        assert_js_1.assert(context, 'INTERNAL ERROR: missing context with id = ' + contextId);
         return context;
     }
     _removeFramesRecursively(frame) {
@@ -425,7 +351,7 @@
     /**
      * @internal
      */
-    constructor(frameManager, parentFrame, frameId, client) {
+    constructor(frameManager, parentFrame, frameId) {
         this._url = '';
         this._detached = false;
         /**
@@ -442,21 +368,11 @@
         this._id = frameId;
         this._detached = false;
         this._loaderId = '';
+        this._mainWorld = new DOMWorld_js_1.DOMWorld(frameManager, this, frameManager._timeoutSettings);
+        this._secondaryWorld = new DOMWorld_js_1.DOMWorld(frameManager, this, frameManager._timeoutSettings);
         this._childFrames = new Set();
         if (this._parentFrame)
             this._parentFrame._childFrames.add(this);
-        this._updateClient(client);
-    }
-    /**
-     * @internal
-     */
-    _updateClient(client) {
-        this._client = client;
-        this._mainWorld = new DOMWorld_js_1.DOMWorld(this._client, this._frameManager, this, this._frameManager._timeoutSettings);
-        this._secondaryWorld = new DOMWorld_js_1.DOMWorld(this._client, this._frameManager, this, this._frameManager._timeoutSettings);
-    }
-    isOOPFrame() {
-        return this._client !== this._frameManager._client;
     }
     /**
      * @remarks
@@ -849,10 +765,11 @@
      * {@link Frame.waitForTimeout}.
      */
     waitFor(selectorOrFunctionOrTimeout, options = {}, ...args) {
+        const xPathPattern = '//';
         console.warn('waitFor is deprecated and will be removed in a future release. See https://github.com/puppeteer/puppeteer/issues/6214 for details and how to migrate your code.');
         if (helper_js_1.helper.isString(selectorOrFunctionOrTimeout)) {
             const string = selectorOrFunctionOrTimeout;
-            if (xPathPattern.test(string))
+            if (string.startsWith(xPathPattern))
                 return this.waitForXPath(string, options);
             return this.waitForSelector(string, options);
         }
@@ -1041,8 +958,8 @@
 }
 exports.Frame = Frame;
 function assertNoLegacyNavigationOptions(options) {
-    (0, assert_js_1.assert)(options['networkIdleTimeout'] === undefined, 'ERROR: networkIdleTimeout option is no longer supported.');
-    (0, assert_js_1.assert)(options['networkIdleInflight'] === undefined, 'ERROR: networkIdleInflight option is no longer supported.');
-    (0, assert_js_1.assert)(options.waitUntil !== 'networkidle', 'ERROR: "networkidle" option is no longer supported. Use "networkidle2" instead');
+    assert_js_1.assert(options['networkIdleTimeout'] === undefined, 'ERROR: networkIdleTimeout option is no longer supported.');
+    assert_js_1.assert(options['networkIdleInflight'] === undefined, 'ERROR: networkIdleInflight option is no longer supported.');
+    assert_js_1.assert(options.waitUntil !== 'networkidle', 'ERROR: "networkidle" option is no longer supported. Use "networkidle2" instead');
 }
 //# sourceMappingURL=FrameManager.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js.map
index a1fb8d0..6f4813c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/FrameManager.js.map
@@ -1 +1 @@
-{"version":3,"file":"FrameManager.js","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"FrameManager.js","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts
index 974c0ad..0f1efff 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts
@@ -14,8 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
-import { EventEmitter } from './EventEmitter.js';
+import { CDPSession } from './Connection.js';
 import { Frame } from './FrameManager.js';
 import { HTTPResponse } from './HTTPResponse.js';
 import { Protocol } from 'devtools-protocol';
@@ -51,9 +50,6 @@
  * @public
  */
 export declare type ResourceType = Lowercase<Protocol.Network.ResourceType>;
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
 /**
  *
  * Represents an HTTP request sent by a page.
@@ -121,13 +117,6 @@
     private _postData?;
     private _headers;
     private _frame;
-    private _continueRequestOverrides;
-    private _responseForRequest;
-    private _abortErrorReason;
-    private _currentStrategy;
-    private _currentPriority;
-    private _interceptActions;
-    private _initiator;
     /**
      * @internal
      */
@@ -137,39 +126,6 @@
      */
     url(): string;
     /**
-     * @returns the `ContinueRequestOverrides` that will be used
-     * if the interception is allowed to continue (ie, `abort()` and
-     * `respond()` aren't called).
-     */
-    continueRequestOverrides(): ContinueRequestOverrides;
-    /**
-     * @returns The `ResponseForRequest` that gets used if the
-     * interception is allowed to respond (ie, `abort()` is not called).
-     */
-    responseForRequest(): Partial<ResponseForRequest>;
-    /**
-     * @returns the most recent reason for aborting the request
-     */
-    abortErrorReason(): Protocol.Network.ErrorReason;
-    /**
-     * @returns An array of the current intercept resolution strategy and priority
-     * `[strategy,priority]`. Strategy is one of: `abort`, `respond`, `continue`,
-     *  `disabled`, `none`, or `already-handled`.
-     */
-    private interceptResolution;
-    /**
-     * Adds an async request handler to the processing queue.
-     * Deferred handlers are not guaranteed to execute in any particular order,
-     * but they are guarnateed to resolve before the request interception
-     * is finalized.
-     */
-    enqueueInterceptAction(pendingHandler: () => void | PromiseLike<unknown>): void;
-    /**
-     * Awaits pending interception handlers and then decides how to fulfill
-     * the request interception.
-     */
-    finalizeInterceptions(): Promise<void>;
-    /**
      * Contains the request's resource type as it was perceived by the rendering
      * engine.
      */
@@ -202,10 +158,6 @@
      */
     isNavigationRequest(): boolean;
     /**
-     * @returns the initiator of the request.
-     */
-    initiator(): Protocol.Network.Initiator;
-    /**
      * A `redirectChain` is a chain of requests initiated to fetch a resource.
      * @remarks
      *
@@ -280,12 +232,8 @@
      * ```
      *
      * @param overrides - optional overrides to apply to the request.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    continue(overrides?: ContinueRequestOverrides, priority?: number): Promise<void>;
-    private _continue;
+    continue(overrides?: ContinueRequestOverrides): Promise<void>;
     /**
      * Fulfills a request with the given response.
      *
@@ -313,12 +261,8 @@
      * Calling `request.respond` for a dataURL request is a noop.
      *
      * @param response - the response to fulfill the request with.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    respond(response: Partial<ResponseForRequest>, priority?: number): Promise<void>;
-    private _respond;
+    respond(response: Partial<ResponseForRequest>): Promise<void>;
     /**
      * Aborts a request.
      *
@@ -328,24 +272,11 @@
      * throw an exception immediately.
      *
      * @param errorCode - optional error code to provide.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    abort(errorCode?: ErrorCode, priority?: number): Promise<void>;
-    private _abort;
+    abort(errorCode?: ErrorCode): Promise<void>;
 }
 /**
  * @public
  */
-export declare type InterceptResolutionStrategy = 'abort' | 'respond' | 'continue' | 'disabled' | 'none' | 'alreay-handled';
-/**
- * @public
- */
 export declare type ErrorCode = 'aborted' | 'accessdenied' | 'addressunreachable' | 'blockedbyclient' | 'blockedbyresponse' | 'connectionaborted' | 'connectionclosed' | 'connectionfailed' | 'connectionrefused' | 'connectionreset' | 'internetdisconnected' | 'namenotresolved' | 'timedout' | 'failed';
-/**
- * @public
- */
-export declare type ActionResult = 'continue' | 'abort' | 'respond';
-export {};
 //# sourceMappingURL=HTTPRequest.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map
index 8eda734..2d391e5 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPRequest.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"HTTPRequest.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js
index 8e66946..ea68ed3 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js
@@ -66,11 +66,6 @@
         this._postData = event.request.postData;
         this._frame = frame;
         this._redirectChain = redirectChain;
-        this._continueRequestOverrides = {};
-        this._currentStrategy = 'none';
-        this._currentPriority = undefined;
-        this._interceptActions = [];
-        this._initiator = event.initiator;
         for (const key of Object.keys(event.request.headers))
             this._headers[key.toLowerCase()] = event.request.headers[key];
     }
@@ -81,67 +76,6 @@
         return this._url;
     }
     /**
-     * @returns the `ContinueRequestOverrides` that will be used
-     * if the interception is allowed to continue (ie, `abort()` and
-     * `respond()` aren't called).
-     */
-    continueRequestOverrides() {
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        return this._continueRequestOverrides;
-    }
-    /**
-     * @returns The `ResponseForRequest` that gets used if the
-     * interception is allowed to respond (ie, `abort()` is not called).
-     */
-    responseForRequest() {
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        return this._responseForRequest;
-    }
-    /**
-     * @returns the most recent reason for aborting the request
-     */
-    abortErrorReason() {
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        return this._abortErrorReason;
-    }
-    /**
-     * @returns An array of the current intercept resolution strategy and priority
-     * `[strategy,priority]`. Strategy is one of: `abort`, `respond`, `continue`,
-     *  `disabled`, `none`, or `already-handled`.
-     */
-    interceptResolution() {
-        if (!this._allowInterception)
-            return ['disabled'];
-        if (this._interceptionHandled)
-            return ['alreay-handled'];
-        return [this._currentStrategy, this._currentPriority];
-    }
-    /**
-     * Adds an async request handler to the processing queue.
-     * Deferred handlers are not guaranteed to execute in any particular order,
-     * but they are guarnateed to resolve before the request interception
-     * is finalized.
-     */
-    enqueueInterceptAction(pendingHandler) {
-        this._interceptActions.push(pendingHandler);
-    }
-    /**
-     * Awaits pending interception handlers and then decides how to fulfill
-     * the request interception.
-     */
-    async finalizeInterceptions() {
-        await this._interceptActions.reduce((promiseChain, interceptAction) => promiseChain.then(interceptAction), Promise.resolve());
-        const [resolution] = this.interceptResolution();
-        switch (resolution) {
-            case 'abort':
-                return this._abort(this._abortErrorReason);
-            case 'respond':
-                return this._respond(this._responseForRequest);
-            case 'continue':
-                return this._continue(this._continueRequestOverrides);
-        }
-    }
-    /**
      * Contains the request's resource type as it was perceived by the rendering
      * engine.
      */
@@ -188,12 +122,6 @@
         return this._isNavigationRequest;
     }
     /**
-     * @returns the initiator of the request.
-     */
-    initiator() {
-        return this._initiator;
-    }
-    /**
      * A `redirectChain` is a chain of requests initiated to fetch a resource.
      * @remarks
      *
@@ -274,36 +202,13 @@
      * ```
      *
      * @param overrides - optional overrides to apply to the request.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async continue(overrides = {}, priority) {
+    async continue(overrides = {}) {
         // Request interception is not supported for data: urls.
         if (this._url.startsWith('data:'))
             return;
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        (0, assert_js_1.assert)(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._continue(overrides);
-        }
-        this._continueRequestOverrides = overrides;
-        if (priority > this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'continue';
-            this._currentPriority = priority;
-            return;
-        }
-        if (priority === this._currentPriority) {
-            if (this._currentStrategy === 'abort' ||
-                this._currentStrategy === 'respond') {
-                return;
-            }
-            this._currentStrategy = 'continue';
-        }
-        return;
-    }
-    async _continue(overrides = {}) {
+        assert_js_1.assert(this._allowInterception, 'Request Interception is not enabled!');
+        assert_js_1.assert(!this._interceptionHandled, 'Request is already handled!');
         const { url, method, postData, headers } = overrides;
         this._interceptionHandled = true;
         const postDataBinaryBase64 = postData
@@ -318,8 +223,10 @@
             headers: headers ? headersArray(headers) : undefined,
         })
             .catch((error) => {
-            this._interceptionHandled = false;
-            return handleError(error);
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            helper_js_1.debugError(error);
         });
     }
     /**
@@ -349,34 +256,13 @@
      * Calling `request.respond` for a dataURL request is a noop.
      *
      * @param response - the response to fulfill the request with.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async respond(response, priority) {
+    async respond(response) {
         // Mocking responses for dataURL requests is not currently supported.
         if (this._url.startsWith('data:'))
             return;
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        (0, assert_js_1.assert)(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._respond(response);
-        }
-        this._responseForRequest = response;
-        if (priority > this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'respond';
-            this._currentPriority = priority;
-            return;
-        }
-        if (priority === this._currentPriority) {
-            if (this._currentStrategy === 'abort') {
-                return;
-            }
-            this._currentStrategy = 'respond';
-        }
-    }
-    async _respond(response) {
+        assert_js_1.assert(this._allowInterception, 'Request Interception is not enabled!');
+        assert_js_1.assert(!this._interceptionHandled, 'Request is already handled!');
         this._interceptionHandled = true;
         const responseBody = response.body && helper_js_1.helper.isString(response.body)
             ? Buffer.from(response.body)
@@ -399,8 +285,10 @@
             body: responseBody ? responseBody.toString('base64') : undefined,
         })
             .catch((error) => {
-            this._interceptionHandled = false;
-            return handleError(error);
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            helper_js_1.debugError(error);
         });
     }
     /**
@@ -412,37 +300,27 @@
      * throw an exception immediately.
      *
      * @param errorCode - optional error code to provide.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async abort(errorCode = 'failed', priority) {
+    async abort(errorCode = 'failed') {
         // Request interception is not supported for data: urls.
         if (this._url.startsWith('data:'))
             return;
         const errorReason = errorReasons[errorCode];
-        (0, assert_js_1.assert)(errorReason, 'Unknown error code: ' + errorCode);
-        (0, assert_js_1.assert)(this._allowInterception, 'Request Interception is not enabled!');
-        (0, assert_js_1.assert)(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._abort(errorReason);
-        }
-        this._abortErrorReason = errorReason;
-        if (priority >= this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'abort';
-            this._currentPriority = priority;
-            return;
-        }
-    }
-    async _abort(errorReason) {
+        assert_js_1.assert(errorReason, 'Unknown error code: ' + errorCode);
+        assert_js_1.assert(this._allowInterception, 'Request Interception is not enabled!');
+        assert_js_1.assert(!this._interceptionHandled, 'Request is already handled!');
         this._interceptionHandled = true;
         await this._client
             .send('Fetch.failRequest', {
             requestId: this._interceptionId,
             errorReason,
         })
-            .catch(handleError);
+            .catch((error) => {
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            helper_js_1.debugError(error);
+        });
     }
 }
 exports.HTTPRequest = HTTPRequest;
@@ -470,15 +348,6 @@
     }
     return result;
 }
-async function handleError(error) {
-    if (['Invalid header'].includes(error.originalMessage)) {
-        throw error;
-    }
-    // In certain cases, protocol will return error if the request was
-    // already canceled or the page was closed. We should tolerate these
-    // errors.
-    (0, helper_js_1.debugError)(error);
-}
 // List taken from
 // https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
 // with extra 306 and 418 codes.
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js.map
index 142869e..0dd3be1 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPRequest.js.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPRequest.js","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"HTTPRequest.js","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts
index 5710f96..b94ae40 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts
@@ -14,8 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
-import { EventEmitter } from './EventEmitter.js';
+import { CDPSession } from './Connection.js';
 import { Frame } from './FrameManager.js';
 import { HTTPRequest } from './HTTPRequest.js';
 import { SecurityDetails } from './SecurityDetails.js';
@@ -27,9 +26,6 @@
     ip: string;
     port: number;
 }
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
 /**
  * The HTTPResponse class represents responses which are received by the
  * {@link Page} class.
@@ -53,11 +49,7 @@
     /**
      * @internal
      */
-    constructor(client: CDPSession, request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null);
-    /**
-     * @internal
-     */
-    _parseStatusTextFromExtrInfo(extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): string | undefined;
+    constructor(client: CDPSession, request: HTTPRequest, responsePayload: Protocol.Network.Response);
     /**
      * @internal
      */
@@ -131,5 +123,4 @@
      */
     frame(): Frame | null;
 }
-export {};
 //# sourceMappingURL=HTTPResponse.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map
index a2409b5..49782dc 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPResponse.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,UAAW,SAAQ,YAAY;IACvC,IAAI,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,QAAQ,EAC3C,MAAM,EAAE,CAAC,EACT,GAAG,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;CACvD;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAwB;IAClD,OAAO,CAAC,yBAAyB,CAA8B;IAC/D,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;OAEG;gBAED,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAC1C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI;IA8BnE;;OAEG;IACH,4BAA4B,CAC1B,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI,GAChE,MAAM,GAAG,SAAS;IAWrB;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAIrC;;;OAGG;IACH,aAAa,IAAI,aAAa;IAI9B;;OAEG;IACH,GAAG,IAAI,MAAM;IAIb;;OAEG;IACH,EAAE,IAAI,OAAO;IAKb;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACH,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIjC;;;OAGG;IACH,eAAe,IAAI,eAAe,GAAG,IAAI;IAIzC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IA6BzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAK7B;;;;;;;;OAQG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAK1B;;OAEG;IACH,OAAO,IAAI,WAAW;IAItB;;;OAGG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,IAAI;CAGtB"}
\ No newline at end of file
+{"version":3,"file":"HTTPResponse.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAwB;IAClD,OAAO,CAAC,yBAAyB,CAA8B;IAC/D,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;OAEG;gBAED,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;IAyB5C;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAIrC;;;OAGG;IACH,aAAa,IAAI,aAAa;IAI9B;;OAEG;IACH,GAAG,IAAI,MAAM;IAIb;;OAEG;IACH,EAAE,IAAI,OAAO;IAKb;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACH,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIjC;;;OAGG;IACH,eAAe,IAAI,eAAe,GAAG,IAAI;IAIzC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAgBzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAK7B;;;;;;;;OAQG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAK1B;;OAEG;IACH,OAAO,IAAI,WAAW;IAItB;;;OAGG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,IAAI;CAGtB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js
index a0e0496..a3e810a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js
@@ -2,7 +2,6 @@
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.HTTPResponse = void 0;
 const SecurityDetails_js_1 = require("./SecurityDetails.js");
-const Errors_js_1 = require("./Errors.js");
 /**
  * The HTTPResponse class represents responses which are received by the
  * {@link Page} class.
@@ -13,7 +12,7 @@
     /**
      * @internal
      */
-    constructor(client, request, responsePayload, extraInfo) {
+    constructor(client, request, responsePayload) {
         this._contentPromise = null;
         this._headers = {};
         this._client = client;
@@ -25,16 +24,13 @@
             ip: responsePayload.remoteIPAddress,
             port: responsePayload.remotePort,
         };
-        this._statusText =
-            this._parseStatusTextFromExtrInfo(extraInfo) ||
-                responsePayload.statusText;
+        this._status = responsePayload.status;
+        this._statusText = responsePayload.statusText;
         this._url = request.url();
         this._fromDiskCache = !!responsePayload.fromDiskCache;
         this._fromServiceWorker = !!responsePayload.fromServiceWorker;
-        this._status = extraInfo ? extraInfo.statusCode : responsePayload.status;
-        const headers = extraInfo ? extraInfo.headers : responsePayload.headers;
-        for (const key of Object.keys(headers))
-            this._headers[key.toLowerCase()] = headers[key];
+        for (const key of Object.keys(responsePayload.headers))
+            this._headers[key.toLowerCase()] = responsePayload.headers[key];
         this._securityDetails = responsePayload.securityDetails
             ? new SecurityDetails_js_1.SecurityDetails(responsePayload.securityDetails)
             : null;
@@ -42,23 +38,6 @@
     /**
      * @internal
      */
-    _parseStatusTextFromExtrInfo(extraInfo) {
-        if (!extraInfo || !extraInfo.headersText)
-            return;
-        const firstLine = extraInfo.headersText.split('\r', 1)[0];
-        if (!firstLine)
-            return;
-        const match = firstLine.match(/[^ ]* [^ ]* (.*)/);
-        if (!match)
-            return;
-        const statusText = match[1];
-        if (!statusText)
-            return;
-        return statusText;
-    }
-    /**
-     * @internal
-     */
     _resolveBody(err) {
         return this._bodyLoadedPromiseFulfill(err);
     }
@@ -117,19 +96,10 @@
             this._contentPromise = this._bodyLoadedPromise.then(async (error) => {
                 if (error)
                     throw error;
-                try {
-                    const response = await this._client.send('Network.getResponseBody', {
-                        requestId: this._request._requestId,
-                    });
-                    return Buffer.from(response.body, response.base64Encoded ? 'base64' : 'utf8');
-                }
-                catch (error) {
-                    if (error instanceof Errors_js_1.ProtocolError &&
-                        error.originalMessage === 'No resource with given identifier found') {
-                        throw new Errors_js_1.ProtocolError('Could not load body for this request. This might happen if the request is a preflight request.');
-                    }
-                    throw error;
-                }
+                const response = await this._client.send('Network.getResponseBody', {
+                    requestId: this._request._requestId,
+                });
+                return Buffer.from(response.body, response.base64Encoded ? 'base64' : 'utf8');
             });
         }
         return this._contentPromise;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js.map
index e5de3d8..76de98c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/HTTPResponse.js.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPResponse.js","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":";;;AAoBA,6DAAuD;AAEvD,2CAA4C;AAiB5C;;;;;GAKG;AACH,MAAa,YAAY;IAevB;;OAEG;IACH,YACE,MAAkB,EAClB,OAAoB,EACpB,eAA0C,EAC1C,SAAiE;QAnB3D,oBAAe,GAA2B,IAAI,CAAC;QAS/C,aAAQ,GAA2B,EAAE,CAAC;QAY5C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,IAAI,CAAC,kBAAkB,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChD,IAAI,CAAC,yBAAyB,GAAG,OAAO,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,GAAG;YACpB,EAAE,EAAE,eAAe,CAAC,eAAe;YACnC,IAAI,EAAE,eAAe,CAAC,UAAU;SACjC,CAAC;QACF,IAAI,CAAC,WAAW;YACd,IAAI,CAAC,4BAA4B,CAAC,SAAS,CAAC;gBAC5C,eAAe,CAAC,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC;QACtD,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,eAAe,CAAC,iBAAiB,CAAC;QAE9D,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC;QACzE,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;QACxE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAElD,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,eAAe;YACrD,CAAC,CAAC,IAAI,oCAAe,CAAC,eAAe,CAAC,eAAe,CAAC;YACtD,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED;;OAEG;IACH,4BAA4B,CAC1B,SAAiE;QAEjE,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW;YAAE,OAAO;QACjD,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,GAAiB;QAC5B,OAAO,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,EAAE;QACA,6BAA6B;QAC7B,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAClE,IAAI,KAAK;oBAAE,MAAM,KAAK,CAAC;gBACvB,IAAI;oBACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE;wBAClE,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;qBACpC,CAAC,CAAC;oBACH,OAAO,MAAM,CAAC,IAAI,CAChB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAC;iBACH;gBAAC,OAAO,KAAK,EAAE;oBACd,IACE,KAAK,YAAY,yBAAa;wBAC9B,KAAK,CAAC,eAAe,KAAK,yCAAyC,EACnE;wBACA,MAAM,IAAI,yBAAa,CACrB,gGAAgG,CACjG,CAAC;qBACH;oBAED,MAAM,KAAK,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;CACF;AApND,oCAoNC"}
\ No newline at end of file
+{"version":3,"file":"HTTPResponse.js","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts
index a597898..9084c0b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts
@@ -15,8 +15,6 @@
  */
 import { CDPSession } from './Connection.js';
 import { KeyInput } from './USKeyboardLayout.js';
-import { Protocol } from 'devtools-protocol';
-import { Point } from './JSHandle.js';
 /**
  * Keyboard provides an api for managing a virtual keyboard.
  * The high level api is {@link Keyboard."type"},
@@ -302,41 +300,6 @@
      * ```
      */
     wheel(options?: MouseWheelOptions): Promise<void>;
-    /**
-     * Dispatches a `drag` event.
-     * @param start - starting point for drag
-     * @param target - point to drag to
-     */
-    drag(start: Point, target: Point): Promise<Protocol.Input.DragData>;
-    /**
-     * Dispatches a `dragenter` event.
-     * @param target - point for emitting `dragenter` event
-     * @param data - drag data containing items and operations mask
-     */
-    dragEnter(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Dispatches a `dragover` event.
-     * @param target - point for emitting `dragover` event
-     * @param data - drag data containing items and operations mask
-     */
-    dragOver(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Performs a dragenter, dragover, and drop in sequence.
-     * @param target - point to drop on
-     * @param data - drag data containing items and operations mask
-     */
-    drop(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Performs a drag, dragenter, dragover, and drop in sequence.
-     * @param target - point to drag from
-     * @param target - point to drop on
-     * @param options - An object of options. Accepts delay which,
-     * if specified, is the time to wait between `dragover` and `drop` in milliseconds.
-     * Defaults to 0.
-     */
-    dragAndDrop(start: Point, target: Point, options?: {
-        delay?: number;
-    }): Promise<void>;
 }
 /**
  * The Touchscreen class exposes touchscreen events.
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts.map
index 1a1c396..2da2177 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js
index d3da72b..04b1e85 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js
@@ -130,7 +130,7 @@
             location: 0,
         };
         const definition = USKeyboardLayout_js_1.keyDefinitions[keyString];
-        (0, assert_js_1.assert)(definition, `Unknown key: "${keyString}"`);
+        assert_js_1.assert(definition, `Unknown key: "${keyString}"`);
         if (definition.key)
             description.key = definition.key;
         if (shift && definition.shiftKey)
@@ -432,81 +432,6 @@
             pointerType: 'mouse',
         });
     }
-    /**
-     * Dispatches a `drag` event.
-     * @param start - starting point for drag
-     * @param target - point to drag to
-     */
-    async drag(start, target) {
-        const promise = new Promise((resolve) => {
-            this._client.once('Input.dragIntercepted', (event) => resolve(event.data));
-        });
-        await this.move(start.x, start.y);
-        await this.down();
-        await this.move(target.x, target.y);
-        return promise;
-    }
-    /**
-     * Dispatches a `dragenter` event.
-     * @param target - point for emitting `dragenter` event
-     * @param data - drag data containing items and operations mask
-     */
-    async dragEnter(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'dragEnter',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Dispatches a `dragover` event.
-     * @param target - point for emitting `dragover` event
-     * @param data - drag data containing items and operations mask
-     */
-    async dragOver(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'dragOver',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Performs a dragenter, dragover, and drop in sequence.
-     * @param target - point to drop on
-     * @param data - drag data containing items and operations mask
-     */
-    async drop(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'drop',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Performs a drag, dragenter, dragover, and drop in sequence.
-     * @param target - point to drag from
-     * @param target - point to drop on
-     * @param options - An object of options. Accepts delay which,
-     * if specified, is the time to wait between `dragover` and `drop` in milliseconds.
-     * Defaults to 0.
-     */
-    async dragAndDrop(start, target, options = {}) {
-        const { delay = null } = options;
-        const data = await this.drag(start, target);
-        await this.dragEnter(target, data);
-        await this.dragOver(target, data);
-        if (delay) {
-            await new Promise((resolve) => setTimeout(resolve, delay));
-        }
-        await this.drop(target, data);
-        await this.up();
-    }
 }
 exports.Mouse = Mouse;
 /**
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js.map
index a1bd51b..c18715a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Input.js.map
@@ -1 +1 @@
-{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts
index 69bed40..040fd8a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts
@@ -15,7 +15,7 @@
  */
 /// <reference types="node" />
 import { ExecutionContext } from './ExecutionContext.js';
-import { Page, ScreenshotOptions } from './Page.js';
+import { Page } from './Page.js';
 import { CDPSession } from './Connection.js';
 import { KeyInput } from './USKeyboardLayout.js';
 import { FrameManager, Frame } from './FrameManager.js';
@@ -141,7 +141,7 @@
     evaluateHandle<HandleType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandleType>;
     /** Fetches a single property from the referenced object.
      */
-    getProperty(propertyName: string): Promise<JSHandle>;
+    getProperty(propertyName: string): Promise<JSHandle | undefined>;
     /**
      * The method returns a map with property names as keys and JSHandle
      * instances for the property values.
@@ -235,10 +235,7 @@
      */
     contentFrame(): Promise<Frame | null>;
     private _scrollIntoViewIfNeeded;
-    /**
-     * Returns the middle point within an element unless a specific offset is provided.
-     */
-    clickablePoint(offset?: Offset): Promise<Point>;
+    private _clickablePoint;
     private _getBoxModel;
     private _fromProtocolQuad;
     private _intersectQuadWithViewport;
@@ -255,28 +252,6 @@
      */
     click(options?: ClickOptions): Promise<void>;
     /**
-     * This method creates and captures a dragevent from the element.
-     */
-    drag(target: Point): Promise<Protocol.Input.DragData>;
-    /**
-     * This method creates a `dragenter` event on the element.
-     */
-    dragEnter(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method creates a `dragover` event on the element.
-     */
-    dragOver(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a drop on the element.
-     */
-    drop(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a dragenter, dragover, and drop on the element.
-     */
-    dragAndDrop(target: ElementHandle, options?: {
-        delay: number;
-    }): Promise<void>;
-    /**
      * Triggers a `change` and `input` event once all the provided options have been
      * selected. If there's no `<select>` element matching `selector`, the method
      * throws an error.
@@ -368,7 +343,7 @@
      * {@link Page.screenshot} to take a screenshot of the element.
      * If the element is detached from DOM, the method throws an error.
      */
-    screenshot(options?: ScreenshotOptions): Promise<string | Buffer>;
+    screenshot(options?: {}): Promise<string | Buffer | void>;
     /**
      * Runs `element.querySelector` within the page. If no element matches the selector,
      * the return value resolves to `null`.
@@ -428,22 +403,7 @@
     /**
      * Resolves to true if the element is visible in the current viewport.
      */
-    isIntersectingViewport(options?: {
-        threshold?: number;
-    }): Promise<boolean>;
-}
-/**
- * @public
- */
-export interface Offset {
-    /**
-     * x-offset for the clickable point relative to the top-left corder of the border box.
-     */
-    x: number;
-    /**
-     * y-offset for the clickable point relative to the top-left corder of the border box.
-     */
-    y: number;
+    isIntersectingViewport(): Promise<boolean>;
 }
 /**
  * @public
@@ -463,10 +423,6 @@
      * @defaultValue 1
      */
     clickCount?: number;
-    /**
-     * Offset for the clickable point relative to the top-left corder of the border box.
-     */
-    offset?: Offset;
 }
 /**
  * @public
@@ -481,11 +437,4 @@
      */
     text?: string;
 }
-/**
- * @public
- */
-export interface Point {
-    x: number;
-    y: number;
-}
 //# sourceMappingURL=JSHandle.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts.map
index f1f1047..e77528b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"JSHandle.d.ts","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"JSHandle.d.ts","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js
index 54957ff..288a795 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js
@@ -128,8 +128,7 @@
             return result;
         }, propertyName);
         const properties = await objectHandle.getProperties();
-        const result = properties.get(propertyName);
-        (0, assert_js_1.assert)(result instanceof JSHandle);
+        const result = properties.get(propertyName) || null;
         await objectHandle.dispose();
         return result;
     }
@@ -318,10 +317,7 @@
         if (error)
             throw new Error(error);
     }
-    /**
-     * Returns the middle point within an element unless a specific offset is provided.
-     */
-    async clickablePoint(offset) {
+    async _clickablePoint() {
         const [result, layoutMetrics] = await Promise.all([
             this._client
                 .send('DOM.getContentQuads', {
@@ -331,38 +327,17 @@
             this._client.send('Page.getLayoutMetrics'),
         ]);
         if (!result || !result.quads.length)
-            throw new Error('Node is either not clickable or not an HTMLElement');
+            throw new Error('Node is either not visible or not an HTMLElement');
         // Filter out quads that have too small area to click into.
-        // Fallback to `layoutViewport` in case of using Firefox.
-        const { clientWidth, clientHeight } = layoutMetrics.cssLayoutViewport || layoutMetrics.layoutViewport;
+        const { clientWidth, clientHeight } = layoutMetrics.layoutViewport;
         const quads = result.quads
             .map((quad) => this._fromProtocolQuad(quad))
             .map((quad) => this._intersectQuadWithViewport(quad, clientWidth, clientHeight))
             .filter((quad) => computeQuadArea(quad) > 1);
         if (!quads.length)
-            throw new Error('Node is either not clickable or not an HTMLElement');
-        const quad = quads[0];
-        if (offset) {
-            // Return the point of the first quad identified by offset.
-            let minX = Number.MAX_SAFE_INTEGER;
-            let minY = Number.MAX_SAFE_INTEGER;
-            for (const point of quad) {
-                if (point.x < minX) {
-                    minX = point.x;
-                }
-                if (point.y < minY) {
-                    minY = point.y;
-                }
-            }
-            if (minX !== Number.MAX_SAFE_INTEGER &&
-                minY !== Number.MAX_SAFE_INTEGER) {
-                return {
-                    x: minX + offset.x,
-                    y: minY + offset.y,
-                };
-            }
-        }
+            throw new Error('Node is either not visible or not an HTMLElement');
         // Return the middle point of the first quad.
+        const quad = quads[0];
         let x = 0;
         let y = 0;
         for (const point of quad) {
@@ -380,7 +355,7 @@
         };
         return this._client
             .send('DOM.getBoxModel', params)
-            .catch((error) => (0, helper_js_1.debugError)(error));
+            .catch((error) => helper_js_1.debugError(error));
     }
     _fromProtocolQuad(quad) {
         return [
@@ -403,7 +378,7 @@
      */
     async hover() {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint();
+        const { x, y } = await this._clickablePoint();
         await this._page.mouse.move(x, y);
     }
     /**
@@ -413,52 +388,10 @@
      */
     async click(options = {}) {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint(options.offset);
+        const { x, y } = await this._clickablePoint();
         await this._page.mouse.click(x, y, options);
     }
     /**
-     * This method creates and captures a dragevent from the element.
-     */
-    async drag(target) {
-        (0, assert_js_1.assert)(this._page.isDragInterceptionEnabled(), 'Drag Interception is not enabled!');
-        await this._scrollIntoViewIfNeeded();
-        const start = await this.clickablePoint();
-        return await this._page.mouse.drag(start, target);
-    }
-    /**
-     * This method creates a `dragenter` event on the element.
-     */
-    async dragEnter(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const target = await this.clickablePoint();
-        await this._page.mouse.dragEnter(target, data);
-    }
-    /**
-     * This method creates a `dragover` event on the element.
-     */
-    async dragOver(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const target = await this.clickablePoint();
-        await this._page.mouse.dragOver(target, data);
-    }
-    /**
-     * This method triggers a drop on the element.
-     */
-    async drop(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const destination = await this.clickablePoint();
-        await this._page.mouse.drop(destination, data);
-    }
-    /**
-     * This method triggers a dragenter, dragover, and drop on the element.
-     */
-    async dragAndDrop(target, options) {
-        await this._scrollIntoViewIfNeeded();
-        const startPoint = await this.clickablePoint();
-        const targetPoint = await target.clickablePoint();
-        await this._page.mouse.dragAndDrop(startPoint, targetPoint, options);
-    }
-    /**
      * Triggers a `change` and `input` event once all the provided options have been
      * selected. If there's no `<select>` element matching `selector`, the method
      * throws an error.
@@ -474,7 +407,7 @@
      */
     async select(...values) {
         for (const value of values)
-            (0, assert_js_1.assert)(helper_js_1.helper.isString(value), 'Values must be strings. Found value "' +
+            assert_js_1.assert(helper_js_1.helper.isString(value), 'Values must be strings. Found value "' +
                 value +
                 '" of type "' +
                 typeof value +
@@ -510,7 +443,7 @@
             }
             return element.multiple;
         });
-        (0, assert_js_1.assert)(filePaths.length <= 1 || isMultiple, 'Multiple file uploads only work with <input type=file multiple>');
+        assert_js_1.assert(filePaths.length <= 1 || isMultiple, 'Multiple file uploads only work with <input type=file multiple>');
         if (!environment_js_1.isNode) {
             throw new Error(`JSHandle#uploadFile can only be used in Node environments.`);
         }
@@ -562,7 +495,7 @@
      */
     async tap() {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint();
+        const { x, y } = await this._clickablePoint();
         await this._page.touchscreen.tap(x, y);
     }
     /**
@@ -660,7 +593,7 @@
     async screenshot(options = {}) {
         let needsViewportReset = false;
         let boundingBox = await this.boundingBox();
-        (0, assert_js_1.assert)(boundingBox, 'Node is either not visible or not an HTMLElement');
+        assert_js_1.assert(boundingBox, 'Node is either not visible or not an HTMLElement');
         const viewport = this._page.viewport();
         if (viewport &&
             (boundingBox.width > viewport.width ||
@@ -674,12 +607,10 @@
         }
         await this._scrollIntoViewIfNeeded();
         boundingBox = await this.boundingBox();
-        (0, assert_js_1.assert)(boundingBox, 'Node is either not visible or not an HTMLElement');
-        (0, assert_js_1.assert)(boundingBox.width !== 0, 'Node has 0 width.');
-        (0, assert_js_1.assert)(boundingBox.height !== 0, 'Node has 0 height.');
-        const layoutMetrics = await this._client.send('Page.getLayoutMetrics');
-        // Fallback to `layoutViewport` in case of using Firefox.
-        const { pageX, pageY } = layoutMetrics.cssLayoutViewport || layoutMetrics.layoutViewport;
+        assert_js_1.assert(boundingBox, 'Node is either not visible or not an HTMLElement');
+        assert_js_1.assert(boundingBox.width !== 0, 'Node has 0 width.');
+        assert_js_1.assert(boundingBox.height !== 0, 'Node has 0 height.');
+        const { layoutViewport: { pageX, pageY }, } = await this._client.send('Page.getLayoutMetrics');
         const clip = Object.assign({}, boundingBox);
         clip.x += pageX;
         clip.y += pageY;
@@ -695,7 +626,7 @@
      * the return value resolves to `null`.
      */
     async $(selector) {
-        const { updatedSelector, queryHandler } = (0, QueryHandler_js_1.getQueryHandlerAndSelector)(selector);
+        const { updatedSelector, queryHandler } = QueryHandler_js_1.getQueryHandlerAndSelector(selector);
         return queryHandler.queryOne(this, updatedSelector);
     }
     /**
@@ -703,7 +634,7 @@
      * the return value resolves to `[]`.
      */
     async $$(selector) {
-        const { updatedSelector, queryHandler } = (0, QueryHandler_js_1.getQueryHandlerAndSelector)(selector);
+        const { updatedSelector, queryHandler } = QueryHandler_js_1.getQueryHandlerAndSelector(selector);
         return queryHandler.queryAll(this, updatedSelector);
     }
     /**
@@ -761,7 +692,7 @@
      * ```
      */
     async $$eval(selector, pageFunction, ...args) {
-        const { updatedSelector, queryHandler } = (0, QueryHandler_js_1.getQueryHandlerAndSelector)(selector);
+        const { updatedSelector, queryHandler } = QueryHandler_js_1.getQueryHandlerAndSelector(selector);
         const arrayHandle = await queryHandler.queryAllArray(this, updatedSelector);
         const result = await arrayHandle.evaluate(pageFunction, ...args);
         await arrayHandle.dispose();
@@ -798,9 +729,8 @@
     /**
      * Resolves to true if the element is visible in the current viewport.
      */
-    async isIntersectingViewport(options) {
-        const { threshold = 0 } = options || {};
-        return await this.evaluate(async (element, threshold) => {
+    async isIntersectingViewport() {
+        return await this.evaluate(async (element) => {
             const visibleRatio = await new Promise((resolve) => {
                 const observer = new IntersectionObserver((entries) => {
                     resolve(entries[0].intersectionRatio);
@@ -808,8 +738,8 @@
                 });
                 observer.observe(element);
             });
-            return threshold === 1 ? visibleRatio === 1 : visibleRatio > threshold;
-        }, threshold);
+            return visibleRatio > 0;
+        });
     }
 }
 exports.ElementHandle = ElementHandle;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js.map
index 62cbcc3..6d75587 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/JSHandle.js.map
@@ -1 +1 @@
-{"version":3,"file":"JSHandle.js","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"JSHandle.js","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts
index 240c0ed..6d45c32 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts
@@ -52,7 +52,7 @@
     constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[], timeout: number);
     _onRequest(request: HTTPRequest): void;
     _onFrameDetached(frame: Frame): void;
-    navigationResponse(): Promise<HTTPResponse | null>;
+    navigationResponse(): HTTPResponse | null;
     _terminate(error: Error): void;
     sameDocumentNavigationPromise(): Promise<Error | null>;
     newDocumentNavigationPromise(): Promise<Error | null>;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map
index a0e575e..a990d51 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"LifecycleWatcher.d.ts","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EAAU,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,KAAK,EAEN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD;;GAEG;AACH,oBAAY,uBAAuB,GAC/B,MAAM,GACN,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB;;GAEG;AACH,oBAAY,sBAAsB,GAC9B,MAAM,GACN,kBAAkB,GAClB,aAAa,GACb,mBAAmB,CAAC;AAYxB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;IAC7C,aAAa,EAAE,YAAY,CAAC;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,eAAe,EAAE,sBAAsB,EAAE,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,8BAA8B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACtD,uCAAuC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE7D,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAE/B,6BAA6B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,sCAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE5D,mBAAmB,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC3C,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,eAAe,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE9C,aAAa,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,OAAO,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,EAC9D,OAAO,EAAE,MAAM;IAmEjB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAMtC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAW9B,kBAAkB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKxD,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI9B,6BAA6B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAItD,4BAA4B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAIrD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,2BAA2B,IAAI,OAAO,CAAC,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAInE,qBAAqB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IASrD,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5C,uBAAuB,IAAI,IAAI;IAiC/B,OAAO,IAAI,IAAI;CAIhB"}
\ No newline at end of file
+{"version":3,"file":"LifecycleWatcher.d.ts","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EAAU,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,KAAK,EAEN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD;;GAEG;AACH,oBAAY,uBAAuB,GAC/B,MAAM,GACN,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB;;GAEG;AACH,oBAAY,sBAAsB,GAC9B,MAAM,GACN,kBAAkB,GAClB,aAAa,GACb,mBAAmB,CAAC;AAYxB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;IAC7C,aAAa,EAAE,YAAY,CAAC;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,eAAe,EAAE,sBAAsB,EAAE,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,8BAA8B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACtD,uCAAuC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE7D,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAE/B,6BAA6B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,sCAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE5D,mBAAmB,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC3C,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,eAAe,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE9C,aAAa,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,OAAO,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,EAC9D,OAAO,EAAE,MAAM;IAmEjB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAMtC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAWpC,kBAAkB,IAAI,YAAY,GAAG,IAAI;IAIzC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI9B,6BAA6B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAItD,4BAA4B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAIrD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,2BAA2B,IAAI,OAAO,CAAC,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAInE,qBAAqB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IASrD,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5C,uBAAuB,IAAI,IAAI;IAiC/B,OAAO,IAAI,IAAI;CAIhB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js
index 85838a5..e65732a 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js
@@ -39,7 +39,7 @@
             waitUntil = [waitUntil];
         this._expectedLifecycle = waitUntil.map((value) => {
             const protocolEvent = puppeteerToProtocolLifecycle.get(value);
-            (0, assert_js_1.assert)(protocolEvent, 'Unknown value for options.waitUntil: ' + value);
+            assert_js_1.assert(protocolEvent, 'Unknown value for options.waitUntil: ' + value);
             return protocolEvent;
         });
         this._frameManager = frameManager;
@@ -81,8 +81,7 @@
         }
         this._checkLifecycleComplete();
     }
-    async navigationResponse() {
-        // We may need to wait for ExtraInfo events before the request is complete.
+    navigationResponse() {
         return this._navigationRequest ? this._navigationRequest.response() : null;
     }
     _terminate(error) {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js.map
index 60895e1..57e4d66 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/LifecycleWatcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"LifecycleWatcher.js","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"LifecycleWatcher.js","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts
index e809755..1d4a191 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts
@@ -13,10 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
 import { EventEmitter } from './EventEmitter.js';
-import { Frame } from './FrameManager.js';
 import { Protocol } from 'devtools-protocol';
+import { CDPSession } from './Connection.js';
+import { FrameManager } from './FrameManager.js';
 import { HTTPRequest } from './HTTPRequest.js';
 /**
  * @public
@@ -52,12 +52,6 @@
     readonly RequestFailed: symbol;
     readonly RequestFinished: symbol;
 };
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
-interface FrameManager {
-    frame(frameId: string): Frame | null;
-}
 /**
  * @internal
  */
@@ -68,18 +62,6 @@
     _requestIdToRequestWillBeSentEvent: Map<string, Protocol.Network.RequestWillBeSentEvent>;
     _requestIdToRequestPausedEvent: Map<string, Protocol.Fetch.RequestPausedEvent>;
     _requestIdToRequest: Map<string, HTTPRequest>;
-    _requestIdToResponseReceivedExtraInfo: Map<string, Protocol.Network.ResponseReceivedExtraInfoEvent[]>;
-    _requestIdToQueuedRedirectInfoMap: Map<string, {
-        event: Protocol.Network.RequestWillBeSentEvent;
-        interceptionId?: string;
-    }[]>;
-    _requestIdToQueuedEvents: Map<string, {
-        responseReceived: Protocol.Network.ResponseReceivedEvent;
-        promise: Promise<void>;
-        resolver: () => void;
-        loadingFinished?: Protocol.Network.LoadingFinishedEvent;
-        loadingFailed?: Protocol.Network.LoadingFailedEvent;
-    }>;
     _extraHTTPHeaders: Record<string, string>;
     _credentials?: Credentials;
     _attemptedAuthentications: Set<string>;
@@ -92,11 +74,10 @@
     authenticate(credentials?: Credentials): Promise<void>;
     setExtraHTTPHeaders(extraHTTPHeaders: Record<string, string>): Promise<void>;
     extraHTTPHeaders(): Record<string, string>;
-    numRequestsInProgress(): number;
     setOfflineMode(value: boolean): Promise<void>;
     emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
     _updateNetworkConditions(): Promise<void>;
-    setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
+    setUserAgent(userAgent: string): Promise<void>;
     setCacheEnabled(enabled: boolean): Promise<void>;
     setRequestInterception(value: boolean): Promise<void>;
     _updateProtocolRequestInterception(): Promise<void>;
@@ -105,23 +86,12 @@
     _onRequestWillBeSent(event: Protocol.Network.RequestWillBeSentEvent): void;
     _onAuthRequired(event: Protocol.Fetch.AuthRequiredEvent): void;
     _onRequestPaused(event: Protocol.Fetch.RequestPausedEvent): void;
-    _requestIdToQueuedRedirectInfo(requestId: string): Array<{
-        event: Protocol.Network.RequestWillBeSentEvent;
-        interceptionId?: string;
-    }>;
-    _requestIdToResponseExtraInfo(requestId: string): Protocol.Network.ResponseReceivedExtraInfoEvent[];
     _onRequest(event: Protocol.Network.RequestWillBeSentEvent, interceptionId?: string): void;
     _onRequestServedFromCache(event: Protocol.Network.RequestServedFromCacheEvent): void;
-    _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
-    _emitResponseEvent(responseReceived: Protocol.Network.ResponseReceivedEvent, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): void;
+    _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response): void;
     _onResponseReceived(event: Protocol.Network.ResponseReceivedEvent): void;
-    responseWaitingForExtraInfoPromise(requestId: string): Promise<void>;
-    _onResponseReceivedExtraInfo(event: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
     _forgetRequest(request: HTTPRequest, events: boolean): void;
     _onLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
-    _emitLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
     _onLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
-    _emitLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
 }
-export {};
 //# sourceMappingURL=NetworkManager.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts.map
index 0df7666..f08b36f 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"NetworkManager.d.ts","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,CAAC;IAEf,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAClE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B;;;;;;CAM9B,CAAC;AAEX,UAAU,UAAW,SAAQ,YAAY;IACvC,IAAI,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,QAAQ,EAC3C,MAAM,EAAE,CAAC,EACT,GAAG,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;CACvD;AAED,UAAU,YAAY;IACpB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;CACtC;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,EAAE,UAAU,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,EAAE,YAAY,CAAC;IAgC5B,kCAAkC,uDAG9B;IACJ,8BAA8B,iDAG1B;IACJ,mBAAmB,2BAAkC;IAWrD,qCAAqC,iEAGjC;IACJ,iCAAiC;eAGtB,SAAS,OAAO,CAAC,sBAAsB;yBAC7B,MAAM;SAEvB;IACJ,wBAAwB;0BAGF,SAAS,OAAO,CAAC,qBAAqB;iBAC/C,QAAQ,IAAI,CAAC;kBACZ,MAAM,IAAI;0BACF,SAAS,OAAO,CAAC,oBAAoB;wBACvC,SAAS,OAAO,CAAC,kBAAkB;OAEnD;IAEJ,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAC/C,YAAY,CAAC,EAAE,WAAW,CAAQ;IAClC,yBAAyB,cAAqB;IAC9C,+BAA+B,UAAS;IACxC,mCAAmC,UAAS;IAC5C,kBAAkB,UAAS;IAC3B,0BAA0B,EAAE,yBAAyB,CAKnD;gBAGA,MAAM,EAAE,UAAU,EAClB,iBAAiB,EAAE,OAAO,EAC1B,YAAY,EAAE,YAAY;IAgCtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,YAAY,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,mBAAmB,CACvB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC;IAehB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAI1C,qBAAqB,IAAI,MAAM;IAMzB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7C,wBAAwB,CAC5B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,GAC1C,OAAO,CAAC,IAAI,CAAC;IAcV,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;IASzC,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,iBAAiB,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,iBAAiB,GACvD,OAAO,CAAC,IAAI,CAAC;IAOV,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD,kCAAkC,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBzD,cAAc,IAAI,OAAO;IAInB,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAMnD,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,sBAAsB,GAAG,IAAI;IAuB1E,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI;IAwB9D,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,kBAAkB,GAAG,IAAI;IAwChE,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC;QACvD,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC;QAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IAOF,6BAA6B,CAC3B,SAAS,EAAE,MAAM,GAChB,QAAQ,CAAC,OAAO,CAAC,8BAA8B,EAAE;IAOpD,UAAU,CACR,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,sBAAsB,EAC9C,cAAc,CAAC,EAAE,MAAM,GACtB,IAAI;IAoDP,yBAAyB,CACvB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,2BAA2B,GAClD,IAAI;IAMP,sBAAsB,CACpB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAC1C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GACzD,IAAI;IAiBP,kBAAkB,CAChB,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EACxD,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI,GAChE,IAAI;IA2BP,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,qBAAqB,GAAG,IAAI;IAoBxE,kCAAkC,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE,4BAA4B,CAC1B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GACrD,IAAI;IAgCP,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAgB3D,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,oBAAoB,GAAG,IAAI;IAWtE,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,oBAAoB,GAAG,IAAI;IAaxE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI;IAWlE,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI;CAWrE"}
\ No newline at end of file
+{"version":3,"file":"NetworkManager.d.ts","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js
index 189eb33..f889d0d 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js
@@ -1,4 +1,6 @@
 "use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.NetworkManager = exports.NetworkManagerEmittedEvents = void 0;
 /**
  * Copyright 2017 Google Inc. All rights reserved.
  *
@@ -14,8 +16,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.NetworkManager = exports.NetworkManagerEmittedEvents = void 0;
 const EventEmitter_js_1 = require("./EventEmitter.js");
 const assert_js_1 = require("./assert.js");
 const helper_js_1 = require("./helper.js");
@@ -73,18 +73,6 @@
         this._requestIdToRequestWillBeSentEvent = new Map();
         this._requestIdToRequestPausedEvent = new Map();
         this._requestIdToRequest = new Map();
-        /*
-         * The below maps are used to reconcile Network.responseReceivedExtraInfo
-         * events with their corresponding request. Each response and redirect
-         * response gets an ExtraInfo event, and we don't know which will come first.
-         * This means that we have to store a Response or an ExtraInfo for each
-         * response, and emit the event when we get both of them. In addition, to
-         * handle redirects, we have to make them Arrays to represent the chain of
-         * events.
-         */
-        this._requestIdToResponseReceivedExtraInfo = new Map();
-        this._requestIdToQueuedRedirectInfoMap = new Map();
-        this._requestIdToQueuedEvents = new Map();
         this._extraHTTPHeaders = {};
         this._credentials = null;
         this._attemptedAuthentications = new Set();
@@ -107,7 +95,6 @@
         this._client.on('Network.responseReceived', this._onResponseReceived.bind(this));
         this._client.on('Network.loadingFinished', this._onLoadingFinished.bind(this));
         this._client.on('Network.loadingFailed', this._onLoadingFailed.bind(this));
-        this._client.on('Network.responseReceivedExtraInfo', this._onResponseReceivedExtraInfo.bind(this));
     }
     async initialize() {
         await this._client.send('Network.enable');
@@ -124,7 +111,7 @@
         this._extraHTTPHeaders = {};
         for (const key of Object.keys(extraHTTPHeaders)) {
             const value = extraHTTPHeaders[key];
-            (0, assert_js_1.assert)(helper_js_1.helper.isString(value), `Expected value of header "${key}" to be String, but "${typeof value}" is found.`);
+            assert_js_1.assert(helper_js_1.helper.isString(value), `Expected value of header "${key}" to be String, but "${typeof value}" is found.`);
             this._extraHTTPHeaders[key.toLowerCase()] = value;
         }
         await this._client.send('Network.setExtraHTTPHeaders', {
@@ -134,11 +121,6 @@
     extraHTTPHeaders() {
         return Object.assign({}, this._extraHTTPHeaders);
     }
-    numRequestsInProgress() {
-        return [...this._requestIdToRequest].filter(([, request]) => {
-            return !request.response();
-        }).length;
-    }
     async setOfflineMode(value) {
         this._emulatedNetworkConditions.offline = value;
         await this._updateNetworkConditions();
@@ -163,11 +145,8 @@
             downloadThroughput: this._emulatedNetworkConditions.download,
         });
     }
-    async setUserAgent(userAgent, userAgentMetadata) {
-        await this._client.send('Network.setUserAgentOverride', {
-            userAgent: userAgent,
-            userAgentMetadata: userAgentMetadata,
-        });
+    async setUserAgent(userAgent) {
+        await this._client.send('Network.setUserAgentOverride', { userAgent });
     }
     async setCacheEnabled(enabled) {
         this._userCacheDisabled = !enabled;
@@ -272,44 +251,14 @@
             this._requestIdToRequestPausedEvent.set(requestId, event);
         }
     }
-    _requestIdToQueuedRedirectInfo(requestId) {
-        if (!this._requestIdToQueuedRedirectInfoMap.has(requestId)) {
-            this._requestIdToQueuedRedirectInfoMap.set(requestId, []);
-        }
-        return this._requestIdToQueuedRedirectInfoMap.get(requestId);
-    }
-    _requestIdToResponseExtraInfo(requestId) {
-        if (!this._requestIdToResponseReceivedExtraInfo.has(requestId)) {
-            this._requestIdToResponseReceivedExtraInfo.set(requestId, []);
-        }
-        return this._requestIdToResponseReceivedExtraInfo.get(requestId);
-    }
     _onRequest(event, interceptionId) {
         let redirectChain = [];
         if (event.redirectResponse) {
-            // We want to emit a response and requestfinished for the
-            // redirectResponse, but we can't do so unless we have a
-            // responseExtraInfo ready to pair it up with. If we don't have any
-            // responseExtraInfos saved in our queue, they we have to wait until
-            // the next one to emit response and requestfinished, *and* we should
-            // also wait to emit this Request too because it should come after the
-            // response/requestfinished.
-            let redirectResponseExtraInfo = null;
-            if (event.redirectHasExtraInfo) {
-                redirectResponseExtraInfo = this._requestIdToResponseExtraInfo(event.requestId).shift();
-                if (!redirectResponseExtraInfo) {
-                    this._requestIdToQueuedRedirectInfo(event.requestId).push({
-                        event,
-                        interceptionId,
-                    });
-                    return;
-                }
-            }
             const request = this._requestIdToRequest.get(event.requestId);
             // If we connect late to the target, we could have missed the
             // requestWillBeSent event.
             if (request) {
-                this._handleRequestRedirect(request, event.redirectResponse, redirectResponseExtraInfo);
+                this._handleRequestRedirect(request, event.redirectResponse);
                 redirectChain = request._redirectChain;
             }
         }
@@ -319,7 +268,6 @@
         const request = new HTTPRequest_js_1.HTTPRequest(this._client, frame, interceptionId, this._userRequestInterceptionEnabled, event, redirectChain);
         this._requestIdToRequest.set(event.requestId, request);
         this.emit(exports.NetworkManagerEmittedEvents.Request, request);
-        request.finalizeInterceptions();
     }
     _onRequestServedFromCache(event) {
         const request = this._requestIdToRequest.get(event.requestId);
@@ -327,8 +275,8 @@
             request._fromMemoryCache = true;
         this.emit(exports.NetworkManagerEmittedEvents.RequestServedFromCache, request);
     }
-    _handleRequestRedirect(request, responsePayload, extraInfo) {
-        const response = new HTTPResponse_js_1.HTTPResponse(this._client, request, responsePayload, extraInfo);
+    _handleRequestRedirect(request, responsePayload) {
+        const response = new HTTPResponse_js_1.HTTPResponse(this._client, request, responsePayload);
         request._response = response;
         request._redirectChain.push(request);
         response._resolveBody(new Error('Response body is unavailable for redirect responses'));
@@ -336,72 +284,15 @@
         this.emit(exports.NetworkManagerEmittedEvents.Response, response);
         this.emit(exports.NetworkManagerEmittedEvents.RequestFinished, request);
     }
-    _emitResponseEvent(responseReceived, extraInfo) {
-        const request = this._requestIdToRequest.get(responseReceived.requestId);
+    _onResponseReceived(event) {
+        const request = this._requestIdToRequest.get(event.requestId);
         // FileUpload sends a response without a matching request.
         if (!request)
             return;
-        const extraInfos = this._requestIdToResponseExtraInfo(responseReceived.requestId);
-        if (extraInfos.length) {
-            (0, helper_js_1.debugError)(new Error('Unexpected extraInfo events for request ' +
-                responseReceived.requestId));
-        }
-        const response = new HTTPResponse_js_1.HTTPResponse(this._client, request, responseReceived.response, extraInfo);
+        const response = new HTTPResponse_js_1.HTTPResponse(this._client, request, event.response);
         request._response = response;
         this.emit(exports.NetworkManagerEmittedEvents.Response, response);
     }
-    _onResponseReceived(event) {
-        const request = this._requestIdToRequest.get(event.requestId);
-        let extraInfo = null;
-        if (request && !request._fromMemoryCache && event.hasExtraInfo) {
-            extraInfo = this._requestIdToResponseExtraInfo(event.requestId).shift();
-            if (!extraInfo) {
-                // Wait until we get the corresponding ExtraInfo event.
-                let resolver = null;
-                const promise = new Promise((resolve) => (resolver = resolve));
-                this._requestIdToQueuedEvents.set(event.requestId, {
-                    responseReceived: event,
-                    promise,
-                    resolver,
-                });
-                return;
-            }
-        }
-        this._emitResponseEvent(event, extraInfo);
-    }
-    responseWaitingForExtraInfoPromise(requestId) {
-        const responseReceived = this._requestIdToQueuedEvents.get(requestId);
-        if (!responseReceived)
-            return Promise.resolve();
-        return responseReceived.promise;
-    }
-    _onResponseReceivedExtraInfo(event) {
-        // We may have skipped a redirect response/request pair due to waiting for
-        // this ExtraInfo event. If so, continue that work now that we have the
-        // request.
-        const redirectInfo = this._requestIdToQueuedRedirectInfo(event.requestId).shift();
-        if (redirectInfo) {
-            this._requestIdToResponseExtraInfo(event.requestId).push(event);
-            this._onRequest(redirectInfo.event, redirectInfo.interceptionId);
-            return;
-        }
-        // We may have skipped response and loading events because we didn't have
-        // this ExtraInfo event yet. If so, emit those events now.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            this._emitResponseEvent(queuedEvents.responseReceived, event);
-            if (queuedEvents.loadingFinished) {
-                this._emitLoadingFinished(queuedEvents.loadingFinished);
-            }
-            if (queuedEvents.loadingFailed) {
-                this._emitLoadingFailed(queuedEvents.loadingFailed);
-            }
-            queuedEvents.resolver();
-            return;
-        }
-        // Wait until we get another event that can use this ExtraInfo event.
-        this._requestIdToResponseExtraInfo(event.requestId).push(event);
-    }
     _forgetRequest(request, events) {
         const requestId = request._requestId;
         const interceptionId = request._interceptionId;
@@ -410,23 +301,9 @@
         if (events) {
             this._requestIdToRequestWillBeSentEvent.delete(requestId);
             this._requestIdToRequestPausedEvent.delete(requestId);
-            this._requestIdToQueuedEvents.delete(requestId);
-            this._requestIdToQueuedRedirectInfoMap.delete(requestId);
-            this._requestIdToResponseReceivedExtraInfo.delete(requestId);
         }
     }
     _onLoadingFinished(event) {
-        // If the response event for this request is still waiting on a
-        // corresponding ExtraInfo event, then wait to emit this event too.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            queuedEvents.loadingFinished = event;
-        }
-        else {
-            this._emitLoadingFinished(event);
-        }
-    }
-    _emitLoadingFinished(event) {
         const request = this._requestIdToRequest.get(event.requestId);
         // For certain requestIds we never receive requestWillBeSent event.
         // @see https://crbug.com/750469
@@ -440,17 +317,6 @@
         this.emit(exports.NetworkManagerEmittedEvents.RequestFinished, request);
     }
     _onLoadingFailed(event) {
-        // If the response event for this request is still waiting on a
-        // corresponding ExtraInfo event, then wait to emit this event too.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            queuedEvents.loadingFailed = event;
-        }
-        else {
-            this._emitLoadingFailed(event);
-        }
-    }
-    _emitLoadingFailed(event) {
         const request = this._requestIdToRequest.get(event.requestId);
         // For certain requestIds we never receive requestWillBeSent event.
         // @see https://crbug.com/750469
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js.map
index 4c78563..05ae0ba 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/NetworkManager.js.map
@@ -1 +1 @@
-{"version":3,"file":"NetworkManager.js","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"NetworkManager.js","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,uDAAiD;AACjD,2CAAqC;AACrC,2CAAiD;AAIjD,qDAA+C;AAC/C,uDAAiD;AA4BjD;;;;;GAKG;AACU,QAAA,2BAA2B,GAAG;IACzC,OAAO,EAAE,MAAM,CAAC,wBAAwB,CAAC;IACzC,sBAAsB,EAAE,MAAM,CAAC,uCAAuC,CAAC;IACvE,QAAQ,EAAE,MAAM,CAAC,yBAAyB,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC,8BAA8B,CAAC;IACrD,eAAe,EAAE,MAAM,CAAC,gCAAgC,CAAC;CACjD,CAAC;AAEX;;GAEG;AACH,MAAa,cAAe,SAAQ,8BAAY;IA0D9C,YACE,MAAkB,EAClB,iBAA0B,EAC1B,YAA0B;QAE1B,KAAK,EAAE,CAAC;QA1DV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA6BG;QACH,uCAAkC,GAAG,IAAI,GAAG,EAGzC,CAAC;QACJ,mCAA8B,GAAG,IAAI,GAAG,EAGrC,CAAC;QACJ,wBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAC;QAErD,sBAAiB,GAA2B,EAAE,CAAC;QAC/C,iBAAY,GAAiB,IAAI,CAAC;QAClC,8BAAyB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9C,oCAA+B,GAAG,KAAK,CAAC;QACxC,wCAAmC,GAAG,KAAK,CAAC;QAC5C,uBAAkB,GAAG,KAAK,CAAC;QAC3B,+BAA0B,GAA8B;YACtD,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,CAAC,CAAC;YACV,QAAQ,EAAE,CAAC,CAAC;YACZ,OAAO,EAAE,CAAC;SACX,CAAC;QAQA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAElC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,OAAO,CAAC,EAAE,CACb,2BAA2B,EAC3B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CACrC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CACb,gCAAgC,EAChC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CACb,0BAA0B,EAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CACpC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CACb,yBAAyB,EACzB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CACnC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,uBAAuB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,kBAAkB;YACzB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE;gBAC7D,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,WAAyB;QAC1C,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,gBAAwC;QAExC,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YAC/C,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACpC,kBAAM,CACJ,kBAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtB,6BAA6B,GAAG,wBAAwB,OAAO,KAAK,aAAa,CAClF,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;SACnD;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE;YACrD,OAAO,EAAE,IAAI,CAAC,iBAAiB;SAChC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAc;QACjC,IAAI,CAAC,0BAA0B,CAAC,OAAO,GAAG,KAAK,CAAC;QAChD,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,iBAA2C;QAE3C,IAAI,CAAC,0BAA0B,CAAC,MAAM,GAAG,iBAAiB;YACxD,CAAC,CAAC,iBAAiB,CAAC,MAAM;YAC1B,CAAC,CAAC,CAAC,CAAC,CAAC;QACP,IAAI,CAAC,0BAA0B,CAAC,QAAQ,GAAG,iBAAiB;YAC1D,CAAC,CAAC,iBAAiB,CAAC,QAAQ;YAC5B,CAAC,CAAC,CAAC,CAAC,CAAC;QACP,IAAI,CAAC,0BAA0B,CAAC,OAAO,GAAG,iBAAiB;YACzD,CAAC,CAAC,iBAAiB,CAAC,OAAO;YAC3B,CAAC,CAAC,CAAC,CAAC;QAEN,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE;YAC1D,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO;YAChD,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,OAAO;YAChD,gBAAgB,EAAE,IAAI,CAAC,0BAA0B,CAAC,MAAM;YACxD,kBAAkB,EAAE,IAAI,CAAC,0BAA0B,CAAC,QAAQ;SAC7D,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAgB;QACpC,IAAI,CAAC,kBAAkB,GAAG,CAAC,OAAO,CAAC;QACnC,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAc;QACzC,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;QAC7C,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,kCAAkC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,+BAA+B,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAC5E,IAAI,OAAO,KAAK,IAAI,CAAC,mCAAmC;YAAE,OAAO;QACjE,IAAI,CAAC,mCAAmC,GAAG,OAAO,CAAC;QACnD,IAAI,OAAO,EAAE;YACX,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,4BAA4B,EAAE;gBACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE;oBAChC,kBAAkB,EAAE,IAAI;oBACxB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;iBAChC,CAAC;aACH,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,4BAA4B,EAAE;gBACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;aACnC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE;YAClD,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE;SACrC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB,CAAC,KAA8C;QACjE,0EAA0E;QAC1E,IACE,IAAI,CAAC,+BAA+B;YACpC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EACtC;YACA,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAClC,MAAM,kBAAkB,GACtB,IAAI,CAAC,8BAA8B,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAErD,IAAI,CAAC,kCAAkC,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAE9D,IAAI,kBAAkB,EAAE;gBACtB,MAAM,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC;gBACpD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;gBACvC,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aACvD;YAED,OAAO;SACR;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,KAAuC;QAKrD,IAAI,QAAQ,GAAiB,SAAS,CAAC;QACvC,IAAI,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;YACvD,QAAQ,GAAG,YAAY,CAAC;SACzB;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE;YAC5B,QAAQ,GAAG,oBAAoB,CAAC;YAChC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACrD;QACD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,YAAY,IAAI;YAClD,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,SAAS;SACpB,CAAC;QACF,IAAI,CAAC,OAAO;aACT,IAAI,CAAC,wBAAwB,EAAE;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,qBAAqB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;SACxD,CAAC;aACD,KAAK,CAAC,sBAAU,CAAC,CAAC;IACvB,CAAC;IAED,gBAAgB,CAAC,KAAwC;QACvD,IACE,CAAC,IAAI,CAAC,+BAA+B;YACrC,IAAI,CAAC,mCAAmC,EACxC;YACA,IAAI,CAAC,OAAO;iBACT,IAAI,CAAC,uBAAuB,EAAE;gBAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,CAAC;iBACD,KAAK,CAAC,sBAAU,CAAC,CAAC;SACtB;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC;QAEvC,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QAED,IAAI,sBAAsB,GACxB,IAAI,CAAC,kCAAkC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEzD,+CAA+C;QAC/C,IACE,sBAAsB;YACtB,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,KAAK,KAAK,CAAC,OAAO,CAAC,GAAG;gBACvD,sBAAsB,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EACjE;YACA,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1D,sBAAsB,GAAG,IAAI,CAAC;SAC/B;QAED,IAAI,sBAAsB,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;YACxD,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAC3D;aAAM;YACL,IAAI,CAAC,8BAA8B,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;SAC3D;IACH,CAAC;IAED,UAAU,CACR,KAA8C,EAC9C,cAAuB;QAEvB,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,gBAAgB,EAAE;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC9D,6DAA6D;YAC7D,2BAA2B;YAC3B,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;aACxC;SACF;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO;YACzB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;YACzC,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,OAAO,GAAG,IAAI,4BAAW,CAC7B,IAAI,CAAC,OAAO,EACZ,KAAK,EACL,cAAc,EACd,IAAI,CAAC,+BAA+B,EACpC,KAAK,EACL,aAAa,CACd,CAAC;QACF,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,yBAAyB,CACvB,KAAmD;QAEnD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,OAAO;YAAE,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,sBAAsB,CACpB,OAAoB,EACpB,eAA0C;QAE1C,MAAM,QAAQ,GAAG,IAAI,8BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAC1E,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC7B,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,QAAQ,CAAC,YAAY,CACnB,IAAI,KAAK,CAAC,qDAAqD,CAAC,CACjE,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,mBAAmB,CAAC,KAA6C;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9D,0DAA0D;QAC1D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,QAAQ,GAAG,IAAI,8BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzE,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,OAAoB,EAAE,MAAe;QAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;QAE/C,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEtD,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1D,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SACvD;IACH,CAAC;IAED,kBAAkB,CAAC,KAA4C;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9D,mEAAmE;QACnE,gCAAgC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,qEAAqE;QACrE,qDAAqD;QACrD,IAAI,OAAO,CAAC,QAAQ,EAAE;YAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,gBAAgB,CAAC,KAA0C;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9D,mEAAmE;QACnE,gCAAgC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,IAAI,QAAQ;YAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,mCAA2B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;CACF;AA9XD,wCA8XC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts
index 473c383..65e8b24 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts
@@ -142,11 +142,6 @@
      * @defaultValue false
      */
     omitBackground?: boolean;
-    /**
-     * Timeout in milliseconds
-     * @defaultValue 30000
-     */
-    timeout?: number;
 }
 /**
  * @internal
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts.map
index d07ae26..79927be 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"PDFOptions.d.ts","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,oBAAY,WAAW,GACnB,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,qBAAqB,CAY1D,CAAC"}
\ No newline at end of file
+{"version":3,"file":"PDFOptions.d.ts","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,oBAAY,WAAW,GACnB,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,qBAAqB,CAY1D,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.js.map
index b785977..cd4de73 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/PDFOptions.js.map
@@ -1 +1 @@
-{"version":3,"file":"PDFOptions.js","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA+JH;;GAEG;AACU,QAAA,YAAY,GAA+C;IACtE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CACzB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"PDFOptions.js","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AA0JH;;GAEG;AACU,QAAA,YAAY,GAA+C;IACtE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CACzB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts
index 2957142..0c20aeb 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 /// <reference types="node" />
-import type { Readable } from 'stream';
 import { EventEmitter } from './EventEmitter.js';
 import { CDPSession } from './Connection.js';
 import { Dialog } from './Dialog.js';
@@ -37,7 +36,6 @@
 import { Protocol } from 'devtools-protocol';
 import { SerializableOrJSHandle, EvaluateHandleFn, WrapElementHandle, EvaluateFn, EvaluateFnReturnType, UnwrapPromiseLike } from './EvalTypes.js';
 import { PDFOptions } from './PDFOptions.js';
-import { TaskQueue } from './TaskQueue.js';
 /**
  * @public
  */
@@ -126,7 +124,7 @@
     /**
      * @defaultValue 'png'
      */
-    type?: 'png' | 'jpeg' | 'webp';
+    type?: 'png' | 'jpeg';
     /**
      * The file path to save the image to. The screenshot type will be inferred
      * from file extension. If path is a relative path, then it is resolved
@@ -169,9 +167,7 @@
  * @public
  */
 export declare const enum PageEmittedEvents {
-    /** Emitted when the page closes.
-     * @eventProperty
-     */
+    /** Emitted when the page closes. */
     Close = "close",
     /**
      * Emitted when JavaScript within the page calls one of console API methods,
@@ -386,7 +382,7 @@
     /**
      * @internal
      */
-    static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue): Promise<Page>;
+    static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null): Promise<Page>;
     private _closed;
     private _client;
     private _target;
@@ -406,19 +402,13 @@
     private _workers;
     private _fileChooserInterceptors;
     private _disconnectPromise?;
-    private _userDragInterceptionEnabled;
-    private _handlerMap;
     /**
      * @internal
      */
-    constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, screenshotTaskQueue: TaskQueue);
+    constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean);
     private _initialize;
     private _onFileChooser;
     /**
-     * @returns `true` if drag events are being intercepted, `false` otherwise.
-     */
-    isDragInterceptionEnabled(): boolean;
-    /**
      * @returns `true` if the page has JavaScript enabled, `false` otherwise.
      */
     isJavaScriptEnabled(): boolean;
@@ -427,35 +417,18 @@
      */
     on<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
     once<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
-    off<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
     /**
-     * This method is typically coupled with an action that triggers file
-     * choosing. The following example clicks a button that issues a file chooser
-     * and then responds with `/tmp/myfile.pdf` as if a user has selected this file.
-     *
-     * ```js
-     * const [fileChooser] = await Promise.all([
-     * page.waitForFileChooser(),
-     * page.click('#upload-file-button'),
-     * // some button that triggers file selection
-     * ]);
-     * await fileChooser.accept(['/tmp/myfile.pdf']);
-     * ```
-     *
-     * NOTE: This must be called before the file chooser is launched. It will not
-     * return a currently active file chooser.
      * @param options - Optional waiting parameters
      * @returns Resolves after a page requests a file picker.
-     * @remarks
-     * NOTE: In non-headless Chromium, this method results in the native file picker
-     * dialog `not showing up` for the user.
      */
     waitForFileChooser(options?: WaitTimeoutOptions): Promise<FileChooser>;
     /**
      * Sets the page's geolocation.
+     *
      * @remarks
-     * NOTE: Consider using {@link BrowserContext.overridePermissions} to grant
+     * Consider using {@link BrowserContext.overridePermissions} to grant
      * permissions for the page to read its geolocation.
+     *
      * @example
      * ```js
      * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
@@ -467,24 +440,17 @@
      */
     target(): Target;
     /**
-     * Get the CDP session client the page belongs to.
-     * @internal
-     */
-    client(): CDPSession;
-    /**
-     * Get the browser the page belongs to.
+     * @returns The browser this page belongs to.
      */
     browser(): Browser;
     /**
-     * Get the browser context that the page belongs to.
+     * @returns The browser context that the page belongs to
      */
     browserContext(): BrowserContext;
     private _onTargetCrashed;
     private _onLogEntryAdded;
     /**
      * @returns The page's main frame.
-     * @remarks
-     * Page is guaranteed to have a main frame which persists during navigations.
      */
     mainFrame(): Frame;
     get keyboard(): Keyboard;
@@ -498,11 +464,8 @@
     frames(): Frame[];
     /**
      * @returns all of the dedicated
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
-     * WebWorkers}
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorkers}
      * associated with the page.
-     * @remarks
-     * NOTE: This does not contain ServiceWorkers
      */
     workers(): WebWorker[];
     /**
@@ -535,63 +498,14 @@
      *   await browser.close();
      * })();
      * ```
-     * NOTE: Enabling request interception disables page caching.
      */
     setRequestInterception(value: boolean): Promise<void>;
     /**
-     * @param enabled - Whether to enable drag interception.
-     *
-     * @remarks
-     * Activating drag interception enables the `Input.drag`,
-     * methods  This provides the capability to capture drag events emitted
-     * on the page, which can then be used to simulate drag-and-drop.
-     */
-    setDragInterception(enabled: boolean): Promise<void>;
-    /**
      * @param enabled - When `true`, enables offline mode for the page.
-     * @remarks
-     * NOTE: while this method sets the network connection to offline, it does
-     * not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
-     * (#pageemulatenetworkconditionsnetworkconditions)
      */
     setOfflineMode(enabled: boolean): Promise<void>;
-    /**
-     * @param networkConditions - Passing `null` disables network condition emulation.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const slow3G = puppeteer.networkConditions['Slow 3G'];
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulateNetworkConditions(slow3G);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks
-     * NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
-     * https://crbug.com/563644). To set the page offline, you can use
-     * [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
-     */
     emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
     /**
-     * This setting will change the default maximum navigation time for the
-     * following methods and related shortcuts:
-     *
-     * - {@link Page.goBack | page.goBack(options)}
-     *
-     * - {@link Page.goForward | page.goForward(options)}
-     *
-     * - {@link Page.goto | page.goto(url,options)}
-     *
-     * - {@link Page.reload | page.reload(options)}
-     *
-     * - {@link Page.setContent | page.setContent(html,options)}
-     *
-     * - {@link Page.waitForNavigation | page.waitForNavigation(options)}
      * @param timeout - Maximum navigation time in milliseconds.
      */
     setDefaultNavigationTimeout(timeout: number): void;
@@ -666,9 +580,6 @@
      * given prototype.
      *
      * @remarks
-     * Shortcut for
-     * {@link ExecutionContext.queryObjects |
-     * page.mainFrame().executionContext().queryObjects(prototypeHandle)}.
      *
      * @example
      *
@@ -685,8 +596,6 @@
      * await mapPrototype.dispose();
      * ```
      * @param prototypeHandle - a handle to the object prototype.
-     * @returns Promise which resolves to a handle to an array of objects with
-     * this prototype.
      */
     queryObjects(prototypeHandle: JSHandle): Promise<JSHandle>;
     /**
@@ -811,22 +720,7 @@
      * returned.
      */
     $$eval<ReturnType>(selector: string, pageFunction: (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
-    /**
-     * The method runs `document.querySelectorAll` within the page. If no elements
-     * match the selector, the return value resolves to `[]`.
-     * @remarks
-     * Shortcut for {@link Frame.$$ | Page.mainFrame().$$(selector) }.
-     * @param selector - A `selector` to query page for
-     */
     $$<T extends Element = Element>(selector: string): Promise<Array<ElementHandle<T>>>;
-    /**
-     * The method evaluates the XPath expression relative to the page document as
-     * its context node. If there are no such elements, the method resolves to an
-     * empty array.
-     * @remarks
-     * Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
-     * @param expression - Expression to evaluate
-     */
     $x(expression: string): Promise<ElementHandle[]>;
     /**
      * If no URLs are specified, this method returns cookies for the current page
@@ -834,157 +728,22 @@
      */
     cookies(...urls: string[]): Promise<Protocol.Network.Cookie[]>;
     deleteCookie(...cookies: Protocol.Network.DeleteCookiesRequest[]): Promise<void>;
-    /**
-     * @example
-     * ```js
-     * await page.setCookie(cookieObject1, cookieObject2);
-     * ```
-     */
     setCookie(...cookies: Protocol.Network.CookieParam[]): Promise<void>;
-    /**
-     * Adds a `<script>` tag into the page with the desired URL or content.
-     * @remarks
-     * Shortcut for {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options) }.
-     * @returns Promise which resolves to the added tag when the script's onload fires or
-     * when the script content was injected into frame.
-     */
     addScriptTag(options: {
         url?: string;
         path?: string;
         content?: string;
         type?: string;
-        id?: string;
     }): Promise<ElementHandle>;
-    /**
-     * Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a
-     * `<style type="text/css">` tag with the content.
-     * @returns Promise which resolves to the added tag when the stylesheet's
-     * onload fires or when the CSS content was injected into frame.
-     */
     addStyleTag(options: {
         url?: string;
         path?: string;
         content?: string;
     }): Promise<ElementHandle>;
-    /**
-     * The method adds a function called `name` on the page's `window` object. When
-     * called, the function executes `puppeteerFunction` in node.js and returns a
-     * `Promise` which resolves to the return value of `puppeteerFunction`.
-     *
-     * If the puppeteerFunction returns a `Promise`, it will be awaited.
-     *
-     * NOTE: Functions installed via `page.exposeFunction` survive navigations.
-     * @param name - Name of the function on the window object
-     * @param puppeteerFunction -  Callback function which will be called in
-     * Puppeteer's context.
-     * @example
-     * An example of adding an `md5` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const crypto = require('crypto');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('md5', (text) =>
-     * crypto.createHash('md5').update(text).digest('hex')
-     * );
-     * await page.evaluate(async () => {
-     * // use window.md5 to compute hashes
-     * const myString = 'PUPPETEER';
-     * const myHash = await window.md5(myString);
-     * console.log(`md5 of ${myString} is ${myHash}`);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     * An example of adding a `window.readfile` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const fs = require('fs');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('readfile', async (filePath) => {
-     * return new Promise((resolve, reject) => {
-     * fs.readFile(filePath, 'utf8', (err, text) => {
-     *    if (err) reject(err);
-     *    else resolve(text);
-     *  });
-     * });
-     * });
-     * await page.evaluate(async () => {
-     * // use window.readfile to read contents of a file
-     * const content = await window.readfile('/etc/hosts');
-     * console.log(content);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     */
-    exposeFunction(name: string, puppeteerFunction: Function | {
-        default: Function;
-    }): Promise<void>;
-    /**
-     * Provide credentials for `HTTP authentication`.
-     * @remarks To disable authentication, pass `null`.
-     */
+    exposeFunction(name: string, puppeteerFunction: Function): Promise<void>;
     authenticate(credentials: Credentials): Promise<void>;
-    /**
-     * The extra HTTP headers will be sent with every request the page initiates.
-     * NOTE: All HTTP header names are lowercased. (HTTP headers are
-     * case-insensitive, so this shouldn’t impact your server code.)
-     * NOTE: page.setExtraHTTPHeaders does not guarantee the order of headers in
-     * the outgoing requests.
-     * @param headers - An object containing additional HTTP headers to be sent
-     * with every request. All header values must be strings.
-     * @returns
-     */
     setExtraHTTPHeaders(headers: Record<string, string>): Promise<void>;
-    /**
-     * @param userAgent - Specific user agent to use in this page
-     * @param userAgentData - Specific user agent client hint data to use in this
-     * page
-     * @returns Promise which resolves when the user agent is set.
-     */
-    setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
-    /**
-     * @returns Object containing metrics as key/value pairs.
-     *
-     * - `Timestamp` : The timestamp when the metrics sample was taken.
-     *
-     * - `Documents` : Number of documents in the page.
-     *
-     * - `Frames` : Number of frames in the page.
-     *
-     * - `JSEventListeners` : Number of events in the page.
-     *
-     * - `Nodes` : Number of DOM nodes in the page.
-     *
-     * - `LayoutCount` : Total number of full or partial page layout.
-     *
-     * - `RecalcStyleCount` : Total number of page style recalculations.
-     *
-     * - `LayoutDuration` : Combined durations of all page layouts.
-     *
-     * - `RecalcStyleDuration` : Combined duration of all page style
-     *   recalculations.
-     *
-     * - `ScriptDuration` : Combined duration of JavaScript execution.
-     *
-     * - `TaskDuration` : Combined duration of all tasks performed by the browser.
-     *
-     *
-     * - `JSHeapUsedSize` : Used JavaScript heap size.
-     *
-     * - `JSHeapTotalSize` : Total JavaScript heap size.
-     * @remarks
-     * NOTE: All timestamps are in monotonic time: monotonically increasing time
-     * in seconds since an arbitrary point in the past.
-     */
+    setUserAgent(userAgent: string): Promise<void>;
     metrics(): Promise<Metrics>;
     private _emitMetrics;
     private _buildMetricsObject;
@@ -1001,435 +760,33 @@
      * Hides default white background
      */
     private _setTransparentBackgroundColor;
-    /**
-     *
-     * @returns
-     * @remarks Shortcut for
-     * {@link Frame.url | page.mainFrame().url()}.
-     */
     url(): string;
     content(): Promise<string>;
-    /**
-     * @param html - HTML markup to assign to the page.
-     * @param options - Parameters that has some properties.
-     * @remarks
-     * The parameter `options` might have the following options.
-     *
-     * - `timeout` : Maximum time in milliseconds for resources to load, defaults
-     *   to 30 seconds, pass `0` to disable timeout. The default value can be
-     *   changed by using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider setting markup succeeded, defaults to `load`.
-     *    Given an array of event strings, setting content is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider setting content to be finished when the `load` event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider setting content to be finished when the
-     *   `DOMContentLoaded` event is fired.<br/>
-     *  - `networkidle0` : consider setting content to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider setting content to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     setContent(html: string, options?: WaitForOptions): Promise<void>;
-    /**
-     * @param url - URL to navigate page to. The URL should include scheme, e.g.
-     * `https://`
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be successful
-     *    after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *    DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *    more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *    more than 2 network connections for at least `500` ms.
-     *
-     * - `referer` : Referer header value. If provided it will take preference
-     *   over the referer header value set by
-     *   {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
-     *
-     * `page.goto` will throw an error if:
-     * - there's an SSL error (e.g. in case of self-signed certificates).
-     * - target URL is invalid.
-     * - the timeout is exceeded during navigation.
-     * - the remote server does not respond or is unreachable.
-     * - the main resource failed to load.
-     *
-     * `page.goto` will not throw an error when any valid HTTP status code is
-     *   returned by the remote server, including 404 "Not Found" and 500
-     *   "Internal Server Error". The status code for such responses can be
-     *   retrieved by calling response.status().
-     *
-     * NOTE: `page.goto` either throws an error or returns a main resource
-     * response. The only exceptions are navigation to about:blank or navigation
-     * to the same URL with a different hash, which would succeed and return null.
-     *
-     * NOTE: Headless mode doesn't support navigation to a PDF document. See the
-     * {@link https://bugs.chromium.org/p/chromium/issues/detail?id=761295
-     * | upstream issue}.
-     *
-     * Shortcut for {@link Frame.goto | page.mainFrame().goto(url, options)}.
-     */
     goto(url: string, options?: WaitForOptions & {
         referer?: string;
     }): Promise<HTTPResponse>;
-    /**
-     * @param options - Navigation parameters which might have the following
-     * properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     reload(options?: WaitForOptions): Promise<HTTPResponse | null>;
-    /**
-     * This resolves when the page navigates to a new URL or reloads. It is useful
-     * when you run code that will indirectly cause the page to navigate. Consider
-     * this example:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(), // The promise resolves after navigation has finished
-     * page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
-     * ]);
-     * ```
-     *
-     * @param options - Navigation parameters which might have the following properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. In case of navigation to a different anchor or navigation
-     * due to History API usage, the navigation will resolve with `null`.
-     * @remarks
-     * NOTE: Usage of the
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/History_API | History API}
-     * to change the URL is considered a navigation.
-     *
-     * Shortcut for
-     * {@link Frame.waitForNavigation | page.mainFrame().waitForNavigation(options)}.
-     */
     waitForNavigation(options?: WaitForOptions): Promise<HTTPResponse | null>;
     private _sessionClosePromise;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Waiting Parameters have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
-     * `0` to disable the timeout. The default value can be changed by using the
-     * {@link Page.setDefaultTimeout} method.
-     */
     waitForRequest(urlOrPredicate: string | ((req: HTTPRequest) => boolean | Promise<boolean>), options?: {
         timeout?: number;
     }): Promise<HTTPRequest>;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response.
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
     waitForResponse(urlOrPredicate: string | ((res: HTTPResponse) => boolean | Promise<boolean>), options?: {
         timeout?: number;
     }): Promise<HTTPResponse>;
-    /**
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when network is idle
-     */
-    waitForNetworkIdle(options?: {
-        idleTime?: number;
-        timeout?: number;
-    }): Promise<void>;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched frame.
-     * @example
-     * ```js
-     * const frame = await page.waitForFrame(async (frame) => {
-     *   return frame.name() === 'Test';
-     * });
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
-    waitForFrame(urlOrPredicate: string | ((frame: Frame) => boolean | Promise<boolean>), options?: {
-        timeout?: number;
-    }): Promise<Frame>;
-    /**
-     * This method navigate to the previous page in history.
-     * @param options - Navigation parameters
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go back, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     goBack(options?: WaitForOptions): Promise<HTTPResponse | null>;
-    /**
-     * This method navigate to the next page in history.
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go forward, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     goForward(options?: WaitForOptions): Promise<HTTPResponse | null>;
     private _go;
-    /**
-     * Brings page to front (activates tab).
-     */
     bringToFront(): Promise<void>;
-    /**
-     * Emulates given device metrics and user agent. This method is a shortcut for
-     * calling two methods: {@link Page.setUserAgent} and {@link Page.setViewport}
-     * To aid emulation, Puppeteer provides a list of device descriptors that can
-     * be obtained via the {@link Puppeteer.devices} `page.emulate` will resize
-     * the page. A lot of websites don't expect phones to change size, so you
-     * should emulate before navigating to the page.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const iPhone = puppeteer.devices['iPhone 6'];
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulate(iPhone);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks List of all available devices is available in the source code:
-     * {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-     */
     emulate(options: {
         viewport: Viewport;
         userAgent: string;
     }): Promise<void>;
-    /**
-     * @param enabled - Whether or not to enable JavaScript on the page.
-     * @returns
-     * @remarks
-     * NOTE: changing this value won't affect scripts that have already been run.
-     * It will take full effect on the next navigation.
-     */
     setJavaScriptEnabled(enabled: boolean): Promise<void>;
-    /**
-     * Toggles bypassing page's Content-Security-Policy.
-     * @param enabled - sets bypassing of page's Content-Security-Policy.
-     * @remarks
-     * NOTE: CSP bypassing happens at the moment of CSP initialization rather than
-     * evaluation. Usually, this means that `page.setBypassCSP` should be called
-     * before navigating to the domain.
-     */
     setBypassCSP(enabled: boolean): Promise<void>;
-    /**
-     * @param type - Changes the CSS media type of the page. The only allowed
-     * values are `screen`, `print` and `null`. Passing `null` disables CSS media
-     * emulation.
-     * @example
-     * ```
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     *
-     * await page.emulateMediaType('print');
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → false
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → true
-     *
-     * await page.emulateMediaType(null);
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     * ```
-     */
     emulateMediaType(type?: string): Promise<void>;
-    /**
-     * Enables CPU throttling to emulate slow CPUs.
-     * @param factor - slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
-     */
-    emulateCPUThrottling(factor: number | null): Promise<void>;
-    /**
-     * @param features - `<?Array<Object>>` Given an array of media feature
-     * objects, emulates CSS media features on the page. Each media feature object
-     * must have the following properties:
-     * @example
-     * ```js
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([{ name: 'color-gamut', value: 'p3' }]);
-     * await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: rec2020)').matches);
-     * // → false
-     * ```
-     */
     emulateMediaFeatures(features?: MediaFeature[]): Promise<void>;
-    /**
-     * @param timezoneId - Changes the timezone of the page. See
-     * {@link https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt | ICU’s metaZones.txt}
-     * for a list of supported timezone IDs. Passing
-     * `null` disables timezone emulation.
-     */
     emulateTimezone(timezoneId?: string): Promise<void>;
     /**
      * Emulates the idle state.
@@ -1448,6 +805,8 @@
      * ```
      *
      * @param overrides - Mock idle state. If not set, clears idle overrides
+     * @param isUserActive - Mock isUserActive
+     * @param isScreenUnlocked - Mock isScreenUnlocked
      */
     emulateIdleState(overrides?: {
         isUserActive: boolean;
@@ -1481,65 +840,7 @@
      * @param type - the type of deficiency to simulate, or `'none'` to reset.
      */
     emulateVisionDeficiency(type?: Protocol.Emulation.SetEmulatedVisionDeficiencyRequest['type']): Promise<void>;
-    /**
-     * `page.setViewport` will resize the page. A lot of websites don't expect
-     * phones to change size, so you should set the viewport before navigating to
-     * the page.
-     *
-     * In the case of multiple pages in a single browser, each page can have its
-     * own viewport size.
-     * @example
-     * ```js
-     * const page = await browser.newPage();
-     * await page.setViewport({
-     * width: 640,
-     * height: 480,
-     * deviceScaleFactor: 1,
-     * });
-     * await page.goto('https://example.com');
-     * ```
-     *
-     * @param viewport -
-     * @remarks
-     * Argument viewport have following properties:
-     *
-     * - `width`: page width in pixels. required
-     *
-     * - `height`: page height in pixels. required
-     *
-     * - `deviceScaleFactor`: Specify device scale factor (can be thought of as
-     *   DPR). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to `false`
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to false.
-     *
-     * NOTE: in certain cases, setting viewport will reload the page in order to
-     * set the isMobile or hasTouch properties.
-     */
     setViewport(viewport: Viewport): Promise<void>;
-    /**
-     * @returns
-     *
-     * - `width`: page's width in pixels
-     *
-     * - `height`: page's height in pixels
-     *
-     * - `deviceScalarFactor`: Specify device scale factor (can be though of as
-     *   dpr). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to
-     *   `false`.
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to
-     *   `false`.
-     */
     viewport(): Viewport | null;
     /**
      * @remarks
@@ -1590,90 +891,15 @@
      * @returns the return value of `pageFunction`.
      */
     evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
-    /**
-     * Adds a function which would be invoked in one of the following scenarios:
-     *
-     * - whenever the page is navigated
-     *
-     * - whenever the child frame is attached or navigated. In this case, the
-     * function is invoked in the context of the newly attached frame.
-     *
-     * The function is invoked after the document was created but before any of
-     * its scripts were run. This is useful to amend the JavaScript environment,
-     * e.g. to seed `Math.random`.
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param args - Arguments to pass to `pageFunction`
-     * @example
-     * An example of overriding the navigator.languages property before the page loads:
-     * ```js
-     * // preload.js
-     *
-     * // overwrite the `languages` property to use a custom getter
-     * Object.defineProperty(navigator, 'languages', {
-     * get: function () {
-     * return ['en-US', 'en', 'bn'];
-     * },
-     * });
-     *
-     * // In your puppeteer script, assuming the preload.js file is
-     * in same folder of our script
-     * const preloadFile = fs.readFileSync('./preload.js', 'utf8');
-     * await page.evaluateOnNewDocument(preloadFile);
-     * ```
-     */
     evaluateOnNewDocument(pageFunction: Function | string, ...args: unknown[]): Promise<void>;
-    /**
-     * Toggles ignoring cache for each request based on the enabled state. By
-     * default, caching is enabled.
-     * @param enabled - sets the `enabled` state of cache
-     */
     setCacheEnabled(enabled?: boolean): Promise<void>;
-    /**
-     * @remarks
-     * Options object which might have the following properties:
-     *
-     * - `path` : The file path to save the image to. The screenshot type
-     *   will be inferred from file extension. If `path` is a relative path, then
-     *   it is resolved relative to
-     *   {@link https://nodejs.org/api/process.html#process_process_cwd
-     *   | current working directory}.
-     *   If no path is provided, the image won't be saved to the disk.
-     *
-     * - `type` : Specify screenshot type, can be either `jpeg` or `png`.
-     *   Defaults to 'png'.
-     *
-     * - `quality` : The quality of the image, between 0-100. Not
-     *   applicable to `png` images.
-     *
-     * - `fullPage` : When true, takes a screenshot of the full
-     *   scrollable page. Defaults to `false`
-     *
-     * - `clip` : An object which specifies clipping region of the page.
-     *   Should have the following fields:<br/>
-     *  - `x` : x-coordinate of top-left corner of clip area.<br/>
-     *  - `y` :  y-coordinate of top-left corner of clip area.<br/>
-     *  - `width` : width of clipping area.<br/>
-     *  - `height` : height of clipping area.
-     *
-     * - `omitBackground` : Hides default white background and allows
-     *   capturing screenshots with transparency. Defaults to `false`
-     *
-     * - `encoding` : The encoding of the image, can be either base64 or
-     *   binary. Defaults to `binary`.
-     *
-     *
-     * NOTE: Screenshots take at least 1/6 second on OS X. See
-     * {@link https://crbug.com/741689} for discussion.
-     * @returns Promise which resolves to buffer or a base64 string (depending on
-     * the value of `encoding`) with captured screenshot.
-     */
-    screenshot(options?: ScreenshotOptions): Promise<Buffer | string>;
+    screenshot(options?: ScreenshotOptions): Promise<Buffer | string | void>;
     private _screenshotTask;
     /**
      * Generatees a PDF of the page with the `print` CSS media type.
      * @remarks
      *
-     * NOTE: PDF generation is only supported in Chrome headless mode.
+     * IMPORTANT: PDF generation is only supported in Chrome headless mode.
      *
      * To generate a PDF with the `screen` media type, call
      * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
@@ -1687,141 +913,22 @@
      *
      * @param options - options for generating the PDF.
      */
-    createPDFStream(options?: PDFOptions): Promise<Readable>;
-    /**
-     * @param options -
-     * @returns
-     */
     pdf(options?: PDFOptions): Promise<Buffer>;
-    /**
-     * @returns The page's title
-     * @remarks
-     * Shortcut for {@link Frame.title | page.mainFrame().title()}.
-     */
     title(): Promise<string>;
     close(options?: {
         runBeforeUnload?: boolean;
     }): Promise<void>;
-    /**
-     * Indicates that the page has been closed.
-     * @returns
-     */
     isClosed(): boolean;
     get mouse(): Mouse;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to click in the center of the
-     * element. If there's no element matching `selector`, the method throws an
-     * error.
-     * @remarks Bear in mind that if `click()` triggers a navigation event and
-     * there's a separate `page.waitForNavigation()` promise to be resolved, you
-     * may end up with a race condition that yields unexpected results. The
-     * correct pattern for click and wait for navigation is the following:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(waitOptions),
-     * page.click(selector, clickOptions),
-     * ]);
-     * ```
-     * Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
-     * @param selector - A `selector` to search for element to click. If there are
-     * multiple elements satisfying the `selector`, the first will be clicked
-     * @param options - `Object`
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully clicked. The Promise will be rejected if there is no element
-     * matching `selector`.
-     */
     click(selector: string, options?: {
         delay?: number;
         button?: MouseButton;
         clickCount?: number;
     }): Promise<void>;
-    /**
-     * This method fetches an element with `selector` and focuses it. If there's no
-     * element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
-     * of an element to focus. If there are multiple elements satisfying the
-     * selector, the first will be focused.
-     * @returns  Promise which resolves when the element matching selector is
-     * successfully focused. The promise will be rejected if there is no element
-     * matching selector.
-     * @remarks
-     * Shortcut for {@link Frame.focus | page.mainFrame().focus(selector)}.
-     */
     focus(selector: string): Promise<void>;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to hover over the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * to search for element to hover. If there are multiple elements satisfying
-     * the selector, the first will be hovered.
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully hovered. Promise gets rejected if there's no element matching
-     * `selector`.
-     * @remarks
-     * Shortcut for {@link Page.hover | page.mainFrame().hover(selector)}.
-     */
     hover(selector: string): Promise<void>;
-    /**
-     * Triggers a `change` and `input` event once all the provided options have been
-     * selected. If there's no `<select>` element matching `selector`, the method
-     * throws an error.
-     *
-     * @example
-     * ```js
-     * page.select('select#colors', 'blue'); // single selection
-     * page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to query the page for
-     * @param values - Values of options to select. If the `<select>` has the
-     * `multiple` attribute, all values are considered, otherwise only the first one
-     * is taken into account.
-     * @returns
-     *
-     * @remarks
-     * Shortcut for {@link Frame.select | page.mainFrame().select()}
-     */
     select(selector: string, ...values: string[]): Promise<string[]>;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.touchscreen} to tap in the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to search for element to tap. If there are multiple elements satisfying the
-     * selector, the first will be tapped.
-     * @returns
-     * @remarks
-     * Shortcut for {@link Frame.tap | page.mainFrame().tap(selector)}.
-     */
     tap(selector: string): Promise<void>;
-    /**
-     * Sends a `keydown`, `keypress/input`, and `keyup` event for each character
-     * in the text.
-     *
-     * To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
-     * @example
-     * ```
-     * await page.type('#mytextarea', 'Hello');
-     * // Types instantly
-     * await page.type('#mytextarea', 'World', { delay: 100 });
-     * // Types slower, like a user
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to type into. If there are multiple elements satisfying the
-     * selector, the first will be used.
-     * @param text - A text to type into a focused element.
-     * @param options - have property `delay` which is the Time to wait between
-     * key presses in milliseconds. Defaults to `0`.
-     * @returns
-     * @remarks
-     */
     type(selector: string, text: string, options?: {
         delay: number;
     }): Promise<void>;
@@ -1876,178 +983,16 @@
      * @param milliseconds - the number of milliseconds to wait.
      */
     waitForTimeout(milliseconds: number): Promise<void>;
-    /**
-     * Wait for the `selector` to appear in page. If at the moment of calling the
-     * method the `selector` already exists, the method will return immediately. If
-     * the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigations:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForSelector('img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by selector string
-     * is added to DOM. Resolves to `null` if waiting for hidden: `true` and
-     * selector is not found in DOM.
-     * @remarks
-     * The optional Parameter in Arguments `options` are :
-     *
-     * - `Visible`: A boolean wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: ait for element to not be found in the DOM or to be hidden,
-     * i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
-     * `false`.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForSelector(selector: string, options?: {
         visible?: boolean;
         hidden?: boolean;
         timeout?: number;
     }): Promise<ElementHandle | null>;
-    /**
-     * Wait for the `xpath` to appear in page. If at the moment of calling the
-     * method the `xpath` already exists, the method will return immediately. If
-     * the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigation
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForXPath('//img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param xpath - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
-     * element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by xpath string is
-     * added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
-     * not found in DOM.
-     * @remarks
-     * The optional Argument `options` have properties:
-     *
-     * - `visible`: A boolean to wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: A boolean wait for element to not be found in the DOM or to be
-     * hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
-     * Defaults to `false`.
-     *
-     * - `timeout`: A number which is maximum time to wait for in milliseconds.
-     * Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
-     * value can be changed by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForXPath(xpath: string, options?: {
         visible?: boolean;
         hidden?: boolean;
         timeout?: number;
     }): Promise<ElementHandle | null>;
-    /**
-     * The `waitForFunction` can be used to observe viewport size change:
-     *
-     * ```
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * const watchDog = page.waitForFunction('window.innerWidth < 100');
-     * await page.setViewport({ width: 50, height: 50 });
-     * await watchDog;
-     * await browser.close();
-     * })();
-     * ```
-     * To pass arguments from node.js to the predicate of `page.waitForFunction` function:
-     * ```
-     * const selector = '.foo';
-     * await page.waitForFunction(
-     * (selector) => !!document.querySelector(selector),
-     * {},
-     * selector
-     * );
-     * ```
-     * The predicate of `page.waitForFunction` can be asynchronous too:
-     * ```
-     * const username = 'github-username';
-     * await page.waitForFunction(
-     * async (username) => {
-     * const githubResponse = await fetch(
-     *  `https://api.github.com/users/${username}`
-     * );
-     * const githubUser = await githubResponse.json();
-     * // show the avatar
-     * const img = document.createElement('img');
-     * img.src = githubUser.avatar_url;
-     * // wait 3 seconds
-     * await new Promise((resolve, reject) => setTimeout(resolve, 3000));
-     * img.remove();
-     * },
-     * {},
-     * username
-     * );
-     * ```
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param options - Optional waiting parameters
-     * @param args -  Arguments to pass to `pageFunction`
-     * @returns Promise which resolves when the `pageFunction` returns a truthy
-     * value. It resolves to a JSHandle of the truthy value.
-     *
-     * The optional waiting parameter can be:
-     *
-     * - `Polling`: An interval at which the `pageFunction` is executed, defaults to
-     *   `raf`. If `polling` is a number, then it is treated as an interval in
-     *   milliseconds at which the function would be executed. If polling is a
-     *   string, then it can be one of the following values:<br/>
-     *    - `raf`: to constantly execute `pageFunction` in `requestAnimationFrame`
-     *      callback. This is the tightest polling mode which is suitable to
-     *      observe styling changes.<br/>
-     *    - `mutation`: to execute pageFunction on every DOM mutation.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the
-     * {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)} method.
-     *
-     */
     waitForFunction(pageFunction: Function | string, options?: {
         timeout?: number;
         polling?: string | number;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts.map
index ea363d6..76d951c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js
index a51192a..ec4d983 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js
@@ -35,6 +35,16 @@
 const ConsoleMessage_js_1 = require("./ConsoleMessage.js");
 const PDFOptions_js_1 = require("./PDFOptions.js");
 const environment_js_1 = require("../environment.js");
+class ScreenshotTaskQueue {
+    constructor() {
+        this._chain = Promise.resolve(undefined);
+    }
+    postTask(task) {
+        const result = this._chain.then(task);
+        this._chain = result.catch(() => { });
+        return result;
+    }
+}
 /**
  * Page provides methods to interact with a single tab or
  * {@link https://developer.chrome.com/extensions/background_pages | extension background page} in Chromium.
@@ -82,7 +92,7 @@
     /**
      * @internal
      */
-    constructor(client, target, ignoreHTTPSErrors, screenshotTaskQueue) {
+    constructor(client, target, ignoreHTTPSErrors) {
         super();
         this._closed = false;
         this._timeoutSettings = new TimeoutSettings_js_1.TimeoutSettings();
@@ -92,8 +102,6 @@
         // TODO: improve this typedef - it's a function that takes a file chooser or
         // something?
         this._fileChooserInterceptors = new Set();
-        this._userDragInterceptionEnabled = false;
-        this._handlerMap = new WeakMap();
         this._client = client;
         this._target = target;
         this._keyboard = new Input_js_1.Keyboard(client);
@@ -104,7 +112,7 @@
         this._emulationManager = new EmulationManager_js_1.EmulationManager(client);
         this._tracing = new Tracing_js_1.Tracing(client);
         this._coverage = new Coverage_js_1.Coverage(client);
-        this._screenshotTaskQueue = screenshotTaskQueue;
+        this._screenshotTaskQueue = new ScreenshotTaskQueue();
         this._viewport = null;
         client.on('Target.attachedToTarget', (event) => {
             if (event.targetInfo.type !== 'worker' &&
@@ -113,7 +121,7 @@
                 // We still want to attach to workers for emitting events.
                 // We still want to attach to iframes so sessions may interact with them.
                 // We detach from all other types out of an abundance of caution.
-                // See https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22
+                // See https://source.chromium.org/chromium/chromium/src/+/master:content/browser/devtools/devtools_agent_host_impl.cc?q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22&ss=chromium
                 // for the complete list of available types.
                 client
                     .send('Target.detachFromTarget', {
@@ -122,12 +130,10 @@
                     .catch(helper_js_1.debugError);
                 return;
             }
-            if (event.targetInfo.type === 'worker') {
-                const session = Connection_js_1.Connection.fromSession(client).session(event.sessionId);
-                const worker = new WebWorker_js_1.WebWorker(session, event.targetInfo.url, this._addConsoleMessage.bind(this), this._handleException.bind(this));
-                this._workers.set(event.sessionId, worker);
-                this.emit("workercreated" /* WorkerCreated */, worker);
-            }
+            const session = Connection_js_1.Connection.fromSession(client).session(event.sessionId);
+            const worker = new WebWorker_js_1.WebWorker(session, event.targetInfo.url, this._addConsoleMessage.bind(this), this._handleException.bind(this));
+            this._workers.set(event.sessionId, worker);
+            this.emit("workercreated" /* WorkerCreated */, worker);
         });
         client.on('Target.detachedFromTarget', (event) => {
             const worker = this._workers.get(event.sessionId);
@@ -164,8 +170,8 @@
     /**
      * @internal
      */
-    static async create(client, target, ignoreHTTPSErrors, defaultViewport, screenshotTaskQueue) {
-        const page = new Page(client, target, ignoreHTTPSErrors, screenshotTaskQueue);
+    static async create(client, target, ignoreHTTPSErrors, defaultViewport) {
+        const page = new Page(client, target, ignoreHTTPSErrors);
         await page._initialize();
         if (defaultViewport)
             await page.setViewport(defaultViewport);
@@ -196,12 +202,6 @@
             interceptor.call(null, fileChooser);
     }
     /**
-     * @returns `true` if drag events are being intercepted, `false` otherwise.
-     */
-    isDragInterceptionEnabled() {
-        return this._userDragInterceptionEnabled;
-    }
-    /**
      * @returns `true` if the page has JavaScript enabled, `false` otherwise.
      */
     isJavaScriptEnabled() {
@@ -210,17 +210,9 @@
     /**
      * Listen to page events.
      */
-    // Note: this method exists to define event typings and handle
-    // proper wireup of cooperative request interception. Actual event listening and
-    // dispatching is delegated to EventEmitter.
     on(eventName, handler) {
-        if (eventName === 'request') {
-            const wrap = (event) => {
-                event.enqueueInterceptAction(() => handler(event));
-            };
-            this._handlerMap.set(handler, wrap);
-            return super.on(eventName, wrap);
-        }
+        // Note: this method only exists to define the types; we delegate the impl
+        // to EventEmitter.
         return super.on(eventName, handler);
     }
     once(eventName, handler) {
@@ -228,33 +220,9 @@
         // to EventEmitter.
         return super.once(eventName, handler);
     }
-    off(eventName, handler) {
-        if (eventName === 'request') {
-            handler = this._handlerMap.get(handler) || handler;
-        }
-        return super.off(eventName, handler);
-    }
     /**
-     * This method is typically coupled with an action that triggers file
-     * choosing. The following example clicks a button that issues a file chooser
-     * and then responds with `/tmp/myfile.pdf` as if a user has selected this file.
-     *
-     * ```js
-     * const [fileChooser] = await Promise.all([
-     * page.waitForFileChooser(),
-     * page.click('#upload-file-button'),
-     * // some button that triggers file selection
-     * ]);
-     * await fileChooser.accept(['/tmp/myfile.pdf']);
-     * ```
-     *
-     * NOTE: This must be called before the file chooser is launched. It will not
-     * return a currently active file chooser.
      * @param options - Optional waiting parameters
      * @returns Resolves after a page requests a file picker.
-     * @remarks
-     * NOTE: In non-headless Chromium, this method results in the native file picker
-     * dialog `not showing up` for the user.
      */
     async waitForFileChooser(options = {}) {
         if (!this._fileChooserInterceptors.size)
@@ -274,9 +242,11 @@
     }
     /**
      * Sets the page's geolocation.
+     *
      * @remarks
-     * NOTE: Consider using {@link BrowserContext.overridePermissions} to grant
+     * Consider using {@link BrowserContext.overridePermissions} to grant
      * permissions for the page to read its geolocation.
+     *
      * @example
      * ```js
      * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
@@ -303,20 +273,13 @@
         return this._target;
     }
     /**
-     * Get the CDP session client the page belongs to.
-     * @internal
-     */
-    client() {
-        return this._client;
-    }
-    /**
-     * Get the browser the page belongs to.
+     * @returns The browser this page belongs to.
      */
     browser() {
         return this._target.browser();
     }
     /**
-     * Get the browser context that the page belongs to.
+     * @returns The browser context that the page belongs to
      */
     browserContext() {
         return this._target.browserContext();
@@ -333,8 +296,6 @@
     }
     /**
      * @returns The page's main frame.
-     * @remarks
-     * Page is guaranteed to have a main frame which persists during navigations.
      */
     mainFrame() {
         return this._frameManager.mainFrame();
@@ -362,11 +323,8 @@
     }
     /**
      * @returns all of the dedicated
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
-     * WebWorkers}
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorkers}
      * associated with the page.
-     * @remarks
-     * NOTE: This does not contain ServiceWorkers
      */
     workers() {
         return Array.from(this._workers.values());
@@ -401,74 +359,22 @@
      *   await browser.close();
      * })();
      * ```
-     * NOTE: Enabling request interception disables page caching.
      */
     async setRequestInterception(value) {
         return this._frameManager.networkManager().setRequestInterception(value);
     }
     /**
-     * @param enabled - Whether to enable drag interception.
-     *
-     * @remarks
-     * Activating drag interception enables the `Input.drag`,
-     * methods  This provides the capability to capture drag events emitted
-     * on the page, which can then be used to simulate drag-and-drop.
-     */
-    async setDragInterception(enabled) {
-        this._userDragInterceptionEnabled = enabled;
-        return this._client.send('Input.setInterceptDrags', { enabled });
-    }
-    /**
      * @param enabled - When `true`, enables offline mode for the page.
-     * @remarks
-     * NOTE: while this method sets the network connection to offline, it does
-     * not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
-     * (#pageemulatenetworkconditionsnetworkconditions)
      */
     setOfflineMode(enabled) {
         return this._frameManager.networkManager().setOfflineMode(enabled);
     }
-    /**
-     * @param networkConditions - Passing `null` disables network condition emulation.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const slow3G = puppeteer.networkConditions['Slow 3G'];
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulateNetworkConditions(slow3G);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks
-     * NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
-     * https://crbug.com/563644). To set the page offline, you can use
-     * [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
-     */
     emulateNetworkConditions(networkConditions) {
         return this._frameManager
             .networkManager()
             .emulateNetworkConditions(networkConditions);
     }
     /**
-     * This setting will change the default maximum navigation time for the
-     * following methods and related shortcuts:
-     *
-     * - {@link Page.goBack | page.goBack(options)}
-     *
-     * - {@link Page.goForward | page.goForward(options)}
-     *
-     * - {@link Page.goto | page.goto(url,options)}
-     *
-     * - {@link Page.reload | page.reload(options)}
-     *
-     * - {@link Page.setContent | page.setContent(html,options)}
-     *
-     * - {@link Page.waitForNavigation | page.waitForNavigation(options)}
      * @param timeout - Maximum navigation time in milliseconds.
      */
     setDefaultNavigationTimeout(timeout) {
@@ -552,9 +458,6 @@
      * given prototype.
      *
      * @remarks
-     * Shortcut for
-     * {@link ExecutionContext.queryObjects |
-     * page.mainFrame().executionContext().queryObjects(prototypeHandle)}.
      *
      * @example
      *
@@ -571,8 +474,6 @@
      * await mapPrototype.dispose();
      * ```
      * @param prototypeHandle - a handle to the object prototype.
-     * @returns Promise which resolves to a handle to an array of objects with
-     * this prototype.
      */
     async queryObjects(prototypeHandle) {
         const context = await this.mainFrame().executionContext();
@@ -704,24 +605,9 @@
     async $$eval(selector, pageFunction, ...args) {
         return this.mainFrame().$$eval(selector, pageFunction, ...args);
     }
-    /**
-     * The method runs `document.querySelectorAll` within the page. If no elements
-     * match the selector, the return value resolves to `[]`.
-     * @remarks
-     * Shortcut for {@link Frame.$$ | Page.mainFrame().$$(selector) }.
-     * @param selector - A `selector` to query page for
-     */
     async $$(selector) {
         return this.mainFrame().$$(selector);
     }
-    /**
-     * The method evaluates the XPath expression relative to the page document as
-     * its context node. If there are no such elements, the method resolves to an
-     * empty array.
-     * @remarks
-     * Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
-     * @param expression - Expression to evaluate
-     */
     async $x(expression) {
         return this.mainFrame().$x(expression);
     }
@@ -750,12 +636,6 @@
             await this._client.send('Network.deleteCookies', item);
         }
     }
-    /**
-     * @example
-     * ```js
-     * await page.setCookie(cookieObject1, cookieObject2);
-     * ```
-     */
     async setCookie(...cookies) {
         const pageURL = this.url();
         const startsWithHTTP = pageURL.startsWith('http');
@@ -763,106 +643,24 @@
             const item = Object.assign({}, cookie);
             if (!item.url && startsWithHTTP)
                 item.url = pageURL;
-            (0, assert_js_1.assert)(item.url !== 'about:blank', `Blank page can not have cookie "${item.name}"`);
-            (0, assert_js_1.assert)(!String.prototype.startsWith.call(item.url || '', 'data:'), `Data URL page can not have cookie "${item.name}"`);
+            assert_js_1.assert(item.url !== 'about:blank', `Blank page can not have cookie "${item.name}"`);
+            assert_js_1.assert(!String.prototype.startsWith.call(item.url || '', 'data:'), `Data URL page can not have cookie "${item.name}"`);
             return item;
         });
         await this.deleteCookie(...items);
         if (items.length)
             await this._client.send('Network.setCookies', { cookies: items });
     }
-    /**
-     * Adds a `<script>` tag into the page with the desired URL or content.
-     * @remarks
-     * Shortcut for {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options) }.
-     * @returns Promise which resolves to the added tag when the script's onload fires or
-     * when the script content was injected into frame.
-     */
     async addScriptTag(options) {
         return this.mainFrame().addScriptTag(options);
     }
-    /**
-     * Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a
-     * `<style type="text/css">` tag with the content.
-     * @returns Promise which resolves to the added tag when the stylesheet's
-     * onload fires or when the CSS content was injected into frame.
-     */
     async addStyleTag(options) {
         return this.mainFrame().addStyleTag(options);
     }
-    /**
-     * The method adds a function called `name` on the page's `window` object. When
-     * called, the function executes `puppeteerFunction` in node.js and returns a
-     * `Promise` which resolves to the return value of `puppeteerFunction`.
-     *
-     * If the puppeteerFunction returns a `Promise`, it will be awaited.
-     *
-     * NOTE: Functions installed via `page.exposeFunction` survive navigations.
-     * @param name - Name of the function on the window object
-     * @param puppeteerFunction -  Callback function which will be called in
-     * Puppeteer's context.
-     * @example
-     * An example of adding an `md5` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const crypto = require('crypto');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('md5', (text) =>
-     * crypto.createHash('md5').update(text).digest('hex')
-     * );
-     * await page.evaluate(async () => {
-     * // use window.md5 to compute hashes
-     * const myString = 'PUPPETEER';
-     * const myHash = await window.md5(myString);
-     * console.log(`md5 of ${myString} is ${myHash}`);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     * An example of adding a `window.readfile` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const fs = require('fs');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('readfile', async (filePath) => {
-     * return new Promise((resolve, reject) => {
-     * fs.readFile(filePath, 'utf8', (err, text) => {
-     *    if (err) reject(err);
-     *    else resolve(text);
-     *  });
-     * });
-     * });
-     * await page.evaluate(async () => {
-     * // use window.readfile to read contents of a file
-     * const content = await window.readfile('/etc/hosts');
-     * console.log(content);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     */
     async exposeFunction(name, puppeteerFunction) {
         if (this._pageBindings.has(name))
             throw new Error(`Failed to add page binding with name ${name}: window['${name}'] already exists!`);
-        let exposedFunction;
-        if (typeof puppeteerFunction === 'function') {
-            exposedFunction = puppeteerFunction;
-        }
-        else if (typeof puppeteerFunction.default === 'function') {
-            exposedFunction = puppeteerFunction.default;
-        }
-        else {
-            throw new Error(`Failed to add page binding with name ${name}: ${puppeteerFunction} is not a function or a module with a default export.`);
-        }
-        this._pageBindings.set(name, exposedFunction);
+        this._pageBindings.set(name, puppeteerFunction);
         const expression = helper_js_1.helper.pageBindingInitString('exposedFun', name);
         await this._client.send('Runtime.addBinding', { name: name });
         await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
@@ -870,71 +668,15 @@
         });
         await Promise.all(this.frames().map((frame) => frame.evaluate(expression).catch(helper_js_1.debugError)));
     }
-    /**
-     * Provide credentials for `HTTP authentication`.
-     * @remarks To disable authentication, pass `null`.
-     */
     async authenticate(credentials) {
         return this._frameManager.networkManager().authenticate(credentials);
     }
-    /**
-     * The extra HTTP headers will be sent with every request the page initiates.
-     * NOTE: All HTTP header names are lowercased. (HTTP headers are
-     * case-insensitive, so this shouldn’t impact your server code.)
-     * NOTE: page.setExtraHTTPHeaders does not guarantee the order of headers in
-     * the outgoing requests.
-     * @param headers - An object containing additional HTTP headers to be sent
-     * with every request. All header values must be strings.
-     * @returns
-     */
     async setExtraHTTPHeaders(headers) {
         return this._frameManager.networkManager().setExtraHTTPHeaders(headers);
     }
-    /**
-     * @param userAgent - Specific user agent to use in this page
-     * @param userAgentData - Specific user agent client hint data to use in this
-     * page
-     * @returns Promise which resolves when the user agent is set.
-     */
-    async setUserAgent(userAgent, userAgentMetadata) {
-        return this._frameManager
-            .networkManager()
-            .setUserAgent(userAgent, userAgentMetadata);
+    async setUserAgent(userAgent) {
+        return this._frameManager.networkManager().setUserAgent(userAgent);
     }
-    /**
-     * @returns Object containing metrics as key/value pairs.
-     *
-     * - `Timestamp` : The timestamp when the metrics sample was taken.
-     *
-     * - `Documents` : Number of documents in the page.
-     *
-     * - `Frames` : Number of frames in the page.
-     *
-     * - `JSEventListeners` : Number of events in the page.
-     *
-     * - `Nodes` : Number of DOM nodes in the page.
-     *
-     * - `LayoutCount` : Total number of full or partial page layout.
-     *
-     * - `RecalcStyleCount` : Total number of page style recalculations.
-     *
-     * - `LayoutDuration` : Combined durations of all page layouts.
-     *
-     * - `RecalcStyleDuration` : Combined duration of all page style
-     *   recalculations.
-     *
-     * - `ScriptDuration` : Combined duration of JavaScript execution.
-     *
-     * - `TaskDuration` : Combined duration of all tasks performed by the browser.
-     *
-     *
-     * - `JSHeapUsedSize` : Used JavaScript heap size.
-     *
-     * - `JSHeapTotalSize` : Total JavaScript heap size.
-     * @remarks
-     * NOTE: All timestamps are in monotonic time: monotonically increasing time
-     * in seconds since an arbitrary point in the past.
-     */
     async metrics() {
         const response = await this._client.send('Performance.getMetrics');
         return this._buildMetricsObject(response.metrics);
@@ -976,8 +718,8 @@
             // @see https://github.com/puppeteer/puppeteer/issues/3865
             return;
         }
-        const context = this._frameManager.executionContextById(event.executionContextId, this._client);
-        const values = event.args.map((arg) => (0, JSHandle_js_1.createJSHandle)(context, arg));
+        const context = this._frameManager.executionContextById(event.executionContextId);
+        const values = event.args.map((arg) => JSHandle_js_1.createJSHandle(context, arg));
         this._addConsoleMessage(event.type, values, event.stackTrace);
     }
     async _onBindingCalled(event) {
@@ -1048,7 +790,7 @@
         if (validDialogTypes.has(event.type)) {
             dialogType = event.type;
         }
-        (0, assert_js_1.assert)(dialogType, 'Unknown javascript dialog type: ' + event.type);
+        assert_js_1.assert(dialogType, 'Unknown javascript dialog type: ' + event.type);
         const dialog = new Dialog_js_1.Dialog(this._client, dialogType, event.message, event.defaultPrompt);
         this.emit("dialog" /* Dialog */, dialog);
     }
@@ -1066,134 +808,18 @@
             color: { r: 0, g: 0, b: 0, a: 0 },
         });
     }
-    /**
-     *
-     * @returns
-     * @remarks Shortcut for
-     * {@link Frame.url | page.mainFrame().url()}.
-     */
     url() {
         return this.mainFrame().url();
     }
     async content() {
         return await this._frameManager.mainFrame().content();
     }
-    /**
-     * @param html - HTML markup to assign to the page.
-     * @param options - Parameters that has some properties.
-     * @remarks
-     * The parameter `options` might have the following options.
-     *
-     * - `timeout` : Maximum time in milliseconds for resources to load, defaults
-     *   to 30 seconds, pass `0` to disable timeout. The default value can be
-     *   changed by using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider setting markup succeeded, defaults to `load`.
-     *    Given an array of event strings, setting content is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider setting content to be finished when the `load` event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider setting content to be finished when the
-     *   `DOMContentLoaded` event is fired.<br/>
-     *  - `networkidle0` : consider setting content to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider setting content to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async setContent(html, options = {}) {
         await this._frameManager.mainFrame().setContent(html, options);
     }
-    /**
-     * @param url - URL to navigate page to. The URL should include scheme, e.g.
-     * `https://`
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be successful
-     *    after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *    DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *    more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *    more than 2 network connections for at least `500` ms.
-     *
-     * - `referer` : Referer header value. If provided it will take preference
-     *   over the referer header value set by
-     *   {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
-     *
-     * `page.goto` will throw an error if:
-     * - there's an SSL error (e.g. in case of self-signed certificates).
-     * - target URL is invalid.
-     * - the timeout is exceeded during navigation.
-     * - the remote server does not respond or is unreachable.
-     * - the main resource failed to load.
-     *
-     * `page.goto` will not throw an error when any valid HTTP status code is
-     *   returned by the remote server, including 404 "Not Found" and 500
-     *   "Internal Server Error". The status code for such responses can be
-     *   retrieved by calling response.status().
-     *
-     * NOTE: `page.goto` either throws an error or returns a main resource
-     * response. The only exceptions are navigation to about:blank or navigation
-     * to the same URL with a different hash, which would succeed and return null.
-     *
-     * NOTE: Headless mode doesn't support navigation to a PDF document. See the
-     * {@link https://bugs.chromium.org/p/chromium/issues/detail?id=761295
-     * | upstream issue}.
-     *
-     * Shortcut for {@link Frame.goto | page.mainFrame().goto(url, options)}.
-     */
     async goto(url, options = {}) {
         return await this._frameManager.mainFrame().goto(url, options);
     }
-    /**
-     * @param options - Navigation parameters which might have the following
-     * properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async reload(options) {
         const result = await Promise.all([
             this.waitForNavigation(options),
@@ -1201,30 +827,6 @@
         ]);
         return result[0];
     }
-    /**
-     * This resolves when the page navigates to a new URL or reloads. It is useful
-     * when you run code that will indirectly cause the page to navigate. Consider
-     * this example:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(), // The promise resolves after navigation has finished
-     * page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
-     * ]);
-     * ```
-     *
-     * @param options - Navigation parameters which might have the following properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. In case of navigation to a different anchor or navigation
-     * due to History API usage, the navigation will resolve with `null`.
-     * @remarks
-     * NOTE: Usage of the
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/History_API | History API}
-     * to change the URL is considered a navigation.
-     *
-     * Shortcut for
-     * {@link Frame.waitForNavigation | page.mainFrame().waitForNavigation(options)}.
-     */
     async waitForNavigation(options = {}) {
         return await this._frameManager.mainFrame().waitForNavigation(options);
     }
@@ -1233,31 +835,6 @@
             this._disconnectPromise = new Promise((fulfill) => this._client.once(Connection_js_1.CDPSessionEmittedEvents.Disconnected, () => fulfill(new Error('Target closed'))));
         return this._disconnectPromise;
     }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Waiting Parameters have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
-     * `0` to disable the timeout. The default value can be changed by using the
-     * {@link Page.setDefaultTimeout} method.
-     */
     async waitForRequest(urlOrPredicate, options = {}) {
         const { timeout = this._timeoutSettings.timeout() } = options;
         return helper_js_1.helper.waitForEvent(this._frameManager.networkManager(), NetworkManager_js_1.NetworkManagerEmittedEvents.Request, (request) => {
@@ -1268,31 +845,6 @@
             return false;
         }, timeout, this._sessionClosePromise());
     }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response.
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
     async waitForResponse(urlOrPredicate, options = {}) {
         const { timeout = this._timeoutSettings.timeout() } = options;
         return helper_js_1.helper.waitForEvent(this._frameManager.networkManager(), NetworkManager_js_1.NetworkManagerEmittedEvents.Response, async (response) => {
@@ -1303,144 +855,9 @@
             return false;
         }, timeout, this._sessionClosePromise());
     }
-    /**
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when network is idle
-     */
-    async waitForNetworkIdle(options = {}) {
-        const { idleTime = 500, timeout = this._timeoutSettings.timeout() } = options;
-        const networkManager = this._frameManager.networkManager();
-        let idleResolveCallback;
-        const idlePromise = new Promise((resolve) => {
-            idleResolveCallback = resolve;
-        });
-        let abortRejectCallback;
-        const abortPromise = new Promise((_, reject) => {
-            abortRejectCallback = reject;
-        });
-        let idleTimer;
-        const onIdle = () => idleResolveCallback();
-        const cleanup = () => {
-            idleTimer && clearTimeout(idleTimer);
-            abortRejectCallback(new Error('abort'));
-        };
-        const evaluate = () => {
-            idleTimer && clearTimeout(idleTimer);
-            if (networkManager.numRequestsInProgress() === 0)
-                idleTimer = setTimeout(onIdle, idleTime);
-        };
-        evaluate();
-        const eventHandler = () => {
-            evaluate();
-            return false;
-        };
-        const listenToEvent = (event) => helper_js_1.helper.waitForEvent(networkManager, event, eventHandler, timeout, abortPromise);
-        const eventPromises = [
-            listenToEvent(NetworkManager_js_1.NetworkManagerEmittedEvents.Request),
-            listenToEvent(NetworkManager_js_1.NetworkManagerEmittedEvents.Response),
-        ];
-        await Promise.race([
-            idlePromise,
-            ...eventPromises,
-            this._sessionClosePromise(),
-        ]).then((r) => {
-            cleanup();
-            return r;
-        }, (error) => {
-            cleanup();
-            throw error;
-        });
-    }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched frame.
-     * @example
-     * ```js
-     * const frame = await page.waitForFrame(async (frame) => {
-     *   return frame.name() === 'Test';
-     * });
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
-    async waitForFrame(urlOrPredicate, options = {}) {
-        const { timeout = this._timeoutSettings.timeout() } = options;
-        async function predicate(frame) {
-            if (helper_js_1.helper.isString(urlOrPredicate))
-                return urlOrPredicate === frame.url();
-            if (typeof urlOrPredicate === 'function')
-                return !!(await urlOrPredicate(frame));
-            return false;
-        }
-        return Promise.race([
-            helper_js_1.helper.waitForEvent(this._frameManager, FrameManager_js_1.FrameManagerEmittedEvents.FrameAttached, predicate, timeout, this._sessionClosePromise()),
-            helper_js_1.helper.waitForEvent(this._frameManager, FrameManager_js_1.FrameManagerEmittedEvents.FrameNavigated, predicate, timeout, this._sessionClosePromise()),
-        ]);
-    }
-    /**
-     * This method navigate to the previous page in history.
-     * @param options - Navigation parameters
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go back, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async goBack(options = {}) {
         return this._go(-1, options);
     }
-    /**
-     * This method navigate to the next page in history.
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go forward, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async goForward(options = {}) {
         return this._go(+1, options);
     }
@@ -1455,48 +872,15 @@
         ]);
         return result[0];
     }
-    /**
-     * Brings page to front (activates tab).
-     */
     async bringToFront() {
         await this._client.send('Page.bringToFront');
     }
-    /**
-     * Emulates given device metrics and user agent. This method is a shortcut for
-     * calling two methods: {@link Page.setUserAgent} and {@link Page.setViewport}
-     * To aid emulation, Puppeteer provides a list of device descriptors that can
-     * be obtained via the {@link Puppeteer.devices} `page.emulate` will resize
-     * the page. A lot of websites don't expect phones to change size, so you
-     * should emulate before navigating to the page.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const iPhone = puppeteer.devices['iPhone 6'];
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulate(iPhone);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks List of all available devices is available in the source code:
-     * {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-     */
     async emulate(options) {
         await Promise.all([
             this.setViewport(options.viewport),
             this.setUserAgent(options.userAgent),
         ]);
     }
-    /**
-     * @param enabled - Whether or not to enable JavaScript on the page.
-     * @returns
-     * @remarks
-     * NOTE: changing this value won't affect scripts that have already been run.
-     * It will take full effect on the next navigation.
-     */
     async setJavaScriptEnabled(enabled) {
         if (this._javascriptEnabled === enabled)
             return;
@@ -1505,116 +889,22 @@
             value: !enabled,
         });
     }
-    /**
-     * Toggles bypassing page's Content-Security-Policy.
-     * @param enabled - sets bypassing of page's Content-Security-Policy.
-     * @remarks
-     * NOTE: CSP bypassing happens at the moment of CSP initialization rather than
-     * evaluation. Usually, this means that `page.setBypassCSP` should be called
-     * before navigating to the domain.
-     */
     async setBypassCSP(enabled) {
         await this._client.send('Page.setBypassCSP', { enabled });
     }
-    /**
-     * @param type - Changes the CSS media type of the page. The only allowed
-     * values are `screen`, `print` and `null`. Passing `null` disables CSS media
-     * emulation.
-     * @example
-     * ```
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     *
-     * await page.emulateMediaType('print');
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → false
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → true
-     *
-     * await page.emulateMediaType(null);
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     * ```
-     */
     async emulateMediaType(type) {
-        (0, assert_js_1.assert)(type === 'screen' || type === 'print' || type === null, 'Unsupported media type: ' + type);
+        assert_js_1.assert(type === 'screen' || type === 'print' || type === null, 'Unsupported media type: ' + type);
         await this._client.send('Emulation.setEmulatedMedia', {
             media: type || '',
         });
     }
-    /**
-     * Enables CPU throttling to emulate slow CPUs.
-     * @param factor - slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
-     */
-    async emulateCPUThrottling(factor) {
-        (0, assert_js_1.assert)(factor === null || factor >= 1, 'Throttling rate should be greater or equal to 1');
-        await this._client.send('Emulation.setCPUThrottlingRate', {
-            rate: factor !== null ? factor : 1,
-        });
-    }
-    /**
-     * @param features - `<?Array<Object>>` Given an array of media feature
-     * objects, emulates CSS media features on the page. Each media feature object
-     * must have the following properties:
-     * @example
-     * ```js
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([{ name: 'color-gamut', value: 'p3' }]);
-     * await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: rec2020)').matches);
-     * // → false
-     * ```
-     */
     async emulateMediaFeatures(features) {
         if (features === null)
             await this._client.send('Emulation.setEmulatedMedia', { features: null });
         if (Array.isArray(features)) {
             features.every((mediaFeature) => {
                 const name = mediaFeature.name;
-                (0, assert_js_1.assert)(/^(?:prefers-(?:color-scheme|reduced-motion)|color-gamut)$/.test(name), 'Unsupported media feature: ' + name);
+                assert_js_1.assert(/^(?:prefers-(?:color-scheme|reduced-motion)|color-gamut)$/.test(name), 'Unsupported media feature: ' + name);
                 return true;
             });
             await this._client.send('Emulation.setEmulatedMedia', {
@@ -1622,12 +912,6 @@
             });
         }
     }
-    /**
-     * @param timezoneId - Changes the timezone of the page. See
-     * {@link https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt | ICU’s metaZones.txt}
-     * for a list of supported timezone IDs. Passing
-     * `null` disables timezone emulation.
-     */
     async emulateTimezone(timezoneId) {
         try {
             await this._client.send('Emulation.setTimezoneOverride', {
@@ -1657,6 +941,8 @@
      * ```
      *
      * @param overrides - Mock idle state. If not set, clears idle overrides
+     * @param isUserActive - Mock isUserActive
+     * @param isScreenUnlocked - Mock isScreenUnlocked
      */
     async emulateIdleState(overrides) {
         if (overrides) {
@@ -1706,7 +992,7 @@
             'tritanopia',
         ]);
         try {
-            (0, assert_js_1.assert)(!type || visionDeficiencies.has(type), `Unsupported vision deficiency: ${type}`);
+            assert_js_1.assert(!type || visionDeficiencies.has(type), `Unsupported vision deficiency: ${type}`);
             await this._client.send('Emulation.setEmulatedVisionDeficiency', {
                 type: type || 'none',
             });
@@ -1715,70 +1001,12 @@
             throw error;
         }
     }
-    /**
-     * `page.setViewport` will resize the page. A lot of websites don't expect
-     * phones to change size, so you should set the viewport before navigating to
-     * the page.
-     *
-     * In the case of multiple pages in a single browser, each page can have its
-     * own viewport size.
-     * @example
-     * ```js
-     * const page = await browser.newPage();
-     * await page.setViewport({
-     * width: 640,
-     * height: 480,
-     * deviceScaleFactor: 1,
-     * });
-     * await page.goto('https://example.com');
-     * ```
-     *
-     * @param viewport -
-     * @remarks
-     * Argument viewport have following properties:
-     *
-     * - `width`: page width in pixels. required
-     *
-     * - `height`: page height in pixels. required
-     *
-     * - `deviceScaleFactor`: Specify device scale factor (can be thought of as
-     *   DPR). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to `false`
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to false.
-     *
-     * NOTE: in certain cases, setting viewport will reload the page in order to
-     * set the isMobile or hasTouch properties.
-     */
     async setViewport(viewport) {
         const needsReload = await this._emulationManager.emulateViewport(viewport);
         this._viewport = viewport;
         if (needsReload)
             await this.reload();
     }
-    /**
-     * @returns
-     *
-     * - `width`: page's width in pixels
-     *
-     * - `height`: page's height in pixels
-     *
-     * - `deviceScalarFactor`: Specify device scale factor (can be though of as
-     *   dpr). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to
-     *   `false`.
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to
-     *   `false`.
-     */
     viewport() {
         return this._viewport;
     }
@@ -1833,100 +1061,22 @@
     async evaluate(pageFunction, ...args) {
         return this._frameManager.mainFrame().evaluate(pageFunction, ...args);
     }
-    /**
-     * Adds a function which would be invoked in one of the following scenarios:
-     *
-     * - whenever the page is navigated
-     *
-     * - whenever the child frame is attached or navigated. In this case, the
-     * function is invoked in the context of the newly attached frame.
-     *
-     * The function is invoked after the document was created but before any of
-     * its scripts were run. This is useful to amend the JavaScript environment,
-     * e.g. to seed `Math.random`.
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param args - Arguments to pass to `pageFunction`
-     * @example
-     * An example of overriding the navigator.languages property before the page loads:
-     * ```js
-     * // preload.js
-     *
-     * // overwrite the `languages` property to use a custom getter
-     * Object.defineProperty(navigator, 'languages', {
-     * get: function () {
-     * return ['en-US', 'en', 'bn'];
-     * },
-     * });
-     *
-     * // In your puppeteer script, assuming the preload.js file is
-     * in same folder of our script
-     * const preloadFile = fs.readFileSync('./preload.js', 'utf8');
-     * await page.evaluateOnNewDocument(preloadFile);
-     * ```
-     */
     async evaluateOnNewDocument(pageFunction, ...args) {
         const source = helper_js_1.helper.evaluationString(pageFunction, ...args);
         await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
             source,
         });
     }
-    /**
-     * Toggles ignoring cache for each request based on the enabled state. By
-     * default, caching is enabled.
-     * @param enabled - sets the `enabled` state of cache
-     */
     async setCacheEnabled(enabled = true) {
         await this._frameManager.networkManager().setCacheEnabled(enabled);
     }
-    /**
-     * @remarks
-     * Options object which might have the following properties:
-     *
-     * - `path` : The file path to save the image to. The screenshot type
-     *   will be inferred from file extension. If `path` is a relative path, then
-     *   it is resolved relative to
-     *   {@link https://nodejs.org/api/process.html#process_process_cwd
-     *   | current working directory}.
-     *   If no path is provided, the image won't be saved to the disk.
-     *
-     * - `type` : Specify screenshot type, can be either `jpeg` or `png`.
-     *   Defaults to 'png'.
-     *
-     * - `quality` : The quality of the image, between 0-100. Not
-     *   applicable to `png` images.
-     *
-     * - `fullPage` : When true, takes a screenshot of the full
-     *   scrollable page. Defaults to `false`
-     *
-     * - `clip` : An object which specifies clipping region of the page.
-     *   Should have the following fields:<br/>
-     *  - `x` : x-coordinate of top-left corner of clip area.<br/>
-     *  - `y` :  y-coordinate of top-left corner of clip area.<br/>
-     *  - `width` : width of clipping area.<br/>
-     *  - `height` : height of clipping area.
-     *
-     * - `omitBackground` : Hides default white background and allows
-     *   capturing screenshots with transparency. Defaults to `false`
-     *
-     * - `encoding` : The encoding of the image, can be either base64 or
-     *   binary. Defaults to `binary`.
-     *
-     *
-     * NOTE: Screenshots take at least 1/6 second on OS X. See
-     * {@link https://crbug.com/741689} for discussion.
-     * @returns Promise which resolves to buffer or a base64 string (depending on
-     * the value of `encoding`) with captured screenshot.
-     */
     async screenshot(options = {}) {
         let screenshotType = null;
         // options.type takes precedence over inferring the type from options.path
         // because it may be a 0-length file with no extension created beforehand
         // (i.e. as a temp file).
         if (options.type) {
-            const type = options.type;
-            if (type !== 'png' && type !== 'jpeg' && type !== 'webp') {
-                (0, assert_js_1.assertNever)(type, 'Unknown options.type value: ' + type);
-            }
+            assert_js_1.assert(options.type === 'png' || options.type === 'jpeg', 'Unknown options.type value: ' + options.type);
             screenshotType = options.type;
         }
         else if (options.path) {
@@ -1938,34 +1088,32 @@
                 screenshotType = 'png';
             else if (extension === 'jpg' || extension === 'jpeg')
                 screenshotType = 'jpeg';
-            else if (extension === 'webp')
-                screenshotType = 'webp';
-            (0, assert_js_1.assert)(screenshotType, `Unsupported screenshot type for extension \`.${extension}\``);
+            assert_js_1.assert(screenshotType, `Unsupported screenshot type for extension \`.${extension}\``);
         }
         if (!screenshotType)
             screenshotType = 'png';
         if (options.quality) {
-            (0, assert_js_1.assert)(screenshotType === 'jpeg' || screenshotType === 'webp', 'options.quality is unsupported for the ' +
+            assert_js_1.assert(screenshotType === 'jpeg', 'options.quality is unsupported for the ' +
                 screenshotType +
                 ' screenshots');
-            (0, assert_js_1.assert)(typeof options.quality === 'number', 'Expected options.quality to be a number but found ' +
+            assert_js_1.assert(typeof options.quality === 'number', 'Expected options.quality to be a number but found ' +
                 typeof options.quality);
-            (0, assert_js_1.assert)(Number.isInteger(options.quality), 'Expected options.quality to be an integer');
-            (0, assert_js_1.assert)(options.quality >= 0 && options.quality <= 100, 'Expected options.quality to be between 0 and 100 (inclusive), got ' +
+            assert_js_1.assert(Number.isInteger(options.quality), 'Expected options.quality to be an integer');
+            assert_js_1.assert(options.quality >= 0 && options.quality <= 100, 'Expected options.quality to be between 0 and 100 (inclusive), got ' +
                 options.quality);
         }
-        (0, assert_js_1.assert)(!options.clip || !options.fullPage, 'options.clip and options.fullPage are exclusive');
+        assert_js_1.assert(!options.clip || !options.fullPage, 'options.clip and options.fullPage are exclusive');
         if (options.clip) {
-            (0, assert_js_1.assert)(typeof options.clip.x === 'number', 'Expected options.clip.x to be a number but found ' +
+            assert_js_1.assert(typeof options.clip.x === 'number', 'Expected options.clip.x to be a number but found ' +
                 typeof options.clip.x);
-            (0, assert_js_1.assert)(typeof options.clip.y === 'number', 'Expected options.clip.y to be a number but found ' +
+            assert_js_1.assert(typeof options.clip.y === 'number', 'Expected options.clip.y to be a number but found ' +
                 typeof options.clip.y);
-            (0, assert_js_1.assert)(typeof options.clip.width === 'number', 'Expected options.clip.width to be a number but found ' +
+            assert_js_1.assert(typeof options.clip.width === 'number', 'Expected options.clip.width to be a number but found ' +
                 typeof options.clip.width);
-            (0, assert_js_1.assert)(typeof options.clip.height === 'number', 'Expected options.clip.height to be a number but found ' +
+            assert_js_1.assert(typeof options.clip.height === 'number', 'Expected options.clip.height to be a number but found ' +
                 typeof options.clip.height);
-            (0, assert_js_1.assert)(options.clip.width !== 0, 'Expected options.clip.width not to be 0.');
-            (0, assert_js_1.assert)(options.clip.height !== 0, 'Expected options.clip.height not to be 0.');
+            assert_js_1.assert(options.clip.width !== 0, 'Expected options.clip.width not to be 0.');
+            assert_js_1.assert(options.clip.height !== 0, 'Expected options.clip.height not to be 0.');
         }
         return this._screenshotTaskQueue.postTask(() => this._screenshotTask(screenshotType, options));
     }
@@ -1979,8 +1127,8 @@
             typeof captureBeyondViewport === 'boolean' ? captureBeyondViewport : true;
         if (options.fullPage) {
             const metrics = await this._client.send('Page.getLayoutMetrics');
-            // Fallback to `contentSize` in case of using Firefox.
-            const { width, height } = metrics.cssContentSize || metrics.contentSize;
+            const width = Math.ceil(metrics.contentSize.width);
+            const height = Math.ceil(metrics.contentSize.height);
             // Overwrite clip for full page.
             clip = { x: 0, y: 0, width, height, scale: 1 };
             if (!captureBeyondViewport) {
@@ -1997,7 +1145,7 @@
                 });
             }
         }
-        const shouldSetDefaultBackground = options.omitBackground && (format === 'png' || format === 'webp');
+        const shouldSetDefaultBackground = options.omitBackground && format === 'png';
         if (shouldSetDefaultBackground) {
             await this._setTransparentBackgroundColor();
         }
@@ -2035,7 +1183,7 @@
      * Generatees a PDF of the page with the `print` CSS media type.
      * @remarks
      *
-     * NOTE: PDF generation is only supported in Chrome headless mode.
+     * IMPORTANT: PDF generation is only supported in Chrome headless mode.
      *
      * To generate a PDF with the `screen` media type, call
      * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
@@ -2049,13 +1197,13 @@
      *
      * @param options - options for generating the PDF.
      */
-    async createPDFStream(options = {}) {
-        const { scale = 1, displayHeaderFooter = false, headerTemplate = '', footerTemplate = '', printBackground = false, landscape = false, pageRanges = '', preferCSSPageSize = false, margin = {}, omitBackground = false, timeout = 30000, } = options;
+    async pdf(options = {}) {
+        const { scale = 1, displayHeaderFooter = false, headerTemplate = '', footerTemplate = '', printBackground = false, landscape = false, pageRanges = '', preferCSSPageSize = false, margin = {}, path = null, omitBackground = false, } = options;
         let paperWidth = 8.5;
         let paperHeight = 11;
         if (options.format) {
             const format = PDFOptions_js_1.paperFormats[options.format.toLowerCase()];
-            (0, assert_js_1.assert)(format, 'Unknown paper format: ' + options.format);
+            assert_js_1.assert(format, 'Unknown paper format: ' + options.format);
             paperWidth = format.width;
             paperHeight = format.height;
         }
@@ -2071,7 +1219,7 @@
         if (omitBackground) {
             await this._setTransparentBackgroundColor();
         }
-        const printCommandPromise = this._client.send('Page.printToPDF', {
+        const result = await this._client.send('Page.printToPDF', {
             transferMode: 'ReturnAsStream',
             landscape,
             displayHeaderFooter,
@@ -2088,31 +1236,16 @@
             pageRanges,
             preferCSSPageSize,
         });
-        const result = await helper_js_1.helper.waitWithTimeout(printCommandPromise, 'Page.printToPDF', timeout);
         if (omitBackground) {
             await this._resetDefaultBackgroundColor();
         }
-        return helper_js_1.helper.getReadableFromProtocolStream(this._client, result.stream);
+        return await helper_js_1.helper.readProtocolStream(this._client, result.stream, path);
     }
-    /**
-     * @param options -
-     * @returns
-     */
-    async pdf(options = {}) {
-        const { path = undefined } = options;
-        const readable = await this.createPDFStream(options);
-        return await helper_js_1.helper.getReadableAsBuffer(readable, path);
-    }
-    /**
-     * @returns The page's title
-     * @remarks
-     * Shortcut for {@link Frame.title | page.mainFrame().title()}.
-     */
     async title() {
         return this.mainFrame().title();
     }
     async close(options = { runBeforeUnload: undefined }) {
-        (0, assert_js_1.assert)(!!this._client._connection, 'Protocol error: Connection closed. Most likely the page has been closed.');
+        assert_js_1.assert(!!this._client._connection, 'Protocol error: Connection closed. Most likely the page has been closed.');
         const runBeforeUnload = !!options.runBeforeUnload;
         if (runBeforeUnload) {
             await this._client.send('Page.close');
@@ -2124,136 +1257,27 @@
             await this._target._isClosedPromise;
         }
     }
-    /**
-     * Indicates that the page has been closed.
-     * @returns
-     */
     isClosed() {
         return this._closed;
     }
     get mouse() {
         return this._mouse;
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to click in the center of the
-     * element. If there's no element matching `selector`, the method throws an
-     * error.
-     * @remarks Bear in mind that if `click()` triggers a navigation event and
-     * there's a separate `page.waitForNavigation()` promise to be resolved, you
-     * may end up with a race condition that yields unexpected results. The
-     * correct pattern for click and wait for navigation is the following:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(waitOptions),
-     * page.click(selector, clickOptions),
-     * ]);
-     * ```
-     * Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
-     * @param selector - A `selector` to search for element to click. If there are
-     * multiple elements satisfying the `selector`, the first will be clicked
-     * @param options - `Object`
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully clicked. The Promise will be rejected if there is no element
-     * matching `selector`.
-     */
     click(selector, options = {}) {
         return this.mainFrame().click(selector, options);
     }
-    /**
-     * This method fetches an element with `selector` and focuses it. If there's no
-     * element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
-     * of an element to focus. If there are multiple elements satisfying the
-     * selector, the first will be focused.
-     * @returns  Promise which resolves when the element matching selector is
-     * successfully focused. The promise will be rejected if there is no element
-     * matching selector.
-     * @remarks
-     * Shortcut for {@link Frame.focus | page.mainFrame().focus(selector)}.
-     */
     focus(selector) {
         return this.mainFrame().focus(selector);
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to hover over the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * to search for element to hover. If there are multiple elements satisfying
-     * the selector, the first will be hovered.
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully hovered. Promise gets rejected if there's no element matching
-     * `selector`.
-     * @remarks
-     * Shortcut for {@link Page.hover | page.mainFrame().hover(selector)}.
-     */
     hover(selector) {
         return this.mainFrame().hover(selector);
     }
-    /**
-     * Triggers a `change` and `input` event once all the provided options have been
-     * selected. If there's no `<select>` element matching `selector`, the method
-     * throws an error.
-     *
-     * @example
-     * ```js
-     * page.select('select#colors', 'blue'); // single selection
-     * page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to query the page for
-     * @param values - Values of options to select. If the `<select>` has the
-     * `multiple` attribute, all values are considered, otherwise only the first one
-     * is taken into account.
-     * @returns
-     *
-     * @remarks
-     * Shortcut for {@link Frame.select | page.mainFrame().select()}
-     */
     select(selector, ...values) {
         return this.mainFrame().select(selector, ...values);
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.touchscreen} to tap in the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to search for element to tap. If there are multiple elements satisfying the
-     * selector, the first will be tapped.
-     * @returns
-     * @remarks
-     * Shortcut for {@link Frame.tap | page.mainFrame().tap(selector)}.
-     */
     tap(selector) {
         return this.mainFrame().tap(selector);
     }
-    /**
-     * Sends a `keydown`, `keypress/input`, and `keyup` event for each character
-     * in the text.
-     *
-     * To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
-     * @example
-     * ```
-     * await page.type('#mytextarea', 'Hello');
-     * // Types instantly
-     * await page.type('#mytextarea', 'World', { delay: 100 });
-     * // Types slower, like a user
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to type into. If there are multiple elements satisfying the
-     * selector, the first will be used.
-     * @param text - A text to type into a focused element.
-     * @param options - have property `delay` which is the Time to wait between
-     * key presses in milliseconds. Defaults to `0`.
-     * @returns
-     * @remarks
-     */
     type(selector, text, options) {
         return this.mainFrame().type(selector, text, options);
     }
@@ -2307,174 +1331,12 @@
     waitForTimeout(milliseconds) {
         return this.mainFrame().waitForTimeout(milliseconds);
     }
-    /**
-     * Wait for the `selector` to appear in page. If at the moment of calling the
-     * method the `selector` already exists, the method will return immediately. If
-     * the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigations:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForSelector('img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by selector string
-     * is added to DOM. Resolves to `null` if waiting for hidden: `true` and
-     * selector is not found in DOM.
-     * @remarks
-     * The optional Parameter in Arguments `options` are :
-     *
-     * - `Visible`: A boolean wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: ait for element to not be found in the DOM or to be hidden,
-     * i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
-     * `false`.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForSelector(selector, options = {}) {
         return this.mainFrame().waitForSelector(selector, options);
     }
-    /**
-     * Wait for the `xpath` to appear in page. If at the moment of calling the
-     * method the `xpath` already exists, the method will return immediately. If
-     * the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigation
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForXPath('//img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param xpath - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
-     * element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by xpath string is
-     * added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
-     * not found in DOM.
-     * @remarks
-     * The optional Argument `options` have properties:
-     *
-     * - `visible`: A boolean to wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: A boolean wait for element to not be found in the DOM or to be
-     * hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
-     * Defaults to `false`.
-     *
-     * - `timeout`: A number which is maximum time to wait for in milliseconds.
-     * Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
-     * value can be changed by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForXPath(xpath, options = {}) {
         return this.mainFrame().waitForXPath(xpath, options);
     }
-    /**
-     * The `waitForFunction` can be used to observe viewport size change:
-     *
-     * ```
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * const watchDog = page.waitForFunction('window.innerWidth < 100');
-     * await page.setViewport({ width: 50, height: 50 });
-     * await watchDog;
-     * await browser.close();
-     * })();
-     * ```
-     * To pass arguments from node.js to the predicate of `page.waitForFunction` function:
-     * ```
-     * const selector = '.foo';
-     * await page.waitForFunction(
-     * (selector) => !!document.querySelector(selector),
-     * {},
-     * selector
-     * );
-     * ```
-     * The predicate of `page.waitForFunction` can be asynchronous too:
-     * ```
-     * const username = 'github-username';
-     * await page.waitForFunction(
-     * async (username) => {
-     * const githubResponse = await fetch(
-     *  `https://api.github.com/users/${username}`
-     * );
-     * const githubUser = await githubResponse.json();
-     * // show the avatar
-     * const img = document.createElement('img');
-     * img.src = githubUser.avatar_url;
-     * // wait 3 seconds
-     * await new Promise((resolve, reject) => setTimeout(resolve, 3000));
-     * img.remove();
-     * },
-     * {},
-     * username
-     * );
-     * ```
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param options - Optional waiting parameters
-     * @param args -  Arguments to pass to `pageFunction`
-     * @returns Promise which resolves when the `pageFunction` returns a truthy
-     * value. It resolves to a JSHandle of the truthy value.
-     *
-     * The optional waiting parameter can be:
-     *
-     * - `Polling`: An interval at which the `pageFunction` is executed, defaults to
-     *   `raf`. If `polling` is a number, then it is treated as an interval in
-     *   milliseconds at which the function would be executed. If polling is a
-     *   string, then it can be one of the following values:<br/>
-     *    - `raf`: to constantly execute `pageFunction` in `requestAnimationFrame`
-     *      callback. This is the tightest polling mode which is suitable to
-     *      observe styling changes.<br/>
-     *    - `mutation`: to execute pageFunction on every DOM mutation.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the
-     * {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)} method.
-     *
-     */
     waitForFunction(pageFunction, options = {}, ...args) {
         return this.mainFrame().waitForFunction(pageFunction, options, ...args);
     }
@@ -2523,7 +1385,7 @@
             valueText = text;
         }
         const value = Number(valueText);
-        (0, assert_js_1.assert)(!isNaN(value), 'Failed to parse parameter value: ' + text);
+        assert_js_1.assert(!isNaN(value), 'Failed to parse parameter value: ' + text);
         pixels = value * unitToPixels[unit];
     }
     else {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js.map
index 81aeeaf..bb04dc5 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Page.js.map
@@ -1 +1 @@
-{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js
index b9689e5..e84f0cf 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js
@@ -47,7 +47,7 @@
      * @returns Promise which resolves to browser instance.
      */
     connect(options) {
-        return (0, BrowserConnector_js_1.connectToBrowser)(options);
+        return BrowserConnector_js_1.connectToBrowser(options);
     }
     /**
      * @remarks
@@ -137,25 +137,25 @@
      * register.
      */
     registerCustomQueryHandler(name, queryHandler) {
-        (0, QueryHandler_js_1.registerCustomQueryHandler)(name, queryHandler);
+        QueryHandler_js_1.registerCustomQueryHandler(name, queryHandler);
     }
     /**
      * @param name - The name of the query handler to unregistered.
      */
     unregisterCustomQueryHandler(name) {
-        (0, QueryHandler_js_1.unregisterCustomQueryHandler)(name);
+        QueryHandler_js_1.unregisterCustomQueryHandler(name);
     }
     /**
      * @returns a list with the names of all registered custom query handlers.
      */
     customQueryHandlerNames() {
-        return (0, QueryHandler_js_1.customQueryHandlerNames)();
+        return QueryHandler_js_1.customQueryHandlerNames();
     }
     /**
      * Clears all registered handlers.
      */
     clearCustomQueryHandlers() {
-        (0, QueryHandler_js_1.clearCustomQueryHandlers)();
+        QueryHandler_js_1.clearCustomQueryHandlers();
     }
 }
 exports.Puppeteer = Puppeteer;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js.map
index 9abe397..497ddf6 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Puppeteer.js.map
@@ -1 +1 @@
-{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/common/Puppeteer.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,2CAA+D;AAE/D,iEAAgE;AAEhE,uDAM2B;AAE3B,+DAAgF;AAChF,iEAGgC;AAmBhC;;;;;;;;GAQG;AACH,MAAa,SAAS;IAIpB;;OAEG;IACH,YAAY,QAAiC;QALnC,oBAAe,GAAG,KAAK,CAAC;QAMhC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAAuB;QAC7B,OAAO,IAAA,sCAAgB,EAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,OAAO;QACT,OAAO,iCAAU,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,IAAI,MAAM;QACR,OAAO,2BAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,iBAAiB;QACnB,OAAO,wCAAiB,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,IAAY,EACZ,YAAgC;QAEhC,IAAA,4CAA0B,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,4BAA4B,CAAC,IAAY;QACvC,IAAA,8CAA4B,EAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAA,yCAAuB,GAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,wBAAwB;QACtB,IAAA,0CAAwB,GAAE,CAAC;IAC7B,CAAC;CACF;AA5ID,8BA4IC"}
\ No newline at end of file
+{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/common/Puppeteer.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,2CAA+D;AAE/D,iEAAgE;AAEhE,uDAM2B;AAE3B,+DAAgF;AAChF,iEAGgC;AAmBhC;;;;;;;;GAQG;AACH,MAAa,SAAS;IAIpB;;OAEG;IACH,YAAY,QAAiC;QALnC,oBAAe,GAAG,KAAK,CAAC;QAMhC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,eAAe,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAAuB;QAC7B,OAAO,sCAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,OAAO;QACT,OAAO,iCAAU,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,IAAI,MAAM;QACR,OAAO,2BAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAI,iBAAiB;QACnB,OAAO,wCAAiB,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,IAAY,EACZ,YAAgC;QAEhC,4CAA0B,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,4BAA4B,CAAC,IAAY;QACvC,8CAA4B,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,yCAAuB,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,wBAAwB;QACtB,0CAAwB,EAAE,CAAC;IAC7B,CAAC;CACF;AA5ID,8BA4IC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts
index cc5545e..b3acf2d 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts
@@ -19,7 +19,6 @@
 import { Browser, BrowserContext } from './Browser.js';
 import { Viewport } from './PuppeteerViewport.js';
 import { Protocol } from 'devtools-protocol';
-import { TaskQueue } from './TaskQueue.js';
 /**
  * @public
  */
@@ -31,7 +30,6 @@
     private _defaultViewport?;
     private _pagePromise?;
     private _workerPromise?;
-    private _screenshotTaskQueue;
     /**
      * @internal
      */
@@ -59,7 +57,7 @@
     /**
      * @internal
      */
-    constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue);
+    constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null);
     /**
      * Creates a Chrome Devtools Protocol session attached to the target.
      */
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts.map
index bbaaafd..5f8110e 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Target.d.ts","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAqB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAiB;IAExC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,oBAAoB,CAAY;IACxC;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC;;OAEG;IACH,oBAAoB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;gBAED,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EACtC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,EACzC,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,QAAQ,GAAG,IAAI,EAChC,mBAAmB,EAAE,SAAS;IAkChC;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAoBlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAqBzC,GAAG,IAAI,MAAM;IAIb;;;;;;OAMG;IACH,IAAI,IACA,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,OAAO,GACP,SAAS,GACT,SAAS;IAcb;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,cAAc,IAAI,cAAc;IAIhC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;IAMvB;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI;CAYjE"}
\ No newline at end of file
+{"version":3,"file":"Target.d.ts","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAqB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAiB;IAExC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC;;OAEG;IACH,oBAAoB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;gBAED,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EACtC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,EACzC,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,QAAQ,GAAG,IAAI;IAiClC;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAmBlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAqBzC,GAAG,IAAI,MAAM;IAIb;;;;;;OAMG;IACH,IAAI,IACA,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,OAAO,GACP,SAAS,GACT,SAAS;IAcb;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,cAAc,IAAI,cAAc;IAIhC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;IAMvB;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI;CAYjE"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js
index bec7b1f..0cb8cc7 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js
@@ -25,14 +25,13 @@
     /**
      * @internal
      */
-    constructor(targetInfo, browserContext, sessionFactory, ignoreHTTPSErrors, defaultViewport, screenshotTaskQueue) {
+    constructor(targetInfo, browserContext, sessionFactory, ignoreHTTPSErrors, defaultViewport) {
         this._targetInfo = targetInfo;
         this._browserContext = browserContext;
         this._targetId = targetInfo.targetId;
         this._sessionFactory = sessionFactory;
         this._ignoreHTTPSErrors = ignoreHTTPSErrors;
         this._defaultViewport = defaultViewport;
-        this._screenshotTaskQueue = screenshotTaskQueue;
         /** @type {?Promise<!Puppeteer.Page>} */
         this._pagePromise = null;
         /** @type {?Promise<!WebWorker>} */
@@ -70,7 +69,7 @@
             this._targetInfo.type === 'background_page' ||
             this._targetInfo.type === 'webview') &&
             !this._pagePromise) {
-            this._pagePromise = this._sessionFactory().then((client) => Page_js_1.Page.create(client, this, this._ignoreHTTPSErrors, this._defaultViewport, this._screenshotTaskQueue));
+            this._pagePromise = this._sessionFactory().then((client) => Page_js_1.Page.create(client, this, this._ignoreHTTPSErrors, this._defaultViewport));
         }
         return this._pagePromise;
     }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js.map
index 401ef8e..b940d08 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Target.js.map
@@ -1 +1 @@
-{"version":3,"file":"Target.js","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Target.js","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts
deleted file mode 100644
index 159b182..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Copyright 2020 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-export declare class TaskQueue {
-    private _chain;
-    constructor();
-    postTask<T>(task: () => Promise<T>): Promise<T>;
-}
-//# sourceMappingURL=TaskQueue.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts.map
deleted file mode 100644
index 7765719..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"TaskQueue.d.ts","sourceRoot":"","sources":["../../../../src/common/TaskQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAgB;;IAM9B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAQhD"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js
deleted file mode 100644
index 302a148..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js
+++ /dev/null
@@ -1,30 +0,0 @@
-"use strict";
-/**
- * Copyright 2020 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.TaskQueue = void 0;
-class TaskQueue {
-    constructor() {
-        this._chain = Promise.resolve();
-    }
-    postTask(task) {
-        const result = this._chain.then(task);
-        this._chain = result.then(() => undefined, () => undefined);
-        return result;
-    }
-}
-exports.TaskQueue = TaskQueue;
-//# sourceMappingURL=TaskQueue.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js.map
deleted file mode 100644
index 5cf32c3..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/TaskQueue.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"TaskQueue.js","sourceRoot":"","sources":["../../../../src/common/TaskQueue.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,MAAa,SAAS;IAGpB;QACE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,QAAQ,CAAI,IAAsB;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CACvB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAfD,8BAeC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.d.ts.map
index 1a0b27c..c1d591b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,OAAO;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,UAAS;IACnB,KAAK,SAAM;IAEX;;OAEG;gBACS,MAAM,EAAE,UAAU;IAI9B;;;;;OAKG;IACG,KAAK,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2CxD;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CAuB9B"}
\ No newline at end of file
+{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,OAAO;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,UAAS;IACnB,KAAK,SAAM;IAEX;;OAEG;gBACS,MAAM,EAAE,UAAU;IAI9B;;;;;OAKG;IACG,KAAK,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCxD;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CAgB9B"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js
index b6413d1..bde5cba 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js
@@ -49,7 +49,7 @@
      * @param options - Optional `TracingOptions`.
      */
     async start(options = {}) {
-        (0, assert_js_1.assert)(!this._recording, 'Cannot start recording trace while already recording trace.');
+        assert_js_1.assert(!this._recording, 'Cannot start recording trace while already recording trace.');
         const defaultCategories = [
             '-*',
             'devtools.timeline',
@@ -62,22 +62,16 @@
             'latencyInfo',
             'disabled-by-default-devtools.timeline.stack',
             'disabled-by-default-v8.cpu_profiler',
+            'disabled-by-default-v8.cpu_profiler.hires',
         ];
         const { path = null, screenshots = false, categories = defaultCategories, } = options;
         if (screenshots)
             categories.push('disabled-by-default-devtools.screenshot');
-        const excludedCategories = categories
-            .filter((cat) => cat.startsWith('-'))
-            .map((cat) => cat.slice(1));
-        const includedCategories = categories.filter((cat) => !cat.startsWith('-'));
         this._path = path;
         this._recording = true;
         await this._client.send('Tracing.start', {
             transferMode: 'ReturnAsStream',
-            traceConfig: {
-                excludedCategories,
-                includedCategories,
-            },
+            categories: categories.join(','),
         });
     }
     /**
@@ -91,15 +85,10 @@
             fulfill = x;
             reject = y;
         });
-        this._client.once('Tracing.tracingComplete', async (event) => {
-            try {
-                const readable = await helper_js_1.helper.getReadableFromProtocolStream(this._client, event.stream);
-                const buffer = await helper_js_1.helper.getReadableAsBuffer(readable, this._path);
-                fulfill(buffer);
-            }
-            catch (error) {
-                reject(error);
-            }
+        this._client.once('Tracing.tracingComplete', (event) => {
+            helper_js_1.helper
+                .readProtocolStream(this._client, event.stream, this._path)
+                .then(fulfill, reject);
         });
         await this._client.send('Tracing.end');
         this._recording = false;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js.map
index e0ffb40..3ad820c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/Tracing.js.map
@@ -1 +1 @@
-{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,2CAAqC;AACrC,2CAAqC;AAYrC;;;;;;;;;;;;;;GAcG;AACH,MAAa,OAAO;IAKlB;;OAEG;IACH,YAAY,MAAkB;QAN9B,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAG,EAAE,CAAC;QAMT,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,UAA0B,EAAE;QACtC,IAAA,kBAAM,EACJ,CAAC,IAAI,CAAC,UAAU,EAChB,6DAA6D,CAC9D,CAAC;QAEF,MAAM,iBAAiB,GAAG;YACxB,IAAI;YACJ,mBAAmB;YACnB,YAAY;YACZ,uCAAuC;YACvC,6CAA6C;YAC7C,UAAU;YACV,eAAe;YACf,mBAAmB;YACnB,aAAa;YACb,6CAA6C;YAC7C,qCAAqC;SACtC,CAAC;QACF,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,iBAAiB,GAC/B,GAAG,OAAO,CAAC;QAEZ,IAAI,WAAW;YAAE,UAAU,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAE5E,MAAM,kBAAkB,GAAG,UAAU;aAClC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACpC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE;YACvC,YAAY,EAAE,gBAAgB;YAC9B,WAAW,EAAE;gBACX,kBAAkB;gBAClB,kBAAkB;aACnB;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,OAAgC,CAAC;QACrC,IAAI,MAA4B,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,OAAO,GAAG,CAAC,CAAC;YACZ,MAAM,GAAG,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3D,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,kBAAM,CAAC,6BAA6B,CACzD,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,MAAM,CACb,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtE,OAAO,CAAC,MAAM,CAAC,CAAC;aACjB;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,CAAC,KAAK,CAAC,CAAC;aACf;QACH,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAxFD,0BAwFC"}
\ No newline at end of file
+{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;GAcG;AACH,2CAAqC;AACrC,2CAAqC;AAYrC;;;;;;;;;;;;;;GAcG;AACH,MAAa,OAAO;IAKlB;;OAEG;IACH,YAAY,MAAkB;QAN9B,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAG,EAAE,CAAC;QAMT,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,UAA0B,EAAE;QACtC,kBAAM,CACJ,CAAC,IAAI,CAAC,UAAU,EAChB,6DAA6D,CAC9D,CAAC;QAEF,MAAM,iBAAiB,GAAG;YACxB,IAAI;YACJ,mBAAmB;YACnB,YAAY;YACZ,uCAAuC;YACvC,6CAA6C;YAC7C,UAAU;YACV,eAAe;YACf,mBAAmB;YACnB,aAAa;YACb,6CAA6C;YAC7C,qCAAqC;YACrC,2CAA2C;SAC5C,CAAC;QACF,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,iBAAiB,GAC/B,GAAG,OAAO,CAAC;QAEZ,IAAI,WAAW;YAAE,UAAU,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAE5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE;YACvC,YAAY,EAAE,gBAAgB;YAC9B,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,OAAgC,CAAC;QACrC,IAAI,MAA4B,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,OAAO,GAAG,CAAC,CAAC;YACZ,MAAM,GAAG,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE;YACrD,kBAAM;iBACH,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;iBAC1D,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AA1ED,0BA0EC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts
index 0e192da..f5d9dec 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts
@@ -19,5 +19,4 @@
  * @param message - the error message to throw if the value is not truthy.
  */
 export declare const assert: (value: unknown, message?: string) => void;
-export declare const assertNever: (value: never, message?: string) => void;
 //# sourceMappingURL=assert.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts.map
index b1cc60d..a75f674 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,OAAO,YAAY,MAAM,KAAG,IAEzD,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,KAAK,YAAY,MAAM,KAAG,IAE5D,CAAC"}
\ No newline at end of file
+{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,OAAO,YAAY,MAAM,KAAG,IAEzD,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js
index 107cc4e..220ee56 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 Object.defineProperty(exports, "__esModule", { value: true });
-exports.assertNever = exports.assert = void 0;
+exports.assert = void 0;
 /**
  * Asserts that the given value is truthy.
  * @param value
@@ -26,9 +26,4 @@
         throw new Error(message);
 };
 exports.assert = assert;
-const assertNever = (value, message) => {
-    if (value)
-        throw new Error(message);
-};
-exports.assertNever = assertNever;
 //# sourceMappingURL=assert.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js.map
index da64828..2677937 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/assert.js.map
@@ -1 +1 @@
-{"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;;;GAIG;AACI,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,OAAgB,EAAQ,EAAE;IAC/D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AAFW,QAAA,MAAM,UAEjB;AAEK,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,OAAgB,EAAQ,EAAE;IAClE,IAAI,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC,CAAC;AAFW,QAAA,WAAW,eAEtB"}
\ No newline at end of file
+{"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH;;;;GAIG;AACI,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,OAAgB,EAAQ,EAAE;IAC/D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AAFW,QAAA,MAAM,UAEjB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts
index 5ed9debc3..dcbbf9b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts
@@ -1,20 +1,4 @@
-/**
- * Copyright 2017 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
 /// <reference types="node" />
-import type { Readable } from 'stream';
 import { CDPSession } from './Connection.js';
 import { Protocol } from 'devtools-protocol';
 import { CommonEventEmitter } from './EventEmitter.js';
@@ -46,8 +30,7 @@
 declare function pageBindingDeliverErrorValueString(name: string, seq: number, value: unknown): string;
 declare function makePredicateString(predicate: Function, predicateQueryHandler?: Function): string;
 declare function waitWithTimeout<T extends any>(promise: Promise<T>, taskName: string, timeout: number): Promise<T>;
-declare function getReadableAsBuffer(readable: Readable, path?: string): Promise<Buffer>;
-declare function getReadableFromProtocolStream(client: CDPSession, handle: string): Promise<Readable>;
+declare function readProtocolStream(client: CDPSession, handle: string, path?: string): Promise<Buffer>;
 /**
  * Loads the Node fs promises API. Needed because on Node 10.17 and below,
  * fs.promises is experimental, and therefore not marked as enumerable. That
@@ -68,8 +51,7 @@
     pageBindingDeliverErrorString: typeof pageBindingDeliverErrorString;
     pageBindingDeliverErrorValueString: typeof pageBindingDeliverErrorValueString;
     makePredicateString: typeof makePredicateString;
-    getReadableAsBuffer: typeof getReadableAsBuffer;
-    getReadableFromProtocolStream: typeof getReadableFromProtocolStream;
+    readProtocolStream: typeof readProtocolStream;
     waitWithTimeout: typeof waitWithTimeout;
     waitForEvent: typeof waitForEvent;
     isString: typeof isString;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts.map
index f3ea204..88dd9fd 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js
index db99244..9a939d7 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js
@@ -1,19 +1,4 @@
 "use strict";
-/**
- * Copyright 2017 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
 var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
     if (k2 === undefined) k2 = k;
     Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
@@ -35,11 +20,26 @@
 };
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.helper = exports.debugError = void 0;
+/**
+ * Copyright 2017 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 const Errors_js_1 = require("./Errors.js");
 const Debug_js_1 = require("./Debug.js");
 const assert_js_1 = require("./assert.js");
 const environment_js_1 = require("../environment.js");
-exports.debugError = (0, Debug_js_1.debug)('puppeteer:error');
+exports.debugError = Debug_js_1.debug('puppeteer:error');
 function getExceptionMessage(exceptionDetails) {
     if (exceptionDetails.exception)
         return (exceptionDetails.exception.description || exceptionDetails.exception.value);
@@ -58,7 +58,7 @@
     return message;
 }
 function valueFromRemoteObject(remoteObject) {
-    (0, assert_js_1.assert)(!remoteObject.objectId, 'Cannot extract value when objectId is given');
+    assert_js_1.assert(!remoteObject.objectId, 'Cannot extract value when objectId is given');
     if (remoteObject.unserializableValue) {
         if (remoteObject.type === 'bigint' && typeof BigInt !== 'undefined')
             return BigInt(remoteObject.unserializableValue.replace('n', ''));
@@ -86,7 +86,7 @@
         .catch((error) => {
         // Exceptions might happen in case of a page been navigated or closed.
         // Swallow these since they are harmless and we don't leak anything in this case.
-        (0, exports.debugError)(error);
+        exports.debugError(error);
     });
 }
 function addEventListener(emitter, eventName, handler) {
@@ -137,7 +137,7 @@
 }
 function evaluationString(fun, ...args) {
     if (isString(fun)) {
-        (0, assert_js_1.assert)(args.length === 0, 'Cannot evaluate a string with arguments');
+        assert_js_1.assert(args.length === 0, 'Cannot evaluate a string with arguments');
         return fun;
     }
     function serializeArgument(arg) {
@@ -234,55 +234,37 @@
             clearTimeout(timeoutTimer);
     }
 }
-async function getReadableAsBuffer(readable, path) {
+async function readProtocolStream(client, handle, path) {
     if (!environment_js_1.isNode && path) {
         throw new Error('Cannot write to a path outside of Node.js environment.');
     }
     const fs = environment_js_1.isNode ? await importFSModule() : null;
+    let eof = false;
     let fileHandle;
     if (path && fs) {
         fileHandle = await fs.promises.open(path, 'w');
     }
-    const buffers = [];
-    for await (const chunk of readable) {
-        buffers.push(chunk);
-        if (fileHandle) {
-            await fs.promises.writeFile(fileHandle, chunk);
+    const bufs = [];
+    while (!eof) {
+        const response = await client.send('IO.read', { handle });
+        eof = response.eof;
+        const buf = Buffer.from(response.data, response.base64Encoded ? 'base64' : undefined);
+        bufs.push(buf);
+        if (path && fs) {
+            await fs.promises.writeFile(fileHandle, buf);
         }
     }
     if (path)
         await fileHandle.close();
+    await client.send('IO.close', { handle });
     let resultBuffer = null;
     try {
-        resultBuffer = Buffer.concat(buffers);
+        resultBuffer = Buffer.concat(bufs);
     }
     finally {
         return resultBuffer;
     }
 }
-async function getReadableFromProtocolStream(client, handle) {
-    // TODO:
-    // This restriction can be lifted once https://github.com/nodejs/node/pull/39062 has landed
-    if (!environment_js_1.isNode) {
-        throw new Error('Cannot create a stream outside of Node.js environment.');
-    }
-    const { Readable } = await Promise.resolve().then(() => __importStar(require('stream')));
-    let eof = false;
-    return new Readable({
-        async read(size) {
-            if (eof) {
-                return null;
-            }
-            const response = await client.send('IO.read', { handle, size });
-            this.push(response.data, response.base64Encoded ? 'base64' : undefined);
-            if (response.eof) {
-                eof = true;
-                await client.send('IO.close', { handle });
-                this.push(null);
-            }
-        },
-    });
-}
 /**
  * Loads the Node fs promises API. Needed because on Node 10.17 and below,
  * fs.promises is experimental, and therefore not marked as enumerable. That
@@ -312,8 +294,7 @@
     pageBindingDeliverErrorString,
     pageBindingDeliverErrorValueString,
     makePredicateString,
-    getReadableAsBuffer,
-    getReadableFromProtocolStream,
+    readProtocolStream,
     waitWithTimeout,
     waitForEvent,
     isString,
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js.map
index 71a4808..b036de3 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/common/helper.js.map
@@ -1 +1 @@
-{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,2CAA2C;AAC3C,yCAAmC;AAInC,2CAAqC;AACrC,sDAA2C;AAE9B,QAAA,UAAU,GAAG,gBAAK,CAAC,iBAAiB,CAAC,CAAC;AAEnD,SAAS,mBAAmB,CAC1B,gBAAmD;IAEnD,IAAI,gBAAgB,CAAC,SAAS;QAC5B,OAAO,CACL,gBAAgB,CAAC,SAAS,CAAC,WAAW,IAAI,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAC3E,CAAC;IACJ,IAAI,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;IACpC,IAAI,gBAAgB,CAAC,UAAU,EAAE;QAC/B,KAAK,MAAM,SAAS,IAAI,gBAAgB,CAAC,UAAU,CAAC,UAAU,EAAE;YAC9D,MAAM,QAAQ,GACZ,SAAS,CAAC,GAAG;gBACb,GAAG;gBACH,SAAS,CAAC,UAAU;gBACpB,GAAG;gBACH,SAAS,CAAC,YAAY,CAAC;YACzB,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,aAAa,CAAC;YAC7D,OAAO,IAAI,YAAY,YAAY,KAAK,QAAQ,GAAG,CAAC;SACrD;KACF;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,qBAAqB,CAC5B,YAA2C;IAE3C,kBAAM,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,6CAA6C,CAAC,CAAC;IAC9E,IAAI,YAAY,CAAC,mBAAmB,EAAE;QACpC,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,WAAW;YACjE,OAAO,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QACnE,QAAQ,YAAY,CAAC,mBAAmB,EAAE;YACxC,KAAK,IAAI;gBACP,OAAO,CAAC,CAAC,CAAC;YACZ,KAAK,KAAK;gBACR,OAAO,GAAG,CAAC;YACb,KAAK,UAAU;gBACb,OAAO,QAAQ,CAAC;YAClB,KAAK,WAAW;gBACd,OAAO,CAAC,QAAQ,CAAC;YACnB;gBACE,MAAM,IAAI,KAAK,CACb,oCAAoC;oBAClC,YAAY,CAAC,mBAAmB,CACnC,CAAC;SACL;KACF;IACD,OAAO,YAAY,CAAC,KAAK,CAAC;AAC5B,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,MAAkB,EAClB,YAA2C;IAE3C,IAAI,CAAC,YAAY,CAAC,QAAQ;QAAE,OAAO;IACnC,MAAM,MAAM;SACT,IAAI,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC;SAClE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,sEAAsE;QACtE,iFAAiF;QACjF,kBAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACP,CAAC;AAWD,SAAS,gBAAgB,CACvB,OAA2B,EAC3B,SAA0B,EAC1B,OAAiC;IAEjC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,oBAAoB,CAC3B,SAIE;IAEF,KAAK,MAAM,QAAQ,IAAI,SAAS;QAC9B,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,QAAQ,CAAC,GAAY;IAC5B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,YAAY,MAAM,CAAC;AAC1D,CAAC;AAED,SAAS,QAAQ,CAAC,GAAY;IAC5B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,YAAY,MAAM,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,OAA2B,EAC3B,SAA0B,EAC1B,SAAmD,EACnD,OAAe,EACf,YAA4B;IAE5B,IAAI,YAAY,EAAE,eAAe,EAAE,cAAc,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACjD,eAAe,GAAG,OAAO,CAAC;QAC1B,cAAc,GAAG,MAAM,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACpE,IAAI,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO;QACtC,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,EAAE;QACX,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,cAAc,CACZ,IAAI,wBAAY,CAAC,0CAA0C,CAAC,CAC7D,CAAC;QACJ,CAAC,EAAE,OAAO,CAAC,CAAC;KACb;IACD,SAAS,OAAO;QACd,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC,CAAC,EAAE,EAAE;QACJ,OAAO,EAAE,CAAC;QACV,OAAO,CAAC,CAAC;IACX,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;QACR,OAAO,EAAE,CAAC;QACV,MAAM,KAAK,CAAC;IACd,CAAC,CACF,CAAC;IACF,IAAI,MAAM,YAAY,KAAK;QAAE,MAAM,MAAM,CAAC;IAE1C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAsB,EAAE,GAAG,IAAe;IAClE,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;QACjB,kBAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,yCAAyC,CAAC,CAAC;QACrE,OAAO,GAAG,CAAC;KACZ;IAED,SAAS,iBAAiB,CAAC,GAAY;QACrC,IAAI,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC;YAAE,OAAO,WAAW,CAAC;QAClD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,IAAI,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAC9D,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,IAAY;IACvD,SAAS,cAAc,CAAC,IAAY,EAAE,WAAmB;QACvD;;WAEG;QACH,MAAM,GAAG,GAAG,MAAa,CAAC;QAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;QAEjC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,IAAe,EAAoB,EAAE;YAC1D,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC;YAC7B,IAAI,CAAC,SAAS,EAAE;gBACd,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;gBACtB,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC;aAC1B;YACD,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAClC,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC;YACjB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAC9C,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CACxC,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAChE,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,gBAAgB,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,8BAA8B,CACrC,IAAY,EACZ,GAAW,EACX,MAAe;IAEf,SAAS,aAAa,CAAC,IAAY,EAAE,GAAW,EAAE,MAAe;QAC/D,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,6BAA6B,CACpC,IAAY,EACZ,GAAW,EACX,OAAe,EACf,KAAa;IAEb,SAAS,YAAY,CACnB,IAAY,EACZ,GAAW,EACX,OAAe,EACf,KAAa;QAEb,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,kCAAkC,CACzC,IAAY,EACZ,GAAW,EACX,KAAc;IAEd,SAAS,iBAAiB,CAAC,IAAY,EAAE,GAAW,EAAE,KAAc;QAClE,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,gBAAgB,CAAC,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,mBAAmB,CAC1B,SAAmB,EACnB,qBAAgC;IAEhC,SAAS,mBAAmB,CAC1B,IAAU,EACV,cAAuB,EACvB,aAAsB;QAEtB,IAAI,CAAC,IAAI;YAAE,OAAO,aAAa,CAAC;QAChC,IAAI,CAAC,cAAc,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QACnD,MAAM,OAAO,GACX,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAE,IAAgB,CAAC;QAE5E,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,SAAS,GACb,KAAK,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,qBAAqB,EAAE,CAAC;QACpE,MAAM,OAAO,GACX,cAAc,KAAK,SAAS,IAAI,aAAa,KAAK,CAAC,SAAS,CAAC;QAC/D,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7B,SAAS,qBAAqB;YAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC7C,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,MAAM,wBAAwB,GAAG,qBAAqB;QACpD,CAAC,CAAC,iCAAiC,qBAAqB,GAAG;QAC3D,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;;QAED,wBAAwB;oCACI,mBAAmB;gBACvC,SAAS;UACf,CAAC;AACX,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,OAAmB,EACnB,QAAgB,EAChB,OAAe;IAEf,IAAI,MAAM,CAAC;IACX,MAAM,YAAY,GAAG,IAAI,wBAAY,CACnC,eAAe,QAAQ,oBAAoB,OAAO,aAAa,CAChE,CAAC;IACF,MAAM,cAAc,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,OAAO;QAAE,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;IAC5E,IAAI;QACF,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;KACtD;YAAS;QACR,IAAI,YAAY;YAAE,YAAY,CAAC,YAAY,CAAC,CAAC;KAC9C;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,MAAkB,EAClB,MAAc,EACd,IAAa;IAEb,IAAI,CAAC,uBAAM,IAAI,IAAI,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;KAC3E;IAED,MAAM,EAAE,GAAG,uBAAM,CAAC,CAAC,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAElD,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,UAA4C,CAAC;IAEjD,IAAI,IAAI,IAAI,EAAE,EAAE;QACd,UAAU,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAChD;IACD,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,EAAE;QACX,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1D,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACnB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CACrB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAC9C,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,IAAI,EAAE,EAAE;YACd,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;SAC9C;KACF;IACD,IAAI,IAAI;QAAE,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IACnC,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1C,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI;QACF,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KACpC;YAAS;QACR,OAAO,YAAY,CAAC;KACrB;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,cAAc;IAC3B,IAAI,CAAC,uBAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,MAAM,EAAE,GAAG,wDAAa,IAAI,GAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,QAAQ,EAAE;QACf,OAAO,EAAE,CAAC;KACX;IACD,OAAO,EAAE,CAAC,OAAO,CAAC;AACpB,CAAC;AAEY,QAAA,MAAM,GAAG;IACpB,gBAAgB;IAChB,qBAAqB;IACrB,8BAA8B;IAC9B,6BAA6B;IAC7B,kCAAkC;IAClC,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,gBAAgB;IAChB,oBAAoB;IACpB,qBAAqB;IACrB,mBAAmB;IACnB,aAAa;CACd,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts
deleted file mode 100644
index 0c13d62..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * These global declarations exist so puppeteer can work without the need to use `"dom"`
- * types.
- *
- * To get full type information for these interfaces, add `"types": "dom"`in your
- * `tsconfig.json` file.
- */
-declare global {
-    interface Document {
-    }
-    interface Element {
-    }
-    interface NodeListOf<TNode> {
-    }
-}
-export {};
-//# sourceMappingURL=global.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts.map
deleted file mode 100644
index 7729a0b..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/global.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../../src/global.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,QAAQ;KAAG;IAGrB,UAAU,OAAO;KAAG;IAIpB,UAAU,UAAU,CAAC,KAAK;KAAI;CAC/B;AAED,OAAO,EAAE,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/global.js b/node_modules/puppeteer/lib/cjs/puppeteer/global.js
deleted file mode 100644
index 74429bb..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/global.js
+++ /dev/null
@@ -1,3 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-//# sourceMappingURL=global.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/global.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/global.js.map
deleted file mode 100644
index 7296c4e..0000000
--- a/node_modules/puppeteer/lib/cjs/puppeteer/global.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"global.js","sourceRoot":"","sources":["../../../src/global.ts"],"names":[],"mappings":""}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js b/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js
index 6d1f7ff..8c18fe7 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js
@@ -20,6 +20,6 @@
 if (!environment_js_1.isNode) {
     throw new Error('Cannot run puppeteer-core outside of Node.js');
 }
-const puppeteer = (0, initialize_node_js_1.initializePuppeteerNode)('puppeteer-core');
+const puppeteer = initialize_node_js_1.initializePuppeteerNode('puppeteer-core');
 exports.default = puppeteer;
 //# sourceMappingURL=node-puppeteer-core.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js.map
index 8d80437..abcc54d 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node-puppeteer-core.js.map
@@ -1 +1 @@
-{"version":3,"file":"node-puppeteer-core.js","sourceRoot":"","sources":["../../../src/node-puppeteer-core.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,6DAA+D;AAC/D,qDAA0C;AAE1C,IAAI,CAAC,uBAAM,EAAE;IACX,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;CACjE;AAED,MAAM,SAAS,GAAG,IAAA,4CAAuB,EAAC,gBAAgB,CAAC,CAAC;AAC5D,kBAAe,SAAS,CAAC"}
\ No newline at end of file
+{"version":3,"file":"node-puppeteer-core.js","sourceRoot":"","sources":["../../../src/node-puppeteer-core.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,6DAA+D;AAC/D,qDAA0C;AAE1C,IAAI,CAAC,uBAAM,EAAE;IACX,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;CACjE;AAED,MAAM,SAAS,GAAG,4CAAuB,CAAC,gBAAgB,CAAC,CAAC;AAC5D,kBAAe,SAAS,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node.js b/node_modules/puppeteer/lib/cjs/puppeteer/node.js
index f2c12ae..a941578 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node.js
@@ -20,5 +20,5 @@
 if (!environment_js_1.isNode) {
     throw new Error('Trying to run Puppeteer-Node in a web environment.');
 }
-exports.default = (0, initialize_node_js_1.initializePuppeteerNode)('puppeteer');
+exports.default = initialize_node_js_1.initializePuppeteerNode('puppeteer');
 //# sourceMappingURL=node.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node.js.map
index e32374e..8263c56 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node.js.map
@@ -1 +1 @@
-{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/node.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,6DAA+D;AAC/D,qDAA0C;AAE1C,IAAI,CAAC,uBAAM,EAAE;IACX,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;CACvE;AACD,kBAAe,IAAA,4CAAuB,EAAC,WAAW,CAAC,CAAC"}
\ No newline at end of file
+{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/node.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,6DAA+D;AAC/D,qDAA0C;AAE1C,IAAI,CAAC,uBAAM,EAAE;IACX,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;CACvE;AACD,kBAAe,4CAAuB,CAAC,WAAW,CAAC,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map
index 68d393d..535ab45 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserFetcher.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyC/C;;;GAGG;AACH,oBAAY,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AAoE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAW;IAE5B;;OAEG;gBACS,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;IAkBpE,OAAO,CAAC,WAAW;IAcnB;;;OAGG;IACH,QAAQ,IAAI,QAAQ;IAIpB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;;;;;;OAOG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB/C;;;;;;;;;OASG;IACG,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,gBAAgB,GAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAqB,GAChE,OAAO,CAAC,0BAA0B,CAAC;IA+BtC;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASzC;;;;;;OAMG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B;IAkE1D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAGzC"}
\ No newline at end of file
+{"version":3,"file":"BrowserFetcher.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyC/C;;;GAGG;AACH,oBAAY,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AAkE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAW;IAE5B;;OAEG;gBACS,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;IAkBpE,OAAO,CAAC,WAAW;IAcnB;;;OAGG;IACH,QAAQ,IAAI,QAAQ;IAIpB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;;;;;;OAOG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB/C;;;;;;;;;OASG;IACG,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,gBAAgB,GAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAqB,GAChE,OAAO,CAAC,0BAA0B,CAAC;IA+BtC;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASzC;;;;;;OAMG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B;IAoE1D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAGzC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js
index 4f92c4e..8105e3b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js
@@ -53,7 +53,7 @@
 const https_proxy_agent_1 = __importDefault(require("https-proxy-agent"));
 const proxy_from_env_1 = require("proxy-from-env");
 const assert_js_1 = require("../common/assert.js");
-const debugFetcher = (0, Debug_js_1.debug)('puppeteer:fetcher');
+const debugFetcher = Debug_js_1.debug(`puppeteer:fetcher`);
 const downloadURLs = {
     chrome: {
         linux: '%s/chromium-browser-snapshots/Linux_x64/%d/%s.zip',
@@ -108,20 +108,20 @@
         if (stats === undefined) {
             fs.stat('/usr/bin/chromium', function (err, stats) {
                 if (stats === undefined) {
-                    console.error('The chromium binary is not available for arm64.' +
-                        '\nIf you are on Ubuntu, you can install with: ' +
-                        '\n\n sudo apt install chromium\n' +
-                        '\n\n sudo apt install chromium-browser\n');
+                    console.error(`The chromium binary is not available for arm64.`);
+                    console.error(`If you are on Ubuntu, you can install with: `);
+                    console.error(`\n sudo apt install chromium\n`);
+                    console.error(`\n sudo apt install chromium-browser\n`);
                     throw new Error();
                 }
             });
         }
     });
 }
-const readdirAsync = (0, util_1.promisify)(fs.readdir.bind(fs));
-const mkdirAsync = (0, util_1.promisify)(fs.mkdir.bind(fs));
-const unlinkAsync = (0, util_1.promisify)(fs.unlink.bind(fs));
-const chmodAsync = (0, util_1.promisify)(fs.chmod.bind(fs));
+const readdirAsync = util_1.promisify(fs.readdir.bind(fs));
+const mkdirAsync = util_1.promisify(fs.mkdir.bind(fs));
+const unlinkAsync = util_1.promisify(fs.unlink.bind(fs));
+const chmodAsync = util_1.promisify(fs.chmod.bind(fs));
 function existsAsync(filePath) {
     return new Promise((resolve) => {
         fs.access(filePath, (err) => resolve(!err));
@@ -156,13 +156,13 @@
      */
     constructor(projectRoot, options = {}) {
         this._product = (options.product || 'chrome').toLowerCase();
-        (0, assert_js_1.assert)(this._product === 'chrome' || this._product === 'firefox', `Unknown product: "${options.product}"`);
+        assert_js_1.assert(this._product === 'chrome' || this._product === 'firefox', `Unknown product: "${options.product}"`);
         this._downloadsFolder =
             options.path ||
                 path.join(projectRoot, browserConfig[this._product].destination);
         this._downloadHost = options.host || browserConfig[this._product].host;
         this.setPlatform(options.platform);
-        (0, assert_js_1.assert)(downloadURLs[this._product][this._platform], 'Unsupported platform: ' + this._platform);
+        assert_js_1.assert(downloadURLs[this._product][this._platform], 'Unsupported platform: ' + this._platform);
     }
     setPlatform(platformFromOptions) {
         if (platformFromOptions) {
@@ -177,7 +177,7 @@
         else if (platform === 'win32')
             this._platform = os.arch() === 'x64' ? 'win64' : 'win32';
         else
-            (0, assert_js_1.assert)(this._platform, 'Unsupported platform: ' + platform);
+            assert_js_1.assert(this._platform, 'Unsupported platform: ' + os.platform());
     }
     /**
      * @returns Returns the current `Platform`, which is one of `mac`, `linux`,
@@ -281,8 +281,8 @@
      */
     async remove(revision) {
         const folderPath = this._getFolderPath(revision);
-        (0, assert_js_1.assert)(await existsAsync(folderPath), `Failed to remove: revision ${revision} is not downloaded`);
-        await new Promise((fulfill) => (0, rimraf_1.default)(folderPath, fulfill));
+        assert_js_1.assert(await existsAsync(folderPath), `Failed to remove: revision ${revision} is not downloaded`);
+        await new Promise((fulfill) => rimraf_1.default(folderPath, fulfill));
     }
     /**
      * @param revision - The revision to get info for.
@@ -311,8 +311,9 @@
             else
                 throw new Error('Unsupported platform: ' + this._platform);
         }
-        else
+        else {
             throw new Error('Unsupported product: ' + this._product);
+        }
         const url = downloadURL(this._product, this._platform, this._downloadHost, revision);
         const local = fs.existsSync(folderPath);
         debugFetcher({
@@ -336,7 +337,7 @@
      * @internal
      */
     _getFolderPath(revision) {
-        return path.resolve(this._downloadsFolder, `${this._platform}-${revision}`);
+        return path.join(this._downloadsFolder, this._platform + '-' + revision);
     }
 }
 exports.BrowserFetcher = BrowserFetcher;
@@ -389,7 +390,7 @@
 function install(archivePath, folderPath) {
     debugFetcher(`Installing ${archivePath} to ${folderPath}`);
     if (archivePath.endsWith('.zip'))
-        return (0, extract_zip_1.default)(archivePath, { dir: folderPath });
+        return extract_zip_1.default(archivePath, { dir: folderPath });
     else if (archivePath.endsWith('.tar.bz2'))
         return extractTar(archivePath, folderPath);
     else if (archivePath.endsWith('.dmg'))
@@ -429,7 +430,7 @@
             mountPath = volumes[0];
             readdirAsync(mountPath)
                 .then((fileNames) => {
-                const appName = fileNames.find((item) => typeof item === 'string' && item.endsWith('.app'));
+                const appName = fileNames.filter((item) => typeof item === 'string' && item.endsWith('.app'))[0];
                 if (!appName)
                     return reject(new Error(`Cannot find app in ${mountPath}`));
                 const copyPath = path.join(mountPath, appName);
@@ -466,7 +467,7 @@
         ...urlParsed,
         method,
     };
-    const proxyURL = (0, proxy_from_env_1.getProxyForUrl)(url);
+    const proxyURL = proxy_from_env_1.getProxyForUrl(url);
     if (proxyURL) {
         if (url.startsWith('http:')) {
             const proxy = URL.parse(proxyURL);
@@ -482,7 +483,7 @@
                 ...parsedProxyURL,
                 secureProxy: parsedProxyURL.protocol === 'https:',
             };
-            options.agent = (0, https_proxy_agent_1.default)(proxyOptions);
+            options.agent = https_proxy_agent_1.default(proxyOptions);
             options.rejectUnauthorized = false;
         }
     }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js.map
index 081ddbd..0246a68 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserFetcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserFetcher.js","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"BrowserFetcher.js","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts
index ccf341e..682db7e 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts
@@ -20,14 +20,13 @@
     private _product;
     private _executablePath;
     private _processArguments;
-    private _userDataDir;
-    private _isTempUserDataDir?;
+    private _tempDirectory?;
     proc: any;
     connection: any;
     private _closed;
     private _listeners;
     private _processClosing;
-    constructor(product: Product, executablePath: string, processArguments: string[], userDataDir: string, isTempUserDataDir?: boolean);
+    constructor(product: Product, executablePath: string, processArguments: string[], tempDirectory?: string);
     start(options: LaunchOptions): void;
     close(): Promise<void>;
     kill(): void;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map
index 799bb71..2e19f56 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserRunner.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAaH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAc/C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAW;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAC,CAAU;IAErC,IAAI,MAAQ;IACZ,UAAU,MAAQ;IAElB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,eAAe,CAAgB;gBAGrC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,iBAAiB,CAAC,EAAE,OAAO;IAS7B,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA2FnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtB,IAAI,IAAI,IAAI;IA0BN,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBxB"}
\ No newline at end of file
+{"version":3,"file":"BrowserRunner.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAY/C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAW;IACpC,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,IAAI,MAAQ;IACZ,UAAU,MAAQ;IAElB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,eAAe,CAAgB;gBAGrC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,aAAa,CAAC,EAAE,MAAM;IAQxB,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA+DnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtB,IAAI,IAAI,IAAI;IAuBN,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBxB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js
index fcbf9d7..b843418 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js
@@ -39,28 +39,24 @@
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.BrowserRunner = void 0;
 const Debug_js_1 = require("../common/Debug.js");
-const childProcess = __importStar(require("child_process"));
-const fs = __importStar(require("fs"));
-const path = __importStar(require("path"));
-const readline = __importStar(require("readline"));
 const rimraf_1 = __importDefault(require("rimraf"));
-const util_1 = require("util");
+const childProcess = __importStar(require("child_process"));
 const assert_js_1 = require("../common/assert.js");
 const helper_js_1 = require("../common/helper.js");
 const Connection_js_1 = require("../common/Connection.js");
 const NodeWebSocketTransport_js_1 = require("../node/NodeWebSocketTransport.js");
 const PipeTransport_js_1 = require("./PipeTransport.js");
+const readline = __importStar(require("readline"));
 const Errors_js_1 = require("../common/Errors.js");
-const removeFolderAsync = (0, util_1.promisify)(rimraf_1.default);
-const renameAsync = (0, util_1.promisify)(fs.rename);
-const unlinkAsync = (0, util_1.promisify)(fs.unlink);
-const debugLauncher = (0, Debug_js_1.debug)('puppeteer:launcher');
+const util_1 = require("util");
+const removeFolderAsync = util_1.promisify(rimraf_1.default);
+const debugLauncher = Debug_js_1.debug('puppeteer:launcher');
 const PROCESS_ERROR_EXPLANATION = `Puppeteer was unable to kill the process which ran the browser binary.
 This means that, on future Puppeteer launches, Puppeteer might not be able to launch the browser.
 Please check your open processes and ensure that the browser processes that Puppeteer launched have been killed.
 If you think this is a bug, please report it on the Puppeteer issue tracker.`;
 class BrowserRunner {
-    constructor(product, executablePath, processArguments, userDataDir, isTempUserDataDir) {
+    constructor(product, executablePath, processArguments, tempDirectory) {
         this.proc = null;
         this.connection = null;
         this._closed = true;
@@ -68,25 +64,18 @@
         this._product = product;
         this._executablePath = executablePath;
         this._processArguments = processArguments;
-        this._userDataDir = userDataDir;
-        this._isTempUserDataDir = isTempUserDataDir;
+        this._tempDirectory = tempDirectory;
     }
     start(options) {
         const { handleSIGINT, handleSIGTERM, handleSIGHUP, dumpio, env, pipe } = options;
-        let stdio;
+        let stdio = ['pipe', 'pipe', 'pipe'];
         if (pipe) {
             if (dumpio)
                 stdio = ['ignore', 'pipe', 'pipe', 'pipe', 'pipe'];
             else
                 stdio = ['ignore', 'ignore', 'ignore', 'pipe', 'pipe'];
         }
-        else {
-            if (dumpio)
-                stdio = ['pipe', 'pipe', 'pipe'];
-            else
-                stdio = ['pipe', 'ignore', 'pipe'];
-        }
-        (0, assert_js_1.assert)(!this.proc, 'This process has previously been started.');
+        assert_js_1.assert(!this.proc, 'This process has previously been started.');
         debugLauncher(`Calling ${this._executablePath} ${this._processArguments.join(' ')}`);
         this.proc = childProcess.spawn(this._executablePath, this._processArguments, {
             // On non-windows platforms, `detached: true` makes child process a
@@ -102,38 +91,16 @@
             this.proc.stdout.pipe(process.stdout);
         }
         this._closed = false;
-        this._processClosing = new Promise((fulfill, reject) => {
-            this.proc.once('exit', async () => {
+        this._processClosing = new Promise((fulfill) => {
+            this.proc.once('exit', () => {
                 this._closed = true;
                 // Cleanup as processes exit.
-                if (this._isTempUserDataDir) {
-                    try {
-                        await removeFolderAsync(this._userDataDir);
-                        fulfill();
-                    }
-                    catch (error) {
-                        console.error(error);
-                        reject(error);
-                    }
+                if (this._tempDirectory) {
+                    removeFolderAsync(this._tempDirectory)
+                        .then(() => fulfill())
+                        .catch((error) => console.error(error));
                 }
                 else {
-                    if (this._product === 'firefox') {
-                        try {
-                            // When an existing user profile has been used remove the user
-                            // preferences file and restore possibly backuped preferences.
-                            await unlinkAsync(path.join(this._userDataDir, 'user.js'));
-                            const prefsBackupPath = path.join(this._userDataDir, 'prefs.js.puppeteer');
-                            if (fs.existsSync(prefsBackupPath)) {
-                                const prefsPath = path.join(this._userDataDir, 'prefs.js');
-                                await unlinkAsync(prefsPath);
-                                await renameAsync(prefsBackupPath, prefsPath);
-                            }
-                        }
-                        catch (error) {
-                            console.error(error);
-                            reject(error);
-                        }
-                    }
                     fulfill();
                 }
             });
@@ -154,13 +121,13 @@
     close() {
         if (this._closed)
             return Promise.resolve();
-        if (this._isTempUserDataDir && this._product !== 'firefox') {
+        if (this._tempDirectory && this._product !== 'firefox') {
             this.kill();
         }
         else if (this.connection) {
             // Attempt to close the browser gracefully
             this.connection.send('Browser.close').catch((error) => {
-                (0, helper_js_1.debugError)(error);
+                helper_js_1.debugError(error);
                 this.kill();
             });
         }
@@ -170,6 +137,11 @@
         return this._processClosing;
     }
     kill() {
+        // Attempt to remove temporary profile directory to avoid littering.
+        try {
+            rimraf_1.default.sync(this._tempDirectory);
+        }
+        catch (error) { }
         // If the process failed to launch (for example if the browser executable path
         // is invalid), then the process does not get a pid assigned. A call to
         // `proc.kill` would error, as the `pid` to-be-killed can not be found.
@@ -181,13 +153,6 @@
                 throw new Error(`${PROCESS_ERROR_EXPLANATION}\nError cause: ${error.stack}`);
             }
         }
-        // Attempt to remove temporary profile directory to avoid littering.
-        try {
-            if (this._isTempUserDataDir) {
-                rimraf_1.default.sync(this._userDataDir);
-            }
-        }
-        catch (error) { }
         // Cleanup this listener last, as that makes sure the full callback runs. If we
         // perform this earlier, then the previous function calls would not happen.
         helper_js_1.helper.removeEventListeners(this._listeners);
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js.map
index c12efc8..efdef19 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserRunner.js","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"BrowserRunner.js","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iDAA2C;AAE3C,oDAAkC;AAClC,4DAA8C;AAC9C,mDAA6C;AAC7C,mDAAyD;AAEzD,2DAAqD;AACrD,iFAAiG;AACjG,yDAAmD;AAEnD,mDAAqC;AACrC,mDAAmD;AACnD,+BAAiC;AAEjC,MAAM,iBAAiB,GAAG,gBAAS,CAAC,gBAAY,CAAC,CAAC;AAClD,MAAM,aAAa,GAAG,gBAAK,CAAC,oBAAoB,CAAC,CAAC;AAClD,MAAM,yBAAyB,GAAG;;;6EAG2C,CAAC;AAE9E,MAAa,aAAa;IAaxB,YACE,OAAgB,EAChB,cAAsB,EACtB,gBAA0B,EAC1B,aAAsB;QAXxB,SAAI,GAAG,IAAI,CAAC;QACZ,eAAU,GAAG,IAAI,CAAC;QAEV,YAAO,GAAG,IAAI,CAAC;QACf,eAAU,GAAG,EAAE,CAAC;QAStB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,OAAsB;QAC1B,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GACpE,OAAO,CAAC;QACV,IAAI,KAAK,GAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/D,IAAI,IAAI,EAAE;YACR,IAAI,MAAM;gBAAE,KAAK,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;;gBAC1D,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;SAC7D;QACD,kBAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,2CAA2C,CAAC,CAAC;QAChE,aAAa,CACX,WAAW,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACtE,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,KAAK,CAC5B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,iBAAiB,EACtB;YACE,mEAAmE;YACnE,kEAAkE;YAClE,gDAAgD;YAChD,2EAA2E;YAC3E,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;YACtC,GAAG;YACH,KAAK;SACN,CACF,CAAC;QACF,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,6BAA6B;gBAC7B,IAAI,IAAI,CAAC,cAAc,EAAE;oBACvB,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC;yBACnC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;yBACrB,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;iBAC3C;qBAAM;oBACL,OAAO,EAAE,CAAC;iBACX;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG;YAChB,kBAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC/D,CAAC;QACF,IAAI,YAAY;YACd,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,kBAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE;gBAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC,CAAC,CACH,CAAC;QACJ,IAAI,aAAa;YACf,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,kBAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACnE,CAAC;QACJ,IAAI,YAAY;YACd,IAAI,CAAC,UAAU,CAAC,IAAI,CAClB,kBAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAClE,CAAC;IACN,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YACtD,IAAI,CAAC,IAAI,EAAE,CAAC;SACb;aAAM,IAAI,IAAI,CAAC,UAAU,EAAE;YAC1B,0CAA0C;YAC1C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpD,sBAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;SACJ;QACD,+EAA+E;QAC/E,2EAA2E;QAC3E,kBAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,IAAI;QACF,oEAAoE;QACpE,IAAI;YACF,gBAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACxC;QAAC,OAAO,KAAK,EAAE,GAAE;QAElB,8EAA8E;QAC9E,uEAAuE;QACvE,uEAAuE;QACvE,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACnD,IAAI;gBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC3B;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,KAAK,CACb,GAAG,yBAAyB,kBAAkB,KAAK,CAAC,KAAK,EAAE,CAC5D,CAAC;aACH;SACF;QACD,+EAA+E;QAC/E,2EAA2E;QAC3E,kBAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAKrB;QACC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAChE,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,iBAAiB,GAAG,MAAM,iBAAiB,CAC/C,IAAI,CAAC,IAAI,EACT,OAAO,EACP,iBAAiB,CAClB,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,kDAAkB,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACrE,IAAI,CAAC,UAAU,GAAG,IAAI,0BAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;SACxE;aAAM;YACL,0EAA0E;YAC1E,mCAAmC;YACnC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACtD,MAAM,SAAS,GAAG,IAAI,gCAAa,CACjC,SAAkC,EAClC,QAAiC,CAClC,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,IAAI,0BAAU,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AA3JD,sCA2JC;AAED,SAAS,iBAAiB,CACxB,cAAyC,EACzC,OAAe,EACf,iBAAyB;IAEzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG;YAChB,kBAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC;YAC3C,kBAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;YACrD,kBAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;YAChE,kBAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACzD,OAAO,CAAC,KAAK,CAAC,CACf;SACF,CAAC;QACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/D;;WAEG;QACH,SAAS,OAAO,CAAC,KAAa;YAC5B,OAAO,EAAE,CAAC;YACV,MAAM,CACJ,IAAI,KAAK,CACP;gBACE,uCAAuC;oBACrC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpC,MAAM;gBACN,EAAE;gBACF,2FAA2F;gBAC3F,EAAE;aACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CACF,CAAC;QACJ,CAAC;QAED,SAAS,SAAS;YAChB,OAAO,EAAE,CAAC;YACV,MAAM,CACJ,IAAI,wBAAY,CACd,mBAAmB,OAAO,wEAAwE,iBAAiB,yBAAyB,CAC7I,CACF,CAAC;QACJ,CAAC;QAED,SAAS,MAAM,CAAC,IAAY;YAC1B,MAAM,IAAI,IAAI,GAAG,IAAI,CAAC;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YAChE,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,SAAS,OAAO;YACd,IAAI,SAAS;gBAAE,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,kBAAM,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts
index b9973d6..098f7bd 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts
@@ -28,39 +28,27 @@
     headless?: boolean;
     /**
      * Path to a user data directory.
-     * {@link https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/user_data_dir.md | see the Chromium docs}
+     * {@link https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md | see the Chromium docs}
      * for more info.
      */
     userDataDir?: string;
     /**
      * Whether to auto-open a DevTools panel for each tab. If this is set to
-     * `true`, then `headless` will be forced to `false`.
+     * `true`, then `headless` will be set to `false` automatically.
      * @defaultValue `false`
      */
     devtools?: boolean;
     /**
-     *
-     */
-    debuggingPort?: number;
-    /**
      * Additional command line arguments to pass to the browser instance.
      */
     args?: string[];
 }
 /**
- * @public
- */
-export declare type ChromeReleaseChannel = 'chrome' | 'chrome-beta' | 'chrome-canary' | 'chrome-dev';
-/**
  * Generic launch options that can be passed when launching any browser.
  * @public
  */
 export interface LaunchOptions {
     /**
-     * Chrome Release Channel
-     */
-    channel?: ChromeReleaseChannel;
-    /**
      * Path to a browser executable to use instead of the bundled Chromium. Note
      * that Puppeteer is only guaranteed to work with the bundled Chromium, so use
      * this setting at your own risk.
@@ -116,7 +104,7 @@
      */
     product?: Product;
     /**
-     * {@link https://searchfox.org/mozilla-release/source/modules/libpref/init/all.js | Additional preferences } that can be passed when launching with Firefox.
+     * {@link https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference | Additional preferences } that can be passed when launching with Firefox.
      */
     extraPrefsFirefox?: Record<string, unknown>;
     /**
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map
index 0911e26..cf00fb9c 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"LaunchOptions.d.ts","sourceRoot":"","sources":["../../../../src/node/LaunchOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AACD;;GAEG;AACH,oBAAY,oBAAoB,GAC5B,QAAQ,GACR,aAAa,GACb,eAAe,GACf,YAAY,CAAC;AAEjB;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,oBAAY,0BAA0B,GAAG,4BAA4B,GACnE,aAAa,GACb,qBAAqB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"LaunchOptions.d.ts","sourceRoot":"","sources":["../../../../src/node/LaunchOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,oBAAY,0BAA0B,GAAG,4BAA4B,GACnE,aAAa,GACb,qBAAqB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts
index 244711e..bd7ae92 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts
@@ -6,7 +6,7 @@
  */
 export interface ProductLauncher {
     launch(object: PuppeteerNodeLaunchOptions): any;
-    executablePath: (string?: any) => string;
+    executablePath: () => string;
     defaultArgs(object: BrowserLaunchArgumentOptions): any;
     product: Product;
 }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts.map
index 9b6bc11..66e0afb 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Launcher.d.ts","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"AA6BA,OAAO,EACL,4BAA4B,EAE5B,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,MAAM,EAAE,0BAA0B,OAAE;IAC3C,cAAc,EAAE,CAAC,MAAM,CAAC,KAAA,KAAK,MAAM,CAAC;IACpC,WAAW,CAAC,MAAM,EAAE,4BAA4B,OAAE;IAClD,OAAO,EAAE,OAAO,CAAC;CAClB;AAmxBD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CA+BjB"}
\ No newline at end of file
+{"version":3,"file":"Launcher.d.ts","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,MAAM,EAAE,0BAA0B,OAAE;IAC3C,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,WAAW,CAAC,MAAM,EAAE,4BAA4B,OAAE;IAClD,OAAO,EAAE,OAAO,CAAC;CAClB;AAslBD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CA+BjB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js
index c44439f..4efa1a6 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js
@@ -37,15 +37,12 @@
 const os = __importStar(require("os"));
 const path = __importStar(require("path"));
 const fs = __importStar(require("fs"));
-const assert_js_1 = require("../common/assert.js");
 const BrowserFetcher_js_1 = require("./BrowserFetcher.js");
 const Browser_js_1 = require("../common/Browser.js");
 const BrowserRunner_js_1 = require("./BrowserRunner.js");
 const util_1 = require("util");
-const copyFileAsync = (0, util_1.promisify)(fs.copyFile);
-const mkdtempAsync = (0, util_1.promisify)(fs.mkdtemp);
-const writeFileAsync = (0, util_1.promisify)(fs.writeFile);
-const tmpDir = () => process.env.PUPPETEER_TMP_DIR || os.tmpdir();
+const mkdtempAsync = util_1.promisify(fs.mkdtemp);
+const writeFileAsync = util_1.promisify(fs.writeFile);
 /**
  * @internal
  */
@@ -56,7 +53,8 @@
         this._isPuppeteerCore = isPuppeteerCore;
     }
     async launch(options = {}) {
-        const { ignoreDefaultArgs = false, args = [], dumpio = false, channel = null, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, waitForInitialPage = true, debuggingPort = null, } = options;
+        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, waitForInitialPage = true, } = options;
+        const profilePath = path.join(os.tmpdir(), 'puppeteer_dev_chrome_profile-');
         const chromeArguments = [];
         if (!ignoreDefaultArgs)
             chromeArguments.push(...this.defaultArgs(options));
@@ -64,40 +62,15 @@
             chromeArguments.push(...this.defaultArgs(options).filter((arg) => !ignoreDefaultArgs.includes(arg)));
         else
             chromeArguments.push(...args);
-        if (!chromeArguments.some((argument) => argument.startsWith('--remote-debugging-'))) {
-            if (pipe) {
-                (0, assert_js_1.assert)(debuggingPort === null, 'Browser should be launched with either pipe or debugging port - not both.');
-                chromeArguments.push('--remote-debugging-pipe');
-            }
-            else {
-                chromeArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
-            }
-        }
-        let userDataDir;
-        let isTempUserDataDir = true;
-        // Check for the user data dir argument, which will always be set even
-        // with a custom directory specified via the userDataDir option.
-        const userDataDirIndex = chromeArguments.findIndex((arg) => {
-            return arg.startsWith('--user-data-dir');
-        });
-        if (userDataDirIndex !== -1) {
-            userDataDir = chromeArguments[userDataDirIndex].split('=')[1];
-            if (!fs.existsSync(userDataDir)) {
-                throw new Error(`Chrome user data dir not found at '${userDataDir}'`);
-            }
-            isTempUserDataDir = false;
-        }
-        else {
-            userDataDir = await mkdtempAsync(path.join(tmpDir(), 'puppeteer_dev_chrome_profile-'));
-            chromeArguments.push(`--user-data-dir=${userDataDir}`);
+        let temporaryUserDataDir = null;
+        if (!chromeArguments.some((argument) => argument.startsWith('--remote-debugging-')))
+            chromeArguments.push(pipe ? '--remote-debugging-pipe' : '--remote-debugging-port=0');
+        if (!chromeArguments.some((arg) => arg.startsWith('--user-data-dir'))) {
+            temporaryUserDataDir = await mkdtempAsync(profilePath);
+            chromeArguments.push(`--user-data-dir=${temporaryUserDataDir}`);
         }
         let chromeExecutable = executablePath;
-        if (channel) {
-            // executablePath is detected by channel, so it should not be specified by user.
-            (0, assert_js_1.assert)(!executablePath, '`executablePath` must not be specified when `channel` is given.');
-            chromeExecutable = executablePathForChannel(channel);
-        }
-        else if (!executablePath) {
+        if (!executablePath) {
             // Use Intel x86 builds on Apple M1 until native macOS arm64
             // Chromium builds are available.
             if (os.platform() !== 'darwin' && os.arch() === 'arm64') {
@@ -111,7 +84,7 @@
             }
         }
         const usePipe = chromeArguments.includes('--remote-debugging-pipe');
-        const runner = new BrowserRunner_js_1.BrowserRunner(this.product, chromeExecutable, chromeArguments, userDataDir, isTempUserDataDir);
+        const runner = new BrowserRunner_js_1.BrowserRunner(this.product, chromeExecutable, chromeArguments, temporaryUserDataDir);
         runner.start({
             handleSIGHUP,
             handleSIGTERM,
@@ -120,7 +93,6 @@
             env,
             pipe: usePipe,
         });
-        let browser;
         try {
             const connection = await runner.setupConnection({
                 usePipe,
@@ -128,22 +100,15 @@
                 slowMo,
                 preferredRevision: this._preferredRevision,
             });
-            browser = await Browser_js_1.Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            const browser = await Browser_js_1.Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            if (waitForInitialPage)
+                await browser.waitForTarget((t) => t.type() === 'page');
+            return browser;
         }
         catch (error) {
             runner.kill();
             throw error;
         }
-        if (waitForInitialPage) {
-            try {
-                await browser.waitForTarget((t) => t.type() === 'page', { timeout });
-            }
-            catch (error) {
-                await browser.close();
-                throw error;
-            }
-        }
-        return browser;
     }
     defaultArgs(options = {}) {
         const chromeArguments = [
@@ -173,7 +138,6 @@
             // TODO(sadym): remove '--enable-blink-features=IdleDetection'
             // once IdleDetection is turned on by default.
             '--enable-blink-features=IdleDetection',
-            '--export-tagged-pdf',
         ];
         const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
         if (userDataDir)
@@ -188,13 +152,8 @@
         chromeArguments.push(...args);
         return chromeArguments;
     }
-    executablePath(channel) {
-        if (channel) {
-            return executablePathForChannel(channel);
-        }
-        else {
-            return resolveExecutablePath(this).executablePath;
-        }
+    executablePath() {
+        return resolveExecutablePath(this).executablePath;
     }
     get product() {
         return 'chrome';
@@ -210,7 +169,7 @@
         this._isPuppeteerCore = isPuppeteerCore;
     }
     async launch(options = {}) {
-        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, extraPrefsFirefox = {}, waitForInitialPage = true, debuggingPort = null, } = options;
+        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, extraPrefsFirefox = {}, waitForInitialPage = true, } = options;
         const firefoxArguments = [];
         if (!ignoreDefaultArgs)
             firefoxArguments.push(...this.defaultArgs(options));
@@ -218,34 +177,14 @@
             firefoxArguments.push(...this.defaultArgs(options).filter((arg) => !ignoreDefaultArgs.includes(arg)));
         else
             firefoxArguments.push(...args);
-        if (!firefoxArguments.some((argument) => argument.startsWith('--remote-debugging-'))) {
-            if (pipe) {
-                (0, assert_js_1.assert)(debuggingPort === null, 'Browser should be launched with either pipe or debugging port - not both.');
-            }
-            firefoxArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
-        }
-        let userDataDir = null;
-        let isTempUserDataDir = true;
-        // Check for the profile argument, which will always be set even
-        // with a custom directory specified via the userDataDir option.
-        const profileArgIndex = firefoxArguments.findIndex((arg) => {
-            return ['-profile', '--profile'].includes(arg);
-        });
-        if (profileArgIndex !== -1) {
-            userDataDir = firefoxArguments[profileArgIndex + 1];
-            if (!fs.existsSync(userDataDir)) {
-                throw new Error(`Firefox profile not found at '${userDataDir}'`);
-            }
-            // When using a custom Firefox profile it needs to be populated
-            // with required preferences.
-            isTempUserDataDir = false;
-            const prefs = this.defaultPreferences(extraPrefsFirefox);
-            this.writePreferences(prefs, userDataDir);
-        }
-        else {
-            userDataDir = await this._createProfile(extraPrefsFirefox);
+        if (!firefoxArguments.some((argument) => argument.startsWith('--remote-debugging-')))
+            firefoxArguments.push('--remote-debugging-port=0');
+        let temporaryUserDataDir = null;
+        if (!firefoxArguments.includes('-profile') &&
+            !firefoxArguments.includes('--profile')) {
+            temporaryUserDataDir = await this._createProfile(extraPrefsFirefox);
             firefoxArguments.push('--profile');
-            firefoxArguments.push(userDataDir);
+            firefoxArguments.push(temporaryUserDataDir);
         }
         await this._updateRevision();
         let firefoxExecutable = executablePath;
@@ -255,7 +194,7 @@
                 throw new Error(missingText);
             firefoxExecutable = executablePath;
         }
-        const runner = new BrowserRunner_js_1.BrowserRunner(this.product, firefoxExecutable, firefoxArguments, userDataDir, isTempUserDataDir);
+        const runner = new BrowserRunner_js_1.BrowserRunner(this.product, firefoxExecutable, firefoxArguments, temporaryUserDataDir);
         runner.start({
             handleSIGHUP,
             handleSIGTERM,
@@ -264,7 +203,6 @@
             env,
             pipe,
         });
-        let browser;
         try {
             const connection = await runner.setupConnection({
                 usePipe: pipe,
@@ -272,22 +210,15 @@
                 slowMo,
                 preferredRevision: this._preferredRevision,
             });
-            browser = await Browser_js_1.Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            const browser = await Browser_js_1.Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            if (waitForInitialPage)
+                await browser.waitForTarget((t) => t.type() === 'page');
+            return browser;
         }
         catch (error) {
             runner.kill();
             throw error;
         }
-        if (waitForInitialPage) {
-            try {
-                await browser.waitForTarget((t) => t.type() === 'page', { timeout });
-            }
-            catch (error) {
-                await browser.close();
-                throw error;
-            }
-        }
-        return browser;
     }
     executablePath() {
         return resolveExecutablePath(this).executablePath;
@@ -307,13 +238,11 @@
         return 'firefox';
     }
     defaultArgs(options = {}) {
-        const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
-        const firefoxArguments = ['--no-remote'];
-        if (os.platform() === 'darwin')
-            firefoxArguments.push('--foreground');
-        else if (os.platform().startsWith('win')) {
+        const firefoxArguments = ['--no-remote', '--foreground'];
+        if (os.platform().startsWith('win')) {
             firefoxArguments.push('--wait-for-browser');
         }
+        const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
         if (userDataDir) {
             firefoxArguments.push('--profile');
             firefoxArguments.push(userDataDir);
@@ -327,9 +256,12 @@
         firefoxArguments.push(...args);
         return firefoxArguments;
     }
-    defaultPreferences(extraPrefs) {
+    async _createProfile(extraPrefs) {
+        const profilePath = await mkdtempAsync(path.join(os.tmpdir(), 'puppeteer_dev_firefox_profile-'));
+        const prefsJS = [];
+        const userJS = [];
         const server = 'dummy.test';
-        const defaultPrefs = {
+        const defaultPreferences = {
             // Make sure Shield doesn't hit the network.
             'app.normandy.api_url': '',
             // Disable Firefox old build background check
@@ -425,10 +357,8 @@
             'extensions.update.notifyUser': false,
             // Make sure opening about:addons will not hit the network
             'extensions.webservice.discoverURL': `http://${server}/dummy/discoveryURL`,
-            // Temporarily force disable BFCache in parent (https://bit.ly/bug-1732263)
-            'fission.bfcacheInParent': false,
-            // Force all web content to use a single content process
-            'fission.webContentIsolationStrategy': 0,
+            // Force disable Fission until the Remote Agent is compatible
+            'fission.autostart': false,
             // Allow the application to have focus even it runs in the background
             'focusmanager.testmode': true,
             // Disable useragent updates
@@ -461,8 +391,8 @@
             // Disable Flash.
             'plugin.state.flash': 0,
             'privacy.trackingprotection.enabled': false,
-            // Can be removed once Firefox 89 is no longer supported
-            // https://bugzilla.mozilla.org/show_bug.cgi?id=1710839
+            // Enable Remote Agent
+            // https://bugzilla.mozilla.org/show_bug.cgi?id=1544393
             'remote.enabled': true,
             // Don't do network connections for mitm priming
             'security.certerrors.mitm.priming.enabled': false,
@@ -488,102 +418,13 @@
             // Prevent starting into safe mode after application crashes
             'toolkit.startup.max_resumed_crashes': -1,
         };
-        return Object.assign(defaultPrefs, extraPrefs);
+        Object.assign(defaultPreferences, extraPrefs);
+        for (const [key, value] of Object.entries(defaultPreferences))
+            userJS.push(`user_pref(${JSON.stringify(key)}, ${JSON.stringify(value)});`);
+        await writeFileAsync(path.join(profilePath, 'user.js'), userJS.join('\n'));
+        await writeFileAsync(path.join(profilePath, 'prefs.js'), prefsJS.join('\n'));
+        return profilePath;
     }
-    /**
-     * Populates the user.js file with custom preferences as needed to allow
-     * Firefox's CDP support to properly function. These preferences will be
-     * automatically copied over to prefs.js during startup of Firefox. To be
-     * able to restore the original values of preferences a backup of prefs.js
-     * will be created.
-     *
-     * @param prefs List of preferences to add.
-     * @param profilePath Firefox profile to write the preferences to.
-     */
-    async writePreferences(prefs, profilePath) {
-        const lines = Object.entries(prefs).map(([key, value]) => {
-            return `user_pref(${JSON.stringify(key)}, ${JSON.stringify(value)});`;
-        });
-        await writeFileAsync(path.join(profilePath, 'user.js'), lines.join('\n'));
-        // Create a backup of the preferences file if it already exitsts.
-        const prefsPath = path.join(profilePath, 'prefs.js');
-        if (fs.existsSync(prefsPath)) {
-            const prefsBackupPath = path.join(profilePath, 'prefs.js.puppeteer');
-            await copyFileAsync(prefsPath, prefsBackupPath);
-        }
-    }
-    async _createProfile(extraPrefs) {
-        const temporaryProfilePath = await mkdtempAsync(path.join(tmpDir(), 'puppeteer_dev_firefox_profile-'));
-        const prefs = this.defaultPreferences(extraPrefs);
-        await this.writePreferences(prefs, temporaryProfilePath);
-        return temporaryProfilePath;
-    }
-}
-function executablePathForChannel(channel) {
-    const platform = os.platform();
-    let chromePath;
-    switch (platform) {
-        case 'win32':
-            switch (channel) {
-                case 'chrome':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-beta':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Beta\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-canary':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome SxS\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-dev':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Dev\\Application\\chrome.exe`;
-                    break;
-            }
-            break;
-        case 'darwin':
-            switch (channel) {
-                case 'chrome':
-                    chromePath =
-                        '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome';
-                    break;
-                case 'chrome-beta':
-                    chromePath =
-                        '/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta';
-                    break;
-                case 'chrome-canary':
-                    chromePath =
-                        '/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary';
-                    break;
-                case 'chrome-dev':
-                    chromePath =
-                        '/Applications/Google Chrome Dev.app/Contents/MacOS/Google Chrome Dev';
-                    break;
-            }
-            break;
-        case 'linux':
-            switch (channel) {
-                case 'chrome':
-                    chromePath = '/opt/google/chrome/chrome';
-                    break;
-                case 'chrome-beta':
-                    chromePath = '/opt/google/chrome-beta/chrome';
-                    break;
-                case 'chrome-dev':
-                    chromePath = '/opt/google/chrome-unstable/chrome';
-                    break;
-            }
-            break;
-    }
-    if (!chromePath) {
-        throw new Error(`Unable to detect browser executable path for '${channel}' on ${platform}.`);
-    }
-    // Check if Chrome exists and is accessible.
-    try {
-        fs.accessSync(chromePath);
-    }
-    catch (error) {
-        throw new Error(`Could not find Google Chrome executable for channel '${channel}' at '${chromePath}'.`);
-    }
-    return chromePath;
 }
 function resolveExecutablePath(launcher) {
     let downloadPath;
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js.map
index be6b422..b732323 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Launcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"Launcher.js","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Launcher.js","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map
index b42000a..d985a28 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"NodeWebSocketTransport.d.ts","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,qBAAa,sBAAuB,YAAW,mBAAmB;IAChE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoB3D,OAAO,CAAC,GAAG,CAAgB;IAC3B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;gBAET,EAAE,EAAE,aAAa;IAc7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;CAGd"}
\ No newline at end of file
+{"version":3,"file":"NodeWebSocketTransport.d.ts","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,qBAAa,sBAAuB,YAAW,mBAAmB;IAChE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAc3D,OAAO,CAAC,GAAG,CAAgB;IAC3B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;gBAET,EAAE,EAAE,aAAa;IAc7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;CAGd"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js
index 8c3b142..b3e1bd0 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js
@@ -22,16 +22,10 @@
         this.onclose = null;
     }
     static create(url) {
-        // eslint-disable-next-line @typescript-eslint/no-var-requires
-        const pkg = require('../../../../package.json');
         return new Promise((resolve, reject) => {
             const ws = new ws_1.default(url, [], {
-                followRedirects: true,
                 perMessageDeflate: false,
-                maxPayload: 256 * 1024 * 1024,
-                headers: {
-                    'User-Agent': `Puppeteer ${pkg.version}`,
-                },
+                maxPayload: 256 * 1024 * 1024, // 256Mb
             });
             ws.addEventListener('open', () => resolve(new NodeWebSocketTransport(ws)));
             ws.addEventListener('error', reject);
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map
index 40fb381..bf7b379 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map
@@ -1 +1 @@
-{"version":3,"file":"NodeWebSocketTransport.js","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":";;;;;;AAgBA,4CAA+B;AAE/B,MAAa,sBAAsB;IAyBjC,YAAY,EAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACtC,IAAI,IAAI,CAAC,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,mEAAmE;QACnE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IApCD,MAAM,CAAC,MAAM,CAAC,GAAW;QACvB,8DAA8D;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,YAAa,CAAC,GAAG,EAAE,EAAE,EAAE;gBACpC,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,KAAK;gBACxB,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;gBAC7B,OAAO,EAAE;oBACP,YAAY,EAAE,aAAa,GAAG,CAAC,OAAO,EAAE;iBACzC;aACF,CAAC,CAAC;YAEH,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAC/B,OAAO,CAAC,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC,CACxC,CAAC;YACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAoBD,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;CACF;AA9CD,wDA8CC"}
\ No newline at end of file
+{"version":3,"file":"NodeWebSocketTransport.js","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":";;;;;;AAgBA,4CAA+B;AAE/B,MAAa,sBAAsB;IAmBjC,YAAY,EAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACtC,IAAI,IAAI,CAAC,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,mEAAmE;QACnE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IA9BD,MAAM,CAAC,MAAM,CAAC,GAAW;QACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,YAAa,CAAC,GAAG,EAAE,EAAE,EAAE;gBACpC,iBAAiB,EAAE,KAAK;gBACxB,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ;aACxC,CAAC,CAAC;YAEH,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAC/B,OAAO,CAAC,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC,CACxC,CAAC;YACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAoBD,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;CACF;AAxCD,wDAwCC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts
index f434470..9045d6b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts
@@ -124,7 +124,7 @@
      * The browser binary might not be there if the download was skipped with
      * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
      */
-    executablePath(channel?: string): string;
+    executablePath(): string;
     /**
      * @internal
      */
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts.map
index 472354a..30dafb9 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Puppeteer.d.ts","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,aAAa,EACb,4BAA4B,EAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAC,CAAU;IAChC;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;gBAED,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,uBAAuB;IAU7B;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlD;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAGD,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,EAG7B;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,OAAO,GAAE,aAAa,GACpB,4BAA4B,GAC5B,qBAAqB,GAAG;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,GACP,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAIxC;;OAEG;IACH,IAAI,SAAS,IAAI,eAAe,CAuB/B;IAED;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;OAIG;IACH,WAAW,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,EAAE;IAIjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc;CAGrE"}
\ No newline at end of file
+{"version":3,"file":"Puppeteer.d.ts","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,aAAa,EACb,4BAA4B,EAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAC,CAAU;IAChC;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;gBAED,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,uBAAuB;IAU7B;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlD;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAGD,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,EAG7B;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,OAAO,GAAE,aAAa,GACpB,4BAA4B,GAC5B,qBAAqB,GAAG;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,GACP,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;;;;OASG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,IAAI,SAAS,IAAI,eAAe,CAuB/B;IAED;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;OAIG;IACH,WAAW,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,EAAE;IAIjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc;CAGrE"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js
index 6d9552f..fad2709 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js
@@ -134,8 +134,8 @@
      * The browser binary might not be there if the download was skipped with
      * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
      */
-    executablePath(channel) {
-        return this._launcher.executablePath(channel);
+    executablePath() {
+        return this._launcher.executablePath();
     }
     /**
      * @internal
@@ -153,7 +153,7 @@
                     this._preferredRevision = revisions_js_1.PUPPETEER_REVISIONS.chromium;
             }
             this._changedProduct = false;
-            this._lazyLauncher = (0, Launcher_js_1.default)(this._projectRoot, this._preferredRevision, this._isPuppeteerCore, this._productName);
+            this._lazyLauncher = Launcher_js_1.default(this._projectRoot, this._preferredRevision, this._isPuppeteerCore, this._productName);
         }
         return this._lazyLauncher;
     }
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js.map
index a5f3c75..729f597 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/Puppeteer.js.map
@@ -1 +1 @@
-{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;AAEH,yDAIgC;AAChC,2DAA4E;AAO5E,gEAA0D;AAC1D,kDAAsD;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAa,aAAc,SAAQ,wBAAS;IAS1C;;OAEG;IACH,YACE,QAI2B;QAE3B,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,GACtE,QAAQ,CAAC;QACX,KAAK,CAAC,cAAc,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAAuB;QAC7B,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACzD,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,gFAAgF;IAChF,IAAI,YAAY,CAAC,IAAa;QAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI;YAAE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,UAKM,EAAE;QAER,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACzD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAgB;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,IACE,CAAC,IAAI,CAAC,aAAa;YACnB,IAAI,CAAC,aAAa,CAAC,OAAO,KAAK,IAAI,CAAC,YAAY;YAChD,IAAI,CAAC,eAAe,EACpB;YACA,QAAQ,IAAI,CAAC,YAAY,EAAE;gBACzB,KAAK,SAAS;oBACZ,IAAI,CAAC,kBAAkB,GAAG,kCAAmB,CAAC,OAAO,CAAC;oBACtD,MAAM;gBACR,KAAK,QAAQ,CAAC;gBACd;oBACE,IAAI,CAAC,kBAAkB,GAAG,kCAAmB,CAAC,QAAQ,CAAC;aAC1D;YACD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,aAAa,GAAG,IAAA,qBAAQ,EAC3B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,YAAY,CAClB,CAAC;SACH;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,UAAwC,EAAE;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,OAA8B;QACjD,OAAO,IAAI,kCAAc,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;CACF;AAjKD,sCAiKC"}
\ No newline at end of file
+{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;AAEH,yDAIgC;AAChC,2DAA4E;AAO5E,gEAA0D;AAC1D,kDAAsD;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAa,aAAc,SAAQ,wBAAS;IAS1C;;OAEG;IACH,YACE,QAI2B;QAE3B,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,GACtE,QAAQ,CAAC;QACX,KAAK,CAAC,cAAc,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAAuB;QAC7B,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACzD,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,gFAAgF;IAChF,IAAI,YAAY,CAAC,IAAa;QAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI;YAAE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,UAKM,EAAE;QAER,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACzD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;OASG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,IACE,CAAC,IAAI,CAAC,aAAa;YACnB,IAAI,CAAC,aAAa,CAAC,OAAO,KAAK,IAAI,CAAC,YAAY;YAChD,IAAI,CAAC,eAAe,EACpB;YACA,QAAQ,IAAI,CAAC,YAAY,EAAE;gBACzB,KAAK,SAAS;oBACZ,IAAI,CAAC,kBAAkB,GAAG,kCAAmB,CAAC,OAAO,CAAC;oBACtD,MAAM;gBACR,KAAK,QAAQ,CAAC;gBACd;oBACE,IAAI,CAAC,kBAAkB,GAAG,kCAAmB,CAAC,QAAQ,CAAC;aAC1D;YACD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,aAAa,GAAG,qBAAQ,CAC3B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,YAAY,CAClB,CAAC;SACH;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,UAAwC,EAAE;QACpD,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,OAA8B;QACjD,OAAO,IAAI,kCAAc,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;CACF;AAjKD,sCAiKC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.d.ts.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.d.ts.map
index ba35168..cc5544b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.d.ts.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAsKrD;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAMrD"}
\ No newline at end of file
+{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAcH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAsJrD;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAMrD"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js
index db23620..845444b 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js
@@ -22,11 +22,8 @@
 const os_1 = __importDefault(require("os"));
 const https_1 = __importDefault(require("https"));
 const progress_1 = __importDefault(require("progress"));
-const url_1 = __importDefault(require("url"));
 const node_js_1 = __importDefault(require("../node.js"));
 const revisions_js_1 = require("../revisions.js");
-const https_proxy_agent_1 = __importDefault(require("https-proxy-agent"));
-const proxy_from_env_1 = require("proxy-from-env");
 const supportedProducts = {
     chrome: 'Chromium',
     firefox: 'Firefox Nightly',
@@ -125,23 +122,12 @@
         return `${Math.round(mb * 10) / 10} Mb`;
     }
     function getFirefoxNightlyVersion() {
-        const firefoxVersionsUrl = 'https://product-details.mozilla.org/1.0/firefox_versions.json';
-        const proxyURL = (0, proxy_from_env_1.getProxyForUrl)(firefoxVersionsUrl);
-        const requestOptions = {};
-        if (proxyURL) {
-            const parsedProxyURL = url_1.default.parse(proxyURL);
-            const proxyOptions = {
-                ...parsedProxyURL,
-                secureProxy: parsedProxyURL.protocol === 'https:',
-            };
-            requestOptions.agent = (0, https_proxy_agent_1.default)(proxyOptions);
-            requestOptions.rejectUnauthorized = false;
-        }
+        const firefoxVersions = 'https://product-details.mozilla.org/1.0/firefox_versions.json';
         const promise = new Promise((resolve, reject) => {
             let data = '';
-            logPolitely(`Requesting latest Firefox Nightly version from ${firefoxVersionsUrl}`);
+            logPolitely(`Requesting latest Firefox Nightly version from ${firefoxVersions}`);
             https_1.default
-                .get(firefoxVersionsUrl, requestOptions, (r) => {
+                .get(firefoxVersions, (r) => {
                 if (r.statusCode >= 400)
                     return reject(new Error(`Got status code ${r.statusCode}`));
                 r.on('data', (chunk) => {
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js.map
index 03e696e..827664f 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/node/install.js.map
@@ -1 +1 @@
-{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/revisions.js b/node_modules/puppeteer/lib/cjs/puppeteer/revisions.js
index 80e325b..3ec23d9 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/revisions.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/revisions.js
@@ -17,7 +17,7 @@
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.PUPPETEER_REVISIONS = void 0;
 exports.PUPPETEER_REVISIONS = {
-    chromium: '938248',
+    chromium: '884014',
     firefox: 'latest',
 };
 //# sourceMappingURL=revisions.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/web.js b/node_modules/puppeteer/lib/cjs/puppeteer/web.js
index 49335d5..7c54534 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/web.js
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/web.js
@@ -20,5 +20,5 @@
 if (environment_js_1.isNode) {
     throw new Error('Trying to run Puppeteer-Web in a Node environment');
 }
-exports.default = (0, initialize_web_js_1.initializePuppeteerWeb)('puppeteer');
+exports.default = initialize_web_js_1.initializePuppeteerWeb('puppeteer');
 //# sourceMappingURL=web.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/cjs/puppeteer/web.js.map b/node_modules/puppeteer/lib/cjs/puppeteer/web.js.map
index fae4039..62ab914 100644
--- a/node_modules/puppeteer/lib/cjs/puppeteer/web.js.map
+++ b/node_modules/puppeteer/lib/cjs/puppeteer/web.js.map
@@ -1 +1 @@
-{"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,2DAA6D;AAC7D,qDAA0C;AAE1C,IAAI,uBAAM,EAAE;IACV,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;CACtE;AAED,kBAAe,IAAA,0CAAsB,EAAC,WAAW,CAAC,CAAC"}
\ No newline at end of file
+{"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,2DAA6D;AAC7D,qDAA0C;AAE1C,IAAI,uBAAM,EAAE;IACV,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;CACtE;AAED,kBAAe,0CAAsB,CAAC,WAAW,CAAC,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map
index 5b1f72a..7ad7ca2 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"AriaQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAoHzD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,oBAKzB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"AriaQueryHandler.d.ts","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAkHzD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,oBAKzB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js
index 10017da..90da62c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js
@@ -22,20 +22,20 @@
     const filteredNodes = nodes.filter((node) => node.role.value !== 'StaticText');
     return filteredNodes;
 }
-const normalizeValue = (value) => value.replace(/ +/g, ' ').trim();
-const knownAttributes = new Set(['name', 'role']);
-const attributeRegexp = /\[\s*(?<attribute>\w+)\s*=\s*(?<quote>"|')(?<value>\\.|.*?(?=\k<quote>))\k<quote>\s*\]/g;
 function parseAriaSelector(selector) {
+    const normalize = (value) => value.replace(/ +/g, ' ').trim();
+    const knownAttributes = new Set(['name', 'role']);
     const queryOptions = {};
-    const defaultName = selector.replace(attributeRegexp, (_, attribute, quote, value) => {
+    const attributeRegexp = /\[\s*(?<attribute>\w+)\s*=\s*"(?<value>\\.|[^"\\]*)"\s*\]/g;
+    const defaultName = selector.replace(attributeRegexp, (_, attribute, value) => {
         attribute = attribute.trim();
         if (!knownAttributes.has(attribute))
             throw new Error(`Unknown aria attribute "${attribute}" in selector`);
-        queryOptions[attribute] = normalizeValue(value);
+        queryOptions[attribute] = normalize(value);
         return '';
     });
     if (defaultName && !queryOptions.name)
-        queryOptions.name = normalizeValue(defaultName);
+        queryOptions.name = normalize(defaultName);
     return queryOptions;
 }
 const queryOne = async (element, selector) => {
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js.map
index 8cef52e..53ca65c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/AriaQueryHandler.js.map
@@ -1 +1 @@
-{"version":3,"file":"AriaQueryHandler.js","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"AriaQueryHandler.js","sourceRoot":"","sources":["../../../../src/common/AriaQueryHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,KAAK,UAAU,WAAW,CACxB,MAAkB,EAClB,OAAsB,EACtB,cAAuB,EACvB,IAAa;IAEb,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QAC/D,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;QACxC,cAAc;QACd,IAAI;KACL,CAAC,CAAC;IACH,MAAM,aAAa,GAAoC,KAAK,CAAC,MAAM,CACjE,CAAC,IAAmC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY,CAC1E,CAAC;IACF,OAAO,aAAa,CAAC;AACvB,CAAC;AAaD,SAAS,iBAAiB,CAAC,QAAgB;IACzC,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,MAAM,YAAY,GAAoB,EAAE,CAAC;IACzC,MAAM,eAAe,GACnB,4DAA4D,CAAC;IAC/D,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAClC,eAAe,EACf,CAAC,CAAC,EAAE,SAAiB,EAAE,KAAa,EAAE,EAAE;QACtC,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,eAAe,CAAC,CAAC;QACvE,YAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC3C,OAAO,EAAE,CAAC;IACZ,CAAC,CACF,CAAC;IACF,IAAI,WAAW,IAAI,CAAC,YAAY,CAAC,IAAI;QACnC,YAAY,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IAC7C,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,QAAQ,GAAG,KAAK,EACpB,OAAsB,EACtB,QAAgB,EACe,EAAE;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC1C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnE,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;QAClB,OAAO,IAAI,CAAC;KACb;IACD,OAAO,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,KAAK,EACnB,QAAkB,EAClB,QAAgB,EAChB,OAA+B,EACE,EAAE;IACnC,MAAM,OAAO,GAAgB;QAC3B,IAAI,EAAE,mBAAmB;QACzB,YAAY,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;YACvC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACnD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;IACF,OAAO,QAAQ,CAAC,qBAAqB,CACnC,CAAC,CAAU,EAAE,QAAgB,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EACxE,QAAQ,EACR,OAAO,EACP,OAAO,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,KAAK,EACpB,OAAsB,EACtB,QAAgB,EACU,EAAE;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC1C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC,GAAG,CAChB,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,EACzB,OAAsB,EACtB,QAAgB,EACG,EAAE;IACrB,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CACpC,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,QAAQ,EACzB,GAAG,cAAc,CAClB,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAyB;IAC/C,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,aAAa;CACd,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts
index 88961034..01bc449 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts
@@ -22,22 +22,6 @@
 import { ChildProcess } from 'child_process';
 import { Viewport } from './PuppeteerViewport.js';
 /**
- * BrowserContext options.
- *
- * @public
- */
-export interface BrowserContextOptions {
-    /**
-     * Proxy server with optional port to use for all requests.
-     * Username and password can be set in `Page.authenticate`.
-     */
-    proxyServer?: string;
-    /**
-     * Bypass the proxy for the given semi-colon-separated list of hosts.
-     */
-    proxyBypassList?: string[];
-}
-/**
  * @internal
  */
 export declare type BrowserCloseCallback = () => Promise<void> | void;
@@ -48,7 +32,7 @@
 /**
  * @public
  */
-export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'persistent-storage' | 'idle-detection' | 'midi-sysex';
+export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'idle-detection' | 'midi-sysex';
 /**
  * @public
  */
@@ -162,8 +146,6 @@
     private _targetFilterCallback;
     private _defaultContext;
     private _contexts;
-    private _screenshotTaskQueue;
-    private _ignoredTargets;
     /**
      * @internal
      * Used in Target.ts directly so cannot be marked private.
@@ -195,7 +177,7 @@
      * })();
      * ```
      */
-    createIncognitoBrowserContext(options?: BrowserContextOptions): Promise<BrowserContext>;
+    createIncognitoBrowserContext(): Promise<BrowserContext>;
     /**
      * Returns an array of all open browser contexts. In a newly created browser, this will
      * return a single instance of {@link BrowserContext}.
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts.map
index 7f6c616..e99fa5a 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Browser.d.ts","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Browser.d.ts","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js
index 547bc75..4ec5e00 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js
@@ -18,7 +18,6 @@
 import { Target } from './Target.js';
 import { EventEmitter } from './EventEmitter.js';
 import { ConnectionEmittedEvents } from './Connection.js';
-import { TaskQueue } from './TaskQueue.js';
 const WEB_PERMISSION_TO_PROTOCOL_PERMISSION = new Map([
     ['geolocation', 'geolocation'],
     ['midi', 'midi'],
@@ -36,7 +35,6 @@
     ['clipboard-read', 'clipboardReadWrite'],
     ['clipboard-write', 'clipboardReadWrite'],
     ['payment-handler', 'paymentHandler'],
-    ['persistent-storage', 'durableStorage'],
     ['idle-detection', 'idleDetection'],
     // chrome-specific permissions we have.
     ['midi-sysex', 'midiSysex'],
@@ -92,11 +90,9 @@
      */
     constructor(connection, contextIds, ignoreHTTPSErrors, defaultViewport, process, closeCallback, targetFilterCallback) {
         super();
-        this._ignoredTargets = new Set();
         this._ignoreHTTPSErrors = ignoreHTTPSErrors;
         this._defaultViewport = defaultViewport;
         this._process = process;
-        this._screenshotTaskQueue = new TaskQueue();
         this._connection = connection;
         this._closeCallback = closeCallback || function () { };
         this._targetFilterCallback = targetFilterCallback || (() => true);
@@ -142,12 +138,8 @@
      * })();
      * ```
      */
-    async createIncognitoBrowserContext(options = {}) {
-        const { proxyServer = '', proxyBypassList = [] } = options;
-        const { browserContextId } = await this._connection.send('Target.createBrowserContext', {
-            proxyServer,
-            proxyBypassList: proxyBypassList && proxyBypassList.join(','),
-        });
+    async createIncognitoBrowserContext() {
+        const { browserContextId } = await this._connection.send('Target.createBrowserContext');
         const context = new BrowserContext(this._connection, this, browserContextId);
         this._contexts.set(browserContextId, context);
         return context;
@@ -183,10 +175,9 @@
             : this._defaultContext;
         const shouldAttachToTarget = this._targetFilterCallback(targetInfo);
         if (!shouldAttachToTarget) {
-            this._ignoredTargets.add(targetInfo.targetId);
             return;
         }
-        const target = new Target(targetInfo, context, () => this._connection.createSession(targetInfo), this._ignoreHTTPSErrors, this._defaultViewport, this._screenshotTaskQueue);
+        const target = new Target(targetInfo, context, () => this._connection.createSession(targetInfo), this._ignoreHTTPSErrors, this._defaultViewport);
         assert(!this._targets.has(event.targetInfo.targetId), 'Target should not exist before targetCreated');
         this._targets.set(event.targetInfo.targetId, target);
         if (await target._initializedPromise) {
@@ -195,8 +186,6 @@
         }
     }
     async _targetDestroyed(event) {
-        if (this._ignoredTargets.has(event.targetId))
-            return;
         const target = this._targets.get(event.targetId);
         target._initializedCallback(false);
         this._targets.delete(event.targetId);
@@ -209,8 +198,6 @@
         }
     }
     _targetInfoChanged(event) {
-        if (this._ignoredTargets.has(event.targetInfo.targetId))
-            return;
         const target = this._targets.get(event.targetInfo.targetId);
         assert(target, 'target should exist before targetInfoChanged');
         const previousURL = target.url();
@@ -259,7 +246,7 @@
             url: 'about:blank',
             browserContextId: contextId || undefined,
         });
-        const target = this._targets.get(targetId);
+        const target = await this._targets.get(targetId);
         assert(await target._initializedPromise, 'Failed to create target for page');
         const page = await target.page();
         return page;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js.map
index 526317c..3caf234b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Browser.js.map
@@ -1 +1 @@
-{"version":3,"file":"Browser.js","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Browser.js","sourceRoot":"","sources":["../../../../src/common/Browser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts
index b652c7a..19b84f0 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts
@@ -2,7 +2,6 @@
 import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
 import { ConnectionTransport } from './ConnectionTransport.js';
 import { EventEmitter } from './EventEmitter.js';
-import { ProtocolError } from './Errors.js';
 /**
  * @public
  */
@@ -13,7 +12,7 @@
 export interface ConnectionCallback {
     resolve: Function;
     reject: Function;
-    error: ProtocolError;
+    error: Error;
     method: string;
 }
 /**
@@ -25,7 +24,7 @@
     readonly Disconnected: symbol;
 };
 /**
- * @public
+ * @internal
  */
 export declare class Connection extends EventEmitter {
     _url: string;
@@ -64,7 +63,6 @@
     error: {
         message: string;
         data: any;
-        code: number;
     };
     result?: any;
 }
@@ -85,7 +83,7 @@
  * events can be subscribed to with `CDPSession.on` method.
  *
  * Useful links: {@link https://chromedevtools.github.io/devtools-protocol/ | DevTools Protocol Viewer}
- * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/HEAD/README.md | Getting Started with DevTools Protocol}.
+ * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md | Getting Started with DevTools Protocol}.
  *
  * @example
  * ```js
@@ -128,9 +126,5 @@
      * @internal
      */
     _onClosed(): void;
-    /**
-     * @internal
-     */
-    id(): string;
 }
 //# sourceMappingURL=Connection.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts.map
index ee5ae5a..3d9290b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js
index 8af1cd4..733fe3b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js
@@ -18,7 +18,6 @@
 const debugProtocolSend = debug('puppeteer:protocol:SEND â–º');
 const debugProtocolReceive = debug('puppeteer:protocol:RECV â—€');
 import { EventEmitter } from './EventEmitter.js';
-import { ProtocolError } from './Errors.js';
 /**
  * Internal events that the Connection class emits.
  *
@@ -28,7 +27,7 @@
     Disconnected: Symbol('Connection.Disconnected'),
 };
 /**
- * @public
+ * @internal
  */
 export class Connection extends EventEmitter {
     constructor(url, transport, delay = 0) {
@@ -66,12 +65,7 @@
         const params = paramArgs.length ? paramArgs[0] : undefined;
         const id = this._rawSend({ method, params });
         return new Promise((resolve, reject) => {
-            this._callbacks.set(id, {
-                resolve,
-                reject,
-                error: new ProtocolError(),
-                method,
-            });
+            this._callbacks.set(id, { resolve, reject, error: new Error(), method });
         });
     }
     _rawSend(message) {
@@ -175,7 +169,7 @@
  * events can be subscribed to with `CDPSession.on` method.
  *
  * Useful links: {@link https://chromedevtools.github.io/devtools-protocol/ | DevTools Protocol Viewer}
- * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/HEAD/README.md | Getting Started with DevTools Protocol}.
+ * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md | Getting Started with DevTools Protocol}.
  *
  * @example
  * ```js
@@ -216,12 +210,7 @@
             params,
         });
         return new Promise((resolve, reject) => {
-            this._callbacks.set(id, {
-                resolve,
-                reject,
-                error: new ProtocolError(),
-                method,
-            });
+            this._callbacks.set(id, { resolve, reject, error: new Error(), method });
         });
     }
     /**
@@ -262,12 +251,6 @@
         this._connection = null;
         this.emit(CDPSessionEmittedEvents.Disconnected);
     }
-    /**
-     * @internal
-     */
-    id() {
-        return this._sessionId;
-    }
 }
 /**
  * @param {!Error} error
@@ -279,16 +262,15 @@
     let message = `Protocol error (${method}): ${object.error.message}`;
     if ('data' in object.error)
         message += ` ${object.error.data}`;
-    return rewriteError(error, message, object.error.message);
+    return rewriteError(error, message);
 }
 /**
  * @param {!Error} error
  * @param {string} message
  * @returns {!Error}
  */
-function rewriteError(error, message, originalMessage) {
+function rewriteError(error, message) {
     error.message = message;
-    error.originalMessage = originalMessage;
     return error;
 }
 //# sourceMappingURL=Connection.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js.map
index e47c631..f0ac74f 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Connection.js.map
@@ -1 +1 @@
-{"version":3,"file":"Connection.js","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Connection.js","sourceRoot":"","sources":["../../../../src/common/Connection.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts
index b7fc436..177091f 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts
@@ -42,16 +42,6 @@
     }>;
 }
 /**
- * The CoverageEntry class for JavaScript
- * @public
- */
-export interface JSCoverageEntry extends CoverageEntry {
-    /**
-     * Raw V8 script coverage entry.
-     */
-    rawScriptCoverage?: Protocol.Profiler.ScriptCoverage;
-}
-/**
  * Set of configurable options for JS coverage.
  * @public
  */
@@ -64,10 +54,6 @@
      * Whether anonymous scripts generated by the page should be reported.
      */
     reportAnonymousScripts?: boolean;
-    /**
-     * Whether the result includes raw V8 script coverage entries.
-     */
-    includeRawScriptCoverage?: boolean;
 }
 /**
  * Set of configurable options for CSS coverage.
@@ -126,8 +112,8 @@
     _cssCoverage: CSSCoverage;
     constructor(client: CDPSession);
     /**
-     * @param options - Set of configurable options for coverage defaults to
-     * `resetOnNavigation : true, reportAnonymousScripts : false`
+     * @param options - Set of configurable options for coverage defaults to `{
+     * resetOnNavigation : true, reportAnonymousScripts : false }`
      * @returns Promise that resolves when coverage is started.
      *
      * @remarks
@@ -145,10 +131,10 @@
      * JavaScript Coverage doesn't include anonymous scripts by default.
      * However, scripts with sourceURLs are reported.
      */
-    stopJSCoverage(): Promise<JSCoverageEntry[]>;
+    stopJSCoverage(): Promise<CoverageEntry[]>;
     /**
-     * @param options - Set of configurable options for coverage, defaults to
-     * `resetOnNavigation : true`
+     * @param options - Set of configurable options for coverage, defaults to `{
+     * resetOnNavigation : true }`
      * @returns Promise that resolves when coverage is started.
      */
     startCSSCoverage(options?: CSSCoverageOptions): Promise<void>;
@@ -172,16 +158,14 @@
     _eventListeners: PuppeteerEventListener[];
     _resetOnNavigation: boolean;
     _reportAnonymousScripts: boolean;
-    _includeRawScriptCoverage: boolean;
     constructor(client: CDPSession);
     start(options?: {
         resetOnNavigation?: boolean;
         reportAnonymousScripts?: boolean;
-        includeRawScriptCoverage?: boolean;
     }): Promise<void>;
     _onExecutionContextsCleared(): void;
     _onScriptParsed(event: Protocol.Debugger.ScriptParsedEvent): Promise<void>;
-    stop(): Promise<JSCoverageEntry[]>;
+    stop(): Promise<CoverageEntry[]>;
 }
 /**
  * @public
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts.map
index 73e45d0..149e0e7 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Coverage.d.ts","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAsB,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD;;OAEG;IACH,iBAAiB,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,QAAQ;IACnB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,WAAW,CAAC;gBAEd,MAAM,EAAE,UAAU;IAK9B;;;;;;;;;;OAUG;IACG,eAAe,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;;;OAOG;IACG,cAAc,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAIlD;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;;;;;OAMG;IACG,eAAe,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAGlD;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,WAAW,sBAA6B;IACxC,cAAc,sBAA6B;IAC3C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;IAChC,yBAAyB,UAAS;gBAEtB,MAAM,EAAE,UAAU;IAIxB,KAAK,CACT,OAAO,GAAE;QACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,wBAAwB,CAAC,EAAE,OAAO,CAAC;KAC/B,GACL,OAAO,CAAC,IAAI,CAAC;IAoChB,2BAA2B,IAAI,IAAI;IAM7B,eAAe,CACnB,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBV,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;CAsCzC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,eAAe,sBAA6B;IAC5C,kBAAkB,sBAA6B;IAC/C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CAAC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BzE,2BAA2B,IAAI,IAAI;IAM7B,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBtE,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAuCvC"}
\ No newline at end of file
+{"version":3,"file":"Coverage.d.ts","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAsB,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C;;GAEG;AACH,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,QAAQ;IACnB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,WAAW,CAAC;gBAEd,MAAM,EAAE,UAAU;IAK9B;;;;;;;;;;OAUG;IACG,eAAe,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;;;OAOG;IACG,cAAc,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAIhD;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;;;;;OAMG;IACG,eAAe,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAGlD;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,WAAW,sBAA6B;IACxC,cAAc,sBAA6B;IAC3C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CACT,OAAO,GAAE;QACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAC;KAC7B,GACL,OAAO,CAAC,IAAI,CAAC;IAgChB,2BAA2B,IAAI,IAAI;IAM7B,eAAe,CACnB,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBV,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAkCvC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,UAAS;IACjB,eAAe,sBAA6B;IAC5C,kBAAkB,sBAA6B;IAC/C,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAC/C,kBAAkB,UAAS;IAC3B,uBAAuB,UAAS;gBAEpB,MAAM,EAAE,UAAU;IAIxB,KAAK,CAAC,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BzE,2BAA2B,IAAI,IAAI;IAM7B,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBtE,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAuCvC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js
index 2acb952..eff2d88 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js
@@ -58,8 +58,8 @@
         this._cssCoverage = new CSSCoverage(client);
     }
     /**
-     * @param options - Set of configurable options for coverage defaults to
-     * `resetOnNavigation : true, reportAnonymousScripts : false`
+     * @param options - Set of configurable options for coverage defaults to `{
+     * resetOnNavigation : true, reportAnonymousScripts : false }`
      * @returns Promise that resolves when coverage is started.
      *
      * @remarks
@@ -83,8 +83,8 @@
         return await this._jsCoverage.stop();
     }
     /**
-     * @param options - Set of configurable options for coverage, defaults to
-     * `resetOnNavigation : true`
+     * @param options - Set of configurable options for coverage, defaults to `{
+     * resetOnNavigation : true }`
      * @returns Promise that resolves when coverage is started.
      */
     async startCSSCoverage(options = {}) {
@@ -112,15 +112,13 @@
         this._eventListeners = [];
         this._resetOnNavigation = false;
         this._reportAnonymousScripts = false;
-        this._includeRawScriptCoverage = false;
         this._client = client;
     }
     async start(options = {}) {
         assert(!this._enabled, 'JSCoverage is already enabled');
-        const { resetOnNavigation = true, reportAnonymousScripts = false, includeRawScriptCoverage = false, } = options;
+        const { resetOnNavigation = true, reportAnonymousScripts = false } = options;
         this._resetOnNavigation = resetOnNavigation;
         this._reportAnonymousScripts = reportAnonymousScripts;
-        this._includeRawScriptCoverage = includeRawScriptCoverage;
         this._enabled = true;
         this._scriptURLs.clear();
         this._scriptSources.clear();
@@ -131,7 +129,7 @@
         await Promise.all([
             this._client.send('Profiler.enable'),
             this._client.send('Profiler.startPreciseCoverage', {
-                callCount: this._includeRawScriptCoverage,
+                callCount: false,
                 detailed: true,
             }),
             this._client.send('Debugger.enable'),
@@ -186,12 +184,7 @@
             for (const func of entry.functions)
                 flattenRanges.push(...func.ranges);
             const ranges = convertToDisjointRanges(flattenRanges);
-            if (!this._includeRawScriptCoverage) {
-                coverage.push({ url, ranges, text });
-            }
-            else {
-                coverage.push({ url, ranges, text, rawScriptCoverage: entry });
-            }
+            coverage.push({ url, ranges, text });
         }
         return coverage;
     }
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js.map
index 840aec8..bdfcffd 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Coverage.js.map
@@ -1 +1 @@
-{"version":3,"file":"Coverage.js","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Coverage.js","sourceRoot":"","sources":["../../../../src/common/Coverage.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts
index d6c3673..bcd8edf 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts
@@ -21,7 +21,6 @@
 import { MouseButton } from './Input.js';
 import { FrameManager, Frame } from './FrameManager.js';
 import { SerializableOrJSHandle, EvaluateHandleFn, WrapElementHandle, EvaluateFn, EvaluateFnReturnType, UnwrapPromiseLike } from './EvalTypes.js';
-import { CDPSession } from './Connection.js';
 /**
  * @public
  */
@@ -42,7 +41,6 @@
  */
 export declare class DOMWorld {
     private _frameManager;
-    private _client;
     private _frame;
     private _timeoutSettings;
     private _documentPromise?;
@@ -60,7 +58,7 @@
     _boundFunctions: Map<string, Function>;
     private _ctxBindings;
     private static bindingIdentifier;
-    constructor(client: CDPSession, frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
+    constructor(frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
     frame(): Frame;
     _setContext(context?: ExecutionContext): Promise<void>;
     _hasContext(): boolean;
@@ -92,7 +90,6 @@
         url?: string;
         path?: string;
         content?: string;
-        id?: string;
         type?: string;
     }): Promise<ElementHandle>;
     /**
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts.map
index 5a084bc..feb8194 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"DOMWorld.d.ts","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DOMWorld.d.ts","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js
index 36ee2e7..11cf4d8 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js
@@ -23,7 +23,7 @@
  * @internal
  */
 export class DOMWorld {
-    constructor(client, frameManager, frame, timeoutSettings) {
+    constructor(frameManager, frame, timeoutSettings) {
         this._documentPromise = null;
         this._contextPromise = null;
         this._contextResolveCallback = null;
@@ -42,21 +42,17 @@
         // If multiple waitFor are set up asynchronously, we need to wait for the
         // first one to set up the binding in the page before running the others.
         this._settingUpBinding = null;
-        // Keep own reference to client because it might differ from the FrameManager's
-        // client for OOP iframes.
-        this._client = client;
         this._frameManager = frameManager;
         this._frame = frame;
         this._timeoutSettings = timeoutSettings;
         this._setContext(null);
-        this._client.on('Runtime.bindingCalled', (event) => this._onBindingCalled(event));
+        frameManager._client.on('Runtime.bindingCalled', (event) => this._onBindingCalled(event));
     }
     frame() {
         return this._frame;
     }
     async _setContext(context) {
         if (context) {
-            assert(this._contextResolveCallback, 'Execution Context has already been set.');
             this._ctxBindings.clear();
             this._contextResolveCallback.call(null, context);
             this._contextResolveCallback = null;
@@ -162,11 +158,11 @@
      * `url` or `content`.
      */
     async addScriptTag(options) {
-        const { url = null, path = null, content = null, id = '', type = '', } = options;
+        const { url = null, path = null, content = null, type = '' } = options;
         if (url !== null) {
             try {
                 const context = await this.executionContext();
-                return (await context.evaluateHandle(addScriptUrl, url, id, type)).asElement();
+                return (await context.evaluateHandle(addScriptUrl, url, type)).asElement();
             }
             catch (error) {
                 throw new Error(`Loading script from ${url} failed`);
@@ -180,18 +176,16 @@
             let contents = await fs.promises.readFile(path, 'utf8');
             contents += '//# sourceURL=' + path.replace(/\n/g, '');
             const context = await this.executionContext();
-            return (await context.evaluateHandle(addScriptContent, contents, id, type)).asElement();
+            return (await context.evaluateHandle(addScriptContent, contents, type)).asElement();
         }
         if (content !== null) {
             const context = await this.executionContext();
-            return (await context.evaluateHandle(addScriptContent, content, id, type)).asElement();
+            return (await context.evaluateHandle(addScriptContent, content, type)).asElement();
         }
         throw new Error('Provide an object with a `url`, `path` or `content` property');
-        async function addScriptUrl(url, id, type) {
+        async function addScriptUrl(url, type) {
             const script = document.createElement('script');
             script.src = url;
-            if (id)
-                script.id = id;
             if (type)
                 script.type = type;
             const promise = new Promise((res, rej) => {
@@ -202,12 +196,10 @@
             await promise;
             return script;
         }
-        function addScriptContent(content, id, type = 'text/javascript') {
+        function addScriptContent(content, type = 'text/javascript') {
             const script = document.createElement('script');
             script.type = type;
             script.text = content;
-            if (id)
-                script.id = id;
             let error = null;
             script.onerror = (e) => (error = e);
             document.head.appendChild(script);
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js.map
index 889333a..bee16ba 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DOMWorld.js.map
@@ -1 +1 @@
-{"version":3,"file":"DOMWorld.js","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DOMWorld.js","sourceRoot":"","sources":["../../../../src/common/DOMWorld.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map
index 4146e0d..d57455d 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"DeviceDescriptors.d.ts","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AA+mCD;;GAEG;AACH,oBAAY,UAAU,GAAG;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,UAAe,CAAC"}
\ No newline at end of file
+{"version":3,"file":"DeviceDescriptors.d.ts","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AA6+BD;;GAEG;AACH,oBAAY,UAAU,GAAG;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,UAAe,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js
index fd2fa35..8c31c9c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js
@@ -159,78 +159,6 @@
         },
     },
     {
-        name: 'Galaxy S8',
-        userAgent: 'Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36',
-        viewport: {
-            width: 360,
-            height: 740,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy S8 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36',
-        viewport: {
-            width: 740,
-            height: 360,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Galaxy S9+',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36',
-        viewport: {
-            width: 320,
-            height: 658,
-            deviceScaleFactor: 4.5,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy S9+ landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36',
-        viewport: {
-            width: 658,
-            height: 320,
-            deviceScaleFactor: 4.5,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Galaxy Tab S4',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36',
-        viewport: {
-            width: 712,
-            height: 1138,
-            deviceScaleFactor: 2.25,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Galaxy Tab S4 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36',
-        viewport: {
-            width: 1138,
-            height: 712,
-            deviceScaleFactor: 2.25,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
         name: 'iPad',
         userAgent: 'Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1',
         viewport: {
@@ -1010,54 +938,6 @@
             isLandscape: true,
         },
     },
-    {
-        name: 'Pixel 3',
-        userAgent: 'Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36',
-        viewport: {
-            width: 393,
-            height: 786,
-            deviceScaleFactor: 2.75,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Pixel 3 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36',
-        viewport: {
-            width: 786,
-            height: 393,
-            deviceScaleFactor: 2.75,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
-    {
-        name: 'Pixel 4',
-        userAgent: 'Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36',
-        viewport: {
-            width: 353,
-            height: 745,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: false,
-        },
-    },
-    {
-        name: 'Pixel 4 landscape',
-        userAgent: 'Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36',
-        viewport: {
-            width: 745,
-            height: 353,
-            deviceScaleFactor: 3,
-            isMobile: true,
-            hasTouch: true,
-            isLandscape: true,
-        },
-    },
 ];
 /**
  * @internal
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js.map
index 493988c..3775278 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/DeviceDescriptors.js.map
@@ -1 +1 @@
-{"version":3,"file":"DeviceDescriptors.js","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"DeviceDescriptors.js","sourceRoot":"","sources":["../../../../src/common/DeviceDescriptors.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts
index 27341a6..39862a6 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts
@@ -17,7 +17,7 @@
  * @public
  */
 export declare class CustomError extends Error {
-    constructor(message?: string);
+    constructor(message: string);
 }
 /**
  * TimeoutError is emitted whenever certain operations are terminated due to timeout.
@@ -32,15 +32,6 @@
 export declare class TimeoutError extends CustomError {
 }
 /**
- * ProtocolError is emitted whenever there is an error from the protocol.
- *
- * @public
- */
-export declare class ProtocolError extends CustomError {
-    code?: number;
-    originalMessage: string;
-}
-/**
  * @public
  */
 export declare type PuppeteerErrors = Record<string, typeof CustomError>;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts.map
index 67071c9..1b23f3a 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,CAAC,EAAE,MAAM;CAK7B;AAED;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,WAAW;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CAChC;AACD;;GAEG;AACH,oBAAY,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,CAAC,CAAC;AACjE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAE7B,CAAC"}
\ No newline at end of file
+{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAK5B;AAED;;;;;;;;;GASG;AACH,qBAAa,YAAa,SAAQ,WAAW;CAAG;AAChD;;GAEG;AACH,oBAAY,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,WAAW,CAAC,CAAC;AACjE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAE7B,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js
index 5edede3..5857684 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js
@@ -36,13 +36,6 @@
 export class TimeoutError extends CustomError {
 }
 /**
- * ProtocolError is emitted whenever there is an error from the protocol.
- *
- * @public
- */
-export class ProtocolError extends CustomError {
-}
-/**
  * @public
  */
 export const puppeteerErrors = {
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js.map
index 385bbe7..bf56234 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Errors.js.map
@@ -1 +1 @@
-{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,YAAa,SAAQ,WAAW;CAAG;AAChD;;;;GAIG;AACH,MAAM,OAAO,aAAc,SAAQ,WAAW;CAG7C;AAKD;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,YAAY;CACb,CAAC"}
\ No newline at end of file
+{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../../src/common/Errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,YAAa,SAAQ,WAAW;CAAG;AAKhD;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,YAAY;CACb,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts
index 9b3c6a3..992a0de 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts
@@ -37,7 +37,7 @@
 /**
  * @public
  */
-export declare type JSONArray = readonly Serializable[];
+export declare type JSONArray = Serializable[];
 /**
  * @public
  */
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts.map
index a980498..46692b3 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/EvalTypes.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"EvalTypes.d.ts","sourceRoot":"","sources":["../../../../src/common/EvalTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAC9E;;GAEG;AACH,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1E;;GAEG;AACH,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,CACjE,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,MAAM,CAAC,GACR,CAAC,GACD,GAAG,CAAC;AAER;;GAEG;AACH,oBAAY,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAElE;;GAEG;AACH,oBAAY,YAAY,GACpB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,oBAAY,SAAS,GAAG,SAAS,YAAY,EAAE,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,oBAAY,sBAAsB,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE7D;;;IAGI;AACJ,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE5E;;;IAGI;AACJ,oBAAY,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC"}
\ No newline at end of file
+{"version":3,"file":"EvalTypes.d.ts","sourceRoot":"","sources":["../../../../src/common/EvalTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAC9E;;GAEG;AACH,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1E;;GAEG;AACH,oBAAY,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,CACjE,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,MAAM,CAAC,GACR,CAAC,GACD,GAAG,CAAC;AAER;;GAEG;AACH,oBAAY,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAElE;;GAEG;AACH,oBAAY,YAAY,GACpB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,MAAM,GACN,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,oBAAY,SAAS,GAAG,YAAY,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC;CAC7B;AAED;;GAEG;AACH,oBAAY,sBAAsB,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE7D;;;IAGI;AACJ,oBAAY,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE5E;;;IAGI;AACJ,oBAAY,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts
index 56110d6..b0dd478 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts
@@ -53,10 +53,8 @@
     private _contextIdToContext;
     private _isolatedWorlds;
     private _mainFrame;
-    private _disconnectPromise?;
     constructor(client: CDPSession, page: Page, ignoreHTTPSErrors: boolean, timeoutSettings: TimeoutSettings);
-    private setupEventListeners;
-    initialize(client?: CDPSession): Promise<void>;
+    initialize(): Promise<void>;
     networkManager(): NetworkManager;
     navigateFrame(frame: Frame, url: string, options?: {
         referer?: string;
@@ -67,24 +65,23 @@
         timeout?: number;
         waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
     }): Promise<HTTPResponse | null>;
-    private _onAttachedToTarget;
-    private _onDetachedFromTarget;
+    private _onFrameMoved;
     _onLifecycleEvent(event: Protocol.Page.LifecycleEventEvent): void;
     _onFrameStoppedLoading(frameId: string): void;
-    _handleFrameTree(session: CDPSession, frameTree: Protocol.Page.FrameTree): void;
+    _handleFrameTree(frameTree: Protocol.Page.FrameTree): void;
     page(): Page;
     mainFrame(): Frame;
     frames(): Frame[];
     frame(frameId: string): Frame | null;
-    _onFrameAttached(session: CDPSession, frameId: string, parentFrameId?: string): void;
+    _onFrameAttached(frameId: string, parentFrameId?: string): void;
     _onFrameNavigated(framePayload: Protocol.Page.Frame): void;
-    _ensureIsolatedWorld(session: CDPSession, name: string): Promise<void>;
+    _ensureIsolatedWorld(name: string): Promise<void>;
     _onFrameNavigatedWithinDocument(frameId: string, url: string): void;
-    _onFrameDetached(frameId: string, reason: Protocol.Page.FrameDetachedEventReason): void;
-    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription, session: CDPSession): void;
+    _onFrameDetached(frameId: string): void;
+    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription): void;
     private _onExecutionContextDestroyed;
     private _onExecutionContextsCleared;
-    executionContextById(contextId: number, session?: CDPSession): ExecutionContext;
+    executionContextById(contextId: number): ExecutionContext;
     private _removeFramesRecursively;
 }
 /**
@@ -243,16 +240,7 @@
     /**
      * @internal
      */
-    _client: CDPSession;
-    /**
-     * @internal
-     */
-    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string, client: CDPSession);
-    /**
-     * @internal
-     */
-    _updateClient(client: CDPSession): void;
-    isOOPFrame(): boolean;
+    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string);
     /**
      * @remarks
      *
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts.map
index 4707ab3..d3ec63c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"FrameManager.d.ts","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"FrameManager.d.ts","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js
index b6c054b..eb9c200 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js
@@ -13,16 +13,15 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+import { debug } from '../common/Debug.js';
 import { EventEmitter } from './EventEmitter.js';
 import { assert } from './assert.js';
-import { helper } from './helper.js';
+import { helper, debugError } from './helper.js';
 import { ExecutionContext, EVALUATION_SCRIPT_URL } from './ExecutionContext.js';
 import { LifecycleWatcher, } from './LifecycleWatcher.js';
 import { DOMWorld } from './DOMWorld.js';
 import { NetworkManager } from './NetworkManager.js';
-import { Connection } from './Connection.js';
 const UTILITY_WORLD_NAME = '__puppeteer_utility_world__';
-const xPathPattern = /^\(\/\/[^\)]+\)|^\/\//;
 /**
  * We use symbols to prevent external parties listening to these events.
  * They are internal to Puppeteer.
@@ -51,70 +50,31 @@
         this._page = page;
         this._networkManager = new NetworkManager(client, ignoreHTTPSErrors, this);
         this._timeoutSettings = timeoutSettings;
-        this.setupEventListeners(this._client);
+        this._client.on('Page.frameAttached', (event) => this._onFrameAttached(event.frameId, event.parentFrameId));
+        this._client.on('Page.frameNavigated', (event) => this._onFrameNavigated(event.frame));
+        this._client.on('Page.navigatedWithinDocument', (event) => this._onFrameNavigatedWithinDocument(event.frameId, event.url));
+        this._client.on('Page.frameDetached', (event) => this._onFrameDetached(event.frameId));
+        this._client.on('Page.frameStoppedLoading', (event) => this._onFrameStoppedLoading(event.frameId));
+        this._client.on('Runtime.executionContextCreated', (event) => this._onExecutionContextCreated(event.context));
+        this._client.on('Runtime.executionContextDestroyed', (event) => this._onExecutionContextDestroyed(event.executionContextId));
+        this._client.on('Runtime.executionContextsCleared', () => this._onExecutionContextsCleared());
+        this._client.on('Page.lifecycleEvent', (event) => this._onLifecycleEvent(event));
+        this._client.on('Target.attachedToTarget', async (event) => this._onFrameMoved(event));
     }
-    setupEventListeners(session) {
-        session.on('Page.frameAttached', (event) => {
-            this._onFrameAttached(session, event.frameId, event.parentFrameId);
-        });
-        session.on('Page.frameNavigated', (event) => {
-            this._onFrameNavigated(event.frame);
-        });
-        session.on('Page.navigatedWithinDocument', (event) => {
-            this._onFrameNavigatedWithinDocument(event.frameId, event.url);
-        });
-        session.on('Page.frameDetached', (event) => {
-            this._onFrameDetached(event.frameId, event.reason);
-        });
-        session.on('Page.frameStoppedLoading', (event) => {
-            this._onFrameStoppedLoading(event.frameId);
-        });
-        session.on('Runtime.executionContextCreated', (event) => {
-            this._onExecutionContextCreated(event.context, session);
-        });
-        session.on('Runtime.executionContextDestroyed', (event) => {
-            this._onExecutionContextDestroyed(event.executionContextId, session);
-        });
-        session.on('Runtime.executionContextsCleared', () => {
-            this._onExecutionContextsCleared(session);
-        });
-        session.on('Page.lifecycleEvent', (event) => {
-            this._onLifecycleEvent(event);
-        });
-        session.on('Target.attachedToTarget', async (event) => {
-            this._onAttachedToTarget(event);
-        });
-        session.on('Target.detachedFromTarget', async (event) => {
-            this._onDetachedFromTarget(event);
-        });
-    }
-    async initialize(client = this._client) {
-        try {
-            const result = await Promise.all([
-                client.send('Page.enable'),
-                client.send('Page.getFrameTree'),
-            ]);
-            const { frameTree } = result[1];
-            this._handleFrameTree(client, frameTree);
-            await Promise.all([
-                client.send('Page.setLifecycleEventsEnabled', { enabled: true }),
-                client
-                    .send('Runtime.enable')
-                    .then(() => this._ensureIsolatedWorld(client, UTILITY_WORLD_NAME)),
-                // TODO: Network manager is not aware of OOP iframes yet.
-                client === this._client
-                    ? this._networkManager.initialize()
-                    : Promise.resolve(),
-            ]);
-        }
-        catch (error) {
-            // The target might have been closed before the initialization finished.
-            if (error.message.includes('Target closed') ||
-                error.message.includes('Session closed')) {
-                return;
-            }
-            throw error;
-        }
+    async initialize() {
+        const result = await Promise.all([
+            this._client.send('Page.enable'),
+            this._client.send('Page.getFrameTree'),
+        ]);
+        const { frameTree } = result[1];
+        this._handleFrameTree(frameTree);
+        await Promise.all([
+            this._client.send('Page.setLifecycleEventsEnabled', { enabled: true }),
+            this._client
+                .send('Runtime.enable')
+                .then(() => this._ensureIsolatedWorld(UTILITY_WORLD_NAME)),
+            this._networkManager.initialize(),
+        ]);
     }
     networkManager() {
         return this._networkManager;
@@ -139,7 +99,7 @@
         watcher.dispose();
         if (error)
             throw error;
-        return await watcher.navigationResponse();
+        return watcher.navigationResponse();
         async function navigate(client, url, referrer, frameId) {
             try {
                 const response = await client.send('Page.navigate', {
@@ -169,25 +129,17 @@
         watcher.dispose();
         if (error)
             throw error;
-        return await watcher.navigationResponse();
+        return watcher.navigationResponse();
     }
-    async _onAttachedToTarget(event) {
+    async _onFrameMoved(event) {
         if (event.targetInfo.type !== 'iframe') {
             return;
         }
-        const frame = this._frames.get(event.targetInfo.targetId);
-        const session = Connection.fromSession(this._client).session(event.sessionId);
-        frame._updateClient(session);
-        this.setupEventListeners(session);
-        await this.initialize(session);
-    }
-    async _onDetachedFromTarget(event) {
-        const frame = this._frames.get(event.targetId);
-        if (frame && frame.isOOPFrame()) {
-            // When an OOP iframe is removed from the page, it
-            // will only get a Target.detachedFromTarget event.
-            this._removeFramesRecursively(frame);
-        }
+        // TODO(sadym): Remove debug message once proper OOPIF support is
+        // implemented: https://github.com/puppeteer/puppeteer/issues/2548
+        debug('puppeteer:frame')(`The frame '${event.targetInfo.targetId}' moved to another session. ` +
+            `Out-of-process iframes (OOPIF) are not supported by Puppeteer yet. ` +
+            `https://github.com/puppeteer/puppeteer/issues/2548`);
     }
     _onLifecycleEvent(event) {
         const frame = this._frames.get(event.frameId);
@@ -203,16 +155,14 @@
         frame._onLoadingStopped();
         this.emit(FrameManagerEmittedEvents.LifecycleEvent, frame);
     }
-    _handleFrameTree(session, frameTree) {
-        if (frameTree.frame.parentId) {
-            this._onFrameAttached(session, frameTree.frame.id, frameTree.frame.parentId);
-        }
+    _handleFrameTree(frameTree) {
+        if (frameTree.frame.parentId)
+            this._onFrameAttached(frameTree.frame.id, frameTree.frame.parentId);
         this._onFrameNavigated(frameTree.frame);
         if (!frameTree.childFrames)
             return;
-        for (const child of frameTree.childFrames) {
-            this._handleFrameTree(session, child);
-        }
+        for (const child of frameTree.childFrames)
+            this._handleFrameTree(child);
     }
     page() {
         return this._page;
@@ -226,20 +176,12 @@
     frame(frameId) {
         return this._frames.get(frameId) || null;
     }
-    _onFrameAttached(session, frameId, parentFrameId) {
-        if (this._frames.has(frameId)) {
-            const frame = this._frames.get(frameId);
-            if (session && frame.isOOPFrame()) {
-                // If an OOP iframes becomes a normal iframe again
-                // it is first attached to the parent page before
-                // the target is removed.
-                frame._updateClient(session);
-            }
+    _onFrameAttached(frameId, parentFrameId) {
+        if (this._frames.has(frameId))
             return;
-        }
         assert(parentFrameId);
         const parentFrame = this._frames.get(parentFrameId);
-        const frame = new Frame(this, parentFrame, frameId, session);
+        const frame = new Frame(this, parentFrame, frameId);
         this._frames.set(frame._id, frame);
         this.emit(FrameManagerEmittedEvents.FrameAttached, frame);
     }
@@ -263,7 +205,7 @@
             }
             else {
                 // Initial main frame navigation.
-                frame = new Frame(this, null, framePayload.id, this._client);
+                frame = new Frame(this, null, framePayload.id);
             }
             this._frames.set(framePayload.id, frame);
             this._mainFrame = frame;
@@ -272,23 +214,22 @@
         frame._navigated(framePayload);
         this.emit(FrameManagerEmittedEvents.FrameNavigated, frame);
     }
-    async _ensureIsolatedWorld(session, name) {
-        const key = `${session.id()}:${name}`;
-        if (this._isolatedWorlds.has(key))
+    async _ensureIsolatedWorld(name) {
+        if (this._isolatedWorlds.has(name))
             return;
-        this._isolatedWorlds.add(key);
-        await session.send('Page.addScriptToEvaluateOnNewDocument', {
+        this._isolatedWorlds.add(name);
+        await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
             source: `//# sourceURL=${EVALUATION_SCRIPT_URL}`,
             worldName: name,
         });
         // Frames might be removed before we send this.
-        await Promise.all(this.frames()
-            .filter((frame) => frame._client === session)
-            .map((frame) => session.send('Page.createIsolatedWorld', {
+        await Promise.all(this.frames().map((frame) => this._client
+            .send('Page.createIsolatedWorld', {
             frameId: frame._id,
             worldName: name,
             grantUniveralAccess: true,
-        })));
+        })
+            .catch(debugError)));
     }
     _onFrameNavigatedWithinDocument(frameId, url) {
         const frame = this._frames.get(frameId);
@@ -298,25 +239,17 @@
         this.emit(FrameManagerEmittedEvents.FrameNavigatedWithinDocument, frame);
         this.emit(FrameManagerEmittedEvents.FrameNavigated, frame);
     }
-    _onFrameDetached(frameId, reason) {
+    _onFrameDetached(frameId) {
         const frame = this._frames.get(frameId);
-        if (reason === 'remove') {
-            // Only remove the frame if the reason for the detached event is
-            // an actual removement of the frame.
-            // For frames that become OOP iframes, the reason would be 'swap'.
-            if (frame)
-                this._removeFramesRecursively(frame);
-        }
+        if (frame)
+            this._removeFramesRecursively(frame);
     }
-    _onExecutionContextCreated(contextPayload, session) {
+    _onExecutionContextCreated(contextPayload) {
         const auxData = contextPayload.auxData;
         const frameId = auxData ? auxData.frameId : null;
         const frame = this._frames.get(frameId) || null;
         let world = null;
         if (frame) {
-            // Only care about execution contexts created for the current session.
-            if (frame._client !== session)
-                return;
             if (contextPayload.auxData && !!contextPayload.auxData['isDefault']) {
                 world = frame._mainWorld;
             }
@@ -328,35 +261,28 @@
                 world = frame._secondaryWorld;
             }
         }
-        const context = new ExecutionContext((frame === null || frame === void 0 ? void 0 : frame._client) || this._client, contextPayload, world);
+        const context = new ExecutionContext(this._client, contextPayload, world);
         if (world)
             world._setContext(context);
-        const key = `${session.id()}:${contextPayload.id}`;
-        this._contextIdToContext.set(key, context);
+        this._contextIdToContext.set(contextPayload.id, context);
     }
-    _onExecutionContextDestroyed(executionContextId, session) {
-        const key = `${session.id()}:${executionContextId}`;
-        const context = this._contextIdToContext.get(key);
+    _onExecutionContextDestroyed(executionContextId) {
+        const context = this._contextIdToContext.get(executionContextId);
         if (!context)
             return;
-        this._contextIdToContext.delete(key);
+        this._contextIdToContext.delete(executionContextId);
         if (context._world)
             context._world._setContext(null);
     }
-    _onExecutionContextsCleared(session) {
-        for (const [key, context] of this._contextIdToContext.entries()) {
-            // Make sure to only clear execution contexts that belong
-            // to the current session.
-            if (context._client !== session)
-                continue;
+    _onExecutionContextsCleared() {
+        for (const context of this._contextIdToContext.values()) {
             if (context._world)
                 context._world._setContext(null);
-            this._contextIdToContext.delete(key);
         }
+        this._contextIdToContext.clear();
     }
-    executionContextById(contextId, session = this._client) {
-        const key = `${session.id()}:${contextId}`;
-        const context = this._contextIdToContext.get(key);
+    executionContextById(contextId) {
+        const context = this._contextIdToContext.get(contextId);
         assert(context, 'INTERNAL ERROR: missing context with id = ' + contextId);
         return context;
     }
@@ -421,7 +347,7 @@
     /**
      * @internal
      */
-    constructor(frameManager, parentFrame, frameId, client) {
+    constructor(frameManager, parentFrame, frameId) {
         this._url = '';
         this._detached = false;
         /**
@@ -438,21 +364,11 @@
         this._id = frameId;
         this._detached = false;
         this._loaderId = '';
+        this._mainWorld = new DOMWorld(frameManager, this, frameManager._timeoutSettings);
+        this._secondaryWorld = new DOMWorld(frameManager, this, frameManager._timeoutSettings);
         this._childFrames = new Set();
         if (this._parentFrame)
             this._parentFrame._childFrames.add(this);
-        this._updateClient(client);
-    }
-    /**
-     * @internal
-     */
-    _updateClient(client) {
-        this._client = client;
-        this._mainWorld = new DOMWorld(this._client, this._frameManager, this, this._frameManager._timeoutSettings);
-        this._secondaryWorld = new DOMWorld(this._client, this._frameManager, this, this._frameManager._timeoutSettings);
-    }
-    isOOPFrame() {
-        return this._client !== this._frameManager._client;
     }
     /**
      * @remarks
@@ -845,10 +761,11 @@
      * {@link Frame.waitForTimeout}.
      */
     waitFor(selectorOrFunctionOrTimeout, options = {}, ...args) {
+        const xPathPattern = '//';
         console.warn('waitFor is deprecated and will be removed in a future release. See https://github.com/puppeteer/puppeteer/issues/6214 for details and how to migrate your code.');
         if (helper.isString(selectorOrFunctionOrTimeout)) {
             const string = selectorOrFunctionOrTimeout;
-            if (xPathPattern.test(string))
+            if (string.startsWith(xPathPattern))
                 return this.waitForXPath(string, options);
             return this.waitForSelector(string, options);
         }
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js.map
index 45334df..3ad0a05 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/FrameManager.js.map
@@ -1 +1 @@
-{"version":3,"file":"FrameManager.js","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"FrameManager.js","sourceRoot":"","sources":["../../../../src/common/FrameManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,EACL,gBAAgB,GAEjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAA0B,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAiBrD,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,aAAa,EAAE,MAAM,CAAC,4BAA4B,CAAC;IACnD,cAAc,EAAE,MAAM,CAAC,6BAA6B,CAAC;IACrD,aAAa,EAAE,MAAM,CAAC,4BAA4B,CAAC;IACnD,cAAc,EAAE,MAAM,CAAC,6BAA6B,CAAC;IACrD,4BAA4B,EAAE,MAAM,CAClC,2CAA2C,CAC5C;IACD,uBAAuB,EAAE,MAAM,CAAC,sCAAsC,CAAC;IACvE,yBAAyB,EAAE,MAAM,CAAC,wCAAwC,CAAC;CAC5E,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAU5C,YACE,MAAkB,EAClB,IAAU,EACV,iBAA0B,EAC1B,eAAgC;QAEhC,KAAK,EAAE,CAAC;QAXF,YAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;QACnC,wBAAmB,GAAG,IAAI,GAAG,EAA4B,CAAC;QAC1D,oBAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAU1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAC3E,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAC1D,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CACpC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,8BAA8B,EAAE,CAAC,KAAK,EAAE,EAAE,CACxD,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAC/D,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CACrC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,0BAA0B,EAAE,CAAC,KAAK,EAAE,EAAE,CACpD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAC3C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,iCAAiC,EAAE,CAAC,KAAK,EAAE,EAAE,CAC3D,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAC/C,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,mCAAmC,EAAE,CAAC,KAAK,EAAE,EAAE,CAC7D,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAC5D,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE,CACvD,IAAI,CAAC,2BAA2B,EAAE,CACnC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAC9B,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACzD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAC1B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC;SACvC,CAAC,CAAC;QAEH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACjC,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YACtE,IAAI,CAAC,OAAO;iBACT,IAAI,CAAC,gBAAgB,CAAC;iBACtB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;YAC5D,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE;SAClC,CAAC,CAAC;IACL,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAY,EACZ,GAAW,EACX,UAII,EAAE;QAEN,+BAA+B,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,EACJ,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,EAC5D,SAAS,GAAG,CAAC,MAAM,CAAC,EACpB,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,GACpD,GAAG,OAAO,CAAC;QAEZ,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI,2BAA2B,GAAG,KAAK,CAAC;QACxC,IAAI,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAC7B,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC;YAC/C,OAAO,CAAC,2BAA2B,EAAE;SACtC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBACzB,OAAO,CAAC,2BAA2B,EAAE;gBACrC,2BAA2B;oBACzB,CAAC,CAAC,OAAO,CAAC,4BAA4B,EAAE;oBACxC,CAAC,CAAC,OAAO,CAAC,6BAA6B,EAAE;aAC5C,CAAC,CAAC;SACJ;QACD,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QACvB,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAEpC,KAAK,UAAU,QAAQ,CACrB,MAAkB,EAClB,GAAW,EACX,QAAgB,EAChB,OAAe;YAEf,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;oBAClD,GAAG;oBACH,QAAQ;oBACR,OAAO;iBACR,CAAC,CAAC;gBACH,2BAA2B,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAClD,OAAO,QAAQ,CAAC,SAAS;oBACvB,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,QAAQ,CAAC,SAAS,OAAO,GAAG,EAAE,CAAC;oBAC9C,CAAC,CAAC,IAAI,CAAC;aACV;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,KAAK,CAAC;aACd;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,KAAY,EACZ,UAGI,EAAE;QAEN,+BAA+B,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,EACJ,SAAS,GAAG,CAAC,MAAM,CAAC,EACpB,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,GACpD,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAC/B,OAAO,CAAC,2BAA2B,EAAE;YACrC,OAAO,CAAC,6BAA6B,EAAE;YACvC,OAAO,CAAC,4BAA4B,EAAE;SACvC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QACvB,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,KAA4C;QACtE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE;YACtC,OAAO;SACR;QAED,iEAAiE;QACjE,kEAAkE;QAClE,KAAK,CAAC,iBAAiB,CAAC,CACtB,cAAc,KAAK,CAAC,UAAU,CAAC,QAAQ,8BAA8B;YACnE,qEAAqE;YACrE,oDAAoD,CACvD,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,KAAwC;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,sBAAsB,CAAC,OAAe;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,gBAAgB,CAAC,SAAkC;QACjD,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ;YAC1B,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,WAAW;YAAE,OAAO;QAEnC,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,WAAW;YAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED,gBAAgB,CAAC,OAAe,EAAE,aAAsB;QACtD,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO;QACtC,MAAM,CAAC,aAAa,CAAC,CAAC;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,iBAAiB,CAAC,YAAiC;QACjD,MAAM,WAAW,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC3C,IAAI,KAAK,GAAG,WAAW;YACrB,CAAC,CAAC,IAAI,CAAC,UAAU;YACjB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,CACJ,WAAW,IAAI,KAAK,EACpB,yEAAyE,CAC1E,CAAC;QAEF,iCAAiC;QACjC,IAAI,KAAK,EAAE;YACT,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE;gBACrC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;SACxC;QAED,+BAA+B;QAC/B,IAAI,WAAW,EAAE;YACf,IAAI,KAAK,EAAE;gBACT,wEAAwE;gBACxE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,KAAK,CAAC,GAAG,GAAG,YAAY,CAAC,EAAE,CAAC;aAC7B;iBAAM;gBACL,iCAAiC;gBACjC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;aAChD;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;SACzB;QAED,wBAAwB;QACxB,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAE/B,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACrC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE;YAC/D,MAAM,EAAE,iBAAiB,qBAAqB,EAAE;YAChD,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,+CAA+C;QAC/C,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC1B,IAAI,CAAC,OAAO;aACT,IAAI,CAAC,0BAA0B,EAAE;YAChC,OAAO,EAAE,KAAK,CAAC,GAAG;YAClB,SAAS,EAAE,IAAI;YACf,mBAAmB,EAAE,IAAI;SAC1B,CAAC;aACD,KAAK,CAAC,UAAU,CAAC,CACrB,CACF,CAAC;IACJ,CAAC;IAED,+BAA+B,CAAC,OAAe,EAAE,GAAW;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,gBAAgB,CAAC,OAAe;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,KAAK;YAAE,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,0BAA0B,CACxB,cAA4D;QAE5D,MAAM,OAAO,GAAG,cAAc,CAAC,OAA+B,CAAC;QAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;QAChD,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,KAAK,EAAE;YACT,IAAI,cAAc,CAAC,OAAO,IAAI,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBACnE,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC;aAC1B;iBAAM,IACL,cAAc,CAAC,IAAI,KAAK,kBAAkB;gBAC1C,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,EACpC;gBACA,0EAA0E;gBAC1E,oEAAoE;gBACpE,qBAAqB;gBACrB,KAAK,GAAG,KAAK,CAAC,eAAe,CAAC;aAC/B;SACF;QACD,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,KAAK;YAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAEO,4BAA4B,CAAC,kBAA0B;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAEO,2BAA2B;QACjC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAE;YACvD,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACtD;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,oBAAoB,CAAC,SAAiB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,EAAE,4CAA4C,GAAG,SAAS,CAAC,CAAC;QAC1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,wBAAwB,CAAC,KAAY;QAC3C,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE;YACrC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACvC,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF;AAyED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,MAAM,OAAO,KAAK;IAuChB;;OAEG;IACH,YACE,YAA0B,EAC1B,WAAyB,EACzB,OAAe;QAlCT,SAAI,GAAG,EAAE,CAAC;QACV,cAAS,GAAG,KAAK,CAAC;QAC1B;;WAEG;QACH,cAAS,GAAG,EAAE,CAAC;QAMf;;WAEG;QACH,qBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;QAsBnC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,QAAQ,CAC5B,YAAY,EACZ,IAAI,EACJ,YAAY,CAAC,gBAAgB,CAC9B,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,QAAQ,CACjC,YAAY,EACZ,IAAI,EACJ,YAAY,CAAC,gBAAgB,CAC9B,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,KAAK,CAAC,IAAI,CACR,GAAW,EACX,UAII,EAAE;QAEN,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,iBAAiB,CACrB,UAGI,EAAE;QAEN,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,cAAc,CAClB,YAA8B,EAC9B,GAAG,IAA8B;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAc,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ,CACZ,YAAe,EACf,GAAG,IAA8B;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAI,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,CAAC,CACL,QAAgB;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAI,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,EAAE,CAAC,UAAkB;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,KAAK,CACT,QAAgB,EAChB,YAGqC,EACrC,GAAG,IAA8B;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAa,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,MAAM,CACV,QAAgB,EAChB,YAGqC,EACrC,GAAG,IAA8B;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAa,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,EAAE,CACN,QAAgB;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAI,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,IAAY,EACZ,UAGI,EAAE;QAEN,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;OASG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY,CAChB,OAAiC;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CAAC,OAAgC;QAChD,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,CAAC,KAAK,CACT,QAAgB,EAChB,UAII,EAAE;QAEN,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,CAAC,QAAgB;QAC1B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,KAAK,CAAC,QAAgB;QAC1B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,QAAgB,EAAE,GAAG,MAAgB;QAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,GAAG,CAAC,QAAgB;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,IAAI,CACR,QAAgB,EAChB,IAAY,EACZ,OAA2B;QAE3B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CACL,2BAAuD,EACvD,UAAmC,EAAE,EACrC,GAAG,IAA8B;QAEjC,MAAM,YAAY,GAAG,IAAI,CAAC;QAE1B,OAAO,CAAC,IAAI,CACV,iKAAiK,CAClK,CAAC;QAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE;YAChD,MAAM,MAAM,GAAG,2BAA2B,CAAC;YAC3C,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;gBACjC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC9C;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC7B,UAAU,CAAC,OAAO,EAAE,2BAA2B,CAAC,CACjD,CAAC;QACJ,IAAI,OAAO,2BAA2B,KAAK,UAAU;YACnD,OAAO,IAAI,CAAC,eAAe,CACzB,2BAA2B,EAC3B,OAAO,EACP,GAAG,IAAI,CACR,CAAC;QACJ,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CACP,2BAA2B,GAAG,OAAO,2BAA2B,CACjE,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,cAAc,CAAC,YAAoB;QACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,KAAK,CAAC,eAAe,CACnB,QAAgB,EAChB,UAAkC,EAAE;QAEpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,CACvD,QAAQ,EACR,OAAO,CACR,CAAC;QACF,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,YAAY,CAChB,KAAa,EACb,UAAkC,EAAE;QAEpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,eAAe,CACb,YAA+B,EAC/B,UAAuC,EAAE,EACzC,GAAG,IAA8B;QAEjC,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,YAAiC;QAC1C,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,GAAW;QAClC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,QAAgB,EAAE,IAAY;QAC9C,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;SAC/B;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;CACF;AAED,SAAS,+BAA+B,CAAC,OAExC;IACC,MAAM,CACJ,OAAO,CAAC,oBAAoB,CAAC,KAAK,SAAS,EAC3C,0DAA0D,CAC3D,CAAC;IACF,MAAM,CACJ,OAAO,CAAC,qBAAqB,CAAC,KAAK,SAAS,EAC5C,2DAA2D,CAC5D,CAAC;IACF,MAAM,CACJ,OAAO,CAAC,SAAS,KAAK,aAAa,EACnC,gFAAgF,CACjF,CAAC;AACJ,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts
index 974c0ad..0f1efff 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts
@@ -14,8 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
-import { EventEmitter } from './EventEmitter.js';
+import { CDPSession } from './Connection.js';
 import { Frame } from './FrameManager.js';
 import { HTTPResponse } from './HTTPResponse.js';
 import { Protocol } from 'devtools-protocol';
@@ -51,9 +50,6 @@
  * @public
  */
 export declare type ResourceType = Lowercase<Protocol.Network.ResourceType>;
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
 /**
  *
  * Represents an HTTP request sent by a page.
@@ -121,13 +117,6 @@
     private _postData?;
     private _headers;
     private _frame;
-    private _continueRequestOverrides;
-    private _responseForRequest;
-    private _abortErrorReason;
-    private _currentStrategy;
-    private _currentPriority;
-    private _interceptActions;
-    private _initiator;
     /**
      * @internal
      */
@@ -137,39 +126,6 @@
      */
     url(): string;
     /**
-     * @returns the `ContinueRequestOverrides` that will be used
-     * if the interception is allowed to continue (ie, `abort()` and
-     * `respond()` aren't called).
-     */
-    continueRequestOverrides(): ContinueRequestOverrides;
-    /**
-     * @returns The `ResponseForRequest` that gets used if the
-     * interception is allowed to respond (ie, `abort()` is not called).
-     */
-    responseForRequest(): Partial<ResponseForRequest>;
-    /**
-     * @returns the most recent reason for aborting the request
-     */
-    abortErrorReason(): Protocol.Network.ErrorReason;
-    /**
-     * @returns An array of the current intercept resolution strategy and priority
-     * `[strategy,priority]`. Strategy is one of: `abort`, `respond`, `continue`,
-     *  `disabled`, `none`, or `already-handled`.
-     */
-    private interceptResolution;
-    /**
-     * Adds an async request handler to the processing queue.
-     * Deferred handlers are not guaranteed to execute in any particular order,
-     * but they are guarnateed to resolve before the request interception
-     * is finalized.
-     */
-    enqueueInterceptAction(pendingHandler: () => void | PromiseLike<unknown>): void;
-    /**
-     * Awaits pending interception handlers and then decides how to fulfill
-     * the request interception.
-     */
-    finalizeInterceptions(): Promise<void>;
-    /**
      * Contains the request's resource type as it was perceived by the rendering
      * engine.
      */
@@ -202,10 +158,6 @@
      */
     isNavigationRequest(): boolean;
     /**
-     * @returns the initiator of the request.
-     */
-    initiator(): Protocol.Network.Initiator;
-    /**
      * A `redirectChain` is a chain of requests initiated to fetch a resource.
      * @remarks
      *
@@ -280,12 +232,8 @@
      * ```
      *
      * @param overrides - optional overrides to apply to the request.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    continue(overrides?: ContinueRequestOverrides, priority?: number): Promise<void>;
-    private _continue;
+    continue(overrides?: ContinueRequestOverrides): Promise<void>;
     /**
      * Fulfills a request with the given response.
      *
@@ -313,12 +261,8 @@
      * Calling `request.respond` for a dataURL request is a noop.
      *
      * @param response - the response to fulfill the request with.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    respond(response: Partial<ResponseForRequest>, priority?: number): Promise<void>;
-    private _respond;
+    respond(response: Partial<ResponseForRequest>): Promise<void>;
     /**
      * Aborts a request.
      *
@@ -328,24 +272,11 @@
      * throw an exception immediately.
      *
      * @param errorCode - optional error code to provide.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    abort(errorCode?: ErrorCode, priority?: number): Promise<void>;
-    private _abort;
+    abort(errorCode?: ErrorCode): Promise<void>;
 }
 /**
  * @public
  */
-export declare type InterceptResolutionStrategy = 'abort' | 'respond' | 'continue' | 'disabled' | 'none' | 'alreay-handled';
-/**
- * @public
- */
 export declare type ErrorCode = 'aborted' | 'accessdenied' | 'addressunreachable' | 'blockedbyclient' | 'blockedbyresponse' | 'connectionaborted' | 'connectionclosed' | 'connectionfailed' | 'connectionrefused' | 'connectionreset' | 'internetdisconnected' | 'namenotresolved' | 'timedout' | 'failed';
-/**
- * @public
- */
-export declare type ActionResult = 'continue' | 'abort' | 'respond';
-export {};
 //# sourceMappingURL=HTTPRequest.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts.map
index 8eda734..2d391e5 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPRequest.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"HTTPRequest.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js
index 3ee051f..d698acf 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js
@@ -63,11 +63,6 @@
         this._postData = event.request.postData;
         this._frame = frame;
         this._redirectChain = redirectChain;
-        this._continueRequestOverrides = {};
-        this._currentStrategy = 'none';
-        this._currentPriority = undefined;
-        this._interceptActions = [];
-        this._initiator = event.initiator;
         for (const key of Object.keys(event.request.headers))
             this._headers[key.toLowerCase()] = event.request.headers[key];
     }
@@ -78,67 +73,6 @@
         return this._url;
     }
     /**
-     * @returns the `ContinueRequestOverrides` that will be used
-     * if the interception is allowed to continue (ie, `abort()` and
-     * `respond()` aren't called).
-     */
-    continueRequestOverrides() {
-        assert(this._allowInterception, 'Request Interception is not enabled!');
-        return this._continueRequestOverrides;
-    }
-    /**
-     * @returns The `ResponseForRequest` that gets used if the
-     * interception is allowed to respond (ie, `abort()` is not called).
-     */
-    responseForRequest() {
-        assert(this._allowInterception, 'Request Interception is not enabled!');
-        return this._responseForRequest;
-    }
-    /**
-     * @returns the most recent reason for aborting the request
-     */
-    abortErrorReason() {
-        assert(this._allowInterception, 'Request Interception is not enabled!');
-        return this._abortErrorReason;
-    }
-    /**
-     * @returns An array of the current intercept resolution strategy and priority
-     * `[strategy,priority]`. Strategy is one of: `abort`, `respond`, `continue`,
-     *  `disabled`, `none`, or `already-handled`.
-     */
-    interceptResolution() {
-        if (!this._allowInterception)
-            return ['disabled'];
-        if (this._interceptionHandled)
-            return ['alreay-handled'];
-        return [this._currentStrategy, this._currentPriority];
-    }
-    /**
-     * Adds an async request handler to the processing queue.
-     * Deferred handlers are not guaranteed to execute in any particular order,
-     * but they are guarnateed to resolve before the request interception
-     * is finalized.
-     */
-    enqueueInterceptAction(pendingHandler) {
-        this._interceptActions.push(pendingHandler);
-    }
-    /**
-     * Awaits pending interception handlers and then decides how to fulfill
-     * the request interception.
-     */
-    async finalizeInterceptions() {
-        await this._interceptActions.reduce((promiseChain, interceptAction) => promiseChain.then(interceptAction), Promise.resolve());
-        const [resolution] = this.interceptResolution();
-        switch (resolution) {
-            case 'abort':
-                return this._abort(this._abortErrorReason);
-            case 'respond':
-                return this._respond(this._responseForRequest);
-            case 'continue':
-                return this._continue(this._continueRequestOverrides);
-        }
-    }
-    /**
      * Contains the request's resource type as it was perceived by the rendering
      * engine.
      */
@@ -185,12 +119,6 @@
         return this._isNavigationRequest;
     }
     /**
-     * @returns the initiator of the request.
-     */
-    initiator() {
-        return this._initiator;
-    }
-    /**
      * A `redirectChain` is a chain of requests initiated to fetch a resource.
      * @remarks
      *
@@ -271,36 +199,13 @@
      * ```
      *
      * @param overrides - optional overrides to apply to the request.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async continue(overrides = {}, priority) {
+    async continue(overrides = {}) {
         // Request interception is not supported for data: urls.
         if (this._url.startsWith('data:'))
             return;
         assert(this._allowInterception, 'Request Interception is not enabled!');
         assert(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._continue(overrides);
-        }
-        this._continueRequestOverrides = overrides;
-        if (priority > this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'continue';
-            this._currentPriority = priority;
-            return;
-        }
-        if (priority === this._currentPriority) {
-            if (this._currentStrategy === 'abort' ||
-                this._currentStrategy === 'respond') {
-                return;
-            }
-            this._currentStrategy = 'continue';
-        }
-        return;
-    }
-    async _continue(overrides = {}) {
         const { url, method, postData, headers } = overrides;
         this._interceptionHandled = true;
         const postDataBinaryBase64 = postData
@@ -315,8 +220,10 @@
             headers: headers ? headersArray(headers) : undefined,
         })
             .catch((error) => {
-            this._interceptionHandled = false;
-            return handleError(error);
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            debugError(error);
         });
     }
     /**
@@ -346,34 +253,13 @@
      * Calling `request.respond` for a dataURL request is a noop.
      *
      * @param response - the response to fulfill the request with.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async respond(response, priority) {
+    async respond(response) {
         // Mocking responses for dataURL requests is not currently supported.
         if (this._url.startsWith('data:'))
             return;
         assert(this._allowInterception, 'Request Interception is not enabled!');
         assert(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._respond(response);
-        }
-        this._responseForRequest = response;
-        if (priority > this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'respond';
-            this._currentPriority = priority;
-            return;
-        }
-        if (priority === this._currentPriority) {
-            if (this._currentStrategy === 'abort') {
-                return;
-            }
-            this._currentStrategy = 'respond';
-        }
-    }
-    async _respond(response) {
         this._interceptionHandled = true;
         const responseBody = response.body && helper.isString(response.body)
             ? Buffer.from(response.body)
@@ -396,8 +282,10 @@
             body: responseBody ? responseBody.toString('base64') : undefined,
         })
             .catch((error) => {
-            this._interceptionHandled = false;
-            return handleError(error);
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            debugError(error);
         });
     }
     /**
@@ -409,11 +297,8 @@
      * throw an exception immediately.
      *
      * @param errorCode - optional error code to provide.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    async abort(errorCode = 'failed', priority) {
+    async abort(errorCode = 'failed') {
         // Request interception is not supported for data: urls.
         if (this._url.startsWith('data:'))
             return;
@@ -421,25 +306,18 @@
         assert(errorReason, 'Unknown error code: ' + errorCode);
         assert(this._allowInterception, 'Request Interception is not enabled!');
         assert(!this._interceptionHandled, 'Request is already handled!');
-        if (priority === undefined) {
-            return this._abort(errorReason);
-        }
-        this._abortErrorReason = errorReason;
-        if (priority >= this._currentPriority ||
-            this._currentPriority === undefined) {
-            this._currentStrategy = 'abort';
-            this._currentPriority = priority;
-            return;
-        }
-    }
-    async _abort(errorReason) {
         this._interceptionHandled = true;
         await this._client
             .send('Fetch.failRequest', {
             requestId: this._interceptionId,
             errorReason,
         })
-            .catch(handleError);
+            .catch((error) => {
+            // In certain cases, protocol will return error if the request was
+            // already canceled or the page was closed. We should tolerate these
+            // errors.
+            debugError(error);
+        });
     }
 }
 const errorReasons = {
@@ -466,15 +344,6 @@
     }
     return result;
 }
-async function handleError(error) {
-    if (['Invalid header'].includes(error.originalMessage)) {
-        throw error;
-    }
-    // In certain cases, protocol will return error if the request was
-    // already canceled or the page was closed. We should tolerate these
-    // errors.
-    debugError(error);
-}
 // List taken from
 // https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
 // with extra 306 and 418 codes.
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js.map
index 917556f..978e882 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPRequest.js.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPRequest.js","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"HTTPRequest.js","sourceRoot":"","sources":["../../../../src/common/HTTPRequest.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts
index 5710f96..b94ae40 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts
@@ -14,8 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
-import { EventEmitter } from './EventEmitter.js';
+import { CDPSession } from './Connection.js';
 import { Frame } from './FrameManager.js';
 import { HTTPRequest } from './HTTPRequest.js';
 import { SecurityDetails } from './SecurityDetails.js';
@@ -27,9 +26,6 @@
     ip: string;
     port: number;
 }
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
 /**
  * The HTTPResponse class represents responses which are received by the
  * {@link Page} class.
@@ -53,11 +49,7 @@
     /**
      * @internal
      */
-    constructor(client: CDPSession, request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null);
-    /**
-     * @internal
-     */
-    _parseStatusTextFromExtrInfo(extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): string | undefined;
+    constructor(client: CDPSession, request: HTTPRequest, responsePayload: Protocol.Network.Response);
     /**
      * @internal
      */
@@ -131,5 +123,4 @@
      */
     frame(): Frame | null;
 }
-export {};
 //# sourceMappingURL=HTTPResponse.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts.map
index a2409b5..49782dc 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPResponse.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,UAAW,SAAQ,YAAY;IACvC,IAAI,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,QAAQ,EAC3C,MAAM,EAAE,CAAC,EACT,GAAG,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;CACvD;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAwB;IAClD,OAAO,CAAC,yBAAyB,CAA8B;IAC/D,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;OAEG;gBAED,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAC1C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI;IA8BnE;;OAEG;IACH,4BAA4B,CAC1B,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI,GAChE,MAAM,GAAG,SAAS;IAWrB;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAIrC;;;OAGG;IACH,aAAa,IAAI,aAAa;IAI9B;;OAEG;IACH,GAAG,IAAI,MAAM;IAIb;;OAEG;IACH,EAAE,IAAI,OAAO;IAKb;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACH,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIjC;;;OAGG;IACH,eAAe,IAAI,eAAe,GAAG,IAAI;IAIzC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IA6BzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAK7B;;;;;;;;OAQG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAK1B;;OAEG;IACH,OAAO,IAAI,WAAW;IAItB;;;OAGG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,IAAI;CAGtB"}
\ No newline at end of file
+{"version":3,"file":"HTTPResponse.d.ts","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,kBAAkB,CAAwB;IAClD,OAAO,CAAC,yBAAyB,CAA8B;IAC/D,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;OAEG;gBAED,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;IAyB5C;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAIrC;;;OAGG;IACH,aAAa,IAAI,aAAa;IAI9B;;OAEG;IACH,GAAG,IAAI,MAAM;IAIb;;OAEG;IACH,EAAE,IAAI,OAAO;IAKb;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACH,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIjC;;;OAGG;IACH,eAAe,IAAI,eAAe,GAAG,IAAI;IAIzC;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAgBzB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAK7B;;;;;;;;OAQG;IACG,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAK1B;;OAEG;IACH,OAAO,IAAI,WAAW;IAItB;;;OAGG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,IAAI;CAGtB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js
index e8da9aed..18711e0 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js
@@ -1,5 +1,4 @@
 import { SecurityDetails } from './SecurityDetails.js';
-import { ProtocolError } from './Errors.js';
 /**
  * The HTTPResponse class represents responses which are received by the
  * {@link Page} class.
@@ -10,7 +9,7 @@
     /**
      * @internal
      */
-    constructor(client, request, responsePayload, extraInfo) {
+    constructor(client, request, responsePayload) {
         this._contentPromise = null;
         this._headers = {};
         this._client = client;
@@ -22,16 +21,13 @@
             ip: responsePayload.remoteIPAddress,
             port: responsePayload.remotePort,
         };
-        this._statusText =
-            this._parseStatusTextFromExtrInfo(extraInfo) ||
-                responsePayload.statusText;
+        this._status = responsePayload.status;
+        this._statusText = responsePayload.statusText;
         this._url = request.url();
         this._fromDiskCache = !!responsePayload.fromDiskCache;
         this._fromServiceWorker = !!responsePayload.fromServiceWorker;
-        this._status = extraInfo ? extraInfo.statusCode : responsePayload.status;
-        const headers = extraInfo ? extraInfo.headers : responsePayload.headers;
-        for (const key of Object.keys(headers))
-            this._headers[key.toLowerCase()] = headers[key];
+        for (const key of Object.keys(responsePayload.headers))
+            this._headers[key.toLowerCase()] = responsePayload.headers[key];
         this._securityDetails = responsePayload.securityDetails
             ? new SecurityDetails(responsePayload.securityDetails)
             : null;
@@ -39,23 +35,6 @@
     /**
      * @internal
      */
-    _parseStatusTextFromExtrInfo(extraInfo) {
-        if (!extraInfo || !extraInfo.headersText)
-            return;
-        const firstLine = extraInfo.headersText.split('\r', 1)[0];
-        if (!firstLine)
-            return;
-        const match = firstLine.match(/[^ ]* [^ ]* (.*)/);
-        if (!match)
-            return;
-        const statusText = match[1];
-        if (!statusText)
-            return;
-        return statusText;
-    }
-    /**
-     * @internal
-     */
     _resolveBody(err) {
         return this._bodyLoadedPromiseFulfill(err);
     }
@@ -114,19 +93,10 @@
             this._contentPromise = this._bodyLoadedPromise.then(async (error) => {
                 if (error)
                     throw error;
-                try {
-                    const response = await this._client.send('Network.getResponseBody', {
-                        requestId: this._request._requestId,
-                    });
-                    return Buffer.from(response.body, response.base64Encoded ? 'base64' : 'utf8');
-                }
-                catch (error) {
-                    if (error instanceof ProtocolError &&
-                        error.originalMessage === 'No resource with given identifier found') {
-                        throw new ProtocolError('Could not load body for this request. This might happen if the request is a preflight request.');
-                    }
-                    throw error;
-                }
+                const response = await this._client.send('Network.getResponseBody', {
+                    requestId: this._request._requestId,
+                });
+                return Buffer.from(response.body, response.base64Encoded ? 'base64' : 'utf8');
             });
         }
         return this._contentPromise;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js.map
index a52b21e..84d90be 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/HTTPResponse.js.map
@@ -1 +1 @@
-{"version":3,"file":"HTTPResponse.js","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"HTTPResponse.js","sourceRoot":"","sources":["../../../../src/common/HTTPResponse.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts
index a597898..9084c0b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts
@@ -15,8 +15,6 @@
  */
 import { CDPSession } from './Connection.js';
 import { KeyInput } from './USKeyboardLayout.js';
-import { Protocol } from 'devtools-protocol';
-import { Point } from './JSHandle.js';
 /**
  * Keyboard provides an api for managing a virtual keyboard.
  * The high level api is {@link Keyboard."type"},
@@ -302,41 +300,6 @@
      * ```
      */
     wheel(options?: MouseWheelOptions): Promise<void>;
-    /**
-     * Dispatches a `drag` event.
-     * @param start - starting point for drag
-     * @param target - point to drag to
-     */
-    drag(start: Point, target: Point): Promise<Protocol.Input.DragData>;
-    /**
-     * Dispatches a `dragenter` event.
-     * @param target - point for emitting `dragenter` event
-     * @param data - drag data containing items and operations mask
-     */
-    dragEnter(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Dispatches a `dragover` event.
-     * @param target - point for emitting `dragover` event
-     * @param data - drag data containing items and operations mask
-     */
-    dragOver(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Performs a dragenter, dragover, and drop in sequence.
-     * @param target - point to drop on
-     * @param data - drag data containing items and operations mask
-     */
-    drop(target: Point, data: Protocol.Input.DragData): Promise<void>;
-    /**
-     * Performs a drag, dragenter, dragover, and drop in sequence.
-     * @param target - point to drag from
-     * @param target - point to drop on
-     * @param options - An object of options. Accepts delay which,
-     * if specified, is the time to wait between `dragover` and `drop` in milliseconds.
-     * Defaults to 0.
-     */
-    dragAndDrop(start: Point, target: Point, options?: {
-        delay?: number;
-    }): Promise<void>;
 }
 /**
  * The Touchscreen class exposes touchscreen events.
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts.map
index 1a1c396..2da2177 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js
index 212d890..fc3fb3e 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js
@@ -428,81 +428,6 @@
             pointerType: 'mouse',
         });
     }
-    /**
-     * Dispatches a `drag` event.
-     * @param start - starting point for drag
-     * @param target - point to drag to
-     */
-    async drag(start, target) {
-        const promise = new Promise((resolve) => {
-            this._client.once('Input.dragIntercepted', (event) => resolve(event.data));
-        });
-        await this.move(start.x, start.y);
-        await this.down();
-        await this.move(target.x, target.y);
-        return promise;
-    }
-    /**
-     * Dispatches a `dragenter` event.
-     * @param target - point for emitting `dragenter` event
-     * @param data - drag data containing items and operations mask
-     */
-    async dragEnter(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'dragEnter',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Dispatches a `dragover` event.
-     * @param target - point for emitting `dragover` event
-     * @param data - drag data containing items and operations mask
-     */
-    async dragOver(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'dragOver',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Performs a dragenter, dragover, and drop in sequence.
-     * @param target - point to drop on
-     * @param data - drag data containing items and operations mask
-     */
-    async drop(target, data) {
-        await this._client.send('Input.dispatchDragEvent', {
-            type: 'drop',
-            x: target.x,
-            y: target.y,
-            modifiers: this._keyboard._modifiers,
-            data,
-        });
-    }
-    /**
-     * Performs a drag, dragenter, dragover, and drop in sequence.
-     * @param target - point to drag from
-     * @param target - point to drop on
-     * @param options - An object of options. Accepts delay which,
-     * if specified, is the time to wait between `dragover` and `drop` in milliseconds.
-     * Defaults to 0.
-     */
-    async dragAndDrop(start, target, options = {}) {
-        const { delay = null } = options;
-        const data = await this.drag(start, target);
-        await this.dragEnter(target, data);
-        await this.dragOver(target, data);
-        if (delay) {
-            await new Promise((resolve) => setTimeout(resolve, delay));
-        }
-        await this.drop(target, data);
-        await this.up();
-    }
 }
 /**
  * The Touchscreen class exposes touchscreen events.
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js.map
index 9b02046..8d24655 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Input.js.map
@@ -1 +1 @@
-{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/common/Input.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts
index 69bed40..040fd8a 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts
@@ -15,7 +15,7 @@
  */
 /// <reference types="node" />
 import { ExecutionContext } from './ExecutionContext.js';
-import { Page, ScreenshotOptions } from './Page.js';
+import { Page } from './Page.js';
 import { CDPSession } from './Connection.js';
 import { KeyInput } from './USKeyboardLayout.js';
 import { FrameManager, Frame } from './FrameManager.js';
@@ -141,7 +141,7 @@
     evaluateHandle<HandleType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandleType>;
     /** Fetches a single property from the referenced object.
      */
-    getProperty(propertyName: string): Promise<JSHandle>;
+    getProperty(propertyName: string): Promise<JSHandle | undefined>;
     /**
      * The method returns a map with property names as keys and JSHandle
      * instances for the property values.
@@ -235,10 +235,7 @@
      */
     contentFrame(): Promise<Frame | null>;
     private _scrollIntoViewIfNeeded;
-    /**
-     * Returns the middle point within an element unless a specific offset is provided.
-     */
-    clickablePoint(offset?: Offset): Promise<Point>;
+    private _clickablePoint;
     private _getBoxModel;
     private _fromProtocolQuad;
     private _intersectQuadWithViewport;
@@ -255,28 +252,6 @@
      */
     click(options?: ClickOptions): Promise<void>;
     /**
-     * This method creates and captures a dragevent from the element.
-     */
-    drag(target: Point): Promise<Protocol.Input.DragData>;
-    /**
-     * This method creates a `dragenter` event on the element.
-     */
-    dragEnter(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method creates a `dragover` event on the element.
-     */
-    dragOver(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a drop on the element.
-     */
-    drop(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a dragenter, dragover, and drop on the element.
-     */
-    dragAndDrop(target: ElementHandle, options?: {
-        delay: number;
-    }): Promise<void>;
-    /**
      * Triggers a `change` and `input` event once all the provided options have been
      * selected. If there's no `<select>` element matching `selector`, the method
      * throws an error.
@@ -368,7 +343,7 @@
      * {@link Page.screenshot} to take a screenshot of the element.
      * If the element is detached from DOM, the method throws an error.
      */
-    screenshot(options?: ScreenshotOptions): Promise<string | Buffer>;
+    screenshot(options?: {}): Promise<string | Buffer | void>;
     /**
      * Runs `element.querySelector` within the page. If no element matches the selector,
      * the return value resolves to `null`.
@@ -428,22 +403,7 @@
     /**
      * Resolves to true if the element is visible in the current viewport.
      */
-    isIntersectingViewport(options?: {
-        threshold?: number;
-    }): Promise<boolean>;
-}
-/**
- * @public
- */
-export interface Offset {
-    /**
-     * x-offset for the clickable point relative to the top-left corder of the border box.
-     */
-    x: number;
-    /**
-     * y-offset for the clickable point relative to the top-left corder of the border box.
-     */
-    y: number;
+    isIntersectingViewport(): Promise<boolean>;
 }
 /**
  * @public
@@ -463,10 +423,6 @@
      * @defaultValue 1
      */
     clickCount?: number;
-    /**
-     * Offset for the clickable point relative to the top-left corder of the border box.
-     */
-    offset?: Offset;
 }
 /**
  * @public
@@ -481,11 +437,4 @@
      */
     text?: string;
 }
-/**
- * @public
- */
-export interface Point {
-    x: number;
-    y: number;
-}
 //# sourceMappingURL=JSHandle.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts.map
index f1f1047..e77528b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"JSHandle.d.ts","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"JSHandle.d.ts","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js
index a0ca88f..ce828b0 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js
@@ -105,8 +105,7 @@
             return result;
         }, propertyName);
         const properties = await objectHandle.getProperties();
-        const result = properties.get(propertyName);
-        assert(result instanceof JSHandle);
+        const result = properties.get(propertyName) || null;
         await objectHandle.dispose();
         return result;
     }
@@ -294,10 +293,7 @@
         if (error)
             throw new Error(error);
     }
-    /**
-     * Returns the middle point within an element unless a specific offset is provided.
-     */
-    async clickablePoint(offset) {
+    async _clickablePoint() {
         const [result, layoutMetrics] = await Promise.all([
             this._client
                 .send('DOM.getContentQuads', {
@@ -307,38 +303,17 @@
             this._client.send('Page.getLayoutMetrics'),
         ]);
         if (!result || !result.quads.length)
-            throw new Error('Node is either not clickable or not an HTMLElement');
+            throw new Error('Node is either not visible or not an HTMLElement');
         // Filter out quads that have too small area to click into.
-        // Fallback to `layoutViewport` in case of using Firefox.
-        const { clientWidth, clientHeight } = layoutMetrics.cssLayoutViewport || layoutMetrics.layoutViewport;
+        const { clientWidth, clientHeight } = layoutMetrics.layoutViewport;
         const quads = result.quads
             .map((quad) => this._fromProtocolQuad(quad))
             .map((quad) => this._intersectQuadWithViewport(quad, clientWidth, clientHeight))
             .filter((quad) => computeQuadArea(quad) > 1);
         if (!quads.length)
-            throw new Error('Node is either not clickable or not an HTMLElement');
-        const quad = quads[0];
-        if (offset) {
-            // Return the point of the first quad identified by offset.
-            let minX = Number.MAX_SAFE_INTEGER;
-            let minY = Number.MAX_SAFE_INTEGER;
-            for (const point of quad) {
-                if (point.x < minX) {
-                    minX = point.x;
-                }
-                if (point.y < minY) {
-                    minY = point.y;
-                }
-            }
-            if (minX !== Number.MAX_SAFE_INTEGER &&
-                minY !== Number.MAX_SAFE_INTEGER) {
-                return {
-                    x: minX + offset.x,
-                    y: minY + offset.y,
-                };
-            }
-        }
+            throw new Error('Node is either not visible or not an HTMLElement');
         // Return the middle point of the first quad.
+        const quad = quads[0];
         let x = 0;
         let y = 0;
         for (const point of quad) {
@@ -379,7 +354,7 @@
      */
     async hover() {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint();
+        const { x, y } = await this._clickablePoint();
         await this._page.mouse.move(x, y);
     }
     /**
@@ -389,52 +364,10 @@
      */
     async click(options = {}) {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint(options.offset);
+        const { x, y } = await this._clickablePoint();
         await this._page.mouse.click(x, y, options);
     }
     /**
-     * This method creates and captures a dragevent from the element.
-     */
-    async drag(target) {
-        assert(this._page.isDragInterceptionEnabled(), 'Drag Interception is not enabled!');
-        await this._scrollIntoViewIfNeeded();
-        const start = await this.clickablePoint();
-        return await this._page.mouse.drag(start, target);
-    }
-    /**
-     * This method creates a `dragenter` event on the element.
-     */
-    async dragEnter(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const target = await this.clickablePoint();
-        await this._page.mouse.dragEnter(target, data);
-    }
-    /**
-     * This method creates a `dragover` event on the element.
-     */
-    async dragOver(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const target = await this.clickablePoint();
-        await this._page.mouse.dragOver(target, data);
-    }
-    /**
-     * This method triggers a drop on the element.
-     */
-    async drop(data = { items: [], dragOperationsMask: 1 }) {
-        await this._scrollIntoViewIfNeeded();
-        const destination = await this.clickablePoint();
-        await this._page.mouse.drop(destination, data);
-    }
-    /**
-     * This method triggers a dragenter, dragover, and drop on the element.
-     */
-    async dragAndDrop(target, options) {
-        await this._scrollIntoViewIfNeeded();
-        const startPoint = await this.clickablePoint();
-        const targetPoint = await target.clickablePoint();
-        await this._page.mouse.dragAndDrop(startPoint, targetPoint, options);
-    }
-    /**
      * Triggers a `change` and `input` event once all the provided options have been
      * selected. If there's no `<select>` element matching `selector`, the method
      * throws an error.
@@ -538,7 +471,7 @@
      */
     async tap() {
         await this._scrollIntoViewIfNeeded();
-        const { x, y } = await this.clickablePoint();
+        const { x, y } = await this._clickablePoint();
         await this._page.touchscreen.tap(x, y);
     }
     /**
@@ -653,9 +586,7 @@
         assert(boundingBox, 'Node is either not visible or not an HTMLElement');
         assert(boundingBox.width !== 0, 'Node has 0 width.');
         assert(boundingBox.height !== 0, 'Node has 0 height.');
-        const layoutMetrics = await this._client.send('Page.getLayoutMetrics');
-        // Fallback to `layoutViewport` in case of using Firefox.
-        const { pageX, pageY } = layoutMetrics.cssLayoutViewport || layoutMetrics.layoutViewport;
+        const { layoutViewport: { pageX, pageY }, } = await this._client.send('Page.getLayoutMetrics');
         const clip = Object.assign({}, boundingBox);
         clip.x += pageX;
         clip.y += pageY;
@@ -774,9 +705,8 @@
     /**
      * Resolves to true if the element is visible in the current viewport.
      */
-    async isIntersectingViewport(options) {
-        const { threshold = 0 } = options || {};
-        return await this.evaluate(async (element, threshold) => {
+    async isIntersectingViewport() {
+        return await this.evaluate(async (element) => {
             const visibleRatio = await new Promise((resolve) => {
                 const observer = new IntersectionObserver((entries) => {
                     resolve(entries[0].intersectionRatio);
@@ -784,8 +714,8 @@
                 });
                 observer.observe(element);
             });
-            return threshold === 1 ? visibleRatio === 1 : visibleRatio > threshold;
-        }, threshold);
+            return visibleRatio > 0;
+        });
     }
 }
 function computeQuadArea(quad) {
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js.map
index 2d8193a..172dadb 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/JSHandle.js.map
@@ -1 +1 @@
-{"version":3,"file":"JSHandle.js","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"JSHandle.js","sourceRoot":"","sources":["../../../../src/common/JSHandle.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts
index 240c0ed..6d45c32 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts
@@ -52,7 +52,7 @@
     constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[], timeout: number);
     _onRequest(request: HTTPRequest): void;
     _onFrameDetached(frame: Frame): void;
-    navigationResponse(): Promise<HTTPResponse | null>;
+    navigationResponse(): HTTPResponse | null;
     _terminate(error: Error): void;
     sameDocumentNavigationPromise(): Promise<Error | null>;
     newDocumentNavigationPromise(): Promise<Error | null>;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map
index a0e575e..a990d51 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"LifecycleWatcher.d.ts","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EAAU,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,KAAK,EAEN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD;;GAEG;AACH,oBAAY,uBAAuB,GAC/B,MAAM,GACN,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB;;GAEG;AACH,oBAAY,sBAAsB,GAC9B,MAAM,GACN,kBAAkB,GAClB,aAAa,GACb,mBAAmB,CAAC;AAYxB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;IAC7C,aAAa,EAAE,YAAY,CAAC;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,eAAe,EAAE,sBAAsB,EAAE,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,8BAA8B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACtD,uCAAuC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE7D,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAE/B,6BAA6B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,sCAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE5D,mBAAmB,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC3C,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,eAAe,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE9C,aAAa,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,OAAO,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,EAC9D,OAAO,EAAE,MAAM;IAmEjB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAMtC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAW9B,kBAAkB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKxD,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI9B,6BAA6B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAItD,4BAA4B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAIrD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,2BAA2B,IAAI,OAAO,CAAC,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAInE,qBAAqB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IASrD,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5C,uBAAuB,IAAI,IAAI;IAiC/B,OAAO,IAAI,IAAI;CAIhB"}
\ No newline at end of file
+{"version":3,"file":"LifecycleWatcher.d.ts","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;;AAGH,OAAO,EAAU,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,KAAK,EAEN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD;;GAEG;AACH,oBAAY,uBAAuB,GAC/B,MAAM,GACN,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB;;GAEG;AACH,oBAAY,sBAAsB,GAC9B,MAAM,GACN,kBAAkB,GAClB,aAAa,GACb,mBAAmB,CAAC;AAYxB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,kBAAkB,EAAE,sBAAsB,EAAE,CAAC;IAC7C,aAAa,EAAE,YAAY,CAAC;IAC5B,MAAM,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,eAAe,EAAE,sBAAsB,EAAE,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,8BAA8B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACtD,uCAAuC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE7D,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAE/B,6BAA6B,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACrD,sCAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE5D,mBAAmB,EAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC3C,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,eAAe,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE9C,aAAa,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,OAAO,CAAC;gBAGnC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,uBAAuB,GAAG,uBAAuB,EAAE,EAC9D,OAAO,EAAE,MAAM;IAmEjB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAMtC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAWpC,kBAAkB,IAAI,YAAY,GAAG,IAAI;IAIzC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAI9B,6BAA6B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAItD,4BAA4B,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAIrD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,2BAA2B,IAAI,OAAO,CAAC,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAInE,qBAAqB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IASrD,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAM5C,uBAAuB,IAAI,IAAI;IAiC/B,OAAO,IAAI,IAAI;CAIhB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js
index bd35cbe..b184fa7 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js
@@ -78,8 +78,7 @@
         }
         this._checkLifecycleComplete();
     }
-    async navigationResponse() {
-        // We may need to wait for ExtraInfo events before the request is complete.
+    navigationResponse() {
         return this._navigationRequest ? this._navigationRequest.response() : null;
     }
     _terminate(error) {
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js.map
index c3bd16b..030cfdf 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/LifecycleWatcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"LifecycleWatcher.js","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"LifecycleWatcher.js","sourceRoot":"","sources":["../../../../src/common/LifecycleWatcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts
index e809755..1d4a191 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts
@@ -13,10 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
 import { EventEmitter } from './EventEmitter.js';
-import { Frame } from './FrameManager.js';
 import { Protocol } from 'devtools-protocol';
+import { CDPSession } from './Connection.js';
+import { FrameManager } from './FrameManager.js';
 import { HTTPRequest } from './HTTPRequest.js';
 /**
  * @public
@@ -52,12 +52,6 @@
     readonly RequestFailed: symbol;
     readonly RequestFinished: symbol;
 };
-interface CDPSession extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
-interface FrameManager {
-    frame(frameId: string): Frame | null;
-}
 /**
  * @internal
  */
@@ -68,18 +62,6 @@
     _requestIdToRequestWillBeSentEvent: Map<string, Protocol.Network.RequestWillBeSentEvent>;
     _requestIdToRequestPausedEvent: Map<string, Protocol.Fetch.RequestPausedEvent>;
     _requestIdToRequest: Map<string, HTTPRequest>;
-    _requestIdToResponseReceivedExtraInfo: Map<string, Protocol.Network.ResponseReceivedExtraInfoEvent[]>;
-    _requestIdToQueuedRedirectInfoMap: Map<string, {
-        event: Protocol.Network.RequestWillBeSentEvent;
-        interceptionId?: string;
-    }[]>;
-    _requestIdToQueuedEvents: Map<string, {
-        responseReceived: Protocol.Network.ResponseReceivedEvent;
-        promise: Promise<void>;
-        resolver: () => void;
-        loadingFinished?: Protocol.Network.LoadingFinishedEvent;
-        loadingFailed?: Protocol.Network.LoadingFailedEvent;
-    }>;
     _extraHTTPHeaders: Record<string, string>;
     _credentials?: Credentials;
     _attemptedAuthentications: Set<string>;
@@ -92,11 +74,10 @@
     authenticate(credentials?: Credentials): Promise<void>;
     setExtraHTTPHeaders(extraHTTPHeaders: Record<string, string>): Promise<void>;
     extraHTTPHeaders(): Record<string, string>;
-    numRequestsInProgress(): number;
     setOfflineMode(value: boolean): Promise<void>;
     emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
     _updateNetworkConditions(): Promise<void>;
-    setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
+    setUserAgent(userAgent: string): Promise<void>;
     setCacheEnabled(enabled: boolean): Promise<void>;
     setRequestInterception(value: boolean): Promise<void>;
     _updateProtocolRequestInterception(): Promise<void>;
@@ -105,23 +86,12 @@
     _onRequestWillBeSent(event: Protocol.Network.RequestWillBeSentEvent): void;
     _onAuthRequired(event: Protocol.Fetch.AuthRequiredEvent): void;
     _onRequestPaused(event: Protocol.Fetch.RequestPausedEvent): void;
-    _requestIdToQueuedRedirectInfo(requestId: string): Array<{
-        event: Protocol.Network.RequestWillBeSentEvent;
-        interceptionId?: string;
-    }>;
-    _requestIdToResponseExtraInfo(requestId: string): Protocol.Network.ResponseReceivedExtraInfoEvent[];
     _onRequest(event: Protocol.Network.RequestWillBeSentEvent, interceptionId?: string): void;
     _onRequestServedFromCache(event: Protocol.Network.RequestServedFromCacheEvent): void;
-    _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
-    _emitResponseEvent(responseReceived: Protocol.Network.ResponseReceivedEvent, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): void;
+    _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response): void;
     _onResponseReceived(event: Protocol.Network.ResponseReceivedEvent): void;
-    responseWaitingForExtraInfoPromise(requestId: string): Promise<void>;
-    _onResponseReceivedExtraInfo(event: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
     _forgetRequest(request: HTTPRequest, events: boolean): void;
     _onLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
-    _emitLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
     _onLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
-    _emitLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
 }
-export {};
 //# sourceMappingURL=NetworkManager.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts.map
index 0df7666..f08b36f 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"NetworkManager.d.ts","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"NetworkManager.d.ts","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js
index eb3d3de..778c529 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js
@@ -70,18 +70,6 @@
         this._requestIdToRequestWillBeSentEvent = new Map();
         this._requestIdToRequestPausedEvent = new Map();
         this._requestIdToRequest = new Map();
-        /*
-         * The below maps are used to reconcile Network.responseReceivedExtraInfo
-         * events with their corresponding request. Each response and redirect
-         * response gets an ExtraInfo event, and we don't know which will come first.
-         * This means that we have to store a Response or an ExtraInfo for each
-         * response, and emit the event when we get both of them. In addition, to
-         * handle redirects, we have to make them Arrays to represent the chain of
-         * events.
-         */
-        this._requestIdToResponseReceivedExtraInfo = new Map();
-        this._requestIdToQueuedRedirectInfoMap = new Map();
-        this._requestIdToQueuedEvents = new Map();
         this._extraHTTPHeaders = {};
         this._credentials = null;
         this._attemptedAuthentications = new Set();
@@ -104,7 +92,6 @@
         this._client.on('Network.responseReceived', this._onResponseReceived.bind(this));
         this._client.on('Network.loadingFinished', this._onLoadingFinished.bind(this));
         this._client.on('Network.loadingFailed', this._onLoadingFailed.bind(this));
-        this._client.on('Network.responseReceivedExtraInfo', this._onResponseReceivedExtraInfo.bind(this));
     }
     async initialize() {
         await this._client.send('Network.enable');
@@ -131,11 +118,6 @@
     extraHTTPHeaders() {
         return Object.assign({}, this._extraHTTPHeaders);
     }
-    numRequestsInProgress() {
-        return [...this._requestIdToRequest].filter(([, request]) => {
-            return !request.response();
-        }).length;
-    }
     async setOfflineMode(value) {
         this._emulatedNetworkConditions.offline = value;
         await this._updateNetworkConditions();
@@ -160,11 +142,8 @@
             downloadThroughput: this._emulatedNetworkConditions.download,
         });
     }
-    async setUserAgent(userAgent, userAgentMetadata) {
-        await this._client.send('Network.setUserAgentOverride', {
-            userAgent: userAgent,
-            userAgentMetadata: userAgentMetadata,
-        });
+    async setUserAgent(userAgent) {
+        await this._client.send('Network.setUserAgentOverride', { userAgent });
     }
     async setCacheEnabled(enabled) {
         this._userCacheDisabled = !enabled;
@@ -269,44 +248,14 @@
             this._requestIdToRequestPausedEvent.set(requestId, event);
         }
     }
-    _requestIdToQueuedRedirectInfo(requestId) {
-        if (!this._requestIdToQueuedRedirectInfoMap.has(requestId)) {
-            this._requestIdToQueuedRedirectInfoMap.set(requestId, []);
-        }
-        return this._requestIdToQueuedRedirectInfoMap.get(requestId);
-    }
-    _requestIdToResponseExtraInfo(requestId) {
-        if (!this._requestIdToResponseReceivedExtraInfo.has(requestId)) {
-            this._requestIdToResponseReceivedExtraInfo.set(requestId, []);
-        }
-        return this._requestIdToResponseReceivedExtraInfo.get(requestId);
-    }
     _onRequest(event, interceptionId) {
         let redirectChain = [];
         if (event.redirectResponse) {
-            // We want to emit a response and requestfinished for the
-            // redirectResponse, but we can't do so unless we have a
-            // responseExtraInfo ready to pair it up with. If we don't have any
-            // responseExtraInfos saved in our queue, they we have to wait until
-            // the next one to emit response and requestfinished, *and* we should
-            // also wait to emit this Request too because it should come after the
-            // response/requestfinished.
-            let redirectResponseExtraInfo = null;
-            if (event.redirectHasExtraInfo) {
-                redirectResponseExtraInfo = this._requestIdToResponseExtraInfo(event.requestId).shift();
-                if (!redirectResponseExtraInfo) {
-                    this._requestIdToQueuedRedirectInfo(event.requestId).push({
-                        event,
-                        interceptionId,
-                    });
-                    return;
-                }
-            }
             const request = this._requestIdToRequest.get(event.requestId);
             // If we connect late to the target, we could have missed the
             // requestWillBeSent event.
             if (request) {
-                this._handleRequestRedirect(request, event.redirectResponse, redirectResponseExtraInfo);
+                this._handleRequestRedirect(request, event.redirectResponse);
                 redirectChain = request._redirectChain;
             }
         }
@@ -316,7 +265,6 @@
         const request = new HTTPRequest(this._client, frame, interceptionId, this._userRequestInterceptionEnabled, event, redirectChain);
         this._requestIdToRequest.set(event.requestId, request);
         this.emit(NetworkManagerEmittedEvents.Request, request);
-        request.finalizeInterceptions();
     }
     _onRequestServedFromCache(event) {
         const request = this._requestIdToRequest.get(event.requestId);
@@ -324,8 +272,8 @@
             request._fromMemoryCache = true;
         this.emit(NetworkManagerEmittedEvents.RequestServedFromCache, request);
     }
-    _handleRequestRedirect(request, responsePayload, extraInfo) {
-        const response = new HTTPResponse(this._client, request, responsePayload, extraInfo);
+    _handleRequestRedirect(request, responsePayload) {
+        const response = new HTTPResponse(this._client, request, responsePayload);
         request._response = response;
         request._redirectChain.push(request);
         response._resolveBody(new Error('Response body is unavailable for redirect responses'));
@@ -333,72 +281,15 @@
         this.emit(NetworkManagerEmittedEvents.Response, response);
         this.emit(NetworkManagerEmittedEvents.RequestFinished, request);
     }
-    _emitResponseEvent(responseReceived, extraInfo) {
-        const request = this._requestIdToRequest.get(responseReceived.requestId);
+    _onResponseReceived(event) {
+        const request = this._requestIdToRequest.get(event.requestId);
         // FileUpload sends a response without a matching request.
         if (!request)
             return;
-        const extraInfos = this._requestIdToResponseExtraInfo(responseReceived.requestId);
-        if (extraInfos.length) {
-            debugError(new Error('Unexpected extraInfo events for request ' +
-                responseReceived.requestId));
-        }
-        const response = new HTTPResponse(this._client, request, responseReceived.response, extraInfo);
+        const response = new HTTPResponse(this._client, request, event.response);
         request._response = response;
         this.emit(NetworkManagerEmittedEvents.Response, response);
     }
-    _onResponseReceived(event) {
-        const request = this._requestIdToRequest.get(event.requestId);
-        let extraInfo = null;
-        if (request && !request._fromMemoryCache && event.hasExtraInfo) {
-            extraInfo = this._requestIdToResponseExtraInfo(event.requestId).shift();
-            if (!extraInfo) {
-                // Wait until we get the corresponding ExtraInfo event.
-                let resolver = null;
-                const promise = new Promise((resolve) => (resolver = resolve));
-                this._requestIdToQueuedEvents.set(event.requestId, {
-                    responseReceived: event,
-                    promise,
-                    resolver,
-                });
-                return;
-            }
-        }
-        this._emitResponseEvent(event, extraInfo);
-    }
-    responseWaitingForExtraInfoPromise(requestId) {
-        const responseReceived = this._requestIdToQueuedEvents.get(requestId);
-        if (!responseReceived)
-            return Promise.resolve();
-        return responseReceived.promise;
-    }
-    _onResponseReceivedExtraInfo(event) {
-        // We may have skipped a redirect response/request pair due to waiting for
-        // this ExtraInfo event. If so, continue that work now that we have the
-        // request.
-        const redirectInfo = this._requestIdToQueuedRedirectInfo(event.requestId).shift();
-        if (redirectInfo) {
-            this._requestIdToResponseExtraInfo(event.requestId).push(event);
-            this._onRequest(redirectInfo.event, redirectInfo.interceptionId);
-            return;
-        }
-        // We may have skipped response and loading events because we didn't have
-        // this ExtraInfo event yet. If so, emit those events now.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            this._emitResponseEvent(queuedEvents.responseReceived, event);
-            if (queuedEvents.loadingFinished) {
-                this._emitLoadingFinished(queuedEvents.loadingFinished);
-            }
-            if (queuedEvents.loadingFailed) {
-                this._emitLoadingFailed(queuedEvents.loadingFailed);
-            }
-            queuedEvents.resolver();
-            return;
-        }
-        // Wait until we get another event that can use this ExtraInfo event.
-        this._requestIdToResponseExtraInfo(event.requestId).push(event);
-    }
     _forgetRequest(request, events) {
         const requestId = request._requestId;
         const interceptionId = request._interceptionId;
@@ -407,23 +298,9 @@
         if (events) {
             this._requestIdToRequestWillBeSentEvent.delete(requestId);
             this._requestIdToRequestPausedEvent.delete(requestId);
-            this._requestIdToQueuedEvents.delete(requestId);
-            this._requestIdToQueuedRedirectInfoMap.delete(requestId);
-            this._requestIdToResponseReceivedExtraInfo.delete(requestId);
         }
     }
     _onLoadingFinished(event) {
-        // If the response event for this request is still waiting on a
-        // corresponding ExtraInfo event, then wait to emit this event too.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            queuedEvents.loadingFinished = event;
-        }
-        else {
-            this._emitLoadingFinished(event);
-        }
-    }
-    _emitLoadingFinished(event) {
         const request = this._requestIdToRequest.get(event.requestId);
         // For certain requestIds we never receive requestWillBeSent event.
         // @see https://crbug.com/750469
@@ -437,17 +314,6 @@
         this.emit(NetworkManagerEmittedEvents.RequestFinished, request);
     }
     _onLoadingFailed(event) {
-        // If the response event for this request is still waiting on a
-        // corresponding ExtraInfo event, then wait to emit this event too.
-        const queuedEvents = this._requestIdToQueuedEvents.get(event.requestId);
-        if (queuedEvents) {
-            queuedEvents.loadingFailed = event;
-        }
-        else {
-            this._emitLoadingFailed(event);
-        }
-    }
-    _emitLoadingFailed(event) {
         const request = this._requestIdToRequest.get(event.requestId);
         // For certain requestIds we never receive requestWillBeSent event.
         // @see https://crbug.com/750469
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js.map
index a959964..6463281 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/NetworkManager.js.map
@@ -1 +1 @@
-{"version":3,"file":"NetworkManager.js","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"NetworkManager.js","sourceRoot":"","sources":["../../../../src/common/NetworkManager.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts
index 473c383..65e8b24 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts
@@ -142,11 +142,6 @@
      * @defaultValue false
      */
     omitBackground?: boolean;
-    /**
-     * Timeout in milliseconds
-     * @defaultValue 30000
-     */
-    timeout?: number;
 }
 /**
  * @internal
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts.map
index d07ae26..79927be 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"PDFOptions.d.ts","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,oBAAY,WAAW,GACnB,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,qBAAqB,CAY1D,CAAC"}
\ No newline at end of file
+{"version":3,"file":"PDFOptions.d.ts","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,oBAAY,WAAW,GACnB,QAAQ,GACR,OAAO,GACP,SAAS,GACT,QAAQ,GACR,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,qBAAqB,CAY1D,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.js.map
index b633b818..540567d 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/PDFOptions.js.map
@@ -1 +1 @@
-{"version":3,"file":"PDFOptions.js","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+JH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAA+C;IACtE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CACzB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"PDFOptions.js","sourceRoot":"","sources":["../../../../src/common/PDFOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA0JH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAA+C;IACtE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IAClC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;IAClC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACjC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;CACzB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts
index 2957142..0c20aeb 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 /// <reference types="node" />
-import type { Readable } from 'stream';
 import { EventEmitter } from './EventEmitter.js';
 import { CDPSession } from './Connection.js';
 import { Dialog } from './Dialog.js';
@@ -37,7 +36,6 @@
 import { Protocol } from 'devtools-protocol';
 import { SerializableOrJSHandle, EvaluateHandleFn, WrapElementHandle, EvaluateFn, EvaluateFnReturnType, UnwrapPromiseLike } from './EvalTypes.js';
 import { PDFOptions } from './PDFOptions.js';
-import { TaskQueue } from './TaskQueue.js';
 /**
  * @public
  */
@@ -126,7 +124,7 @@
     /**
      * @defaultValue 'png'
      */
-    type?: 'png' | 'jpeg' | 'webp';
+    type?: 'png' | 'jpeg';
     /**
      * The file path to save the image to. The screenshot type will be inferred
      * from file extension. If path is a relative path, then it is resolved
@@ -169,9 +167,7 @@
  * @public
  */
 export declare const enum PageEmittedEvents {
-    /** Emitted when the page closes.
-     * @eventProperty
-     */
+    /** Emitted when the page closes. */
     Close = "close",
     /**
      * Emitted when JavaScript within the page calls one of console API methods,
@@ -386,7 +382,7 @@
     /**
      * @internal
      */
-    static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue): Promise<Page>;
+    static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null): Promise<Page>;
     private _closed;
     private _client;
     private _target;
@@ -406,19 +402,13 @@
     private _workers;
     private _fileChooserInterceptors;
     private _disconnectPromise?;
-    private _userDragInterceptionEnabled;
-    private _handlerMap;
     /**
      * @internal
      */
-    constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, screenshotTaskQueue: TaskQueue);
+    constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean);
     private _initialize;
     private _onFileChooser;
     /**
-     * @returns `true` if drag events are being intercepted, `false` otherwise.
-     */
-    isDragInterceptionEnabled(): boolean;
-    /**
      * @returns `true` if the page has JavaScript enabled, `false` otherwise.
      */
     isJavaScriptEnabled(): boolean;
@@ -427,35 +417,18 @@
      */
     on<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
     once<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
-    off<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
     /**
-     * This method is typically coupled with an action that triggers file
-     * choosing. The following example clicks a button that issues a file chooser
-     * and then responds with `/tmp/myfile.pdf` as if a user has selected this file.
-     *
-     * ```js
-     * const [fileChooser] = await Promise.all([
-     * page.waitForFileChooser(),
-     * page.click('#upload-file-button'),
-     * // some button that triggers file selection
-     * ]);
-     * await fileChooser.accept(['/tmp/myfile.pdf']);
-     * ```
-     *
-     * NOTE: This must be called before the file chooser is launched. It will not
-     * return a currently active file chooser.
      * @param options - Optional waiting parameters
      * @returns Resolves after a page requests a file picker.
-     * @remarks
-     * NOTE: In non-headless Chromium, this method results in the native file picker
-     * dialog `not showing up` for the user.
      */
     waitForFileChooser(options?: WaitTimeoutOptions): Promise<FileChooser>;
     /**
      * Sets the page's geolocation.
+     *
      * @remarks
-     * NOTE: Consider using {@link BrowserContext.overridePermissions} to grant
+     * Consider using {@link BrowserContext.overridePermissions} to grant
      * permissions for the page to read its geolocation.
+     *
      * @example
      * ```js
      * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
@@ -467,24 +440,17 @@
      */
     target(): Target;
     /**
-     * Get the CDP session client the page belongs to.
-     * @internal
-     */
-    client(): CDPSession;
-    /**
-     * Get the browser the page belongs to.
+     * @returns The browser this page belongs to.
      */
     browser(): Browser;
     /**
-     * Get the browser context that the page belongs to.
+     * @returns The browser context that the page belongs to
      */
     browserContext(): BrowserContext;
     private _onTargetCrashed;
     private _onLogEntryAdded;
     /**
      * @returns The page's main frame.
-     * @remarks
-     * Page is guaranteed to have a main frame which persists during navigations.
      */
     mainFrame(): Frame;
     get keyboard(): Keyboard;
@@ -498,11 +464,8 @@
     frames(): Frame[];
     /**
      * @returns all of the dedicated
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
-     * WebWorkers}
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorkers}
      * associated with the page.
-     * @remarks
-     * NOTE: This does not contain ServiceWorkers
      */
     workers(): WebWorker[];
     /**
@@ -535,63 +498,14 @@
      *   await browser.close();
      * })();
      * ```
-     * NOTE: Enabling request interception disables page caching.
      */
     setRequestInterception(value: boolean): Promise<void>;
     /**
-     * @param enabled - Whether to enable drag interception.
-     *
-     * @remarks
-     * Activating drag interception enables the `Input.drag`,
-     * methods  This provides the capability to capture drag events emitted
-     * on the page, which can then be used to simulate drag-and-drop.
-     */
-    setDragInterception(enabled: boolean): Promise<void>;
-    /**
      * @param enabled - When `true`, enables offline mode for the page.
-     * @remarks
-     * NOTE: while this method sets the network connection to offline, it does
-     * not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
-     * (#pageemulatenetworkconditionsnetworkconditions)
      */
     setOfflineMode(enabled: boolean): Promise<void>;
-    /**
-     * @param networkConditions - Passing `null` disables network condition emulation.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const slow3G = puppeteer.networkConditions['Slow 3G'];
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulateNetworkConditions(slow3G);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks
-     * NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
-     * https://crbug.com/563644). To set the page offline, you can use
-     * [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
-     */
     emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
     /**
-     * This setting will change the default maximum navigation time for the
-     * following methods and related shortcuts:
-     *
-     * - {@link Page.goBack | page.goBack(options)}
-     *
-     * - {@link Page.goForward | page.goForward(options)}
-     *
-     * - {@link Page.goto | page.goto(url,options)}
-     *
-     * - {@link Page.reload | page.reload(options)}
-     *
-     * - {@link Page.setContent | page.setContent(html,options)}
-     *
-     * - {@link Page.waitForNavigation | page.waitForNavigation(options)}
      * @param timeout - Maximum navigation time in milliseconds.
      */
     setDefaultNavigationTimeout(timeout: number): void;
@@ -666,9 +580,6 @@
      * given prototype.
      *
      * @remarks
-     * Shortcut for
-     * {@link ExecutionContext.queryObjects |
-     * page.mainFrame().executionContext().queryObjects(prototypeHandle)}.
      *
      * @example
      *
@@ -685,8 +596,6 @@
      * await mapPrototype.dispose();
      * ```
      * @param prototypeHandle - a handle to the object prototype.
-     * @returns Promise which resolves to a handle to an array of objects with
-     * this prototype.
      */
     queryObjects(prototypeHandle: JSHandle): Promise<JSHandle>;
     /**
@@ -811,22 +720,7 @@
      * returned.
      */
     $$eval<ReturnType>(selector: string, pageFunction: (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
-    /**
-     * The method runs `document.querySelectorAll` within the page. If no elements
-     * match the selector, the return value resolves to `[]`.
-     * @remarks
-     * Shortcut for {@link Frame.$$ | Page.mainFrame().$$(selector) }.
-     * @param selector - A `selector` to query page for
-     */
     $$<T extends Element = Element>(selector: string): Promise<Array<ElementHandle<T>>>;
-    /**
-     * The method evaluates the XPath expression relative to the page document as
-     * its context node. If there are no such elements, the method resolves to an
-     * empty array.
-     * @remarks
-     * Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
-     * @param expression - Expression to evaluate
-     */
     $x(expression: string): Promise<ElementHandle[]>;
     /**
      * If no URLs are specified, this method returns cookies for the current page
@@ -834,157 +728,22 @@
      */
     cookies(...urls: string[]): Promise<Protocol.Network.Cookie[]>;
     deleteCookie(...cookies: Protocol.Network.DeleteCookiesRequest[]): Promise<void>;
-    /**
-     * @example
-     * ```js
-     * await page.setCookie(cookieObject1, cookieObject2);
-     * ```
-     */
     setCookie(...cookies: Protocol.Network.CookieParam[]): Promise<void>;
-    /**
-     * Adds a `<script>` tag into the page with the desired URL or content.
-     * @remarks
-     * Shortcut for {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options) }.
-     * @returns Promise which resolves to the added tag when the script's onload fires or
-     * when the script content was injected into frame.
-     */
     addScriptTag(options: {
         url?: string;
         path?: string;
         content?: string;
         type?: string;
-        id?: string;
     }): Promise<ElementHandle>;
-    /**
-     * Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a
-     * `<style type="text/css">` tag with the content.
-     * @returns Promise which resolves to the added tag when the stylesheet's
-     * onload fires or when the CSS content was injected into frame.
-     */
     addStyleTag(options: {
         url?: string;
         path?: string;
         content?: string;
     }): Promise<ElementHandle>;
-    /**
-     * The method adds a function called `name` on the page's `window` object. When
-     * called, the function executes `puppeteerFunction` in node.js and returns a
-     * `Promise` which resolves to the return value of `puppeteerFunction`.
-     *
-     * If the puppeteerFunction returns a `Promise`, it will be awaited.
-     *
-     * NOTE: Functions installed via `page.exposeFunction` survive navigations.
-     * @param name - Name of the function on the window object
-     * @param puppeteerFunction -  Callback function which will be called in
-     * Puppeteer's context.
-     * @example
-     * An example of adding an `md5` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const crypto = require('crypto');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('md5', (text) =>
-     * crypto.createHash('md5').update(text).digest('hex')
-     * );
-     * await page.evaluate(async () => {
-     * // use window.md5 to compute hashes
-     * const myString = 'PUPPETEER';
-     * const myHash = await window.md5(myString);
-     * console.log(`md5 of ${myString} is ${myHash}`);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     * An example of adding a `window.readfile` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const fs = require('fs');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('readfile', async (filePath) => {
-     * return new Promise((resolve, reject) => {
-     * fs.readFile(filePath, 'utf8', (err, text) => {
-     *    if (err) reject(err);
-     *    else resolve(text);
-     *  });
-     * });
-     * });
-     * await page.evaluate(async () => {
-     * // use window.readfile to read contents of a file
-     * const content = await window.readfile('/etc/hosts');
-     * console.log(content);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     */
-    exposeFunction(name: string, puppeteerFunction: Function | {
-        default: Function;
-    }): Promise<void>;
-    /**
-     * Provide credentials for `HTTP authentication`.
-     * @remarks To disable authentication, pass `null`.
-     */
+    exposeFunction(name: string, puppeteerFunction: Function): Promise<void>;
     authenticate(credentials: Credentials): Promise<void>;
-    /**
-     * The extra HTTP headers will be sent with every request the page initiates.
-     * NOTE: All HTTP header names are lowercased. (HTTP headers are
-     * case-insensitive, so this shouldn’t impact your server code.)
-     * NOTE: page.setExtraHTTPHeaders does not guarantee the order of headers in
-     * the outgoing requests.
-     * @param headers - An object containing additional HTTP headers to be sent
-     * with every request. All header values must be strings.
-     * @returns
-     */
     setExtraHTTPHeaders(headers: Record<string, string>): Promise<void>;
-    /**
-     * @param userAgent - Specific user agent to use in this page
-     * @param userAgentData - Specific user agent client hint data to use in this
-     * page
-     * @returns Promise which resolves when the user agent is set.
-     */
-    setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
-    /**
-     * @returns Object containing metrics as key/value pairs.
-     *
-     * - `Timestamp` : The timestamp when the metrics sample was taken.
-     *
-     * - `Documents` : Number of documents in the page.
-     *
-     * - `Frames` : Number of frames in the page.
-     *
-     * - `JSEventListeners` : Number of events in the page.
-     *
-     * - `Nodes` : Number of DOM nodes in the page.
-     *
-     * - `LayoutCount` : Total number of full or partial page layout.
-     *
-     * - `RecalcStyleCount` : Total number of page style recalculations.
-     *
-     * - `LayoutDuration` : Combined durations of all page layouts.
-     *
-     * - `RecalcStyleDuration` : Combined duration of all page style
-     *   recalculations.
-     *
-     * - `ScriptDuration` : Combined duration of JavaScript execution.
-     *
-     * - `TaskDuration` : Combined duration of all tasks performed by the browser.
-     *
-     *
-     * - `JSHeapUsedSize` : Used JavaScript heap size.
-     *
-     * - `JSHeapTotalSize` : Total JavaScript heap size.
-     * @remarks
-     * NOTE: All timestamps are in monotonic time: monotonically increasing time
-     * in seconds since an arbitrary point in the past.
-     */
+    setUserAgent(userAgent: string): Promise<void>;
     metrics(): Promise<Metrics>;
     private _emitMetrics;
     private _buildMetricsObject;
@@ -1001,435 +760,33 @@
      * Hides default white background
      */
     private _setTransparentBackgroundColor;
-    /**
-     *
-     * @returns
-     * @remarks Shortcut for
-     * {@link Frame.url | page.mainFrame().url()}.
-     */
     url(): string;
     content(): Promise<string>;
-    /**
-     * @param html - HTML markup to assign to the page.
-     * @param options - Parameters that has some properties.
-     * @remarks
-     * The parameter `options` might have the following options.
-     *
-     * - `timeout` : Maximum time in milliseconds for resources to load, defaults
-     *   to 30 seconds, pass `0` to disable timeout. The default value can be
-     *   changed by using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider setting markup succeeded, defaults to `load`.
-     *    Given an array of event strings, setting content is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider setting content to be finished when the `load` event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider setting content to be finished when the
-     *   `DOMContentLoaded` event is fired.<br/>
-     *  - `networkidle0` : consider setting content to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider setting content to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     setContent(html: string, options?: WaitForOptions): Promise<void>;
-    /**
-     * @param url - URL to navigate page to. The URL should include scheme, e.g.
-     * `https://`
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be successful
-     *    after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *    DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *    more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *    more than 2 network connections for at least `500` ms.
-     *
-     * - `referer` : Referer header value. If provided it will take preference
-     *   over the referer header value set by
-     *   {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
-     *
-     * `page.goto` will throw an error if:
-     * - there's an SSL error (e.g. in case of self-signed certificates).
-     * - target URL is invalid.
-     * - the timeout is exceeded during navigation.
-     * - the remote server does not respond or is unreachable.
-     * - the main resource failed to load.
-     *
-     * `page.goto` will not throw an error when any valid HTTP status code is
-     *   returned by the remote server, including 404 "Not Found" and 500
-     *   "Internal Server Error". The status code for such responses can be
-     *   retrieved by calling response.status().
-     *
-     * NOTE: `page.goto` either throws an error or returns a main resource
-     * response. The only exceptions are navigation to about:blank or navigation
-     * to the same URL with a different hash, which would succeed and return null.
-     *
-     * NOTE: Headless mode doesn't support navigation to a PDF document. See the
-     * {@link https://bugs.chromium.org/p/chromium/issues/detail?id=761295
-     * | upstream issue}.
-     *
-     * Shortcut for {@link Frame.goto | page.mainFrame().goto(url, options)}.
-     */
     goto(url: string, options?: WaitForOptions & {
         referer?: string;
     }): Promise<HTTPResponse>;
-    /**
-     * @param options - Navigation parameters which might have the following
-     * properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     reload(options?: WaitForOptions): Promise<HTTPResponse | null>;
-    /**
-     * This resolves when the page navigates to a new URL or reloads. It is useful
-     * when you run code that will indirectly cause the page to navigate. Consider
-     * this example:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(), // The promise resolves after navigation has finished
-     * page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
-     * ]);
-     * ```
-     *
-     * @param options - Navigation parameters which might have the following properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. In case of navigation to a different anchor or navigation
-     * due to History API usage, the navigation will resolve with `null`.
-     * @remarks
-     * NOTE: Usage of the
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/History_API | History API}
-     * to change the URL is considered a navigation.
-     *
-     * Shortcut for
-     * {@link Frame.waitForNavigation | page.mainFrame().waitForNavigation(options)}.
-     */
     waitForNavigation(options?: WaitForOptions): Promise<HTTPResponse | null>;
     private _sessionClosePromise;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Waiting Parameters have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
-     * `0` to disable the timeout. The default value can be changed by using the
-     * {@link Page.setDefaultTimeout} method.
-     */
     waitForRequest(urlOrPredicate: string | ((req: HTTPRequest) => boolean | Promise<boolean>), options?: {
         timeout?: number;
     }): Promise<HTTPRequest>;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response.
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
     waitForResponse(urlOrPredicate: string | ((res: HTTPResponse) => boolean | Promise<boolean>), options?: {
         timeout?: number;
     }): Promise<HTTPResponse>;
-    /**
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when network is idle
-     */
-    waitForNetworkIdle(options?: {
-        idleTime?: number;
-        timeout?: number;
-    }): Promise<void>;
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched frame.
-     * @example
-     * ```js
-     * const frame = await page.waitForFrame(async (frame) => {
-     *   return frame.name() === 'Test';
-     * });
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
-    waitForFrame(urlOrPredicate: string | ((frame: Frame) => boolean | Promise<boolean>), options?: {
-        timeout?: number;
-    }): Promise<Frame>;
-    /**
-     * This method navigate to the previous page in history.
-     * @param options - Navigation parameters
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go back, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     goBack(options?: WaitForOptions): Promise<HTTPResponse | null>;
-    /**
-     * This method navigate to the next page in history.
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go forward, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     goForward(options?: WaitForOptions): Promise<HTTPResponse | null>;
     private _go;
-    /**
-     * Brings page to front (activates tab).
-     */
     bringToFront(): Promise<void>;
-    /**
-     * Emulates given device metrics and user agent. This method is a shortcut for
-     * calling two methods: {@link Page.setUserAgent} and {@link Page.setViewport}
-     * To aid emulation, Puppeteer provides a list of device descriptors that can
-     * be obtained via the {@link Puppeteer.devices} `page.emulate` will resize
-     * the page. A lot of websites don't expect phones to change size, so you
-     * should emulate before navigating to the page.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const iPhone = puppeteer.devices['iPhone 6'];
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulate(iPhone);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks List of all available devices is available in the source code:
-     * {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-     */
     emulate(options: {
         viewport: Viewport;
         userAgent: string;
     }): Promise<void>;
-    /**
-     * @param enabled - Whether or not to enable JavaScript on the page.
-     * @returns
-     * @remarks
-     * NOTE: changing this value won't affect scripts that have already been run.
-     * It will take full effect on the next navigation.
-     */
     setJavaScriptEnabled(enabled: boolean): Promise<void>;
-    /**
-     * Toggles bypassing page's Content-Security-Policy.
-     * @param enabled - sets bypassing of page's Content-Security-Policy.
-     * @remarks
-     * NOTE: CSP bypassing happens at the moment of CSP initialization rather than
-     * evaluation. Usually, this means that `page.setBypassCSP` should be called
-     * before navigating to the domain.
-     */
     setBypassCSP(enabled: boolean): Promise<void>;
-    /**
-     * @param type - Changes the CSS media type of the page. The only allowed
-     * values are `screen`, `print` and `null`. Passing `null` disables CSS media
-     * emulation.
-     * @example
-     * ```
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     *
-     * await page.emulateMediaType('print');
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → false
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → true
-     *
-     * await page.emulateMediaType(null);
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     * ```
-     */
     emulateMediaType(type?: string): Promise<void>;
-    /**
-     * Enables CPU throttling to emulate slow CPUs.
-     * @param factor - slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
-     */
-    emulateCPUThrottling(factor: number | null): Promise<void>;
-    /**
-     * @param features - `<?Array<Object>>` Given an array of media feature
-     * objects, emulates CSS media features on the page. Each media feature object
-     * must have the following properties:
-     * @example
-     * ```js
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([{ name: 'color-gamut', value: 'p3' }]);
-     * await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: rec2020)').matches);
-     * // → false
-     * ```
-     */
     emulateMediaFeatures(features?: MediaFeature[]): Promise<void>;
-    /**
-     * @param timezoneId - Changes the timezone of the page. See
-     * {@link https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt | ICU’s metaZones.txt}
-     * for a list of supported timezone IDs. Passing
-     * `null` disables timezone emulation.
-     */
     emulateTimezone(timezoneId?: string): Promise<void>;
     /**
      * Emulates the idle state.
@@ -1448,6 +805,8 @@
      * ```
      *
      * @param overrides - Mock idle state. If not set, clears idle overrides
+     * @param isUserActive - Mock isUserActive
+     * @param isScreenUnlocked - Mock isScreenUnlocked
      */
     emulateIdleState(overrides?: {
         isUserActive: boolean;
@@ -1481,65 +840,7 @@
      * @param type - the type of deficiency to simulate, or `'none'` to reset.
      */
     emulateVisionDeficiency(type?: Protocol.Emulation.SetEmulatedVisionDeficiencyRequest['type']): Promise<void>;
-    /**
-     * `page.setViewport` will resize the page. A lot of websites don't expect
-     * phones to change size, so you should set the viewport before navigating to
-     * the page.
-     *
-     * In the case of multiple pages in a single browser, each page can have its
-     * own viewport size.
-     * @example
-     * ```js
-     * const page = await browser.newPage();
-     * await page.setViewport({
-     * width: 640,
-     * height: 480,
-     * deviceScaleFactor: 1,
-     * });
-     * await page.goto('https://example.com');
-     * ```
-     *
-     * @param viewport -
-     * @remarks
-     * Argument viewport have following properties:
-     *
-     * - `width`: page width in pixels. required
-     *
-     * - `height`: page height in pixels. required
-     *
-     * - `deviceScaleFactor`: Specify device scale factor (can be thought of as
-     *   DPR). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to `false`
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to false.
-     *
-     * NOTE: in certain cases, setting viewport will reload the page in order to
-     * set the isMobile or hasTouch properties.
-     */
     setViewport(viewport: Viewport): Promise<void>;
-    /**
-     * @returns
-     *
-     * - `width`: page's width in pixels
-     *
-     * - `height`: page's height in pixels
-     *
-     * - `deviceScalarFactor`: Specify device scale factor (can be though of as
-     *   dpr). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to
-     *   `false`.
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to
-     *   `false`.
-     */
     viewport(): Viewport | null;
     /**
      * @remarks
@@ -1590,90 +891,15 @@
      * @returns the return value of `pageFunction`.
      */
     evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
-    /**
-     * Adds a function which would be invoked in one of the following scenarios:
-     *
-     * - whenever the page is navigated
-     *
-     * - whenever the child frame is attached or navigated. In this case, the
-     * function is invoked in the context of the newly attached frame.
-     *
-     * The function is invoked after the document was created but before any of
-     * its scripts were run. This is useful to amend the JavaScript environment,
-     * e.g. to seed `Math.random`.
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param args - Arguments to pass to `pageFunction`
-     * @example
-     * An example of overriding the navigator.languages property before the page loads:
-     * ```js
-     * // preload.js
-     *
-     * // overwrite the `languages` property to use a custom getter
-     * Object.defineProperty(navigator, 'languages', {
-     * get: function () {
-     * return ['en-US', 'en', 'bn'];
-     * },
-     * });
-     *
-     * // In your puppeteer script, assuming the preload.js file is
-     * in same folder of our script
-     * const preloadFile = fs.readFileSync('./preload.js', 'utf8');
-     * await page.evaluateOnNewDocument(preloadFile);
-     * ```
-     */
     evaluateOnNewDocument(pageFunction: Function | string, ...args: unknown[]): Promise<void>;
-    /**
-     * Toggles ignoring cache for each request based on the enabled state. By
-     * default, caching is enabled.
-     * @param enabled - sets the `enabled` state of cache
-     */
     setCacheEnabled(enabled?: boolean): Promise<void>;
-    /**
-     * @remarks
-     * Options object which might have the following properties:
-     *
-     * - `path` : The file path to save the image to. The screenshot type
-     *   will be inferred from file extension. If `path` is a relative path, then
-     *   it is resolved relative to
-     *   {@link https://nodejs.org/api/process.html#process_process_cwd
-     *   | current working directory}.
-     *   If no path is provided, the image won't be saved to the disk.
-     *
-     * - `type` : Specify screenshot type, can be either `jpeg` or `png`.
-     *   Defaults to 'png'.
-     *
-     * - `quality` : The quality of the image, between 0-100. Not
-     *   applicable to `png` images.
-     *
-     * - `fullPage` : When true, takes a screenshot of the full
-     *   scrollable page. Defaults to `false`
-     *
-     * - `clip` : An object which specifies clipping region of the page.
-     *   Should have the following fields:<br/>
-     *  - `x` : x-coordinate of top-left corner of clip area.<br/>
-     *  - `y` :  y-coordinate of top-left corner of clip area.<br/>
-     *  - `width` : width of clipping area.<br/>
-     *  - `height` : height of clipping area.
-     *
-     * - `omitBackground` : Hides default white background and allows
-     *   capturing screenshots with transparency. Defaults to `false`
-     *
-     * - `encoding` : The encoding of the image, can be either base64 or
-     *   binary. Defaults to `binary`.
-     *
-     *
-     * NOTE: Screenshots take at least 1/6 second on OS X. See
-     * {@link https://crbug.com/741689} for discussion.
-     * @returns Promise which resolves to buffer or a base64 string (depending on
-     * the value of `encoding`) with captured screenshot.
-     */
-    screenshot(options?: ScreenshotOptions): Promise<Buffer | string>;
+    screenshot(options?: ScreenshotOptions): Promise<Buffer | string | void>;
     private _screenshotTask;
     /**
      * Generatees a PDF of the page with the `print` CSS media type.
      * @remarks
      *
-     * NOTE: PDF generation is only supported in Chrome headless mode.
+     * IMPORTANT: PDF generation is only supported in Chrome headless mode.
      *
      * To generate a PDF with the `screen` media type, call
      * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
@@ -1687,141 +913,22 @@
      *
      * @param options - options for generating the PDF.
      */
-    createPDFStream(options?: PDFOptions): Promise<Readable>;
-    /**
-     * @param options -
-     * @returns
-     */
     pdf(options?: PDFOptions): Promise<Buffer>;
-    /**
-     * @returns The page's title
-     * @remarks
-     * Shortcut for {@link Frame.title | page.mainFrame().title()}.
-     */
     title(): Promise<string>;
     close(options?: {
         runBeforeUnload?: boolean;
     }): Promise<void>;
-    /**
-     * Indicates that the page has been closed.
-     * @returns
-     */
     isClosed(): boolean;
     get mouse(): Mouse;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to click in the center of the
-     * element. If there's no element matching `selector`, the method throws an
-     * error.
-     * @remarks Bear in mind that if `click()` triggers a navigation event and
-     * there's a separate `page.waitForNavigation()` promise to be resolved, you
-     * may end up with a race condition that yields unexpected results. The
-     * correct pattern for click and wait for navigation is the following:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(waitOptions),
-     * page.click(selector, clickOptions),
-     * ]);
-     * ```
-     * Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
-     * @param selector - A `selector` to search for element to click. If there are
-     * multiple elements satisfying the `selector`, the first will be clicked
-     * @param options - `Object`
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully clicked. The Promise will be rejected if there is no element
-     * matching `selector`.
-     */
     click(selector: string, options?: {
         delay?: number;
         button?: MouseButton;
         clickCount?: number;
     }): Promise<void>;
-    /**
-     * This method fetches an element with `selector` and focuses it. If there's no
-     * element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
-     * of an element to focus. If there are multiple elements satisfying the
-     * selector, the first will be focused.
-     * @returns  Promise which resolves when the element matching selector is
-     * successfully focused. The promise will be rejected if there is no element
-     * matching selector.
-     * @remarks
-     * Shortcut for {@link Frame.focus | page.mainFrame().focus(selector)}.
-     */
     focus(selector: string): Promise<void>;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to hover over the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * to search for element to hover. If there are multiple elements satisfying
-     * the selector, the first will be hovered.
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully hovered. Promise gets rejected if there's no element matching
-     * `selector`.
-     * @remarks
-     * Shortcut for {@link Page.hover | page.mainFrame().hover(selector)}.
-     */
     hover(selector: string): Promise<void>;
-    /**
-     * Triggers a `change` and `input` event once all the provided options have been
-     * selected. If there's no `<select>` element matching `selector`, the method
-     * throws an error.
-     *
-     * @example
-     * ```js
-     * page.select('select#colors', 'blue'); // single selection
-     * page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to query the page for
-     * @param values - Values of options to select. If the `<select>` has the
-     * `multiple` attribute, all values are considered, otherwise only the first one
-     * is taken into account.
-     * @returns
-     *
-     * @remarks
-     * Shortcut for {@link Frame.select | page.mainFrame().select()}
-     */
     select(selector: string, ...values: string[]): Promise<string[]>;
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.touchscreen} to tap in the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to search for element to tap. If there are multiple elements satisfying the
-     * selector, the first will be tapped.
-     * @returns
-     * @remarks
-     * Shortcut for {@link Frame.tap | page.mainFrame().tap(selector)}.
-     */
     tap(selector: string): Promise<void>;
-    /**
-     * Sends a `keydown`, `keypress/input`, and `keyup` event for each character
-     * in the text.
-     *
-     * To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
-     * @example
-     * ```
-     * await page.type('#mytextarea', 'Hello');
-     * // Types instantly
-     * await page.type('#mytextarea', 'World', { delay: 100 });
-     * // Types slower, like a user
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to type into. If there are multiple elements satisfying the
-     * selector, the first will be used.
-     * @param text - A text to type into a focused element.
-     * @param options - have property `delay` which is the Time to wait between
-     * key presses in milliseconds. Defaults to `0`.
-     * @returns
-     * @remarks
-     */
     type(selector: string, text: string, options?: {
         delay: number;
     }): Promise<void>;
@@ -1876,178 +983,16 @@
      * @param milliseconds - the number of milliseconds to wait.
      */
     waitForTimeout(milliseconds: number): Promise<void>;
-    /**
-     * Wait for the `selector` to appear in page. If at the moment of calling the
-     * method the `selector` already exists, the method will return immediately. If
-     * the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigations:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForSelector('img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by selector string
-     * is added to DOM. Resolves to `null` if waiting for hidden: `true` and
-     * selector is not found in DOM.
-     * @remarks
-     * The optional Parameter in Arguments `options` are :
-     *
-     * - `Visible`: A boolean wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: ait for element to not be found in the DOM or to be hidden,
-     * i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
-     * `false`.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForSelector(selector: string, options?: {
         visible?: boolean;
         hidden?: boolean;
         timeout?: number;
     }): Promise<ElementHandle | null>;
-    /**
-     * Wait for the `xpath` to appear in page. If at the moment of calling the
-     * method the `xpath` already exists, the method will return immediately. If
-     * the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigation
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForXPath('//img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param xpath - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
-     * element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by xpath string is
-     * added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
-     * not found in DOM.
-     * @remarks
-     * The optional Argument `options` have properties:
-     *
-     * - `visible`: A boolean to wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: A boolean wait for element to not be found in the DOM or to be
-     * hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
-     * Defaults to `false`.
-     *
-     * - `timeout`: A number which is maximum time to wait for in milliseconds.
-     * Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
-     * value can be changed by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForXPath(xpath: string, options?: {
         visible?: boolean;
         hidden?: boolean;
         timeout?: number;
     }): Promise<ElementHandle | null>;
-    /**
-     * The `waitForFunction` can be used to observe viewport size change:
-     *
-     * ```
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * const watchDog = page.waitForFunction('window.innerWidth < 100');
-     * await page.setViewport({ width: 50, height: 50 });
-     * await watchDog;
-     * await browser.close();
-     * })();
-     * ```
-     * To pass arguments from node.js to the predicate of `page.waitForFunction` function:
-     * ```
-     * const selector = '.foo';
-     * await page.waitForFunction(
-     * (selector) => !!document.querySelector(selector),
-     * {},
-     * selector
-     * );
-     * ```
-     * The predicate of `page.waitForFunction` can be asynchronous too:
-     * ```
-     * const username = 'github-username';
-     * await page.waitForFunction(
-     * async (username) => {
-     * const githubResponse = await fetch(
-     *  `https://api.github.com/users/${username}`
-     * );
-     * const githubUser = await githubResponse.json();
-     * // show the avatar
-     * const img = document.createElement('img');
-     * img.src = githubUser.avatar_url;
-     * // wait 3 seconds
-     * await new Promise((resolve, reject) => setTimeout(resolve, 3000));
-     * img.remove();
-     * },
-     * {},
-     * username
-     * );
-     * ```
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param options - Optional waiting parameters
-     * @param args -  Arguments to pass to `pageFunction`
-     * @returns Promise which resolves when the `pageFunction` returns a truthy
-     * value. It resolves to a JSHandle of the truthy value.
-     *
-     * The optional waiting parameter can be:
-     *
-     * - `Polling`: An interval at which the `pageFunction` is executed, defaults to
-     *   `raf`. If `polling` is a number, then it is treated as an interval in
-     *   milliseconds at which the function would be executed. If polling is a
-     *   string, then it can be one of the following values:<br/>
-     *    - `raf`: to constantly execute `pageFunction` in `requestAnimationFrame`
-     *      callback. This is the tightest polling mode which is suitable to
-     *      observe styling changes.<br/>
-     *    - `mutation`: to execute pageFunction on every DOM mutation.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the
-     * {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)} method.
-     *
-     */
     waitForFunction(pageFunction: Function | string, options?: {
         timeout?: number;
         polling?: string | number;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts.map
index ea363d6..76d951c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js
index a1f5d0b..3d592f3 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js
@@ -20,7 +20,7 @@
 import { FrameManager, FrameManagerEmittedEvents, } from './FrameManager.js';
 import { Keyboard, Mouse, Touchscreen } from './Input.js';
 import { Tracing } from './Tracing.js';
-import { assert, assertNever } from './assert.js';
+import { assert } from './assert.js';
 import { helper, debugError } from './helper.js';
 import { Coverage } from './Coverage.js';
 import { WebWorker } from './WebWorker.js';
@@ -32,6 +32,16 @@
 import { ConsoleMessage } from './ConsoleMessage.js';
 import { paperFormats } from './PDFOptions.js';
 import { isNode } from '../environment.js';
+class ScreenshotTaskQueue {
+    constructor() {
+        this._chain = Promise.resolve(undefined);
+    }
+    postTask(task) {
+        const result = this._chain.then(task);
+        this._chain = result.catch(() => { });
+        return result;
+    }
+}
 /**
  * Page provides methods to interact with a single tab or
  * {@link https://developer.chrome.com/extensions/background_pages | extension background page} in Chromium.
@@ -79,7 +89,7 @@
     /**
      * @internal
      */
-    constructor(client, target, ignoreHTTPSErrors, screenshotTaskQueue) {
+    constructor(client, target, ignoreHTTPSErrors) {
         super();
         this._closed = false;
         this._timeoutSettings = new TimeoutSettings();
@@ -89,8 +99,6 @@
         // TODO: improve this typedef - it's a function that takes a file chooser or
         // something?
         this._fileChooserInterceptors = new Set();
-        this._userDragInterceptionEnabled = false;
-        this._handlerMap = new WeakMap();
         this._client = client;
         this._target = target;
         this._keyboard = new Keyboard(client);
@@ -101,7 +109,7 @@
         this._emulationManager = new EmulationManager(client);
         this._tracing = new Tracing(client);
         this._coverage = new Coverage(client);
-        this._screenshotTaskQueue = screenshotTaskQueue;
+        this._screenshotTaskQueue = new ScreenshotTaskQueue();
         this._viewport = null;
         client.on('Target.attachedToTarget', (event) => {
             if (event.targetInfo.type !== 'worker' &&
@@ -110,7 +118,7 @@
                 // We still want to attach to workers for emitting events.
                 // We still want to attach to iframes so sessions may interact with them.
                 // We detach from all other types out of an abundance of caution.
-                // See https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22
+                // See https://source.chromium.org/chromium/chromium/src/+/master:content/browser/devtools/devtools_agent_host_impl.cc?q=f:devtools%20-f:out%20%22::kTypePage%5B%5D%22&ss=chromium
                 // for the complete list of available types.
                 client
                     .send('Target.detachFromTarget', {
@@ -119,12 +127,10 @@
                     .catch(debugError);
                 return;
             }
-            if (event.targetInfo.type === 'worker') {
-                const session = Connection.fromSession(client).session(event.sessionId);
-                const worker = new WebWorker(session, event.targetInfo.url, this._addConsoleMessage.bind(this), this._handleException.bind(this));
-                this._workers.set(event.sessionId, worker);
-                this.emit("workercreated" /* WorkerCreated */, worker);
-            }
+            const session = Connection.fromSession(client).session(event.sessionId);
+            const worker = new WebWorker(session, event.targetInfo.url, this._addConsoleMessage.bind(this), this._handleException.bind(this));
+            this._workers.set(event.sessionId, worker);
+            this.emit("workercreated" /* WorkerCreated */, worker);
         });
         client.on('Target.detachedFromTarget', (event) => {
             const worker = this._workers.get(event.sessionId);
@@ -161,8 +167,8 @@
     /**
      * @internal
      */
-    static async create(client, target, ignoreHTTPSErrors, defaultViewport, screenshotTaskQueue) {
-        const page = new Page(client, target, ignoreHTTPSErrors, screenshotTaskQueue);
+    static async create(client, target, ignoreHTTPSErrors, defaultViewport) {
+        const page = new Page(client, target, ignoreHTTPSErrors);
         await page._initialize();
         if (defaultViewport)
             await page.setViewport(defaultViewport);
@@ -193,12 +199,6 @@
             interceptor.call(null, fileChooser);
     }
     /**
-     * @returns `true` if drag events are being intercepted, `false` otherwise.
-     */
-    isDragInterceptionEnabled() {
-        return this._userDragInterceptionEnabled;
-    }
-    /**
      * @returns `true` if the page has JavaScript enabled, `false` otherwise.
      */
     isJavaScriptEnabled() {
@@ -207,17 +207,9 @@
     /**
      * Listen to page events.
      */
-    // Note: this method exists to define event typings and handle
-    // proper wireup of cooperative request interception. Actual event listening and
-    // dispatching is delegated to EventEmitter.
     on(eventName, handler) {
-        if (eventName === 'request') {
-            const wrap = (event) => {
-                event.enqueueInterceptAction(() => handler(event));
-            };
-            this._handlerMap.set(handler, wrap);
-            return super.on(eventName, wrap);
-        }
+        // Note: this method only exists to define the types; we delegate the impl
+        // to EventEmitter.
         return super.on(eventName, handler);
     }
     once(eventName, handler) {
@@ -225,33 +217,9 @@
         // to EventEmitter.
         return super.once(eventName, handler);
     }
-    off(eventName, handler) {
-        if (eventName === 'request') {
-            handler = this._handlerMap.get(handler) || handler;
-        }
-        return super.off(eventName, handler);
-    }
     /**
-     * This method is typically coupled with an action that triggers file
-     * choosing. The following example clicks a button that issues a file chooser
-     * and then responds with `/tmp/myfile.pdf` as if a user has selected this file.
-     *
-     * ```js
-     * const [fileChooser] = await Promise.all([
-     * page.waitForFileChooser(),
-     * page.click('#upload-file-button'),
-     * // some button that triggers file selection
-     * ]);
-     * await fileChooser.accept(['/tmp/myfile.pdf']);
-     * ```
-     *
-     * NOTE: This must be called before the file chooser is launched. It will not
-     * return a currently active file chooser.
      * @param options - Optional waiting parameters
      * @returns Resolves after a page requests a file picker.
-     * @remarks
-     * NOTE: In non-headless Chromium, this method results in the native file picker
-     * dialog `not showing up` for the user.
      */
     async waitForFileChooser(options = {}) {
         if (!this._fileChooserInterceptors.size)
@@ -271,9 +239,11 @@
     }
     /**
      * Sets the page's geolocation.
+     *
      * @remarks
-     * NOTE: Consider using {@link BrowserContext.overridePermissions} to grant
+     * Consider using {@link BrowserContext.overridePermissions} to grant
      * permissions for the page to read its geolocation.
+     *
      * @example
      * ```js
      * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
@@ -300,20 +270,13 @@
         return this._target;
     }
     /**
-     * Get the CDP session client the page belongs to.
-     * @internal
-     */
-    client() {
-        return this._client;
-    }
-    /**
-     * Get the browser the page belongs to.
+     * @returns The browser this page belongs to.
      */
     browser() {
         return this._target.browser();
     }
     /**
-     * Get the browser context that the page belongs to.
+     * @returns The browser context that the page belongs to
      */
     browserContext() {
         return this._target.browserContext();
@@ -330,8 +293,6 @@
     }
     /**
      * @returns The page's main frame.
-     * @remarks
-     * Page is guaranteed to have a main frame which persists during navigations.
      */
     mainFrame() {
         return this._frameManager.mainFrame();
@@ -359,11 +320,8 @@
     }
     /**
      * @returns all of the dedicated
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
-     * WebWorkers}
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorkers}
      * associated with the page.
-     * @remarks
-     * NOTE: This does not contain ServiceWorkers
      */
     workers() {
         return Array.from(this._workers.values());
@@ -398,74 +356,22 @@
      *   await browser.close();
      * })();
      * ```
-     * NOTE: Enabling request interception disables page caching.
      */
     async setRequestInterception(value) {
         return this._frameManager.networkManager().setRequestInterception(value);
     }
     /**
-     * @param enabled - Whether to enable drag interception.
-     *
-     * @remarks
-     * Activating drag interception enables the `Input.drag`,
-     * methods  This provides the capability to capture drag events emitted
-     * on the page, which can then be used to simulate drag-and-drop.
-     */
-    async setDragInterception(enabled) {
-        this._userDragInterceptionEnabled = enabled;
-        return this._client.send('Input.setInterceptDrags', { enabled });
-    }
-    /**
      * @param enabled - When `true`, enables offline mode for the page.
-     * @remarks
-     * NOTE: while this method sets the network connection to offline, it does
-     * not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
-     * (#pageemulatenetworkconditionsnetworkconditions)
      */
     setOfflineMode(enabled) {
         return this._frameManager.networkManager().setOfflineMode(enabled);
     }
-    /**
-     * @param networkConditions - Passing `null` disables network condition emulation.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const slow3G = puppeteer.networkConditions['Slow 3G'];
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulateNetworkConditions(slow3G);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks
-     * NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
-     * https://crbug.com/563644). To set the page offline, you can use
-     * [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
-     */
     emulateNetworkConditions(networkConditions) {
         return this._frameManager
             .networkManager()
             .emulateNetworkConditions(networkConditions);
     }
     /**
-     * This setting will change the default maximum navigation time for the
-     * following methods and related shortcuts:
-     *
-     * - {@link Page.goBack | page.goBack(options)}
-     *
-     * - {@link Page.goForward | page.goForward(options)}
-     *
-     * - {@link Page.goto | page.goto(url,options)}
-     *
-     * - {@link Page.reload | page.reload(options)}
-     *
-     * - {@link Page.setContent | page.setContent(html,options)}
-     *
-     * - {@link Page.waitForNavigation | page.waitForNavigation(options)}
      * @param timeout - Maximum navigation time in milliseconds.
      */
     setDefaultNavigationTimeout(timeout) {
@@ -549,9 +455,6 @@
      * given prototype.
      *
      * @remarks
-     * Shortcut for
-     * {@link ExecutionContext.queryObjects |
-     * page.mainFrame().executionContext().queryObjects(prototypeHandle)}.
      *
      * @example
      *
@@ -568,8 +471,6 @@
      * await mapPrototype.dispose();
      * ```
      * @param prototypeHandle - a handle to the object prototype.
-     * @returns Promise which resolves to a handle to an array of objects with
-     * this prototype.
      */
     async queryObjects(prototypeHandle) {
         const context = await this.mainFrame().executionContext();
@@ -701,24 +602,9 @@
     async $$eval(selector, pageFunction, ...args) {
         return this.mainFrame().$$eval(selector, pageFunction, ...args);
     }
-    /**
-     * The method runs `document.querySelectorAll` within the page. If no elements
-     * match the selector, the return value resolves to `[]`.
-     * @remarks
-     * Shortcut for {@link Frame.$$ | Page.mainFrame().$$(selector) }.
-     * @param selector - A `selector` to query page for
-     */
     async $$(selector) {
         return this.mainFrame().$$(selector);
     }
-    /**
-     * The method evaluates the XPath expression relative to the page document as
-     * its context node. If there are no such elements, the method resolves to an
-     * empty array.
-     * @remarks
-     * Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
-     * @param expression - Expression to evaluate
-     */
     async $x(expression) {
         return this.mainFrame().$x(expression);
     }
@@ -747,12 +633,6 @@
             await this._client.send('Network.deleteCookies', item);
         }
     }
-    /**
-     * @example
-     * ```js
-     * await page.setCookie(cookieObject1, cookieObject2);
-     * ```
-     */
     async setCookie(...cookies) {
         const pageURL = this.url();
         const startsWithHTTP = pageURL.startsWith('http');
@@ -768,98 +648,16 @@
         if (items.length)
             await this._client.send('Network.setCookies', { cookies: items });
     }
-    /**
-     * Adds a `<script>` tag into the page with the desired URL or content.
-     * @remarks
-     * Shortcut for {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options) }.
-     * @returns Promise which resolves to the added tag when the script's onload fires or
-     * when the script content was injected into frame.
-     */
     async addScriptTag(options) {
         return this.mainFrame().addScriptTag(options);
     }
-    /**
-     * Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a
-     * `<style type="text/css">` tag with the content.
-     * @returns Promise which resolves to the added tag when the stylesheet's
-     * onload fires or when the CSS content was injected into frame.
-     */
     async addStyleTag(options) {
         return this.mainFrame().addStyleTag(options);
     }
-    /**
-     * The method adds a function called `name` on the page's `window` object. When
-     * called, the function executes `puppeteerFunction` in node.js and returns a
-     * `Promise` which resolves to the return value of `puppeteerFunction`.
-     *
-     * If the puppeteerFunction returns a `Promise`, it will be awaited.
-     *
-     * NOTE: Functions installed via `page.exposeFunction` survive navigations.
-     * @param name - Name of the function on the window object
-     * @param puppeteerFunction -  Callback function which will be called in
-     * Puppeteer's context.
-     * @example
-     * An example of adding an `md5` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const crypto = require('crypto');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('md5', (text) =>
-     * crypto.createHash('md5').update(text).digest('hex')
-     * );
-     * await page.evaluate(async () => {
-     * // use window.md5 to compute hashes
-     * const myString = 'PUPPETEER';
-     * const myHash = await window.md5(myString);
-     * console.log(`md5 of ${myString} is ${myHash}`);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     * An example of adding a `window.readfile` function into the page:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const fs = require('fs');
-     *
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * page.on('console', (msg) => console.log(msg.text()));
-     * await page.exposeFunction('readfile', async (filePath) => {
-     * return new Promise((resolve, reject) => {
-     * fs.readFile(filePath, 'utf8', (err, text) => {
-     *    if (err) reject(err);
-     *    else resolve(text);
-     *  });
-     * });
-     * });
-     * await page.evaluate(async () => {
-     * // use window.readfile to read contents of a file
-     * const content = await window.readfile('/etc/hosts');
-     * console.log(content);
-     * });
-     * await browser.close();
-     * })();
-     * ```
-     */
     async exposeFunction(name, puppeteerFunction) {
         if (this._pageBindings.has(name))
             throw new Error(`Failed to add page binding with name ${name}: window['${name}'] already exists!`);
-        let exposedFunction;
-        if (typeof puppeteerFunction === 'function') {
-            exposedFunction = puppeteerFunction;
-        }
-        else if (typeof puppeteerFunction.default === 'function') {
-            exposedFunction = puppeteerFunction.default;
-        }
-        else {
-            throw new Error(`Failed to add page binding with name ${name}: ${puppeteerFunction} is not a function or a module with a default export.`);
-        }
-        this._pageBindings.set(name, exposedFunction);
+        this._pageBindings.set(name, puppeteerFunction);
         const expression = helper.pageBindingInitString('exposedFun', name);
         await this._client.send('Runtime.addBinding', { name: name });
         await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
@@ -867,71 +665,15 @@
         });
         await Promise.all(this.frames().map((frame) => frame.evaluate(expression).catch(debugError)));
     }
-    /**
-     * Provide credentials for `HTTP authentication`.
-     * @remarks To disable authentication, pass `null`.
-     */
     async authenticate(credentials) {
         return this._frameManager.networkManager().authenticate(credentials);
     }
-    /**
-     * The extra HTTP headers will be sent with every request the page initiates.
-     * NOTE: All HTTP header names are lowercased. (HTTP headers are
-     * case-insensitive, so this shouldn’t impact your server code.)
-     * NOTE: page.setExtraHTTPHeaders does not guarantee the order of headers in
-     * the outgoing requests.
-     * @param headers - An object containing additional HTTP headers to be sent
-     * with every request. All header values must be strings.
-     * @returns
-     */
     async setExtraHTTPHeaders(headers) {
         return this._frameManager.networkManager().setExtraHTTPHeaders(headers);
     }
-    /**
-     * @param userAgent - Specific user agent to use in this page
-     * @param userAgentData - Specific user agent client hint data to use in this
-     * page
-     * @returns Promise which resolves when the user agent is set.
-     */
-    async setUserAgent(userAgent, userAgentMetadata) {
-        return this._frameManager
-            .networkManager()
-            .setUserAgent(userAgent, userAgentMetadata);
+    async setUserAgent(userAgent) {
+        return this._frameManager.networkManager().setUserAgent(userAgent);
     }
-    /**
-     * @returns Object containing metrics as key/value pairs.
-     *
-     * - `Timestamp` : The timestamp when the metrics sample was taken.
-     *
-     * - `Documents` : Number of documents in the page.
-     *
-     * - `Frames` : Number of frames in the page.
-     *
-     * - `JSEventListeners` : Number of events in the page.
-     *
-     * - `Nodes` : Number of DOM nodes in the page.
-     *
-     * - `LayoutCount` : Total number of full or partial page layout.
-     *
-     * - `RecalcStyleCount` : Total number of page style recalculations.
-     *
-     * - `LayoutDuration` : Combined durations of all page layouts.
-     *
-     * - `RecalcStyleDuration` : Combined duration of all page style
-     *   recalculations.
-     *
-     * - `ScriptDuration` : Combined duration of JavaScript execution.
-     *
-     * - `TaskDuration` : Combined duration of all tasks performed by the browser.
-     *
-     *
-     * - `JSHeapUsedSize` : Used JavaScript heap size.
-     *
-     * - `JSHeapTotalSize` : Total JavaScript heap size.
-     * @remarks
-     * NOTE: All timestamps are in monotonic time: monotonically increasing time
-     * in seconds since an arbitrary point in the past.
-     */
     async metrics() {
         const response = await this._client.send('Performance.getMetrics');
         return this._buildMetricsObject(response.metrics);
@@ -973,7 +715,7 @@
             // @see https://github.com/puppeteer/puppeteer/issues/3865
             return;
         }
-        const context = this._frameManager.executionContextById(event.executionContextId, this._client);
+        const context = this._frameManager.executionContextById(event.executionContextId);
         const values = event.args.map((arg) => createJSHandle(context, arg));
         this._addConsoleMessage(event.type, values, event.stackTrace);
     }
@@ -1063,134 +805,18 @@
             color: { r: 0, g: 0, b: 0, a: 0 },
         });
     }
-    /**
-     *
-     * @returns
-     * @remarks Shortcut for
-     * {@link Frame.url | page.mainFrame().url()}.
-     */
     url() {
         return this.mainFrame().url();
     }
     async content() {
         return await this._frameManager.mainFrame().content();
     }
-    /**
-     * @param html - HTML markup to assign to the page.
-     * @param options - Parameters that has some properties.
-     * @remarks
-     * The parameter `options` might have the following options.
-     *
-     * - `timeout` : Maximum time in milliseconds for resources to load, defaults
-     *   to 30 seconds, pass `0` to disable timeout. The default value can be
-     *   changed by using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider setting markup succeeded, defaults to `load`.
-     *    Given an array of event strings, setting content is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider setting content to be finished when the `load` event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider setting content to be finished when the
-     *   `DOMContentLoaded` event is fired.<br/>
-     *  - `networkidle0` : consider setting content to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider setting content to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async setContent(html, options = {}) {
         await this._frameManager.mainFrame().setContent(html, options);
     }
-    /**
-     * @param url - URL to navigate page to. The URL should include scheme, e.g.
-     * `https://`
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be successful
-     *    after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is
-     *    fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *    DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *    more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *    more than 2 network connections for at least `500` ms.
-     *
-     * - `referer` : Referer header value. If provided it will take preference
-     *   over the referer header value set by
-     *   {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
-     *
-     * `page.goto` will throw an error if:
-     * - there's an SSL error (e.g. in case of self-signed certificates).
-     * - target URL is invalid.
-     * - the timeout is exceeded during navigation.
-     * - the remote server does not respond or is unreachable.
-     * - the main resource failed to load.
-     *
-     * `page.goto` will not throw an error when any valid HTTP status code is
-     *   returned by the remote server, including 404 "Not Found" and 500
-     *   "Internal Server Error". The status code for such responses can be
-     *   retrieved by calling response.status().
-     *
-     * NOTE: `page.goto` either throws an error or returns a main resource
-     * response. The only exceptions are navigation to about:blank or navigation
-     * to the same URL with a different hash, which would succeed and return null.
-     *
-     * NOTE: Headless mode doesn't support navigation to a PDF document. See the
-     * {@link https://bugs.chromium.org/p/chromium/issues/detail?id=761295
-     * | upstream issue}.
-     *
-     * Shortcut for {@link Frame.goto | page.mainFrame().goto(url, options)}.
-     */
     async goto(url, options = {}) {
         return await this._frameManager.mainFrame().goto(url, options);
     }
-    /**
-     * @param options - Navigation parameters which might have the following
-     * properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout |
-     *   page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async reload(options) {
         const result = await Promise.all([
             this.waitForNavigation(options),
@@ -1198,30 +824,6 @@
         ]);
         return result[0];
     }
-    /**
-     * This resolves when the page navigates to a new URL or reloads. It is useful
-     * when you run code that will indirectly cause the page to navigate. Consider
-     * this example:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(), // The promise resolves after navigation has finished
-     * page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
-     * ]);
-     * ```
-     *
-     * @param options - Navigation parameters which might have the following properties:
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. In case of navigation to a different anchor or navigation
-     * due to History API usage, the navigation will resolve with `null`.
-     * @remarks
-     * NOTE: Usage of the
-     * {@link https://developer.mozilla.org/en-US/docs/Web/API/History_API | History API}
-     * to change the URL is considered a navigation.
-     *
-     * Shortcut for
-     * {@link Frame.waitForNavigation | page.mainFrame().waitForNavigation(options)}.
-     */
     async waitForNavigation(options = {}) {
         return await this._frameManager.mainFrame().waitForNavigation(options);
     }
@@ -1230,31 +832,6 @@
             this._disconnectPromise = new Promise((fulfill) => this._client.once(CDPSessionEmittedEvents.Disconnected, () => fulfill(new Error('Target closed'))));
         return this._disconnectPromise;
     }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Waiting Parameters have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
-     * `0` to disable the timeout. The default value can be changed by using the
-     * {@link Page.setDefaultTimeout} method.
-     */
     async waitForRequest(urlOrPredicate, options = {}) {
         const { timeout = this._timeoutSettings.timeout() } = options;
         return helper.waitForEvent(this._frameManager.networkManager(), NetworkManagerEmittedEvents.Request, (request) => {
@@ -1265,31 +842,6 @@
             return false;
         }, timeout, this._sessionClosePromise());
     }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched response.
-     * @example
-     * ```js
-     * const firstResponse = await page.waitForResponse(
-     * 'https://example.com/resource'
-     * );
-     * const finalResponse = await page.waitForResponse(
-     * (response) =>
-     * response.url() === 'https://example.com' && response.status() === 200
-     * );
-     * const finalResponse = await page.waitForResponse(async (response) => {
-     * return (await response.text()).includes('<html>');
-     * });
-     * return finalResponse.ok();
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
     async waitForResponse(urlOrPredicate, options = {}) {
         const { timeout = this._timeoutSettings.timeout() } = options;
         return helper.waitForEvent(this._frameManager.networkManager(), NetworkManagerEmittedEvents.Response, async (response) => {
@@ -1300,144 +852,9 @@
             return false;
         }, timeout, this._sessionClosePromise());
     }
-    /**
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when network is idle
-     */
-    async waitForNetworkIdle(options = {}) {
-        const { idleTime = 500, timeout = this._timeoutSettings.timeout() } = options;
-        const networkManager = this._frameManager.networkManager();
-        let idleResolveCallback;
-        const idlePromise = new Promise((resolve) => {
-            idleResolveCallback = resolve;
-        });
-        let abortRejectCallback;
-        const abortPromise = new Promise((_, reject) => {
-            abortRejectCallback = reject;
-        });
-        let idleTimer;
-        const onIdle = () => idleResolveCallback();
-        const cleanup = () => {
-            idleTimer && clearTimeout(idleTimer);
-            abortRejectCallback(new Error('abort'));
-        };
-        const evaluate = () => {
-            idleTimer && clearTimeout(idleTimer);
-            if (networkManager.numRequestsInProgress() === 0)
-                idleTimer = setTimeout(onIdle, idleTime);
-        };
-        evaluate();
-        const eventHandler = () => {
-            evaluate();
-            return false;
-        };
-        const listenToEvent = (event) => helper.waitForEvent(networkManager, event, eventHandler, timeout, abortPromise);
-        const eventPromises = [
-            listenToEvent(NetworkManagerEmittedEvents.Request),
-            listenToEvent(NetworkManagerEmittedEvents.Response),
-        ];
-        await Promise.race([
-            idlePromise,
-            ...eventPromises,
-            this._sessionClosePromise(),
-        ]).then((r) => {
-            cleanup();
-            return r;
-        }, (error) => {
-            cleanup();
-            throw error;
-        });
-    }
-    /**
-     * @param urlOrPredicate - A URL or predicate to wait for.
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves to the matched frame.
-     * @example
-     * ```js
-     * const frame = await page.waitForFrame(async (frame) => {
-     *   return frame.name() === 'Test';
-     * });
-     * ```
-     * @remarks
-     * Optional Parameter have:
-     *
-     * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-     * pass `0` to disable the timeout. The default value can be changed by using
-     * the {@link Page.setDefaultTimeout} method.
-     */
-    async waitForFrame(urlOrPredicate, options = {}) {
-        const { timeout = this._timeoutSettings.timeout() } = options;
-        async function predicate(frame) {
-            if (helper.isString(urlOrPredicate))
-                return urlOrPredicate === frame.url();
-            if (typeof urlOrPredicate === 'function')
-                return !!(await urlOrPredicate(frame));
-            return false;
-        }
-        return Promise.race([
-            helper.waitForEvent(this._frameManager, FrameManagerEmittedEvents.FrameAttached, predicate, timeout, this._sessionClosePromise()),
-            helper.waitForEvent(this._frameManager, FrameManagerEmittedEvents.FrameNavigated, predicate, timeout, this._sessionClosePromise()),
-        ]);
-    }
-    /**
-     * This method navigate to the previous page in history.
-     * @param options - Navigation parameters
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go back, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async goBack(options = {}) {
         return this._go(-1, options);
     }
-    /**
-     * This method navigate to the next page in history.
-     * @param options - Navigation Parameter
-     * @returns Promise which resolves to the main resource response. In case of
-     * multiple redirects, the navigation will resolve with the response of the
-     * last redirect. If can not go forward, resolves to `null`.
-     * @remarks
-     * The argument `options` might have the following properties:
-     *
-     * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-     *   seconds, pass 0 to disable timeout. The default value can be changed by
-     *   using the
-     *   {@link Page.setDefaultNavigationTimeout
-     *   | page.setDefaultNavigationTimeout(timeout)}
-     *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-     *   methods.
-     *
-     * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-     *    Given an array of event strings, navigation is considered to be
-     *    successful after all events have been fired. Events can be either:<br/>
-     *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-     *  - `domcontentloaded` : consider navigation to be finished when the
-     *   DOMContentLoaded event is fired.<br/>
-     *  - `networkidle0` : consider navigation to be finished when there are no
-     *   more than 0 network connections for at least `500` ms.<br/>
-     *  - `networkidle2` : consider navigation to be finished when there are no
-     *   more than 2 network connections for at least `500` ms.
-     */
     async goForward(options = {}) {
         return this._go(+1, options);
     }
@@ -1452,48 +869,15 @@
         ]);
         return result[0];
     }
-    /**
-     * Brings page to front (activates tab).
-     */
     async bringToFront() {
         await this._client.send('Page.bringToFront');
     }
-    /**
-     * Emulates given device metrics and user agent. This method is a shortcut for
-     * calling two methods: {@link Page.setUserAgent} and {@link Page.setViewport}
-     * To aid emulation, Puppeteer provides a list of device descriptors that can
-     * be obtained via the {@link Puppeteer.devices} `page.emulate` will resize
-     * the page. A lot of websites don't expect phones to change size, so you
-     * should emulate before navigating to the page.
-     * @example
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * const iPhone = puppeteer.devices['iPhone 6'];
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * await page.emulate(iPhone);
-     * await page.goto('https://www.google.com');
-     * // other actions...
-     * await browser.close();
-     * })();
-     * ```
-     * @remarks List of all available devices is available in the source code:
-     * {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-     */
     async emulate(options) {
         await Promise.all([
             this.setViewport(options.viewport),
             this.setUserAgent(options.userAgent),
         ]);
     }
-    /**
-     * @param enabled - Whether or not to enable JavaScript on the page.
-     * @returns
-     * @remarks
-     * NOTE: changing this value won't affect scripts that have already been run.
-     * It will take full effect on the next navigation.
-     */
     async setJavaScriptEnabled(enabled) {
         if (this._javascriptEnabled === enabled)
             return;
@@ -1502,109 +886,15 @@
             value: !enabled,
         });
     }
-    /**
-     * Toggles bypassing page's Content-Security-Policy.
-     * @param enabled - sets bypassing of page's Content-Security-Policy.
-     * @remarks
-     * NOTE: CSP bypassing happens at the moment of CSP initialization rather than
-     * evaluation. Usually, this means that `page.setBypassCSP` should be called
-     * before navigating to the domain.
-     */
     async setBypassCSP(enabled) {
         await this._client.send('Page.setBypassCSP', { enabled });
     }
-    /**
-     * @param type - Changes the CSS media type of the page. The only allowed
-     * values are `screen`, `print` and `null`. Passing `null` disables CSS media
-     * emulation.
-     * @example
-     * ```
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     *
-     * await page.emulateMediaType('print');
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → false
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → true
-     *
-     * await page.emulateMediaType(null);
-     * await page.evaluate(() => matchMedia('screen').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('print').matches);
-     * // → false
-     * ```
-     */
     async emulateMediaType(type) {
         assert(type === 'screen' || type === 'print' || type === null, 'Unsupported media type: ' + type);
         await this._client.send('Emulation.setEmulatedMedia', {
             media: type || '',
         });
     }
-    /**
-     * Enables CPU throttling to emulate slow CPUs.
-     * @param factor - slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
-     */
-    async emulateCPUThrottling(factor) {
-        assert(factor === null || factor >= 1, 'Throttling rate should be greater or equal to 1');
-        await this._client.send('Emulation.setCPUThrottlingRate', {
-            rate: factor !== null ? factor : 1,
-        });
-    }
-    /**
-     * @param features - `<?Array<Object>>` Given an array of media feature
-     * objects, emulates CSS media features on the page. Each media feature object
-     * must have the following properties:
-     * @example
-     * ```js
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([
-     * { name: 'prefers-color-scheme', value: 'dark' },
-     * { name: 'prefers-reduced-motion', value: 'reduce' },
-     * ]);
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-     * // → false
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-     * );
-     * // → true
-     * await page.evaluate(
-     * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-     * );
-     * // → false
-     *
-     * await page.emulateMediaFeatures([{ name: 'color-gamut', value: 'p3' }]);
-     * await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
-     * // → true
-     * await page.evaluate(() => matchMedia('(color-gamut: rec2020)').matches);
-     * // → false
-     * ```
-     */
     async emulateMediaFeatures(features) {
         if (features === null)
             await this._client.send('Emulation.setEmulatedMedia', { features: null });
@@ -1619,12 +909,6 @@
             });
         }
     }
-    /**
-     * @param timezoneId - Changes the timezone of the page. See
-     * {@link https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt | ICU’s metaZones.txt}
-     * for a list of supported timezone IDs. Passing
-     * `null` disables timezone emulation.
-     */
     async emulateTimezone(timezoneId) {
         try {
             await this._client.send('Emulation.setTimezoneOverride', {
@@ -1654,6 +938,8 @@
      * ```
      *
      * @param overrides - Mock idle state. If not set, clears idle overrides
+     * @param isUserActive - Mock isUserActive
+     * @param isScreenUnlocked - Mock isScreenUnlocked
      */
     async emulateIdleState(overrides) {
         if (overrides) {
@@ -1712,70 +998,12 @@
             throw error;
         }
     }
-    /**
-     * `page.setViewport` will resize the page. A lot of websites don't expect
-     * phones to change size, so you should set the viewport before navigating to
-     * the page.
-     *
-     * In the case of multiple pages in a single browser, each page can have its
-     * own viewport size.
-     * @example
-     * ```js
-     * const page = await browser.newPage();
-     * await page.setViewport({
-     * width: 640,
-     * height: 480,
-     * deviceScaleFactor: 1,
-     * });
-     * await page.goto('https://example.com');
-     * ```
-     *
-     * @param viewport -
-     * @remarks
-     * Argument viewport have following properties:
-     *
-     * - `width`: page width in pixels. required
-     *
-     * - `height`: page height in pixels. required
-     *
-     * - `deviceScaleFactor`: Specify device scale factor (can be thought of as
-     *   DPR). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to `false`
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to false.
-     *
-     * NOTE: in certain cases, setting viewport will reload the page in order to
-     * set the isMobile or hasTouch properties.
-     */
     async setViewport(viewport) {
         const needsReload = await this._emulationManager.emulateViewport(viewport);
         this._viewport = viewport;
         if (needsReload)
             await this.reload();
     }
-    /**
-     * @returns
-     *
-     * - `width`: page's width in pixels
-     *
-     * - `height`: page's height in pixels
-     *
-     * - `deviceScalarFactor`: Specify device scale factor (can be though of as
-     *   dpr). Defaults to `1`.
-     *
-     * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-     *   to `false`.
-     *
-     * - `hasTouch`: Specifies if viewport supports touch events. Defaults to
-     *   `false`.
-     *
-     * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to
-     *   `false`.
-     */
     viewport() {
         return this._viewport;
     }
@@ -1830,100 +1058,22 @@
     async evaluate(pageFunction, ...args) {
         return this._frameManager.mainFrame().evaluate(pageFunction, ...args);
     }
-    /**
-     * Adds a function which would be invoked in one of the following scenarios:
-     *
-     * - whenever the page is navigated
-     *
-     * - whenever the child frame is attached or navigated. In this case, the
-     * function is invoked in the context of the newly attached frame.
-     *
-     * The function is invoked after the document was created but before any of
-     * its scripts were run. This is useful to amend the JavaScript environment,
-     * e.g. to seed `Math.random`.
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param args - Arguments to pass to `pageFunction`
-     * @example
-     * An example of overriding the navigator.languages property before the page loads:
-     * ```js
-     * // preload.js
-     *
-     * // overwrite the `languages` property to use a custom getter
-     * Object.defineProperty(navigator, 'languages', {
-     * get: function () {
-     * return ['en-US', 'en', 'bn'];
-     * },
-     * });
-     *
-     * // In your puppeteer script, assuming the preload.js file is
-     * in same folder of our script
-     * const preloadFile = fs.readFileSync('./preload.js', 'utf8');
-     * await page.evaluateOnNewDocument(preloadFile);
-     * ```
-     */
     async evaluateOnNewDocument(pageFunction, ...args) {
         const source = helper.evaluationString(pageFunction, ...args);
         await this._client.send('Page.addScriptToEvaluateOnNewDocument', {
             source,
         });
     }
-    /**
-     * Toggles ignoring cache for each request based on the enabled state. By
-     * default, caching is enabled.
-     * @param enabled - sets the `enabled` state of cache
-     */
     async setCacheEnabled(enabled = true) {
         await this._frameManager.networkManager().setCacheEnabled(enabled);
     }
-    /**
-     * @remarks
-     * Options object which might have the following properties:
-     *
-     * - `path` : The file path to save the image to. The screenshot type
-     *   will be inferred from file extension. If `path` is a relative path, then
-     *   it is resolved relative to
-     *   {@link https://nodejs.org/api/process.html#process_process_cwd
-     *   | current working directory}.
-     *   If no path is provided, the image won't be saved to the disk.
-     *
-     * - `type` : Specify screenshot type, can be either `jpeg` or `png`.
-     *   Defaults to 'png'.
-     *
-     * - `quality` : The quality of the image, between 0-100. Not
-     *   applicable to `png` images.
-     *
-     * - `fullPage` : When true, takes a screenshot of the full
-     *   scrollable page. Defaults to `false`
-     *
-     * - `clip` : An object which specifies clipping region of the page.
-     *   Should have the following fields:<br/>
-     *  - `x` : x-coordinate of top-left corner of clip area.<br/>
-     *  - `y` :  y-coordinate of top-left corner of clip area.<br/>
-     *  - `width` : width of clipping area.<br/>
-     *  - `height` : height of clipping area.
-     *
-     * - `omitBackground` : Hides default white background and allows
-     *   capturing screenshots with transparency. Defaults to `false`
-     *
-     * - `encoding` : The encoding of the image, can be either base64 or
-     *   binary. Defaults to `binary`.
-     *
-     *
-     * NOTE: Screenshots take at least 1/6 second on OS X. See
-     * {@link https://crbug.com/741689} for discussion.
-     * @returns Promise which resolves to buffer or a base64 string (depending on
-     * the value of `encoding`) with captured screenshot.
-     */
     async screenshot(options = {}) {
         let screenshotType = null;
         // options.type takes precedence over inferring the type from options.path
         // because it may be a 0-length file with no extension created beforehand
         // (i.e. as a temp file).
         if (options.type) {
-            const type = options.type;
-            if (type !== 'png' && type !== 'jpeg' && type !== 'webp') {
-                assertNever(type, 'Unknown options.type value: ' + type);
-            }
+            assert(options.type === 'png' || options.type === 'jpeg', 'Unknown options.type value: ' + options.type);
             screenshotType = options.type;
         }
         else if (options.path) {
@@ -1935,14 +1085,12 @@
                 screenshotType = 'png';
             else if (extension === 'jpg' || extension === 'jpeg')
                 screenshotType = 'jpeg';
-            else if (extension === 'webp')
-                screenshotType = 'webp';
             assert(screenshotType, `Unsupported screenshot type for extension \`.${extension}\``);
         }
         if (!screenshotType)
             screenshotType = 'png';
         if (options.quality) {
-            assert(screenshotType === 'jpeg' || screenshotType === 'webp', 'options.quality is unsupported for the ' +
+            assert(screenshotType === 'jpeg', 'options.quality is unsupported for the ' +
                 screenshotType +
                 ' screenshots');
             assert(typeof options.quality === 'number', 'Expected options.quality to be a number but found ' +
@@ -1976,8 +1124,8 @@
             typeof captureBeyondViewport === 'boolean' ? captureBeyondViewport : true;
         if (options.fullPage) {
             const metrics = await this._client.send('Page.getLayoutMetrics');
-            // Fallback to `contentSize` in case of using Firefox.
-            const { width, height } = metrics.cssContentSize || metrics.contentSize;
+            const width = Math.ceil(metrics.contentSize.width);
+            const height = Math.ceil(metrics.contentSize.height);
             // Overwrite clip for full page.
             clip = { x: 0, y: 0, width, height, scale: 1 };
             if (!captureBeyondViewport) {
@@ -1994,7 +1142,7 @@
                 });
             }
         }
-        const shouldSetDefaultBackground = options.omitBackground && (format === 'png' || format === 'webp');
+        const shouldSetDefaultBackground = options.omitBackground && format === 'png';
         if (shouldSetDefaultBackground) {
             await this._setTransparentBackgroundColor();
         }
@@ -2032,7 +1180,7 @@
      * Generatees a PDF of the page with the `print` CSS media type.
      * @remarks
      *
-     * NOTE: PDF generation is only supported in Chrome headless mode.
+     * IMPORTANT: PDF generation is only supported in Chrome headless mode.
      *
      * To generate a PDF with the `screen` media type, call
      * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
@@ -2046,8 +1194,8 @@
      *
      * @param options - options for generating the PDF.
      */
-    async createPDFStream(options = {}) {
-        const { scale = 1, displayHeaderFooter = false, headerTemplate = '', footerTemplate = '', printBackground = false, landscape = false, pageRanges = '', preferCSSPageSize = false, margin = {}, omitBackground = false, timeout = 30000, } = options;
+    async pdf(options = {}) {
+        const { scale = 1, displayHeaderFooter = false, headerTemplate = '', footerTemplate = '', printBackground = false, landscape = false, pageRanges = '', preferCSSPageSize = false, margin = {}, path = null, omitBackground = false, } = options;
         let paperWidth = 8.5;
         let paperHeight = 11;
         if (options.format) {
@@ -2068,7 +1216,7 @@
         if (omitBackground) {
             await this._setTransparentBackgroundColor();
         }
-        const printCommandPromise = this._client.send('Page.printToPDF', {
+        const result = await this._client.send('Page.printToPDF', {
             transferMode: 'ReturnAsStream',
             landscape,
             displayHeaderFooter,
@@ -2085,26 +1233,11 @@
             pageRanges,
             preferCSSPageSize,
         });
-        const result = await helper.waitWithTimeout(printCommandPromise, 'Page.printToPDF', timeout);
         if (omitBackground) {
             await this._resetDefaultBackgroundColor();
         }
-        return helper.getReadableFromProtocolStream(this._client, result.stream);
+        return await helper.readProtocolStream(this._client, result.stream, path);
     }
-    /**
-     * @param options -
-     * @returns
-     */
-    async pdf(options = {}) {
-        const { path = undefined } = options;
-        const readable = await this.createPDFStream(options);
-        return await helper.getReadableAsBuffer(readable, path);
-    }
-    /**
-     * @returns The page's title
-     * @remarks
-     * Shortcut for {@link Frame.title | page.mainFrame().title()}.
-     */
     async title() {
         return this.mainFrame().title();
     }
@@ -2121,136 +1254,27 @@
             await this._target._isClosedPromise;
         }
     }
-    /**
-     * Indicates that the page has been closed.
-     * @returns
-     */
     isClosed() {
         return this._closed;
     }
     get mouse() {
         return this._mouse;
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to click in the center of the
-     * element. If there's no element matching `selector`, the method throws an
-     * error.
-     * @remarks Bear in mind that if `click()` triggers a navigation event and
-     * there's a separate `page.waitForNavigation()` promise to be resolved, you
-     * may end up with a race condition that yields unexpected results. The
-     * correct pattern for click and wait for navigation is the following:
-     * ```js
-     * const [response] = await Promise.all([
-     * page.waitForNavigation(waitOptions),
-     * page.click(selector, clickOptions),
-     * ]);
-     * ```
-     * Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
-     * @param selector - A `selector` to search for element to click. If there are
-     * multiple elements satisfying the `selector`, the first will be clicked
-     * @param options - `Object`
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully clicked. The Promise will be rejected if there is no element
-     * matching `selector`.
-     */
     click(selector, options = {}) {
         return this.mainFrame().click(selector, options);
     }
-    /**
-     * This method fetches an element with `selector` and focuses it. If there's no
-     * element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
-     * of an element to focus. If there are multiple elements satisfying the
-     * selector, the first will be focused.
-     * @returns  Promise which resolves when the element matching selector is
-     * successfully focused. The promise will be rejected if there is no element
-     * matching selector.
-     * @remarks
-     * Shortcut for {@link Frame.focus | page.mainFrame().focus(selector)}.
-     */
     focus(selector) {
         return this.mainFrame().focus(selector);
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.mouse} to hover over the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * to search for element to hover. If there are multiple elements satisfying
-     * the selector, the first will be hovered.
-     * @returns Promise which resolves when the element matching `selector` is
-     * successfully hovered. Promise gets rejected if there's no element matching
-     * `selector`.
-     * @remarks
-     * Shortcut for {@link Page.hover | page.mainFrame().hover(selector)}.
-     */
     hover(selector) {
         return this.mainFrame().hover(selector);
     }
-    /**
-     * Triggers a `change` and `input` event once all the provided options have been
-     * selected. If there's no `<select>` element matching `selector`, the method
-     * throws an error.
-     *
-     * @example
-     * ```js
-     * page.select('select#colors', 'blue'); // single selection
-     * page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to query the page for
-     * @param values - Values of options to select. If the `<select>` has the
-     * `multiple` attribute, all values are considered, otherwise only the first one
-     * is taken into account.
-     * @returns
-     *
-     * @remarks
-     * Shortcut for {@link Frame.select | page.mainFrame().select()}
-     */
     select(selector, ...values) {
         return this.mainFrame().select(selector, ...values);
     }
-    /**
-     * This method fetches an element with `selector`, scrolls it into view if
-     * needed, and then uses {@link Page.touchscreen} to tap in the center of the element.
-     * If there's no element matching `selector`, the method throws an error.
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-     * to search for element to tap. If there are multiple elements satisfying the
-     * selector, the first will be tapped.
-     * @returns
-     * @remarks
-     * Shortcut for {@link Frame.tap | page.mainFrame().tap(selector)}.
-     */
     tap(selector) {
         return this.mainFrame().tap(selector);
     }
-    /**
-     * Sends a `keydown`, `keypress/input`, and `keyup` event for each character
-     * in the text.
-     *
-     * To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
-     * @example
-     * ```
-     * await page.type('#mytextarea', 'Hello');
-     * // Types instantly
-     * await page.type('#mytextarea', 'World', { delay: 100 });
-     * // Types slower, like a user
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to type into. If there are multiple elements satisfying the
-     * selector, the first will be used.
-     * @param text - A text to type into a focused element.
-     * @param options - have property `delay` which is the Time to wait between
-     * key presses in milliseconds. Defaults to `0`.
-     * @returns
-     * @remarks
-     */
     type(selector, text, options) {
         return this.mainFrame().type(selector, text, options);
     }
@@ -2304,174 +1328,12 @@
     waitForTimeout(milliseconds) {
         return this.mainFrame().waitForTimeout(milliseconds);
     }
-    /**
-     * Wait for the `selector` to appear in page. If at the moment of calling the
-     * method the `selector` already exists, the method will return immediately. If
-     * the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigations:
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForSelector('img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param selector - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-     * of an element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by selector string
-     * is added to DOM. Resolves to `null` if waiting for hidden: `true` and
-     * selector is not found in DOM.
-     * @remarks
-     * The optional Parameter in Arguments `options` are :
-     *
-     * - `Visible`: A boolean wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: ait for element to not be found in the DOM or to be hidden,
-     * i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
-     * `false`.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForSelector(selector, options = {}) {
         return this.mainFrame().waitForSelector(selector, options);
     }
-    /**
-     * Wait for the `xpath` to appear in page. If at the moment of calling the
-     * method the `xpath` already exists, the method will return immediately. If
-     * the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
-     * function will throw.
-     *
-     * This method works across navigation
-     * ```js
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * let currentURL;
-     * page
-     * .waitForXPath('//img')
-     * .then(() => console.log('First URL with image: ' + currentURL));
-     * for (currentURL of [
-     * 'https://example.com',
-     * 'https://google.com',
-     * 'https://bbc.com',
-     * ]) {
-     * await page.goto(currentURL);
-     * }
-     * await browser.close();
-     * })();
-     * ```
-     * @param xpath - A
-     * {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
-     * element to wait for
-     * @param options - Optional waiting parameters
-     * @returns Promise which resolves when element specified by xpath string is
-     * added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
-     * not found in DOM.
-     * @remarks
-     * The optional Argument `options` have properties:
-     *
-     * - `visible`: A boolean to wait for element to be present in DOM and to be
-     * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-     * properties. Defaults to `false`.
-     *
-     * - `hidden`: A boolean wait for element to not be found in the DOM or to be
-     * hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
-     * Defaults to `false`.
-     *
-     * - `timeout`: A number which is maximum time to wait for in milliseconds.
-     * Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
-     * value can be changed by using the {@link Page.setDefaultTimeout} method.
-     */
     waitForXPath(xpath, options = {}) {
         return this.mainFrame().waitForXPath(xpath, options);
     }
-    /**
-     * The `waitForFunction` can be used to observe viewport size change:
-     *
-     * ```
-     * const puppeteer = require('puppeteer');
-     * (async () => {
-     * const browser = await puppeteer.launch();
-     * const page = await browser.newPage();
-     * const watchDog = page.waitForFunction('window.innerWidth < 100');
-     * await page.setViewport({ width: 50, height: 50 });
-     * await watchDog;
-     * await browser.close();
-     * })();
-     * ```
-     * To pass arguments from node.js to the predicate of `page.waitForFunction` function:
-     * ```
-     * const selector = '.foo';
-     * await page.waitForFunction(
-     * (selector) => !!document.querySelector(selector),
-     * {},
-     * selector
-     * );
-     * ```
-     * The predicate of `page.waitForFunction` can be asynchronous too:
-     * ```
-     * const username = 'github-username';
-     * await page.waitForFunction(
-     * async (username) => {
-     * const githubResponse = await fetch(
-     *  `https://api.github.com/users/${username}`
-     * );
-     * const githubUser = await githubResponse.json();
-     * // show the avatar
-     * const img = document.createElement('img');
-     * img.src = githubUser.avatar_url;
-     * // wait 3 seconds
-     * await new Promise((resolve, reject) => setTimeout(resolve, 3000));
-     * img.remove();
-     * },
-     * {},
-     * username
-     * );
-     * ```
-     * @param pageFunction - Function to be evaluated in browser context
-     * @param options - Optional waiting parameters
-     * @param args -  Arguments to pass to `pageFunction`
-     * @returns Promise which resolves when the `pageFunction` returns a truthy
-     * value. It resolves to a JSHandle of the truthy value.
-     *
-     * The optional waiting parameter can be:
-     *
-     * - `Polling`: An interval at which the `pageFunction` is executed, defaults to
-     *   `raf`. If `polling` is a number, then it is treated as an interval in
-     *   milliseconds at which the function would be executed. If polling is a
-     *   string, then it can be one of the following values:<br/>
-     *    - `raf`: to constantly execute `pageFunction` in `requestAnimationFrame`
-     *      callback. This is the tightest polling mode which is suitable to
-     *      observe styling changes.<br/>
-     *    - `mutation`: to execute pageFunction on every DOM mutation.
-     *
-     * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-     * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-     * by using the
-     * {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)} method.
-     *
-     */
     waitForFunction(pageFunction, options = {}, ...args) {
         return this.mainFrame().waitForFunction(pageFunction, options, ...args);
     }
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js.map
index c3a2ece..5a7e4b1 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Page.js.map
@@ -1 +1 @@
-{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../src/common/Page.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts
index cc5545e..b3acf2d 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts
@@ -19,7 +19,6 @@
 import { Browser, BrowserContext } from './Browser.js';
 import { Viewport } from './PuppeteerViewport.js';
 import { Protocol } from 'devtools-protocol';
-import { TaskQueue } from './TaskQueue.js';
 /**
  * @public
  */
@@ -31,7 +30,6 @@
     private _defaultViewport?;
     private _pagePromise?;
     private _workerPromise?;
-    private _screenshotTaskQueue;
     /**
      * @internal
      */
@@ -59,7 +57,7 @@
     /**
      * @internal
      */
-    constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue);
+    constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null);
     /**
      * Creates a Chrome Devtools Protocol session attached to the target.
      */
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts.map
index bbaaafd..5f8110e 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Target.d.ts","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAqB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAiB;IAExC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,oBAAoB,CAAY;IACxC;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC;;OAEG;IACH,oBAAoB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;gBAED,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EACtC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,EACzC,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,QAAQ,GAAG,IAAI,EAChC,mBAAmB,EAAE,SAAS;IAkChC;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAoBlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAqBzC,GAAG,IAAI,MAAM;IAIb;;;;;;OAMG;IACH,IAAI,IACA,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,OAAO,GACP,SAAS,GACT,SAAS;IAcb;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,cAAc,IAAI,cAAc;IAIhC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;IAMvB;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI;CAYjE"}
\ No newline at end of file
+{"version":3,"file":"Target.d.ts","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAqB,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAAiB;IAExC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC;;OAEG;IACH,oBAAoB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;gBAED,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EACtC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,EACzC,iBAAiB,EAAE,OAAO,EAC1B,eAAe,EAAE,QAAQ,GAAG,IAAI;IAiClC;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IAIvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAmBlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAqBzC,GAAG,IAAI,MAAM;IAIb;;;;;;OAMG;IACH,IAAI,IACA,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,OAAO,GACP,SAAS,GACT,SAAS;IAcb;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,cAAc,IAAI,cAAc;IAIhC;;OAEG;IACH,MAAM,IAAI,MAAM,GAAG,IAAI;IAMvB;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI;CAYjE"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js
index 55980aa..a83ac51 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js
@@ -22,14 +22,13 @@
     /**
      * @internal
      */
-    constructor(targetInfo, browserContext, sessionFactory, ignoreHTTPSErrors, defaultViewport, screenshotTaskQueue) {
+    constructor(targetInfo, browserContext, sessionFactory, ignoreHTTPSErrors, defaultViewport) {
         this._targetInfo = targetInfo;
         this._browserContext = browserContext;
         this._targetId = targetInfo.targetId;
         this._sessionFactory = sessionFactory;
         this._ignoreHTTPSErrors = ignoreHTTPSErrors;
         this._defaultViewport = defaultViewport;
-        this._screenshotTaskQueue = screenshotTaskQueue;
         /** @type {?Promise<!Puppeteer.Page>} */
         this._pagePromise = null;
         /** @type {?Promise<!WebWorker>} */
@@ -67,7 +66,7 @@
             this._targetInfo.type === 'background_page' ||
             this._targetInfo.type === 'webview') &&
             !this._pagePromise) {
-            this._pagePromise = this._sessionFactory().then((client) => Page.create(client, this, this._ignoreHTTPSErrors, this._defaultViewport, this._screenshotTaskQueue));
+            this._pagePromise = this._sessionFactory().then((client) => Page.create(client, this, this._ignoreHTTPSErrors, this._defaultViewport));
         }
         return this._pagePromise;
     }
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js.map
index a65ea56..85716d6 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Target.js.map
@@ -1 +1 @@
-{"version":3,"file":"Target.js","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Target.js","sourceRoot":"","sources":["../../../../src/common/Target.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts
deleted file mode 100644
index 159b182..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Copyright 2020 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-export declare class TaskQueue {
-    private _chain;
-    constructor();
-    postTask<T>(task: () => Promise<T>): Promise<T>;
-}
-//# sourceMappingURL=TaskQueue.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts.map
deleted file mode 100644
index 7765719..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"TaskQueue.d.ts","sourceRoot":"","sources":["../../../../src/common/TaskQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAgB;;IAM9B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAQhD"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js b/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js
deleted file mode 100644
index 686eb92..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Copyright 2020 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-export class TaskQueue {
-    constructor() {
-        this._chain = Promise.resolve();
-    }
-    postTask(task) {
-        const result = this._chain.then(task);
-        this._chain = result.then(() => undefined, () => undefined);
-        return result;
-    }
-}
-//# sourceMappingURL=TaskQueue.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js.map
deleted file mode 100644
index 91c7016..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/TaskQueue.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"TaskQueue.js","sourceRoot":"","sources":["../../../../src/common/TaskQueue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,OAAO,SAAS;IAGpB;QACE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,QAAQ,CAAI,IAAsB;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CACvB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.d.ts.map
index 1a0b27c..c1d591b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,OAAO;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,UAAS;IACnB,KAAK,SAAM;IAEX;;OAEG;gBACS,MAAM,EAAE,UAAU;IAI9B;;;;;OAKG;IACG,KAAK,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2CxD;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CAuB9B"}
\ No newline at end of file
+{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":";AAiBA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,OAAO;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,UAAS;IACnB,KAAK,SAAM;IAEX;;OAEG;gBACS,MAAM,EAAE,UAAU;IAI9B;;;;;OAKG;IACG,KAAK,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCxD;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CAgB9B"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js
index 434da3c..fb4c414 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js
@@ -59,22 +59,16 @@
             'latencyInfo',
             'disabled-by-default-devtools.timeline.stack',
             'disabled-by-default-v8.cpu_profiler',
+            'disabled-by-default-v8.cpu_profiler.hires',
         ];
         const { path = null, screenshots = false, categories = defaultCategories, } = options;
         if (screenshots)
             categories.push('disabled-by-default-devtools.screenshot');
-        const excludedCategories = categories
-            .filter((cat) => cat.startsWith('-'))
-            .map((cat) => cat.slice(1));
-        const includedCategories = categories.filter((cat) => !cat.startsWith('-'));
         this._path = path;
         this._recording = true;
         await this._client.send('Tracing.start', {
             transferMode: 'ReturnAsStream',
-            traceConfig: {
-                excludedCategories,
-                includedCategories,
-            },
+            categories: categories.join(','),
         });
     }
     /**
@@ -88,15 +82,10 @@
             fulfill = x;
             reject = y;
         });
-        this._client.once('Tracing.tracingComplete', async (event) => {
-            try {
-                const readable = await helper.getReadableFromProtocolStream(this._client, event.stream);
-                const buffer = await helper.getReadableAsBuffer(readable, this._path);
-                fulfill(buffer);
-            }
-            catch (error) {
-                reject(error);
-            }
+        this._client.once('Tracing.tracingComplete', (event) => {
+            helper
+                .readProtocolStream(this._client, event.stream, this._path)
+                .then(fulfill, reject);
         });
         await this._client.send('Tracing.end');
         this._recording = false;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js.map
index a0a67cb..2321c42 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/Tracing.js.map
@@ -1 +1 @@
-{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAYrC;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,OAAO;IAKlB;;OAEG;IACH,YAAY,MAAkB;QAN9B,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAG,EAAE,CAAC;QAMT,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,UAA0B,EAAE;QACtC,MAAM,CACJ,CAAC,IAAI,CAAC,UAAU,EAChB,6DAA6D,CAC9D,CAAC;QAEF,MAAM,iBAAiB,GAAG;YACxB,IAAI;YACJ,mBAAmB;YACnB,YAAY;YACZ,uCAAuC;YACvC,6CAA6C;YAC7C,UAAU;YACV,eAAe;YACf,mBAAmB;YACnB,aAAa;YACb,6CAA6C;YAC7C,qCAAqC;SACtC,CAAC;QACF,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,iBAAiB,GAC/B,GAAG,OAAO,CAAC;QAEZ,IAAI,WAAW;YAAE,UAAU,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAE5E,MAAM,kBAAkB,GAAG,UAAU;aAClC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACpC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE;YACvC,YAAY,EAAE,gBAAgB;YAC9B,WAAW,EAAE;gBACX,kBAAkB;gBAClB,kBAAkB;aACnB;SACF,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,OAAgC,CAAC;QACrC,IAAI,MAA4B,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,OAAO,GAAG,CAAC,CAAC;YACZ,MAAM,GAAG,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3D,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,6BAA6B,CACzD,IAAI,CAAC,OAAO,EACZ,KAAK,CAAC,MAAM,CACb,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtE,OAAO,CAAC,MAAM,CAAC,CAAC;aACjB;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,CAAC,KAAK,CAAC,CAAC;aACf;QACH,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;CACF"}
\ No newline at end of file
+{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../../../src/common/Tracing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAYrC;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,OAAO;IAKlB;;OAEG;IACH,YAAY,MAAkB;QAN9B,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAG,EAAE,CAAC;QAMT,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,UAA0B,EAAE;QACtC,MAAM,CACJ,CAAC,IAAI,CAAC,UAAU,EAChB,6DAA6D,CAC9D,CAAC;QAEF,MAAM,iBAAiB,GAAG;YACxB,IAAI;YACJ,mBAAmB;YACnB,YAAY;YACZ,uCAAuC;YACvC,6CAA6C;YAC7C,UAAU;YACV,eAAe;YACf,mBAAmB;YACnB,aAAa;YACb,6CAA6C;YAC7C,qCAAqC;YACrC,2CAA2C;SAC5C,CAAC;QACF,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,KAAK,EACnB,UAAU,GAAG,iBAAiB,GAC/B,GAAG,OAAO,CAAC;QAEZ,IAAI,WAAW;YAAE,UAAU,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAE5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE;YACvC,YAAY,EAAE,gBAAgB;YAC9B,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,OAAgC,CAAC;QACrC,IAAI,MAA4B,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,OAAO,GAAG,CAAC,CAAC;YACZ,MAAM,GAAG,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,KAAK,EAAE,EAAE;YACrD,MAAM;iBACH,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;iBAC1D,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;CACF"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts
index 0e192da..f5d9dec 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts
@@ -19,5 +19,4 @@
  * @param message - the error message to throw if the value is not truthy.
  */
 export declare const assert: (value: unknown, message?: string) => void;
-export declare const assertNever: (value: never, message?: string) => void;
 //# sourceMappingURL=assert.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts.map
index b1cc60d..a75f674 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,OAAO,YAAY,MAAM,KAAG,IAEzD,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,KAAK,YAAY,MAAM,KAAG,IAE5D,CAAC"}
\ No newline at end of file
+{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,OAAO,YAAY,MAAM,KAAG,IAEzD,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js
index 8a9fcfc..5b99d7d 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js
@@ -22,8 +22,4 @@
     if (!value)
         throw new Error(message);
 };
-export const assertNever = (value, message) => {
-    if (value)
-        throw new Error(message);
-};
 //# sourceMappingURL=assert.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js.map
index 8f27764..c38955c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/assert.js.map
@@ -1 +1 @@
-{"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,OAAgB,EAAQ,EAAE;IAC/D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,OAAgB,EAAQ,EAAE;IAClE,IAAI,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC,CAAC"}
\ No newline at end of file
+{"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../../src/common/assert.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,OAAgB,EAAQ,EAAE;IAC/D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts
index 5ed9debc3..dcbbf9b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts
@@ -1,20 +1,4 @@
-/**
- * Copyright 2017 Google Inc. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
 /// <reference types="node" />
-import type { Readable } from 'stream';
 import { CDPSession } from './Connection.js';
 import { Protocol } from 'devtools-protocol';
 import { CommonEventEmitter } from './EventEmitter.js';
@@ -46,8 +30,7 @@
 declare function pageBindingDeliverErrorValueString(name: string, seq: number, value: unknown): string;
 declare function makePredicateString(predicate: Function, predicateQueryHandler?: Function): string;
 declare function waitWithTimeout<T extends any>(promise: Promise<T>, taskName: string, timeout: number): Promise<T>;
-declare function getReadableAsBuffer(readable: Readable, path?: string): Promise<Buffer>;
-declare function getReadableFromProtocolStream(client: CDPSession, handle: string): Promise<Readable>;
+declare function readProtocolStream(client: CDPSession, handle: string, path?: string): Promise<Buffer>;
 /**
  * Loads the Node fs promises API. Needed because on Node 10.17 and below,
  * fs.promises is experimental, and therefore not marked as enumerable. That
@@ -68,8 +51,7 @@
     pageBindingDeliverErrorString: typeof pageBindingDeliverErrorString;
     pageBindingDeliverErrorValueString: typeof pageBindingDeliverErrorValueString;
     makePredicateString: typeof makePredicateString;
-    getReadableAsBuffer: typeof getReadableAsBuffer;
-    getReadableFromProtocolStream: typeof getReadableFromProtocolStream;
+    readProtocolStream: typeof readProtocolStream;
     waitWithTimeout: typeof waitWithTimeout;
     waitForEvent: typeof waitForEvent;
     isString: typeof isString;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts.map
index f3ea204..88dd9fd 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js
index 3f2b395..9f3d9e2 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js
@@ -212,55 +212,37 @@
             clearTimeout(timeoutTimer);
     }
 }
-async function getReadableAsBuffer(readable, path) {
+async function readProtocolStream(client, handle, path) {
     if (!isNode && path) {
         throw new Error('Cannot write to a path outside of Node.js environment.');
     }
     const fs = isNode ? await importFSModule() : null;
+    let eof = false;
     let fileHandle;
     if (path && fs) {
         fileHandle = await fs.promises.open(path, 'w');
     }
-    const buffers = [];
-    for await (const chunk of readable) {
-        buffers.push(chunk);
-        if (fileHandle) {
-            await fs.promises.writeFile(fileHandle, chunk);
+    const bufs = [];
+    while (!eof) {
+        const response = await client.send('IO.read', { handle });
+        eof = response.eof;
+        const buf = Buffer.from(response.data, response.base64Encoded ? 'base64' : undefined);
+        bufs.push(buf);
+        if (path && fs) {
+            await fs.promises.writeFile(fileHandle, buf);
         }
     }
     if (path)
         await fileHandle.close();
+    await client.send('IO.close', { handle });
     let resultBuffer = null;
     try {
-        resultBuffer = Buffer.concat(buffers);
+        resultBuffer = Buffer.concat(bufs);
     }
     finally {
         return resultBuffer;
     }
 }
-async function getReadableFromProtocolStream(client, handle) {
-    // TODO:
-    // This restriction can be lifted once https://github.com/nodejs/node/pull/39062 has landed
-    if (!isNode) {
-        throw new Error('Cannot create a stream outside of Node.js environment.');
-    }
-    const { Readable } = await import('stream');
-    let eof = false;
-    return new Readable({
-        async read(size) {
-            if (eof) {
-                return null;
-            }
-            const response = await client.send('IO.read', { handle, size });
-            this.push(response.data, response.base64Encoded ? 'base64' : undefined);
-            if (response.eof) {
-                eof = true;
-                await client.send('IO.close', { handle });
-                this.push(null);
-            }
-        },
-    });
-}
 /**
  * Loads the Node fs promises API. Needed because on Node 10.17 and below,
  * fs.promises is experimental, and therefore not marked as enumerable. That
@@ -290,8 +272,7 @@
     pageBindingDeliverErrorString,
     pageBindingDeliverErrorValueString,
     makePredicateString,
-    getReadableAsBuffer,
-    getReadableFromProtocolStream,
+    readProtocolStream,
     waitWithTimeout,
     waitForEvent,
     isString,
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js.map b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js.map
index dd6f5f0..c7a3efa 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/common/helper.js.map
@@ -1 +1 @@
-{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../src/common/helper.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts
deleted file mode 100644
index 0c13d62..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * These global declarations exist so puppeteer can work without the need to use `"dom"`
- * types.
- *
- * To get full type information for these interfaces, add `"types": "dom"`in your
- * `tsconfig.json` file.
- */
-declare global {
-    interface Document {
-    }
-    interface Element {
-    }
-    interface NodeListOf<TNode> {
-    }
-}
-export {};
-//# sourceMappingURL=global.d.ts.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts.map
deleted file mode 100644
index 7729a0b..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/global.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../../../src/global.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,QAAQ;KAAG;IAGrB,UAAU,OAAO;KAAG;IAIpB,UAAU,UAAU,CAAC,KAAK;KAAI;CAC/B;AAED,OAAO,EAAE,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/global.js b/node_modules/puppeteer/lib/esm/puppeteer/global.js
deleted file mode 100644
index a8d4563..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/global.js
+++ /dev/null
@@ -1,2 +0,0 @@
-export {};
-//# sourceMappingURL=global.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/global.js.map b/node_modules/puppeteer/lib/esm/puppeteer/global.js.map
deleted file mode 100644
index 7296c4e..0000000
--- a/node_modules/puppeteer/lib/esm/puppeteer/global.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"global.js","sourceRoot":"","sources":["../../../src/global.ts"],"names":[],"mappings":""}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map
index 68d393d..535ab45 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserFetcher.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyC/C;;;GAGG;AACH,oBAAY,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AAoE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAW;IAE5B;;OAEG;gBACS,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;IAkBpE,OAAO,CAAC,WAAW;IAcnB;;;OAGG;IACH,QAAQ,IAAI,QAAQ;IAIpB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;;;;;;OAOG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB/C;;;;;;;;;OASG;IACG,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,gBAAgB,GAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAqB,GAChE,OAAO,CAAC,0BAA0B,CAAC;IA+BtC;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASzC;;;;;;OAMG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B;IAkE1D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAGzC"}
\ No newline at end of file
+{"version":3,"file":"BrowserFetcher.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAyC/C;;;GAGG;AACH,oBAAY,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AAkE3D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,SAAS,CAAW;IAE5B;;OAEG;gBACS,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;IAkBpE,OAAO,CAAC,WAAW;IAcnB;;;OAGG;IACH,QAAQ,IAAI,QAAQ;IAIpB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;;;;;;OAOG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB/C;;;;;;;;;OASG;IACG,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,gBAAgB,GAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAqB,GAChE,OAAO,CAAC,0BAA0B,CAAC;IA+BtC;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASzC;;;;;;OAMG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B;IAoE1D;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAGzC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js
index 76077ab..a4a5247 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js
@@ -28,7 +28,7 @@
 import createHttpsProxyAgent from 'https-proxy-agent';
 import { getProxyForUrl } from 'proxy-from-env';
 import { assert } from '../common/assert.js';
-const debugFetcher = debug('puppeteer:fetcher');
+const debugFetcher = debug(`puppeteer:fetcher`);
 const downloadURLs = {
     chrome: {
         linux: '%s/chromium-browser-snapshots/Linux_x64/%d/%s.zip',
@@ -83,10 +83,10 @@
         if (stats === undefined) {
             fs.stat('/usr/bin/chromium', function (err, stats) {
                 if (stats === undefined) {
-                    console.error('The chromium binary is not available for arm64.' +
-                        '\nIf you are on Ubuntu, you can install with: ' +
-                        '\n\n sudo apt install chromium\n' +
-                        '\n\n sudo apt install chromium-browser\n');
+                    console.error(`The chromium binary is not available for arm64.`);
+                    console.error(`If you are on Ubuntu, you can install with: `);
+                    console.error(`\n sudo apt install chromium\n`);
+                    console.error(`\n sudo apt install chromium-browser\n`);
                     throw new Error();
                 }
             });
@@ -152,7 +152,7 @@
         else if (platform === 'win32')
             this._platform = os.arch() === 'x64' ? 'win64' : 'win32';
         else
-            assert(this._platform, 'Unsupported platform: ' + platform);
+            assert(this._platform, 'Unsupported platform: ' + os.platform());
     }
     /**
      * @returns Returns the current `Platform`, which is one of `mac`, `linux`,
@@ -286,8 +286,9 @@
             else
                 throw new Error('Unsupported platform: ' + this._platform);
         }
-        else
+        else {
             throw new Error('Unsupported product: ' + this._product);
+        }
         const url = downloadURL(this._product, this._platform, this._downloadHost, revision);
         const local = fs.existsSync(folderPath);
         debugFetcher({
@@ -311,7 +312,7 @@
      * @internal
      */
     _getFolderPath(revision) {
-        return path.resolve(this._downloadsFolder, `${this._platform}-${revision}`);
+        return path.join(this._downloadsFolder, this._platform + '-' + revision);
     }
 }
 function parseFolderPath(product, folderPath) {
@@ -403,7 +404,7 @@
             mountPath = volumes[0];
             readdirAsync(mountPath)
                 .then((fileNames) => {
-                const appName = fileNames.find((item) => typeof item === 'string' && item.endsWith('.app'));
+                const appName = fileNames.filter((item) => typeof item === 'string' && item.endsWith('.app'))[0];
                 if (!appName)
                     return reject(new Error(`Cannot find app in ${mountPath}`));
                 const copyPath = path.join(mountPath, appName);
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js.map
index 682a9c7..b69e25c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserFetcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserFetcher.js","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"BrowserFetcher.js","sourceRoot":"","sources":["../../../../src/node/BrowserFetcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts
index ccf341e..682db7e 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts
@@ -20,14 +20,13 @@
     private _product;
     private _executablePath;
     private _processArguments;
-    private _userDataDir;
-    private _isTempUserDataDir?;
+    private _tempDirectory?;
     proc: any;
     connection: any;
     private _closed;
     private _listeners;
     private _processClosing;
-    constructor(product: Product, executablePath: string, processArguments: string[], userDataDir: string, isTempUserDataDir?: boolean);
+    constructor(product: Product, executablePath: string, processArguments: string[], tempDirectory?: string);
     start(options: LaunchOptions): void;
     close(): Promise<void>;
     kill(): void;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts.map
index 799bb71..2e19f56 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserRunner.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAaH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAc/C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAW;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAC,CAAU;IAErC,IAAI,MAAQ;IACZ,UAAU,MAAQ;IAElB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,eAAe,CAAgB;gBAGrC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,iBAAiB,CAAC,EAAE,OAAO;IAS7B,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA2FnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtB,IAAI,IAAI,IAAI;IA0BN,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBxB"}
\ No newline at end of file
+{"version":3,"file":"BrowserRunner.d.ts","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAY/C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,iBAAiB,CAAW;IACpC,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,IAAI,MAAQ;IACZ,UAAU,MAAQ;IAElB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,eAAe,CAAgB;gBAGrC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,aAAa,CAAC,EAAE,MAAM;IAQxB,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA+DnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtB,IAAI,IAAI,IAAI;IAuBN,eAAe,CAAC,OAAO,EAAE;QAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBxB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js
index 414a11e..aedd550 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js
@@ -14,28 +14,24 @@
  * limitations under the License.
  */
 import { debug } from '../common/Debug.js';
-import * as childProcess from 'child_process';
-import * as fs from 'fs';
-import * as path from 'path';
-import * as readline from 'readline';
 import removeFolder from 'rimraf';
-import { promisify } from 'util';
+import * as childProcess from 'child_process';
 import { assert } from '../common/assert.js';
 import { helper, debugError } from '../common/helper.js';
 import { Connection } from '../common/Connection.js';
 import { NodeWebSocketTransport as WebSocketTransport } from '../node/NodeWebSocketTransport.js';
 import { PipeTransport } from './PipeTransport.js';
+import * as readline from 'readline';
 import { TimeoutError } from '../common/Errors.js';
+import { promisify } from 'util';
 const removeFolderAsync = promisify(removeFolder);
-const renameAsync = promisify(fs.rename);
-const unlinkAsync = promisify(fs.unlink);
 const debugLauncher = debug('puppeteer:launcher');
 const PROCESS_ERROR_EXPLANATION = `Puppeteer was unable to kill the process which ran the browser binary.
 This means that, on future Puppeteer launches, Puppeteer might not be able to launch the browser.
 Please check your open processes and ensure that the browser processes that Puppeteer launched have been killed.
 If you think this is a bug, please report it on the Puppeteer issue tracker.`;
 export class BrowserRunner {
-    constructor(product, executablePath, processArguments, userDataDir, isTempUserDataDir) {
+    constructor(product, executablePath, processArguments, tempDirectory) {
         this.proc = null;
         this.connection = null;
         this._closed = true;
@@ -43,24 +39,17 @@
         this._product = product;
         this._executablePath = executablePath;
         this._processArguments = processArguments;
-        this._userDataDir = userDataDir;
-        this._isTempUserDataDir = isTempUserDataDir;
+        this._tempDirectory = tempDirectory;
     }
     start(options) {
         const { handleSIGINT, handleSIGTERM, handleSIGHUP, dumpio, env, pipe } = options;
-        let stdio;
+        let stdio = ['pipe', 'pipe', 'pipe'];
         if (pipe) {
             if (dumpio)
                 stdio = ['ignore', 'pipe', 'pipe', 'pipe', 'pipe'];
             else
                 stdio = ['ignore', 'ignore', 'ignore', 'pipe', 'pipe'];
         }
-        else {
-            if (dumpio)
-                stdio = ['pipe', 'pipe', 'pipe'];
-            else
-                stdio = ['pipe', 'ignore', 'pipe'];
-        }
         assert(!this.proc, 'This process has previously been started.');
         debugLauncher(`Calling ${this._executablePath} ${this._processArguments.join(' ')}`);
         this.proc = childProcess.spawn(this._executablePath, this._processArguments, {
@@ -77,38 +66,16 @@
             this.proc.stdout.pipe(process.stdout);
         }
         this._closed = false;
-        this._processClosing = new Promise((fulfill, reject) => {
-            this.proc.once('exit', async () => {
+        this._processClosing = new Promise((fulfill) => {
+            this.proc.once('exit', () => {
                 this._closed = true;
                 // Cleanup as processes exit.
-                if (this._isTempUserDataDir) {
-                    try {
-                        await removeFolderAsync(this._userDataDir);
-                        fulfill();
-                    }
-                    catch (error) {
-                        console.error(error);
-                        reject(error);
-                    }
+                if (this._tempDirectory) {
+                    removeFolderAsync(this._tempDirectory)
+                        .then(() => fulfill())
+                        .catch((error) => console.error(error));
                 }
                 else {
-                    if (this._product === 'firefox') {
-                        try {
-                            // When an existing user profile has been used remove the user
-                            // preferences file and restore possibly backuped preferences.
-                            await unlinkAsync(path.join(this._userDataDir, 'user.js'));
-                            const prefsBackupPath = path.join(this._userDataDir, 'prefs.js.puppeteer');
-                            if (fs.existsSync(prefsBackupPath)) {
-                                const prefsPath = path.join(this._userDataDir, 'prefs.js');
-                                await unlinkAsync(prefsPath);
-                                await renameAsync(prefsBackupPath, prefsPath);
-                            }
-                        }
-                        catch (error) {
-                            console.error(error);
-                            reject(error);
-                        }
-                    }
                     fulfill();
                 }
             });
@@ -129,7 +96,7 @@
     close() {
         if (this._closed)
             return Promise.resolve();
-        if (this._isTempUserDataDir && this._product !== 'firefox') {
+        if (this._tempDirectory && this._product !== 'firefox') {
             this.kill();
         }
         else if (this.connection) {
@@ -145,6 +112,11 @@
         return this._processClosing;
     }
     kill() {
+        // Attempt to remove temporary profile directory to avoid littering.
+        try {
+            removeFolder.sync(this._tempDirectory);
+        }
+        catch (error) { }
         // If the process failed to launch (for example if the browser executable path
         // is invalid), then the process does not get a pid assigned. A call to
         // `proc.kill` would error, as the `pid` to-be-killed can not be found.
@@ -156,13 +128,6 @@
                 throw new Error(`${PROCESS_ERROR_EXPLANATION}\nError cause: ${error.stack}`);
             }
         }
-        // Attempt to remove temporary profile directory to avoid littering.
-        try {
-            if (this._isTempUserDataDir) {
-                removeFolder.sync(this._userDataDir);
-            }
-        }
-        catch (error) { }
         // Cleanup this listener last, as that makes sure the full callback runs. If we
         // perform this earlier, then the previous function calls would not happen.
         helper.removeEventListeners(this._listeners);
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js.map
index f2d7fcf..07db788 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/BrowserRunner.js.map
@@ -1 +1 @@
-{"version":3,"file":"BrowserRunner.js","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"BrowserRunner.js","sourceRoot":"","sources":["../../../../src/node/BrowserRunner.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts
index b9973d6..098f7bd 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts
@@ -28,39 +28,27 @@
     headless?: boolean;
     /**
      * Path to a user data directory.
-     * {@link https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/user_data_dir.md | see the Chromium docs}
+     * {@link https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md | see the Chromium docs}
      * for more info.
      */
     userDataDir?: string;
     /**
      * Whether to auto-open a DevTools panel for each tab. If this is set to
-     * `true`, then `headless` will be forced to `false`.
+     * `true`, then `headless` will be set to `false` automatically.
      * @defaultValue `false`
      */
     devtools?: boolean;
     /**
-     *
-     */
-    debuggingPort?: number;
-    /**
      * Additional command line arguments to pass to the browser instance.
      */
     args?: string[];
 }
 /**
- * @public
- */
-export declare type ChromeReleaseChannel = 'chrome' | 'chrome-beta' | 'chrome-canary' | 'chrome-dev';
-/**
  * Generic launch options that can be passed when launching any browser.
  * @public
  */
 export interface LaunchOptions {
     /**
-     * Chrome Release Channel
-     */
-    channel?: ChromeReleaseChannel;
-    /**
      * Path to a browser executable to use instead of the bundled Chromium. Note
      * that Puppeteer is only guaranteed to work with the bundled Chromium, so use
      * this setting at your own risk.
@@ -116,7 +104,7 @@
      */
     product?: Product;
     /**
-     * {@link https://searchfox.org/mozilla-release/source/modules/libpref/init/all.js | Additional preferences } that can be passed when launching with Firefox.
+     * {@link https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference | Additional preferences } that can be passed when launching with Firefox.
      */
     extraPrefsFirefox?: Record<string, unknown>;
     /**
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts.map
index 0911e26..cf00fb9c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/LaunchOptions.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"LaunchOptions.d.ts","sourceRoot":"","sources":["../../../../src/node/LaunchOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AACD;;GAEG;AACH,oBAAY,oBAAoB,GAC5B,QAAQ,GACR,aAAa,GACb,eAAe,GACf,YAAY,CAAC;AAEjB;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,oBAAY,0BAA0B,GAAG,4BAA4B,GACnE,aAAa,GACb,qBAAqB,CAAC"}
\ No newline at end of file
+{"version":3,"file":"LaunchOptions.d.ts","sourceRoot":"","sources":["../../../../src/node/LaunchOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IACvC;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,oBAAY,0BAA0B,GAAG,4BAA4B,GACnE,aAAa,GACb,qBAAqB,CAAC"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts
index 244711e..bd7ae92 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts
@@ -6,7 +6,7 @@
  */
 export interface ProductLauncher {
     launch(object: PuppeteerNodeLaunchOptions): any;
-    executablePath: (string?: any) => string;
+    executablePath: () => string;
     defaultArgs(object: BrowserLaunchArgumentOptions): any;
     product: Product;
 }
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts.map
index 9b6bc11..66e0afb 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Launcher.d.ts","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"AA6BA,OAAO,EACL,4BAA4B,EAE5B,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,MAAM,EAAE,0BAA0B,OAAE;IAC3C,cAAc,EAAE,CAAC,MAAM,CAAC,KAAA,KAAK,MAAM,CAAC;IACpC,WAAW,CAAC,MAAM,EAAE,4BAA4B,OAAE;IAClD,OAAO,EAAE,OAAO,CAAC;CAClB;AAmxBD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CA+BjB"}
\ No newline at end of file
+{"version":3,"file":"Launcher.d.ts","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,MAAM,EAAE,0BAA0B,OAAE;IAC3C,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,WAAW,CAAC,MAAM,EAAE,4BAA4B,OAAE;IAClD,OAAO,EAAE,OAAO,CAAC;CAClB;AAslBD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CA+BjB"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js
index b137266..757f6af 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js
@@ -16,15 +16,12 @@
 import * as os from 'os';
 import * as path from 'path';
 import * as fs from 'fs';
-import { assert } from '../common/assert.js';
 import { BrowserFetcher } from './BrowserFetcher.js';
 import { Browser } from '../common/Browser.js';
 import { BrowserRunner } from './BrowserRunner.js';
 import { promisify } from 'util';
-const copyFileAsync = promisify(fs.copyFile);
 const mkdtempAsync = promisify(fs.mkdtemp);
 const writeFileAsync = promisify(fs.writeFile);
-const tmpDir = () => process.env.PUPPETEER_TMP_DIR || os.tmpdir();
 /**
  * @internal
  */
@@ -35,7 +32,8 @@
         this._isPuppeteerCore = isPuppeteerCore;
     }
     async launch(options = {}) {
-        const { ignoreDefaultArgs = false, args = [], dumpio = false, channel = null, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, waitForInitialPage = true, debuggingPort = null, } = options;
+        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, waitForInitialPage = true, } = options;
+        const profilePath = path.join(os.tmpdir(), 'puppeteer_dev_chrome_profile-');
         const chromeArguments = [];
         if (!ignoreDefaultArgs)
             chromeArguments.push(...this.defaultArgs(options));
@@ -43,40 +41,15 @@
             chromeArguments.push(...this.defaultArgs(options).filter((arg) => !ignoreDefaultArgs.includes(arg)));
         else
             chromeArguments.push(...args);
-        if (!chromeArguments.some((argument) => argument.startsWith('--remote-debugging-'))) {
-            if (pipe) {
-                assert(debuggingPort === null, 'Browser should be launched with either pipe or debugging port - not both.');
-                chromeArguments.push('--remote-debugging-pipe');
-            }
-            else {
-                chromeArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
-            }
-        }
-        let userDataDir;
-        let isTempUserDataDir = true;
-        // Check for the user data dir argument, which will always be set even
-        // with a custom directory specified via the userDataDir option.
-        const userDataDirIndex = chromeArguments.findIndex((arg) => {
-            return arg.startsWith('--user-data-dir');
-        });
-        if (userDataDirIndex !== -1) {
-            userDataDir = chromeArguments[userDataDirIndex].split('=')[1];
-            if (!fs.existsSync(userDataDir)) {
-                throw new Error(`Chrome user data dir not found at '${userDataDir}'`);
-            }
-            isTempUserDataDir = false;
-        }
-        else {
-            userDataDir = await mkdtempAsync(path.join(tmpDir(), 'puppeteer_dev_chrome_profile-'));
-            chromeArguments.push(`--user-data-dir=${userDataDir}`);
+        let temporaryUserDataDir = null;
+        if (!chromeArguments.some((argument) => argument.startsWith('--remote-debugging-')))
+            chromeArguments.push(pipe ? '--remote-debugging-pipe' : '--remote-debugging-port=0');
+        if (!chromeArguments.some((arg) => arg.startsWith('--user-data-dir'))) {
+            temporaryUserDataDir = await mkdtempAsync(profilePath);
+            chromeArguments.push(`--user-data-dir=${temporaryUserDataDir}`);
         }
         let chromeExecutable = executablePath;
-        if (channel) {
-            // executablePath is detected by channel, so it should not be specified by user.
-            assert(!executablePath, '`executablePath` must not be specified when `channel` is given.');
-            chromeExecutable = executablePathForChannel(channel);
-        }
-        else if (!executablePath) {
+        if (!executablePath) {
             // Use Intel x86 builds on Apple M1 until native macOS arm64
             // Chromium builds are available.
             if (os.platform() !== 'darwin' && os.arch() === 'arm64') {
@@ -90,7 +63,7 @@
             }
         }
         const usePipe = chromeArguments.includes('--remote-debugging-pipe');
-        const runner = new BrowserRunner(this.product, chromeExecutable, chromeArguments, userDataDir, isTempUserDataDir);
+        const runner = new BrowserRunner(this.product, chromeExecutable, chromeArguments, temporaryUserDataDir);
         runner.start({
             handleSIGHUP,
             handleSIGTERM,
@@ -99,7 +72,6 @@
             env,
             pipe: usePipe,
         });
-        let browser;
         try {
             const connection = await runner.setupConnection({
                 usePipe,
@@ -107,22 +79,15 @@
                 slowMo,
                 preferredRevision: this._preferredRevision,
             });
-            browser = await Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            const browser = await Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            if (waitForInitialPage)
+                await browser.waitForTarget((t) => t.type() === 'page');
+            return browser;
         }
         catch (error) {
             runner.kill();
             throw error;
         }
-        if (waitForInitialPage) {
-            try {
-                await browser.waitForTarget((t) => t.type() === 'page', { timeout });
-            }
-            catch (error) {
-                await browser.close();
-                throw error;
-            }
-        }
-        return browser;
     }
     defaultArgs(options = {}) {
         const chromeArguments = [
@@ -152,7 +117,6 @@
             // TODO(sadym): remove '--enable-blink-features=IdleDetection'
             // once IdleDetection is turned on by default.
             '--enable-blink-features=IdleDetection',
-            '--export-tagged-pdf',
         ];
         const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
         if (userDataDir)
@@ -167,13 +131,8 @@
         chromeArguments.push(...args);
         return chromeArguments;
     }
-    executablePath(channel) {
-        if (channel) {
-            return executablePathForChannel(channel);
-        }
-        else {
-            return resolveExecutablePath(this).executablePath;
-        }
+    executablePath() {
+        return resolveExecutablePath(this).executablePath;
     }
     get product() {
         return 'chrome';
@@ -189,7 +148,7 @@
         this._isPuppeteerCore = isPuppeteerCore;
     }
     async launch(options = {}) {
-        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, extraPrefsFirefox = {}, waitForInitialPage = true, debuggingPort = null, } = options;
+        const { ignoreDefaultArgs = false, args = [], dumpio = false, executablePath = null, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, ignoreHTTPSErrors = false, defaultViewport = { width: 800, height: 600 }, slowMo = 0, timeout = 30000, extraPrefsFirefox = {}, waitForInitialPage = true, } = options;
         const firefoxArguments = [];
         if (!ignoreDefaultArgs)
             firefoxArguments.push(...this.defaultArgs(options));
@@ -197,34 +156,14 @@
             firefoxArguments.push(...this.defaultArgs(options).filter((arg) => !ignoreDefaultArgs.includes(arg)));
         else
             firefoxArguments.push(...args);
-        if (!firefoxArguments.some((argument) => argument.startsWith('--remote-debugging-'))) {
-            if (pipe) {
-                assert(debuggingPort === null, 'Browser should be launched with either pipe or debugging port - not both.');
-            }
-            firefoxArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
-        }
-        let userDataDir = null;
-        let isTempUserDataDir = true;
-        // Check for the profile argument, which will always be set even
-        // with a custom directory specified via the userDataDir option.
-        const profileArgIndex = firefoxArguments.findIndex((arg) => {
-            return ['-profile', '--profile'].includes(arg);
-        });
-        if (profileArgIndex !== -1) {
-            userDataDir = firefoxArguments[profileArgIndex + 1];
-            if (!fs.existsSync(userDataDir)) {
-                throw new Error(`Firefox profile not found at '${userDataDir}'`);
-            }
-            // When using a custom Firefox profile it needs to be populated
-            // with required preferences.
-            isTempUserDataDir = false;
-            const prefs = this.defaultPreferences(extraPrefsFirefox);
-            this.writePreferences(prefs, userDataDir);
-        }
-        else {
-            userDataDir = await this._createProfile(extraPrefsFirefox);
+        if (!firefoxArguments.some((argument) => argument.startsWith('--remote-debugging-')))
+            firefoxArguments.push('--remote-debugging-port=0');
+        let temporaryUserDataDir = null;
+        if (!firefoxArguments.includes('-profile') &&
+            !firefoxArguments.includes('--profile')) {
+            temporaryUserDataDir = await this._createProfile(extraPrefsFirefox);
             firefoxArguments.push('--profile');
-            firefoxArguments.push(userDataDir);
+            firefoxArguments.push(temporaryUserDataDir);
         }
         await this._updateRevision();
         let firefoxExecutable = executablePath;
@@ -234,7 +173,7 @@
                 throw new Error(missingText);
             firefoxExecutable = executablePath;
         }
-        const runner = new BrowserRunner(this.product, firefoxExecutable, firefoxArguments, userDataDir, isTempUserDataDir);
+        const runner = new BrowserRunner(this.product, firefoxExecutable, firefoxArguments, temporaryUserDataDir);
         runner.start({
             handleSIGHUP,
             handleSIGTERM,
@@ -243,7 +182,6 @@
             env,
             pipe,
         });
-        let browser;
         try {
             const connection = await runner.setupConnection({
                 usePipe: pipe,
@@ -251,22 +189,15 @@
                 slowMo,
                 preferredRevision: this._preferredRevision,
             });
-            browser = await Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            const browser = await Browser.create(connection, [], ignoreHTTPSErrors, defaultViewport, runner.proc, runner.close.bind(runner));
+            if (waitForInitialPage)
+                await browser.waitForTarget((t) => t.type() === 'page');
+            return browser;
         }
         catch (error) {
             runner.kill();
             throw error;
         }
-        if (waitForInitialPage) {
-            try {
-                await browser.waitForTarget((t) => t.type() === 'page', { timeout });
-            }
-            catch (error) {
-                await browser.close();
-                throw error;
-            }
-        }
-        return browser;
     }
     executablePath() {
         return resolveExecutablePath(this).executablePath;
@@ -286,13 +217,11 @@
         return 'firefox';
     }
     defaultArgs(options = {}) {
-        const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
-        const firefoxArguments = ['--no-remote'];
-        if (os.platform() === 'darwin')
-            firefoxArguments.push('--foreground');
-        else if (os.platform().startsWith('win')) {
+        const firefoxArguments = ['--no-remote', '--foreground'];
+        if (os.platform().startsWith('win')) {
             firefoxArguments.push('--wait-for-browser');
         }
+        const { devtools = false, headless = !devtools, args = [], userDataDir = null, } = options;
         if (userDataDir) {
             firefoxArguments.push('--profile');
             firefoxArguments.push(userDataDir);
@@ -306,9 +235,12 @@
         firefoxArguments.push(...args);
         return firefoxArguments;
     }
-    defaultPreferences(extraPrefs) {
+    async _createProfile(extraPrefs) {
+        const profilePath = await mkdtempAsync(path.join(os.tmpdir(), 'puppeteer_dev_firefox_profile-'));
+        const prefsJS = [];
+        const userJS = [];
         const server = 'dummy.test';
-        const defaultPrefs = {
+        const defaultPreferences = {
             // Make sure Shield doesn't hit the network.
             'app.normandy.api_url': '',
             // Disable Firefox old build background check
@@ -404,10 +336,8 @@
             'extensions.update.notifyUser': false,
             // Make sure opening about:addons will not hit the network
             'extensions.webservice.discoverURL': `http://${server}/dummy/discoveryURL`,
-            // Temporarily force disable BFCache in parent (https://bit.ly/bug-1732263)
-            'fission.bfcacheInParent': false,
-            // Force all web content to use a single content process
-            'fission.webContentIsolationStrategy': 0,
+            // Force disable Fission until the Remote Agent is compatible
+            'fission.autostart': false,
             // Allow the application to have focus even it runs in the background
             'focusmanager.testmode': true,
             // Disable useragent updates
@@ -440,8 +370,8 @@
             // Disable Flash.
             'plugin.state.flash': 0,
             'privacy.trackingprotection.enabled': false,
-            // Can be removed once Firefox 89 is no longer supported
-            // https://bugzilla.mozilla.org/show_bug.cgi?id=1710839
+            // Enable Remote Agent
+            // https://bugzilla.mozilla.org/show_bug.cgi?id=1544393
             'remote.enabled': true,
             // Don't do network connections for mitm priming
             'security.certerrors.mitm.priming.enabled': false,
@@ -467,102 +397,13 @@
             // Prevent starting into safe mode after application crashes
             'toolkit.startup.max_resumed_crashes': -1,
         };
-        return Object.assign(defaultPrefs, extraPrefs);
+        Object.assign(defaultPreferences, extraPrefs);
+        for (const [key, value] of Object.entries(defaultPreferences))
+            userJS.push(`user_pref(${JSON.stringify(key)}, ${JSON.stringify(value)});`);
+        await writeFileAsync(path.join(profilePath, 'user.js'), userJS.join('\n'));
+        await writeFileAsync(path.join(profilePath, 'prefs.js'), prefsJS.join('\n'));
+        return profilePath;
     }
-    /**
-     * Populates the user.js file with custom preferences as needed to allow
-     * Firefox's CDP support to properly function. These preferences will be
-     * automatically copied over to prefs.js during startup of Firefox. To be
-     * able to restore the original values of preferences a backup of prefs.js
-     * will be created.
-     *
-     * @param prefs List of preferences to add.
-     * @param profilePath Firefox profile to write the preferences to.
-     */
-    async writePreferences(prefs, profilePath) {
-        const lines = Object.entries(prefs).map(([key, value]) => {
-            return `user_pref(${JSON.stringify(key)}, ${JSON.stringify(value)});`;
-        });
-        await writeFileAsync(path.join(profilePath, 'user.js'), lines.join('\n'));
-        // Create a backup of the preferences file if it already exitsts.
-        const prefsPath = path.join(profilePath, 'prefs.js');
-        if (fs.existsSync(prefsPath)) {
-            const prefsBackupPath = path.join(profilePath, 'prefs.js.puppeteer');
-            await copyFileAsync(prefsPath, prefsBackupPath);
-        }
-    }
-    async _createProfile(extraPrefs) {
-        const temporaryProfilePath = await mkdtempAsync(path.join(tmpDir(), 'puppeteer_dev_firefox_profile-'));
-        const prefs = this.defaultPreferences(extraPrefs);
-        await this.writePreferences(prefs, temporaryProfilePath);
-        return temporaryProfilePath;
-    }
-}
-function executablePathForChannel(channel) {
-    const platform = os.platform();
-    let chromePath;
-    switch (platform) {
-        case 'win32':
-            switch (channel) {
-                case 'chrome':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-beta':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Beta\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-canary':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome SxS\\Application\\chrome.exe`;
-                    break;
-                case 'chrome-dev':
-                    chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Dev\\Application\\chrome.exe`;
-                    break;
-            }
-            break;
-        case 'darwin':
-            switch (channel) {
-                case 'chrome':
-                    chromePath =
-                        '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome';
-                    break;
-                case 'chrome-beta':
-                    chromePath =
-                        '/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta';
-                    break;
-                case 'chrome-canary':
-                    chromePath =
-                        '/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary';
-                    break;
-                case 'chrome-dev':
-                    chromePath =
-                        '/Applications/Google Chrome Dev.app/Contents/MacOS/Google Chrome Dev';
-                    break;
-            }
-            break;
-        case 'linux':
-            switch (channel) {
-                case 'chrome':
-                    chromePath = '/opt/google/chrome/chrome';
-                    break;
-                case 'chrome-beta':
-                    chromePath = '/opt/google/chrome-beta/chrome';
-                    break;
-                case 'chrome-dev':
-                    chromePath = '/opt/google/chrome-unstable/chrome';
-                    break;
-            }
-            break;
-    }
-    if (!chromePath) {
-        throw new Error(`Unable to detect browser executable path for '${channel}' on ${platform}.`);
-    }
-    // Check if Chrome exists and is accessible.
-    try {
-        fs.accessSync(chromePath);
-    }
-    catch (error) {
-        throw new Error(`Could not find Google Chrome executable for channel '${channel}' at '${chromePath}'.`);
-    }
-    return chromePath;
 }
 function resolveExecutablePath(launcher) {
     let downloadPath;
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js.map
index 564efc7..f10fc40 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Launcher.js.map
@@ -1 +1 @@
-{"version":3,"file":"Launcher.js","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Launcher.js","sourceRoot":"","sources":["../../../../src/node/Launcher.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map
index b42000a..d985a28 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"NodeWebSocketTransport.d.ts","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,qBAAa,sBAAuB,YAAW,mBAAmB;IAChE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoB3D,OAAO,CAAC,GAAG,CAAgB;IAC3B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;gBAET,EAAE,EAAE,aAAa;IAc7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;CAGd"}
\ No newline at end of file
+{"version":3,"file":"NodeWebSocketTransport.d.ts","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,qBAAa,sBAAuB,YAAW,mBAAmB;IAChE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAc3D,OAAO,CAAC,GAAG,CAAgB;IAC3B,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;gBAET,EAAE,EAAE,aAAa;IAc7B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;CAGd"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js
index 22f4a19..d870119 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js
@@ -16,16 +16,10 @@
         this.onclose = null;
     }
     static create(url) {
-        // eslint-disable-next-line @typescript-eslint/no-var-requires
-        const pkg = require('../../../../package.json');
         return new Promise((resolve, reject) => {
             const ws = new NodeWebSocket(url, [], {
-                followRedirects: true,
                 perMessageDeflate: false,
-                maxPayload: 256 * 1024 * 1024,
-                headers: {
-                    'User-Agent': `Puppeteer ${pkg.version}`,
-                },
+                maxPayload: 256 * 1024 * 1024, // 256Mb
             });
             ws.addEventListener('open', () => resolve(new NodeWebSocketTransport(ws)));
             ws.addEventListener('error', reject);
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map
index 3d8144f..dda2577 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map
@@ -1 +1 @@
-{"version":3,"file":"NodeWebSocketTransport.js","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAgBA,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,MAAM,OAAO,sBAAsB;IAyBjC,YAAY,EAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACtC,IAAI,IAAI,CAAC,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,mEAAmE;QACnE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IApCD,MAAM,CAAC,MAAM,CAAC,GAAW;QACvB,8DAA8D;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,EAAE;gBACpC,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,KAAK;gBACxB,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;gBAC7B,OAAO,EAAE;oBACP,YAAY,EAAE,aAAa,GAAG,CAAC,OAAO,EAAE;iBACzC;aACF,CAAC,CAAC;YAEH,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAC/B,OAAO,CAAC,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC,CACxC,CAAC;YACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAoBD,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;CACF"}
\ No newline at end of file
+{"version":3,"file":"NodeWebSocketTransport.js","sourceRoot":"","sources":["../../../../src/node/NodeWebSocketTransport.ts"],"names":[],"mappings":"AAgBA,OAAO,aAAa,MAAM,IAAI,CAAC;AAE/B,MAAM,OAAO,sBAAsB;IAmBjC,YAAY,EAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACtC,IAAI,IAAI,CAAC,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,mEAAmE;QACnE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IA9BD,MAAM,CAAC,MAAM,CAAC,GAAW;QACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,EAAE;gBACpC,iBAAiB,EAAE,KAAK;gBACxB,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ;aACxC,CAAC,CAAC;YAEH,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAC/B,OAAO,CAAC,IAAI,sBAAsB,CAAC,EAAE,CAAC,CAAC,CACxC,CAAC;YACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAoBD,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;CACF"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts
index f434470..9045d6b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts
@@ -124,7 +124,7 @@
      * The browser binary might not be there if the download was skipped with
      * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
      */
-    executablePath(channel?: string): string;
+    executablePath(): string;
     /**
      * @internal
      */
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts.map
index 472354a..30dafb9 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Puppeteer.d.ts","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,aAAa,EACb,4BAA4B,EAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAC,CAAU;IAChC;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;gBAED,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,uBAAuB;IAU7B;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlD;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAGD,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,EAG7B;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,OAAO,GAAE,aAAa,GACpB,4BAA4B,GAC5B,qBAAqB,GAAG;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,GACP,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAIxC;;OAEG;IACH,IAAI,SAAS,IAAI,eAAe,CAuB/B;IAED;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;OAIG;IACH,WAAW,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,EAAE;IAIjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc;CAGrE"}
\ No newline at end of file
+{"version":3,"file":"Puppeteer.d.ts","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,aAAa,EACb,4BAA4B,EAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAC,CAAU;IAChC;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;gBAED,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,uBAAuB;IAU7B;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlD;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAGD,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,EAG7B;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,CACJ,OAAO,GAAE,aAAa,GACpB,4BAA4B,GAC5B,qBAAqB,GAAG;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,GACP,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;;;;OASG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,IAAI,SAAS,IAAI,eAAe,CAuB/B;IAED;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;OAIG;IACH,WAAW,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,EAAE;IAIjE;;;;OAIG;IACH,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc;CAGrE"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js
index 0a19ffe..32c3185 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js
@@ -128,8 +128,8 @@
      * The browser binary might not be there if the download was skipped with
      * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
      */
-    executablePath(channel) {
-        return this._launcher.executablePath(channel);
+    executablePath() {
+        return this._launcher.executablePath();
     }
     /**
      * @internal
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js.map
index 842c64a..d7c6a2d 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/Puppeteer.js.map
@@ -1 +1 @@
-{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"Puppeteer.js","sourceRoot":"","sources":["../../../../src/node/Puppeteer.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map b/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map
index ba35168..cc5544b 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAsKrD;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAMrD"}
\ No newline at end of file
+{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAcH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAsJrD;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAMrD"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/install.js b/node_modules/puppeteer/lib/esm/puppeteer/node/install.js
index 6d8917e..8d1760c 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/install.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/install.js
@@ -16,11 +16,8 @@
 import os from 'os';
 import https from 'https';
 import ProgressBar from 'progress';
-import URL from 'url';
 import puppeteer from '../node.js';
 import { PUPPETEER_REVISIONS } from '../revisions.js';
-import createHttpsProxyAgent from 'https-proxy-agent';
-import { getProxyForUrl } from 'proxy-from-env';
 const supportedProducts = {
     chrome: 'Chromium',
     firefox: 'Firefox Nightly',
@@ -119,23 +116,12 @@
         return `${Math.round(mb * 10) / 10} Mb`;
     }
     function getFirefoxNightlyVersion() {
-        const firefoxVersionsUrl = 'https://product-details.mozilla.org/1.0/firefox_versions.json';
-        const proxyURL = getProxyForUrl(firefoxVersionsUrl);
-        const requestOptions = {};
-        if (proxyURL) {
-            const parsedProxyURL = URL.parse(proxyURL);
-            const proxyOptions = {
-                ...parsedProxyURL,
-                secureProxy: parsedProxyURL.protocol === 'https:',
-            };
-            requestOptions.agent = createHttpsProxyAgent(proxyOptions);
-            requestOptions.rejectUnauthorized = false;
-        }
+        const firefoxVersions = 'https://product-details.mozilla.org/1.0/firefox_versions.json';
         const promise = new Promise((resolve, reject) => {
             let data = '';
-            logPolitely(`Requesting latest Firefox Nightly version from ${firefoxVersionsUrl}`);
+            logPolitely(`Requesting latest Firefox Nightly version from ${firefoxVersions}`);
             https
-                .get(firefoxVersionsUrl, requestOptions, (r) => {
+                .get(firefoxVersions, (r) => {
                 if (r.statusCode >= 400)
                     return reject(new Error(`Got status code ${r.statusCode}`));
                 r.on('data', (chunk) => {
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map b/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map
index 89258aa..63628da1 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map
+++ b/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map
@@ -1 +1 @@
-{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAyB,MAAM,OAAO,CAAC;AAC9C,OAAO,WAAW,MAAM,UAAU,CAAC;AACnC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,qBAEN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,iBAAiB,GAAG;IACxB,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,iBAAiB;CAClB,CAAC;AAEX,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,YAAY,GAChB,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,kCAAkC;QAC9C,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC;IACzD,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC7B,OAAO,CAAC,GAAG,CAAC,4BAA4B;QACxC,OAAO,CAAC,GAAG,CAAC,oCAAoC;QAChD,QAAQ,CAAC;IACX,MAAM,YAAY,GAChB,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,kCAAkC;QAC9C,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC;IACzD,MAAM,cAAc,GAAI,SAA2B,CAAC,oBAAoB,CAAC;QACvE,OAAO;QACP,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;IACrC,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE5B,SAAS,WAAW;QAClB,IAAI,OAAO,KAAK,QAAQ,EAAE;YACxB,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,2BAA2B;gBACvC,OAAO,CAAC,GAAG,CAAC,sCAAsC;gBAClD,mBAAmB,CAAC,QAAQ,CAC7B,CAAC;SACH;aAAM,IAAI,OAAO,KAAK,SAAS,EAAE;YAC/B,SAA2B,CAAC,kBAAkB;gBAC7C,mBAAmB,CAAC,OAAO,CAAC;YAC9B,OAAO,wBAAwB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAChD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAED,SAAS,WAAW,CAAC,QAAQ;QAC3B,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE3D,oDAAoD;QACpD,IAAI,YAAY,CAAC,KAAK,EAAE;YACtB,WAAW,CACT,GAAG,iBAAiB,CAAC,OAAO,CAAC,kBAAkB,YAAY,CAAC,UAAU,sBAAsB,CAC7F,CAAC;YACF,OAAO;SACR;QAED,8EAA8E;QAC9E,MAAM,eAAe,GACnB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACrE,MAAM,cAAc,GAClB,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACpE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAErD,IAAI,eAAe;YAAE,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,eAAe,CAAC;QAC/D,IAAI,cAAc;YAAE,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,cAAc,CAAC;QAC5D,IAAI,YAAY;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC;QAEtD,SAAS,SAAS,CAAC,cAAwB;YACzC,4DAA4D;YAC5D,iCAAiC;YACjC,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE;gBACvD,WAAW,CACT,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,YAAY,CAAC,QAAQ,mBAAmB,YAAY,CAAC,UAAU,EAAE,CACpG,CAAC;aACH;YACD,cAAc,GAAG,cAAc,CAAC,MAAM,CACpC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ,CACjD,CAAC;YACF,MAAM,kBAAkB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACzD,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAChC,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,SAAS,OAAO,CAAC,KAAY;YAC3B,OAAO,CAAC,KAAK,CACX,2BAA2B,iBAAiB,CAAC,OAAO,CAAC,KAAK,QAAQ,gEAAgE,CACnI,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAC5B,SAAS,UAAU,CAAC,eAAe,EAAE,UAAU;YAC7C,IAAI,CAAC,WAAW,EAAE;gBAChB,WAAW,GAAG,IAAI,WAAW,CAC3B,eACE,iBAAiB,CAAC,OAAO,CAC3B,KAAK,QAAQ,MAAM,WAAW,CAAC,UAAU,CAAC,yBAAyB,EACnE;oBACE,QAAQ,EAAE,GAAG;oBACb,UAAU,EAAE,GAAG;oBACf,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE,UAAU;iBAClB,CACF,CAAC;aACH;YACD,MAAM,KAAK,GAAG,eAAe,GAAG,mBAAmB,CAAC;YACpD,mBAAmB,GAAG,eAAe,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,cAAc;aAClB,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC;aAC3C,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;aAC3C,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,WAAW,CAAC,KAAK;QACxB,MAAM,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;QAC/B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;IAC1C,CAAC;IAED,SAAS,wBAAwB;QAC/B,MAAM,kBAAkB,GACtB,+DAA+D,CAAC;QAElE,MAAM,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAEpD,MAAM,cAAc,GAAmB,EAAE,CAAC;QAE1C,IAAI,QAAQ,EAAE;YACZ,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAE3C,MAAM,YAAY,GAAG;gBACnB,GAAG,cAAc;gBACjB,WAAW,EAAE,cAAc,CAAC,QAAQ,KAAK,QAAQ;aACxB,CAAC;YAE5B,cAAc,CAAC,KAAK,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAC3D,cAAc,CAAC,kBAAkB,GAAG,KAAK,CAAC;SAC3C;QAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,WAAW,CACT,kDAAkD,kBAAkB,EAAE,CACvE,CAAC;YACF,KAAK;iBACF,GAAG,CAAC,kBAAkB,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE;gBAC7C,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG;oBACrB,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBACrB,IAAI,IAAI,KAAK,CAAC;gBAChB,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACf,IAAI;wBACF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAClC,OAAO,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;qBAC1C;oBAAC,MAAM;wBACN,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;iBACD,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,UAAmB;IAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IACjD,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3E,sCAAsC;IACtC,IAAI,CAAC,eAAe;QAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC"}
\ No newline at end of file
+{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/esm/puppeteer/revisions.js b/node_modules/puppeteer/lib/esm/puppeteer/revisions.js
index 6857816..4c1a545 100644
--- a/node_modules/puppeteer/lib/esm/puppeteer/revisions.js
+++ b/node_modules/puppeteer/lib/esm/puppeteer/revisions.js
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 export const PUPPETEER_REVISIONS = {
-    chromium: '938248',
+    chromium: '884014',
     firefox: 'latest',
 };
 //# sourceMappingURL=revisions.js.map
\ No newline at end of file
diff --git a/node_modules/puppeteer/lib/types.d.ts b/node_modules/puppeteer/lib/types.d.ts
index 9362489..fdc043f 100644
--- a/node_modules/puppeteer/lib/types.d.ts
+++ b/node_modules/puppeteer/lib/types.d.ts
@@ -1,26 +1,5 @@
-/**
- * These global declarations exist so puppeteer can work without the need to use `"dom"`
- * types.
- *
- * To get full type information for these interfaces, add `"types": "dom"`in your
- * `tsconfig.json` file.
- */
-declare global {
-    interface Document {
-    }
-    interface Element {
-    }
-    interface NodeListOf<TNode> {
-    }
-}
-export {};
-//# sourceMappingURL=global.d.ts.map
 /// <reference types="node" />
-
 import { ChildProcess } from 'child_process';
-import { Protocol } from 'devtools-protocol';
-import { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
-import type { Readable } from 'stream';
 
 /**
  * The Accessibility class provides methods for inspecting Chromium's
@@ -97,11 +76,6 @@
 /**
  * @public
  */
-export declare type ActionResult = 'continue' | 'abort' | 'respond';
-
-/**
- * @public
- */
 export declare interface BoundingBox {
     /**
      * the x coordinate of the element in pixels.
@@ -203,8 +177,6 @@
     private _targetFilterCallback;
     private _defaultContext;
     private _contexts;
-    private _screenshotTaskQueue;
-    private _ignoredTargets;
     /**
      * @internal
      * Used in Target.ts directly so cannot be marked private.
@@ -236,7 +208,7 @@
      * })();
      * ```
      */
-    createIncognitoBrowserContext(options?: BrowserContextOptions): Promise<BrowserContext>;
+    createIncognitoBrowserContext(): Promise<BrowserContext>;
     /**
      * Returns an array of all open browser contexts. In a newly created browser, this will
      * return a single instance of {@link BrowserContext}.
@@ -529,23 +501,6 @@
 }
 
 /**
- * BrowserContext options.
- *
- * @public
- */
-export declare interface BrowserContextOptions {
-    /**
-     * Proxy server with optional port to use for all requests.
-     * Username and password can be set in `Page.authenticate`.
-     */
-    proxyServer?: string;
-    /**
-     * Bypass the proxy for the given semi-colon-separated list of hosts.
-     */
-    proxyBypassList?: string[];
-}
-
-/**
  * All the events a {@link Browser | browser instance} may emit.
  *
  * @public
@@ -719,21 +674,17 @@
     headless?: boolean;
     /**
      * Path to a user data directory.
-     * {@link https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/user_data_dir.md | see the Chromium docs}
+     * {@link https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md | see the Chromium docs}
      * for more info.
      */
     userDataDir?: string;
     /**
      * Whether to auto-open a DevTools panel for each tab. If this is set to
-     * `true`, then `headless` will be forced to `false`.
+     * `true`, then `headless` will be set to `false` automatically.
      * @defaultValue `false`
      */
     devtools?: boolean;
     /**
-     *
-     */
-    debuggingPort?: number;
-    /**
      * Additional command line arguments to pass to the browser instance.
      */
     args?: string[];
@@ -748,7 +699,7 @@
  * events can be subscribed to with `CDPSession.on` method.
  *
  * Useful links: {@link https://chromedevtools.github.io/devtools-protocol/ | DevTools Protocol Viewer}
- * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/HEAD/README.md | Getting Started with DevTools Protocol}.
+ * and {@link https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md | Getting Started with DevTools Protocol}.
  *
  * @example
  * ```js
@@ -791,22 +742,6 @@
      * @internal
      */
     _onClosed(): void;
-    /**
-     * @internal
-     */
-    id(): string;
-}
-
-declare interface CDPSession_2 extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
-
-declare interface CDPSession_3 extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
-}
-
-declare interface CDPSession_4 extends EventEmitter {
-    send<T extends keyof ProtocolMapping.Commands>(method: T, ...paramArgs: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
 }
 
 /**
@@ -828,18 +763,12 @@
     error: {
         message: string;
         data: any;
-        code: number;
     };
     result?: any;
 }
 
 /**
  * @public
- */
-export declare type ChromeReleaseChannel = 'chrome' | 'chrome-beta' | 'chrome-canary' | 'chrome-dev';
-
-/**
- * @public
  * {@inheritDoc Puppeteer.clearCustomQueryHandlers}
  */
 export declare function clearCustomQueryHandlers(): void;
@@ -862,10 +791,6 @@
      * @defaultValue 1
      */
     clickCount?: number;
-    /**
-     * Offset for the clickable point relative to the top-left corder of the border box.
-     */
-    offset?: Offset;
 }
 
 /**
@@ -897,7 +822,7 @@
 export declare function connect(options: ConnectOptions): Promise<Browser>;
 
 /**
- * @public
+ * @internal
  */
 export declare class Connection extends EventEmitter {
     _url: string;
@@ -933,7 +858,7 @@
 export declare interface ConnectionCallback {
     resolve: Function;
     reject: Function;
-    error: ProtocolError;
+    error: Error;
     method: string;
 }
 
@@ -1116,8 +1041,8 @@
     _cssCoverage: CSSCoverage;
     constructor(client: CDPSession);
     /**
-     * @param options - Set of configurable options for coverage defaults to
-     * `resetOnNavigation : true, reportAnonymousScripts : false`
+     * @param options - Set of configurable options for coverage defaults to `{
+     * resetOnNavigation : true, reportAnonymousScripts : false }`
      * @returns Promise that resolves when coverage is started.
      *
      * @remarks
@@ -1135,10 +1060,10 @@
      * JavaScript Coverage doesn't include anonymous scripts by default.
      * However, scripts with sourceURLs are reported.
      */
-    stopJSCoverage(): Promise<JSCoverageEntry[]>;
+    stopJSCoverage(): Promise<CoverageEntry[]>;
     /**
-     * @param options - Set of configurable options for coverage, defaults to
-     * `resetOnNavigation : true`
+     * @param options - Set of configurable options for coverage, defaults to `{
+     * resetOnNavigation : true }`
      * @returns Promise that resolves when coverage is started.
      */
     startCSSCoverage(options?: CSSCoverageOptions): Promise<void>;
@@ -1237,7 +1162,7 @@
  * @public
  */
 export declare class CustomError extends Error {
-    constructor(message?: string);
+    constructor(message: string);
 }
 
 /**
@@ -1374,7 +1299,6 @@
  */
 export declare class DOMWorld {
     private _frameManager;
-    private _client;
     private _frame;
     private _timeoutSettings;
     private _documentPromise?;
@@ -1392,7 +1316,7 @@
     _boundFunctions: Map<string, Function>;
     private _ctxBindings;
     private static bindingIdentifier;
-    constructor(client: CDPSession, frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
+    constructor(frameManager: FrameManager, frame: Frame, timeoutSettings: TimeoutSettings);
     frame(): Frame;
     _setContext(context?: ExecutionContext): Promise<void>;
     _hasContext(): boolean;
@@ -1424,7 +1348,6 @@
         url?: string;
         path?: string;
         content?: string;
-        id?: string;
         type?: string;
     }): Promise<ElementHandle>;
     /**
@@ -1521,10 +1444,7 @@
      */
     contentFrame(): Promise<Frame | null>;
     private _scrollIntoViewIfNeeded;
-    /**
-     * Returns the middle point within an element unless a specific offset is provided.
-     */
-    clickablePoint(offset?: Offset): Promise<Point>;
+    private _clickablePoint;
     private _getBoxModel;
     private _fromProtocolQuad;
     private _intersectQuadWithViewport;
@@ -1541,28 +1461,6 @@
      */
     click(options?: ClickOptions): Promise<void>;
     /**
-     * This method creates and captures a dragevent from the element.
-     */
-    drag(target: Point): Promise<Protocol.Input.DragData>;
-    /**
-     * This method creates a `dragenter` event on the element.
-     */
-    dragEnter(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method creates a `dragover` event on the element.
-     */
-    dragOver(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a drop on the element.
-     */
-    drop(data?: Protocol.Input.DragData): Promise<void>;
-    /**
-     * This method triggers a dragenter, dragover, and drop on the element.
-     */
-    dragAndDrop(target: ElementHandle, options?: {
-        delay: number;
-    }): Promise<void>;
-    /**
      * Triggers a `change` and `input` event once all the provided options have been
      * selected. If there's no `<select>` element matching `selector`, the method
      * throws an error.
@@ -1654,7 +1552,7 @@
      * {@link Page.screenshot} to take a screenshot of the element.
      * If the element is detached from DOM, the method throws an error.
      */
-    screenshot(options?: ScreenshotOptions): Promise<string | Buffer>;
+    screenshot(options?: {}): Promise<string | Buffer | void>;
     /**
      * Runs `element.querySelector` within the page. If no element matches the selector,
      * the return value resolves to `null`.
@@ -1714,9 +1612,7 @@
     /**
      * Resolves to true if the element is visible in the current viewport.
      */
-    isIntersectingViewport(options?: {
-        threshold?: number;
-    }): Promise<boolean>;
+    isIntersectingViewport(): Promise<boolean>;
 }
 
 /**
@@ -2133,16 +2029,7 @@
     /**
      * @internal
      */
-    _client: CDPSession;
-    /**
-     * @internal
-     */
-    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string, client: CDPSession);
-    /**
-     * @internal
-     */
-    _updateClient(client: CDPSession): void;
-    isOOPFrame(): boolean;
+    constructor(frameManager: FrameManager, parentFrame: Frame | null, frameId: string);
     /**
      * @remarks
      *
@@ -2691,10 +2578,8 @@
     private _contextIdToContext;
     private _isolatedWorlds;
     private _mainFrame;
-    private _disconnectPromise?;
     constructor(client: CDPSession, page: Page, ignoreHTTPSErrors: boolean, timeoutSettings: TimeoutSettings);
-    private setupEventListeners;
-    initialize(client?: CDPSession): Promise<void>;
+    initialize(): Promise<void>;
     networkManager(): NetworkManager;
     navigateFrame(frame: Frame, url: string, options?: {
         referer?: string;
@@ -2705,31 +2590,26 @@
         timeout?: number;
         waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
     }): Promise<HTTPResponse | null>;
-    private _onAttachedToTarget;
-    private _onDetachedFromTarget;
+    private _onFrameMoved;
     _onLifecycleEvent(event: Protocol.Page.LifecycleEventEvent): void;
     _onFrameStoppedLoading(frameId: string): void;
-    _handleFrameTree(session: CDPSession, frameTree: Protocol.Page.FrameTree): void;
+    _handleFrameTree(frameTree: Protocol.Page.FrameTree): void;
     page(): Page;
     mainFrame(): Frame;
     frames(): Frame[];
     frame(frameId: string): Frame | null;
-    _onFrameAttached(session: CDPSession, frameId: string, parentFrameId?: string): void;
+    _onFrameAttached(frameId: string, parentFrameId?: string): void;
     _onFrameNavigated(framePayload: Protocol.Page.Frame): void;
-    _ensureIsolatedWorld(session: CDPSession, name: string): Promise<void>;
+    _ensureIsolatedWorld(name: string): Promise<void>;
     _onFrameNavigatedWithinDocument(frameId: string, url: string): void;
-    _onFrameDetached(frameId: string, reason: Protocol.Page.FrameDetachedEventReason): void;
-    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription, session: CDPSession): void;
+    _onFrameDetached(frameId: string): void;
+    _onExecutionContextCreated(contextPayload: Protocol.Runtime.ExecutionContextDescription): void;
     private _onExecutionContextDestroyed;
     private _onExecutionContextsCleared;
-    executionContextById(contextId: number, session?: CDPSession): ExecutionContext;
+    executionContextById(contextId: number): ExecutionContext;
     private _removeFramesRecursively;
 }
 
-declare interface FrameManager_2 {
-    frame(frameId: string): Frame | null;
-}
-
 /**
  * We use symbols to prevent external parties listening to these events.
  * They are internal to Puppeteer.
@@ -2869,55 +2749,15 @@
     private _postData?;
     private _headers;
     private _frame;
-    private _continueRequestOverrides;
-    private _responseForRequest;
-    private _abortErrorReason;
-    private _currentStrategy;
-    private _currentPriority;
-    private _interceptActions;
-    private _initiator;
     /**
      * @internal
      */
-    constructor(client: CDPSession_4, frame: Frame, interceptionId: string, allowInterception: boolean, event: Protocol.Network.RequestWillBeSentEvent, redirectChain: HTTPRequest[]);
+    constructor(client: CDPSession, frame: Frame, interceptionId: string, allowInterception: boolean, event: Protocol.Network.RequestWillBeSentEvent, redirectChain: HTTPRequest[]);
     /**
      * @returns the URL of the request
      */
     url(): string;
     /**
-     * @returns the `ContinueRequestOverrides` that will be used
-     * if the interception is allowed to continue (ie, `abort()` and
-     * `respond()` aren't called).
-     */
-    continueRequestOverrides(): ContinueRequestOverrides;
-    /**
-     * @returns The `ResponseForRequest` that gets used if the
-     * interception is allowed to respond (ie, `abort()` is not called).
-     */
-    responseForRequest(): Partial<ResponseForRequest>;
-    /**
-     * @returns the most recent reason for aborting the request
-     */
-    abortErrorReason(): Protocol.Network.ErrorReason;
-    /**
-     * @returns An array of the current intercept resolution strategy and priority
-     * `[strategy,priority]`. Strategy is one of: `abort`, `respond`, `continue`,
-     *  `disabled`, `none`, or `already-handled`.
-     */
-    private interceptResolution;
-    /**
-     * Adds an async request handler to the processing queue.
-     * Deferred handlers are not guaranteed to execute in any particular order,
-     * but they are guarnateed to resolve before the request interception
-     * is finalized.
-     */
-    enqueueInterceptAction(pendingHandler: () => void | PromiseLike<unknown>): void;
-    /**
-     * Awaits pending interception handlers and then decides how to fulfill
-     * the request interception.
-     */
-    finalizeInterceptions(): Promise<void>;
-    /**
      * Contains the request's resource type as it was perceived by the rendering
      * engine.
      */
@@ -2950,10 +2790,6 @@
      */
     isNavigationRequest(): boolean;
     /**
-     * @returns the initiator of the request.
-     */
-    initiator(): Protocol.Network.Initiator;
-    /**
      * A `redirectChain` is a chain of requests initiated to fetch a resource.
      * @remarks
      *
@@ -3028,12 +2864,8 @@
      * ```
      *
      * @param overrides - optional overrides to apply to the request.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    continue(overrides?: ContinueRequestOverrides, priority?: number): Promise<void>;
-    private _continue;
+    continue(overrides?: ContinueRequestOverrides): Promise<void>;
     /**
      * Fulfills a request with the given response.
      *
@@ -3061,12 +2893,8 @@
      * Calling `request.respond` for a dataURL request is a noop.
      *
      * @param response - the response to fulfill the request with.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    respond(response: Partial<ResponseForRequest>, priority?: number): Promise<void>;
-    private _respond;
+    respond(response: Partial<ResponseForRequest>): Promise<void>;
     /**
      * Aborts a request.
      *
@@ -3076,12 +2904,8 @@
      * throw an exception immediately.
      *
      * @param errorCode - optional error code to provide.
-     * @param priority - If provided, intercept is resolved using
-     * cooperative handling rules. Otherwise, intercept is resolved
-     * immediately.
      */
-    abort(errorCode?: ErrorCode, priority?: number): Promise<void>;
-    private _abort;
+    abort(errorCode?: ErrorCode): Promise<void>;
 }
 
 /**
@@ -3107,11 +2931,7 @@
     /**
      * @internal
      */
-    constructor(client: CDPSession_3, request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null);
-    /**
-     * @internal
-     */
-    _parseStatusTextFromExtrInfo(extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): string | undefined;
+    constructor(client: CDPSession, request: HTTPRequest, responsePayload: Protocol.Network.Response);
     /**
      * @internal
      */
@@ -3145,3997 +2965,22388 @@
     headers(): Record<string, string>;
     /**
      * @returns {@link SecurityDetails} if the response was received over the
-         * secure connection, or `null` otherwise.
-         */
-     securityDetails(): SecurityDetails | null;
-     /**
-      * @returns Promise which resolves to a buffer with response body.
-      */
-     buffer(): Promise<Buffer>;
-     /**
-      * @returns Promise which resolves to a text representation of response body.
-      */
-     text(): Promise<string>;
-     /**
-      *
-      * @returns Promise which resolves to a JSON representation of response body.
-      *
-      * @remarks
-      *
-      * This method will throw if the response body is not parsable via
-      * `JSON.parse`.
-      */
-     json(): Promise<any>;
-     /**
-      * @returns A matching {@link HTTPRequest} object.
-      */
-     request(): HTTPRequest;
-     /**
-      * @returns True if the response was served from either the browser's disk
-      * cache or memory cache.
-      */
-     fromCache(): boolean;
-     /**
-      * @returns True if the response was served by a service worker.
-      */
-     fromServiceWorker(): boolean;
-     /**
-      * @returns A {@link Frame} that initiated this response, or `null` if
-      * navigating to error pages.
-      */
-     frame(): Frame | null;
-    }
-
-    /**
-     * @public
+     * secure connection, or `null` otherwise.
      */
-    export declare type InterceptResolutionStrategy = 'abort' | 'respond' | 'continue' | 'disabled' | 'none' | 'alreay-handled';
-
+    securityDetails(): SecurityDetails | null;
     /**
-     * @public
+     * @returns Promise which resolves to a buffer with response body.
      */
-    export declare interface InternalNetworkConditions extends NetworkConditions {
-        offline: boolean;
-    }
-
+    buffer(): Promise<Buffer>;
     /**
-     * @internal
+     * @returns Promise which resolves to a text representation of response body.
      */
-    export declare interface InternalQueryHandler {
-        queryOne?: (element: ElementHandle, selector: string) => Promise<ElementHandle | null>;
-        waitFor?: (domWorld: DOMWorld, selector: string, options: WaitForSelectorOptions) => Promise<ElementHandle | null>;
-        queryAll?: (element: ElementHandle, selector: string) => Promise<ElementHandle[]>;
-        queryAllArray?: (element: ElementHandle, selector: string) => Promise<JSHandle>;
-    }
-
+    text(): Promise<string>;
     /**
-     * @public
+     *
+     * @returns Promise which resolves to a JSON representation of response body.
+     *
+     * @remarks
+     *
+     * This method will throw if the response body is not parsable via
+     * `JSON.parse`.
      */
-    export declare class JSCoverage {
-        _client: CDPSession;
-        _enabled: boolean;
-        _scriptURLs: Map<string, string>;
-        _scriptSources: Map<string, string>;
-        _eventListeners: PuppeteerEventListener[];
-        _resetOnNavigation: boolean;
-        _reportAnonymousScripts: boolean;
-        _includeRawScriptCoverage: boolean;
-        constructor(client: CDPSession);
-        start(options?: {
-            resetOnNavigation?: boolean;
-            reportAnonymousScripts?: boolean;
-            includeRawScriptCoverage?: boolean;
-        }): Promise<void>;
-        _onExecutionContextsCleared(): void;
-        _onScriptParsed(event: Protocol.Debugger.ScriptParsedEvent): Promise<void>;
-        stop(): Promise<JSCoverageEntry[]>;
-    }
-
+    json(): Promise<any>;
     /**
-     * The CoverageEntry class for JavaScript
-     * @public
+     * @returns A matching {@link HTTPRequest} object.
      */
-    export declare interface JSCoverageEntry extends CoverageEntry {
-        /**
-         * Raw V8 script coverage entry.
-         */
-        rawScriptCoverage?: Protocol.Profiler.ScriptCoverage;
-    }
-
+    request(): HTTPRequest;
     /**
-     * Set of configurable options for JS coverage.
-     * @public
+     * @returns True if the response was served from either the browser's disk
+     * cache or memory cache.
      */
-    export declare interface JSCoverageOptions {
-        /**
-         * Whether to reset coverage on every navigation.
-         */
+    fromCache(): boolean;
+    /**
+     * @returns True if the response was served by a service worker.
+     */
+    fromServiceWorker(): boolean;
+    /**
+     * @returns A {@link Frame} that initiated this response, or `null` if
+     * navigating to error pages.
+     */
+    frame(): Frame | null;
+}
+
+/**
+ * @public
+ */
+export declare interface InternalNetworkConditions extends NetworkConditions {
+    offline: boolean;
+}
+
+/**
+ * @internal
+ */
+export declare interface InternalQueryHandler {
+    queryOne?: (element: ElementHandle, selector: string) => Promise<ElementHandle | null>;
+    waitFor?: (domWorld: DOMWorld, selector: string, options: WaitForSelectorOptions) => Promise<ElementHandle | null>;
+    queryAll?: (element: ElementHandle, selector: string) => Promise<ElementHandle[]>;
+    queryAllArray?: (element: ElementHandle, selector: string) => Promise<JSHandle>;
+}
+
+/**
+ * @public
+ */
+export declare class JSCoverage {
+    _client: CDPSession;
+    _enabled: boolean;
+    _scriptURLs: Map<string, string>;
+    _scriptSources: Map<string, string>;
+    _eventListeners: PuppeteerEventListener[];
+    _resetOnNavigation: boolean;
+    _reportAnonymousScripts: boolean;
+    constructor(client: CDPSession);
+    start(options?: {
         resetOnNavigation?: boolean;
-        /**
-         * Whether anonymous scripts generated by the page should be reported.
-         */
         reportAnonymousScripts?: boolean;
-        /**
-         * Whether the result includes raw V8 script coverage entries.
-         */
-        includeRawScriptCoverage?: boolean;
-    }
+    }): Promise<void>;
+    _onExecutionContextsCleared(): void;
+    _onScriptParsed(event: Protocol.Debugger.ScriptParsedEvent): Promise<void>;
+    stop(): Promise<CoverageEntry[]>;
+}
 
+/**
+ * Set of configurable options for JS coverage.
+ * @public
+ */
+export declare interface JSCoverageOptions {
     /**
-     * Represents an in-page JavaScript object. JSHandles can be created with the
-     * {@link Page.evaluateHandle | page.evaluateHandle} method.
-     *
-     * @example
-     * ```js
-     * const windowHandle = await page.evaluateHandle(() => window);
-     * ```
-     *
-     * JSHandle prevents the referenced JavaScript object from being garbage-collected
-     * unless the handle is {@link JSHandle.dispose | disposed}. JSHandles are auto-
-     * disposed when their origin frame gets navigated or the parent context gets destroyed.
-     *
-     * JSHandle instances can be used as arguments for {@link Page.$eval},
-     * {@link Page.evaluate}, and {@link Page.evaluateHandle}.
-     *
-     * @public
+     * Whether to reset coverage on every navigation.
      */
-    export declare class JSHandle<HandleObjectType = unknown> {
-        /**
-         * @internal
-         */
-        _context: ExecutionContext;
-        /**
-         * @internal
-         */
-        _client: CDPSession;
-        /**
-         * @internal
-         */
-        _remoteObject: Protocol.Runtime.RemoteObject;
-        /**
-         * @internal
-         */
-        _disposed: boolean;
-        /**
-         * @internal
-         */
-        constructor(context: ExecutionContext, client: CDPSession, remoteObject: Protocol.Runtime.RemoteObject);
-        /** Returns the execution context the handle belongs to.
-         */
-        executionContext(): ExecutionContext;
-        /**
-         * This method passes this handle as the first argument to `pageFunction`.
-         * If `pageFunction` returns a Promise, then `handle.evaluate` would wait
-         * for the promise to resolve and return its value.
-         *
-         * @example
-         * ```js
-         * const tweetHandle = await page.$('.tweet .retweets');
-         * expect(await tweetHandle.evaluate(node => node.innerText)).toBe('10');
-         * ```
-         */
-        evaluate<T extends EvaluateFn<HandleObjectType>>(pageFunction: T | string, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
-        /**
-         * This method passes this handle as the first argument to `pageFunction`.
-         *
-         * @remarks
-         *
-         * The only difference between `jsHandle.evaluate` and
-         * `jsHandle.evaluateHandle` is that `jsHandle.evaluateHandle`
-         * returns an in-page object (JSHandle).
-         *
-         * If the function passed to `jsHandle.evaluateHandle` returns a Promise,
-         * then `evaluateHandle.evaluateHandle` waits for the promise to resolve and
-         * returns its value.
-         *
-         * See {@link Page.evaluateHandle} for more details.
-         */
-        evaluateHandle<HandleType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandleType>;
-        /** Fetches a single property from the referenced object.
-         */
-        getProperty(propertyName: string): Promise<JSHandle>;
-        /**
-         * The method returns a map with property names as keys and JSHandle
-         * instances for the property values.
-         *
-         * @example
-         * ```js
-         * const listHandle = await page.evaluateHandle(() => document.body.children);
-         * const properties = await listHandle.getProperties();
-         * const children = [];
-         * for (const property of properties.values()) {
-         *   const element = property.asElement();
-         *   if (element)
-         *     children.push(element);
-         * }
-         * children; // holds elementHandles to all children of document.body
-         * ```
-         */
-        getProperties(): Promise<Map<string, JSHandle>>;
-        /**
-         * @returns Returns a JSON representation of the object.If the object has a
-         * `toJSON` function, it will not be called.
-         * @remarks
-         *
-         * The JSON is generated by running {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify | JSON.stringify}
-         * on the object in page and consequent {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse | JSON.parse} in puppeteer.
-         * **NOTE** The method throws if the referenced object is not stringifiable.
-         */
-        jsonValue<T = unknown>(): Promise<T>;
-        /**
-         * @returns Either `null` or the object handle itself, if the object
-         * handle is an instance of {@link ElementHandle}.
-         */
-        asElement(): ElementHandle | null;
-        /**
-         * Stops referencing the element handle, and resolves when the object handle is
-         * successfully disposed of.
-         */
-        dispose(): Promise<void>;
-        /**
-         * Returns a string representation of the JSHandle.
-         *
-         * @remarks Useful during debugging.
-         */
-        toString(): string;
-    }
+    resetOnNavigation?: boolean;
+    /**
+     * Whether anonymous scripts generated by the page should be reported.
+     */
+    reportAnonymousScripts?: boolean;
+}
 
-    /**
-     * @public
-     */
-    export declare type JSONArray = readonly Serializable[];
-
-    /**
-     * @public
-     */
-    export declare interface JSONObject {
-        [key: string]: Serializable;
-    }
-
-    /**
-     * Keyboard provides an api for managing a virtual keyboard.
-     * The high level api is {@link Keyboard."type"},
-     * which takes raw characters and generates proper keydown, keypress/input,
-     * and keyup events on your page.
-     *
-     * @remarks
-     * For finer control, you can use {@link Keyboard.down},
-     * {@link Keyboard.up}, and {@link Keyboard.sendCharacter}
-     * to manually fire events as if they were generated from a real keyboard.
-     *
-     * On MacOS, keyboard shortcuts like `⌘ A` -\> Select All do not work.
-     * See {@link https://github.com/puppeteer/puppeteer/issues/1313 | #1313}.
-     *
-     * @example
-     * An example of holding down `Shift` in order to select and delete some text:
-     * ```js
-     * await page.keyboard.type('Hello World!');
-     * await page.keyboard.press('ArrowLeft');
-     *
-     * await page.keyboard.down('Shift');
-     * for (let i = 0; i < ' World'.length; i++)
-     *   await page.keyboard.press('ArrowLeft');
-     * await page.keyboard.up('Shift');
-     *
-     * await page.keyboard.press('Backspace');
-     * // Result text will end up saying 'Hello!'
-     * ```
-     *
-     * @example
-     * An example of pressing `A`
-     * ```js
-     * await page.keyboard.down('Shift');
-     * await page.keyboard.press('KeyA');
-     * await page.keyboard.up('Shift');
-     * ```
-     *
-     * @public
-     */
-    export declare class Keyboard {
-        private _client;
-        /** @internal */
-        _modifiers: number;
-        private _pressedKeys;
-        /** @internal */
-        constructor(client: CDPSession);
-        /**
-         * Dispatches a `keydown` event.
-         *
-         * @remarks
-         * If `key` is a single character and no modifier keys besides `Shift`
-         * are being held down, a `keypress`/`input` event will also generated.
-         * The `text` option can be specified to force an input event to be generated.
-         * If `key` is a modifier key, `Shift`, `Meta`, `Control`, or `Alt`,
-         * subsequent key presses will be sent with that modifier active.
-         * To release the modifier key, use {@link Keyboard.up}.
-         *
-         * After the key is pressed once, subsequent calls to
-         * {@link Keyboard.down} will have
-         * {@link https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat | repeat}
-         * set to true. To release the key, use {@link Keyboard.up}.
-         *
-         * Modifier keys DO influence {@link Keyboard.down}.
-         * Holding down `Shift` will type the text in upper case.
-         *
-         * @param key - Name of key to press, such as `ArrowLeft`.
-         * See {@link KeyInput} for a list of all key names.
-         *
-         * @param options - An object of options. Accepts text which, if specified,
-         * generates an input event with this text.
-         */
-        down(key: KeyInput, options?: {
-            text?: string;
-        }): Promise<void>;
-        private _modifierBit;
-        private _keyDescriptionForString;
-        /**
-         * Dispatches a `keyup` event.
-         *
-         * @param key - Name of key to release, such as `ArrowLeft`.
-         * See {@link KeyInput | KeyInput}
-         * for a list of all key names.
-         */
-        up(key: KeyInput): Promise<void>;
-        /**
-         * Dispatches a `keypress` and `input` event.
-         * This does not send a `keydown` or `keyup` event.
-         *
-         * @remarks
-         * Modifier keys DO NOT effect {@link Keyboard.sendCharacter | Keyboard.sendCharacter}.
-         * Holding down `Shift` will not type the text in upper case.
-         *
-         * @example
-         * ```js
-         * page.keyboard.sendCharacter('å—¨');
-         * ```
-         *
-         * @param char - Character to send into the page.
-         */
-        sendCharacter(char: string): Promise<void>;
-        private charIsKey;
-        /**
-         * Sends a `keydown`, `keypress`/`input`,
-         * and `keyup` event for each character in the text.
-         *
-         * @remarks
-         * To press a special key, like `Control` or `ArrowDown`,
-         * use {@link Keyboard.press}.
-         *
-         * Modifier keys DO NOT effect `keyboard.type`.
-         * Holding down `Shift` will not type the text in upper case.
-         *
-         * @example
-         * ```js
-         * await page.keyboard.type('Hello'); // Types instantly
-         * await page.keyboard.type('World', {delay: 100}); // Types slower, like a user
-         * ```
-         *
-         * @param text - A text to type into a focused element.
-         * @param options - An object of options. Accepts delay which,
-         * if specified, is the time to wait between `keydown` and `keyup` in milliseconds.
-         * Defaults to 0.
-         */
-        type(text: string, options?: {
-            delay?: number;
-        }): Promise<void>;
-        /**
-         * Shortcut for {@link Keyboard.down}
-         * and {@link Keyboard.up}.
-         *
-         * @remarks
-         * If `key` is a single character and no modifier keys besides `Shift`
-         * are being held down, a `keypress`/`input` event will also generated.
-         * The `text` option can be specified to force an input event to be generated.
-         *
-         * Modifier keys DO effect {@link Keyboard.press}.
-         * Holding down `Shift` will type the text in upper case.
-         *
-         * @param key - Name of key to press, such as `ArrowLeft`.
-         * See {@link KeyInput} for a list of all key names.
-         *
-         * @param options - An object of options. Accepts text which, if specified,
-         * generates an input event with this text. Accepts delay which,
-         * if specified, is the time to wait between `keydown` and `keyup` in milliseconds.
-         * Defaults to 0.
-         */
-        press(key: KeyInput, options?: {
-            delay?: number;
-            text?: string;
-        }): Promise<void>;
-    }
-
-    /**
-     * Copyright 2017 Google Inc. All rights reserved.
-     *
-     * Licensed under the Apache License, Version 2.0 (the 'License');
-     * you may not use this file except in compliance with the License.
-     * You may obtain a copy of the License at
-     *
-     *     http://www.apache.org/licenses/LICENSE-2.0
-     *
-     * Unless required by applicable law or agreed to in writing, software
-     * distributed under the License is distributed on an 'AS IS' BASIS,
-     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     * See the License for the specific language governing permissions and
-     * limitations under the License.
-     */
+/**
+ * Represents an in-page JavaScript object. JSHandles can be created with the
+ * {@link Page.evaluateHandle | page.evaluateHandle} method.
+ *
+ * @example
+ * ```js
+ * const windowHandle = await page.evaluateHandle(() => window);
+ * ```
+ *
+ * JSHandle prevents the referenced JavaScript object from being garbage-collected
+ * unless the handle is {@link JSHandle.dispose | disposed}. JSHandles are auto-
+ * disposed when their origin frame gets navigated or the parent context gets destroyed.
+ *
+ * JSHandle instances can be used as arguments for {@link Page.$eval},
+ * {@link Page.evaluate}, and {@link Page.evaluateHandle}.
+ *
+ * @public
+ */
+export declare class JSHandle<HandleObjectType = unknown> {
     /**
      * @internal
      */
-    export declare interface KeyDefinition {
-        keyCode?: number;
-        shiftKeyCode?: number;
-        key?: string;
-        shiftKey?: string;
-        code?: string;
+    _context: ExecutionContext;
+    /**
+     * @internal
+     */
+    _client: CDPSession;
+    /**
+     * @internal
+     */
+    _remoteObject: Protocol.Runtime.RemoteObject;
+    /**
+     * @internal
+     */
+    _disposed: boolean;
+    /**
+     * @internal
+     */
+    constructor(context: ExecutionContext, client: CDPSession, remoteObject: Protocol.Runtime.RemoteObject);
+    /** Returns the execution context the handle belongs to.
+     */
+    executionContext(): ExecutionContext;
+    /**
+     * This method passes this handle as the first argument to `pageFunction`.
+     * If `pageFunction` returns a Promise, then `handle.evaluate` would wait
+     * for the promise to resolve and return its value.
+     *
+     * @example
+     * ```js
+     * const tweetHandle = await page.$('.tweet .retweets');
+     * expect(await tweetHandle.evaluate(node => node.innerText)).toBe('10');
+     * ```
+     */
+    evaluate<T extends EvaluateFn<HandleObjectType>>(pageFunction: T | string, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
+    /**
+     * This method passes this handle as the first argument to `pageFunction`.
+     *
+     * @remarks
+     *
+     * The only difference between `jsHandle.evaluate` and
+     * `jsHandle.evaluateHandle` is that `jsHandle.evaluateHandle`
+     * returns an in-page object (JSHandle).
+     *
+     * If the function passed to `jsHandle.evaluateHandle` returns a Promise,
+     * then `evaluateHandle.evaluateHandle` waits for the promise to resolve and
+     * returns its value.
+     *
+     * See {@link Page.evaluateHandle} for more details.
+     */
+    evaluateHandle<HandleType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandleType>;
+    /** Fetches a single property from the referenced object.
+     */
+    getProperty(propertyName: string): Promise<JSHandle | undefined>;
+    /**
+     * The method returns a map with property names as keys and JSHandle
+     * instances for the property values.
+     *
+     * @example
+     * ```js
+     * const listHandle = await page.evaluateHandle(() => document.body.children);
+     * const properties = await listHandle.getProperties();
+     * const children = [];
+     * for (const property of properties.values()) {
+     *   const element = property.asElement();
+     *   if (element)
+     *     children.push(element);
+     * }
+     * children; // holds elementHandles to all children of document.body
+     * ```
+     */
+    getProperties(): Promise<Map<string, JSHandle>>;
+    /**
+     * @returns Returns a JSON representation of the object.If the object has a
+     * `toJSON` function, it will not be called.
+     * @remarks
+     *
+     * The JSON is generated by running {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify | JSON.stringify}
+     * on the object in page and consequent {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse | JSON.parse} in puppeteer.
+     * **NOTE** The method throws if the referenced object is not stringifiable.
+     */
+    jsonValue<T = unknown>(): Promise<T>;
+    /**
+     * @returns Either `null` or the object handle itself, if the object
+     * handle is an instance of {@link ElementHandle}.
+     */
+    asElement(): ElementHandle | null;
+    /**
+     * Stops referencing the element handle, and resolves when the object handle is
+     * successfully disposed of.
+     */
+    dispose(): Promise<void>;
+    /**
+     * Returns a string representation of the JSHandle.
+     *
+     * @remarks Useful during debugging.
+     */
+    toString(): string;
+}
+
+/**
+ * @public
+ */
+export declare type JSONArray = Serializable[];
+
+/**
+ * @public
+ */
+export declare interface JSONObject {
+    [key: string]: Serializable;
+}
+
+/**
+ * Keyboard provides an api for managing a virtual keyboard.
+ * The high level api is {@link Keyboard."type"},
+ * which takes raw characters and generates proper keydown, keypress/input,
+ * and keyup events on your page.
+ *
+ * @remarks
+ * For finer control, you can use {@link Keyboard.down},
+ * {@link Keyboard.up}, and {@link Keyboard.sendCharacter}
+ * to manually fire events as if they were generated from a real keyboard.
+ *
+ * On MacOS, keyboard shortcuts like `⌘ A` -\> Select All do not work.
+ * See {@link https://github.com/puppeteer/puppeteer/issues/1313 | #1313}.
+ *
+ * @example
+ * An example of holding down `Shift` in order to select and delete some text:
+ * ```js
+ * await page.keyboard.type('Hello World!');
+ * await page.keyboard.press('ArrowLeft');
+ *
+ * await page.keyboard.down('Shift');
+ * for (let i = 0; i < ' World'.length; i++)
+ *   await page.keyboard.press('ArrowLeft');
+ * await page.keyboard.up('Shift');
+ *
+ * await page.keyboard.press('Backspace');
+ * // Result text will end up saying 'Hello!'
+ * ```
+ *
+ * @example
+ * An example of pressing `A`
+ * ```js
+ * await page.keyboard.down('Shift');
+ * await page.keyboard.press('KeyA');
+ * await page.keyboard.up('Shift');
+ * ```
+ *
+ * @public
+ */
+export declare class Keyboard {
+    private _client;
+    /** @internal */
+    _modifiers: number;
+    private _pressedKeys;
+    /** @internal */
+    constructor(client: CDPSession);
+    /**
+     * Dispatches a `keydown` event.
+     *
+     * @remarks
+     * If `key` is a single character and no modifier keys besides `Shift`
+     * are being held down, a `keypress`/`input` event will also generated.
+     * The `text` option can be specified to force an input event to be generated.
+     * If `key` is a modifier key, `Shift`, `Meta`, `Control`, or `Alt`,
+     * subsequent key presses will be sent with that modifier active.
+     * To release the modifier key, use {@link Keyboard.up}.
+     *
+     * After the key is pressed once, subsequent calls to
+     * {@link Keyboard.down} will have
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat | repeat}
+     * set to true. To release the key, use {@link Keyboard.up}.
+     *
+     * Modifier keys DO influence {@link Keyboard.down}.
+     * Holding down `Shift` will type the text in upper case.
+     *
+     * @param key - Name of key to press, such as `ArrowLeft`.
+     * See {@link KeyInput} for a list of all key names.
+     *
+     * @param options - An object of options. Accepts text which, if specified,
+     * generates an input event with this text.
+     */
+    down(key: KeyInput, options?: {
         text?: string;
-        shiftText?: string;
-        location?: number;
-    }
-
+    }): Promise<void>;
+    private _modifierBit;
+    private _keyDescriptionForString;
     /**
-     * @internal
-     */
-    export declare const keyDefinitions: Readonly<Record<KeyInput, KeyDefinition>>;
-
-    /**
-     * All the valid keys that can be passed to functions that take user input, such
-     * as {@link Keyboard.press | keyboard.press }
+     * Dispatches a `keyup` event.
      *
-     * @public
+     * @param key - Name of key to release, such as `ArrowLeft`.
+     * See {@link KeyInput | KeyInput}
+     * for a list of all key names.
      */
-    export declare type KeyInput = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Power' | 'Eject' | 'Abort' | 'Help' | 'Backspace' | 'Tab' | 'Numpad5' | 'NumpadEnter' | 'Enter' | '\r' | '\n' | 'ShiftLeft' | 'ShiftRight' | 'ControlLeft' | 'ControlRight' | 'AltLeft' | 'AltRight' | 'Pause' | 'CapsLock' | 'Escape' | 'Convert' | 'NonConvert' | 'Space' | 'Numpad9' | 'PageUp' | 'Numpad3' | 'PageDown' | 'End' | 'Numpad1' | 'Home' | 'Numpad7' | 'ArrowLeft' | 'Numpad4' | 'Numpad8' | 'ArrowUp' | 'ArrowRight' | 'Numpad6' | 'Numpad2' | 'ArrowDown' | 'Select' | 'Open' | 'PrintScreen' | 'Insert' | 'Numpad0' | 'Delete' | 'NumpadDecimal' | 'Digit0' | 'Digit1' | 'Digit2' | 'Digit3' | 'Digit4' | 'Digit5' | 'Digit6' | 'Digit7' | 'Digit8' | 'Digit9' | 'KeyA' | 'KeyB' | 'KeyC' | 'KeyD' | 'KeyE' | 'KeyF' | 'KeyG' | 'KeyH' | 'KeyI' | 'KeyJ' | 'KeyK' | 'KeyL' | 'KeyM' | 'KeyN' | 'KeyO' | 'KeyP' | 'KeyQ' | 'KeyR' | 'KeyS' | 'KeyT' | 'KeyU' | 'KeyV' | 'KeyW' | 'KeyX' | 'KeyY' | 'KeyZ' | 'MetaLeft' | 'MetaRight' | 'ContextMenu' | 'NumpadMultiply' | 'NumpadAdd' | 'NumpadSubtract' | 'NumpadDivide' | 'F1' | 'F2' | 'F3' | 'F4' | 'F5' | 'F6' | 'F7' | 'F8' | 'F9' | 'F10' | 'F11' | 'F12' | 'F13' | 'F14' | 'F15' | 'F16' | 'F17' | 'F18' | 'F19' | 'F20' | 'F21' | 'F22' | 'F23' | 'F24' | 'NumLock' | 'ScrollLock' | 'AudioVolumeMute' | 'AudioVolumeDown' | 'AudioVolumeUp' | 'MediaTrackNext' | 'MediaTrackPrevious' | 'MediaStop' | 'MediaPlayPause' | 'Semicolon' | 'Equal' | 'NumpadEqual' | 'Comma' | 'Minus' | 'Period' | 'Slash' | 'Backquote' | 'BracketLeft' | 'Backslash' | 'BracketRight' | 'Quote' | 'AltGraph' | 'Props' | 'Cancel' | 'Clear' | 'Shift' | 'Control' | 'Alt' | 'Accept' | 'ModeChange' | ' ' | 'Print' | 'Execute' | '\u0000' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | 'Meta' | '*' | '+' | '-' | '/' | ';' | '=' | ',' | '.' | '`' | '[' | '\\' | ']' | "'" | 'Attn' | 'CrSel' | 'ExSel' | 'EraseEof' | 'Play' | 'ZoomOut' | ')' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '(' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | ':' | '<' | '_' | '>' | '?' | '~' | '{' | '|' | '}' | '"' | 'SoftLeft' | 'SoftRight' | 'Camera' | 'Call' | 'EndCall' | 'VolumeDown' | 'VolumeUp';
-
+    up(key: KeyInput): Promise<void>;
     /**
-     * @public
-     * {@inheritDoc PuppeteerNode.launch}
-     */
-    export declare function launch(options?: LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions & {
-        product?: Product;
-        extraPrefsFirefox?: Record<string, unknown>;
-    }): Promise<Browser>;
-
-    /**
-     * Generic launch options that can be passed when launching any browser.
-     * @public
-     */
-    export declare interface LaunchOptions {
-        /**
-         * Chrome Release Channel
-         */
-        channel?: ChromeReleaseChannel;
-        /**
-         * Path to a browser executable to use instead of the bundled Chromium. Note
-         * that Puppeteer is only guaranteed to work with the bundled Chromium, so use
-         * this setting at your own risk.
-         */
-        executablePath?: string;
-        /**
-         * If `true`, do not use `puppeteer.defaultArgs()` when creating a browser. If
-         * an array is provided, these args will be filtered out. Use this with care -
-         * you probably want the default arguments Puppeteer uses.
-         * @defaultValue false
-         */
-        ignoreDefaultArgs?: boolean | string[];
-        /**
-         * Close the browser process on `Ctrl+C`.
-         * @defaultValue `true`
-         */
-        handleSIGINT?: boolean;
-        /**
-         * Close the browser process on `SIGTERM`.
-         * @defaultValue `true`
-         */
-        handleSIGTERM?: boolean;
-        /**
-         * Close the browser process on `SIGHUP`.
-         * @defaultValue `true`
-         */
-        handleSIGHUP?: boolean;
-        /**
-         * Maximum time in milliseconds to wait for the browser to start.
-         * Pass `0` to disable the timeout.
-         * @defaultValue 30000 (30 seconds).
-         */
-        timeout?: number;
-        /**
-         * If true, pipes the browser process stdout and stderr to `process.stdout`
-         * and `process.stderr`.
-         * @defaultValue false
-         */
-        dumpio?: boolean;
-        /**
-         * Specify environment variables that will be visible to the browser.
-         * @defaultValue The contents of `process.env`.
-         */
-        env?: Record<string, string | undefined>;
-        /**
-         * Connect to a browser over a pipe instead of a WebSocket.
-         * @defaultValue false
-         */
-        pipe?: boolean;
-        /**
-         * Which browser to launch.
-         * @defaultValue `chrome`
-         */
-        product?: Product;
-        /**
-         * {@link https://searchfox.org/mozilla-release/source/modules/libpref/init/all.js | Additional preferences } that can be passed when launching with Firefox.
-         */
-        extraPrefsFirefox?: Record<string, unknown>;
-        /**
-         * Whether to wait for the initial page to be ready.
-         * Useful when a user explicitly disables that (e.g. `--no-startup-window` for Chrome).
-         * @defaultValue true
-         */
-        waitForInitialPage?: boolean;
-    }
-
-    /**
-     * @internal
-     */
-    export declare class LifecycleWatcher {
-        _expectedLifecycle: ProtocolLifeCycleEvent[];
-        _frameManager: FrameManager;
-        _frame: Frame;
-        _timeout: number;
-        _navigationRequest?: HTTPRequest;
-        _eventListeners: PuppeteerEventListener[];
-        _initialLoaderId: string;
-        _sameDocumentNavigationPromise: Promise<Error | null>;
-        _sameDocumentNavigationCompleteCallback: (x?: Error) => void;
-        _lifecyclePromise: Promise<void>;
-        _lifecycleCallback: () => void;
-        _newDocumentNavigationPromise: Promise<Error | null>;
-        _newDocumentNavigationCompleteCallback: (x?: Error) => void;
-        _terminationPromise: Promise<Error | null>;
-        _terminationCallback: (x?: Error) => void;
-        _timeoutPromise: Promise<TimeoutError | null>;
-        _maximumTimer?: NodeJS.Timeout;
-        _hasSameDocumentNavigation?: boolean;
-        constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[], timeout: number);
-        _onRequest(request: HTTPRequest): void;
-        _onFrameDetached(frame: Frame): void;
-        navigationResponse(): Promise<HTTPResponse | null>;
-        _terminate(error: Error): void;
-        sameDocumentNavigationPromise(): Promise<Error | null>;
-        newDocumentNavigationPromise(): Promise<Error | null>;
-        lifecyclePromise(): Promise<void>;
-        timeoutOrTerminationPromise(): Promise<Error | TimeoutError | null>;
-        _createTimeoutPromise(): Promise<TimeoutError | null>;
-        _navigatedWithinDocument(frame: Frame): void;
-        _checkLifecycleComplete(): void;
-        dispose(): void;
-    }
-
-    /**
-     * @public
-     */
-    export declare interface MediaFeature {
-        name: string;
-        value: string;
-    }
-
-    /**
-     * @public
-     */
-    export declare interface Metrics {
-        Timestamp?: number;
-        Documents?: number;
-        Frames?: number;
-        JSEventListeners?: number;
-        Nodes?: number;
-        LayoutCount?: number;
-        RecalcStyleCount?: number;
-        LayoutDuration?: number;
-        RecalcStyleDuration?: number;
-        ScriptDuration?: number;
-        TaskDuration?: number;
-        JSHeapUsedSize?: number;
-        JSHeapTotalSize?: number;
-    }
-
-    /**
-     * The Mouse class operates in main-frame CSS pixels
-     * relative to the top-left corner of the viewport.
+     * Dispatches a `keypress` and `input` event.
+     * This does not send a `keydown` or `keyup` event.
+     *
      * @remarks
-     * Every `page` object has its own Mouse, accessible with [`page.mouse`](#pagemouse).
+     * Modifier keys DO NOT effect {@link Keyboard.sendCharacter | Keyboard.sendCharacter}.
+     * Holding down `Shift` will not type the text in upper case.
      *
      * @example
      * ```js
-     * // Using ‘page.mouse’ to trace a 100x100 square.
-     * await page.mouse.move(0, 0);
-     * await page.mouse.down();
-     * await page.mouse.move(0, 100);
-     * await page.mouse.move(100, 100);
-     * await page.mouse.move(100, 0);
-     * await page.mouse.move(0, 0);
-     * await page.mouse.up();
+     * page.keyboard.sendCharacter('å—¨');
      * ```
      *
-     * **Note**: The mouse events trigger synthetic `MouseEvent`s.
-     * This means that it does not fully replicate the functionality of what a normal user
-     * would be able to do with their mouse.
+     * @param char - Character to send into the page.
+     */
+    sendCharacter(char: string): Promise<void>;
+    private charIsKey;
+    /**
+     * Sends a `keydown`, `keypress`/`input`,
+     * and `keyup` event for each character in the text.
      *
-     * For example, dragging and selecting text is not possible using `page.mouse`.
-     * Instead, you can use the {@link https://developer.mozilla.org/en-US/docs/Web/API/DocumentOrShadowRoot/getSelection | `DocumentOrShadowRoot.getSelection()`} functionality implemented in the platform.
+     * @remarks
+     * To press a special key, like `Control` or `ArrowDown`,
+     * use {@link Keyboard.press}.
+     *
+     * Modifier keys DO NOT effect `keyboard.type`.
+     * Holding down `Shift` will not type the text in upper case.
      *
      * @example
-     * For example, if you want to select all content between nodes:
      * ```js
-     * await page.evaluate((from, to) => {
-     *   const selection = from.getRootNode().getSelection();
-     *   const range = document.createRange();
-     *   range.setStartBefore(from);
-     *   range.setEndAfter(to);
-     *   selection.removeAllRanges();
-     *   selection.addRange(range);
-     * }, fromJSHandle, toJSHandle);
+     * await page.keyboard.type('Hello'); // Types instantly
+     * await page.keyboard.type('World', {delay: 100}); // Types slower, like a user
      * ```
-     * If you then would want to copy-paste your selection, you can use the clipboard api:
+     *
+     * @param text - A text to type into a focused element.
+     * @param options - An object of options. Accepts delay which,
+     * if specified, is the time to wait between `keydown` and `keyup` in milliseconds.
+     * Defaults to 0.
+     */
+    type(text: string, options?: {
+        delay?: number;
+    }): Promise<void>;
+    /**
+     * Shortcut for {@link Keyboard.down}
+     * and {@link Keyboard.up}.
+     *
+     * @remarks
+     * If `key` is a single character and no modifier keys besides `Shift`
+     * are being held down, a `keypress`/`input` event will also generated.
+     * The `text` option can be specified to force an input event to be generated.
+     *
+     * Modifier keys DO effect {@link Keyboard.press}.
+     * Holding down `Shift` will type the text in upper case.
+     *
+     * @param key - Name of key to press, such as `ArrowLeft`.
+     * See {@link KeyInput} for a list of all key names.
+     *
+     * @param options - An object of options. Accepts text which, if specified,
+     * generates an input event with this text. Accepts delay which,
+     * if specified, is the time to wait between `keydown` and `keyup` in milliseconds.
+     * Defaults to 0.
+     */
+    press(key: KeyInput, options?: {
+        delay?: number;
+        text?: string;
+    }): Promise<void>;
+}
+
+/**
+ * Copyright 2017 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the 'License');
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * @internal
+ */
+export declare interface KeyDefinition {
+    keyCode?: number;
+    shiftKeyCode?: number;
+    key?: string;
+    shiftKey?: string;
+    code?: string;
+    text?: string;
+    shiftText?: string;
+    location?: number;
+}
+
+/**
+ * @internal
+ */
+export declare const keyDefinitions: Readonly<Record<KeyInput, KeyDefinition>>;
+
+/**
+ * All the valid keys that can be passed to functions that take user input, such
+ * as {@link Keyboard.press | keyboard.press }
+ *
+ * @public
+ */
+export declare type KeyInput = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Power' | 'Eject' | 'Abort' | 'Help' | 'Backspace' | 'Tab' | 'Numpad5' | 'NumpadEnter' | 'Enter' | '\r' | '\n' | 'ShiftLeft' | 'ShiftRight' | 'ControlLeft' | 'ControlRight' | 'AltLeft' | 'AltRight' | 'Pause' | 'CapsLock' | 'Escape' | 'Convert' | 'NonConvert' | 'Space' | 'Numpad9' | 'PageUp' | 'Numpad3' | 'PageDown' | 'End' | 'Numpad1' | 'Home' | 'Numpad7' | 'ArrowLeft' | 'Numpad4' | 'Numpad8' | 'ArrowUp' | 'ArrowRight' | 'Numpad6' | 'Numpad2' | 'ArrowDown' | 'Select' | 'Open' | 'PrintScreen' | 'Insert' | 'Numpad0' | 'Delete' | 'NumpadDecimal' | 'Digit0' | 'Digit1' | 'Digit2' | 'Digit3' | 'Digit4' | 'Digit5' | 'Digit6' | 'Digit7' | 'Digit8' | 'Digit9' | 'KeyA' | 'KeyB' | 'KeyC' | 'KeyD' | 'KeyE' | 'KeyF' | 'KeyG' | 'KeyH' | 'KeyI' | 'KeyJ' | 'KeyK' | 'KeyL' | 'KeyM' | 'KeyN' | 'KeyO' | 'KeyP' | 'KeyQ' | 'KeyR' | 'KeyS' | 'KeyT' | 'KeyU' | 'KeyV' | 'KeyW' | 'KeyX' | 'KeyY' | 'KeyZ' | 'MetaLeft' | 'MetaRight' | 'ContextMenu' | 'NumpadMultiply' | 'NumpadAdd' | 'NumpadSubtract' | 'NumpadDivide' | 'F1' | 'F2' | 'F3' | 'F4' | 'F5' | 'F6' | 'F7' | 'F8' | 'F9' | 'F10' | 'F11' | 'F12' | 'F13' | 'F14' | 'F15' | 'F16' | 'F17' | 'F18' | 'F19' | 'F20' | 'F21' | 'F22' | 'F23' | 'F24' | 'NumLock' | 'ScrollLock' | 'AudioVolumeMute' | 'AudioVolumeDown' | 'AudioVolumeUp' | 'MediaTrackNext' | 'MediaTrackPrevious' | 'MediaStop' | 'MediaPlayPause' | 'Semicolon' | 'Equal' | 'NumpadEqual' | 'Comma' | 'Minus' | 'Period' | 'Slash' | 'Backquote' | 'BracketLeft' | 'Backslash' | 'BracketRight' | 'Quote' | 'AltGraph' | 'Props' | 'Cancel' | 'Clear' | 'Shift' | 'Control' | 'Alt' | 'Accept' | 'ModeChange' | ' ' | 'Print' | 'Execute' | '\u0000' | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' | 'g' | 'h' | 'i' | 'j' | 'k' | 'l' | 'm' | 'n' | 'o' | 'p' | 'q' | 'r' | 's' | 't' | 'u' | 'v' | 'w' | 'x' | 'y' | 'z' | 'Meta' | '*' | '+' | '-' | '/' | ';' | '=' | ',' | '.' | '`' | '[' | '\\' | ']' | "'" | 'Attn' | 'CrSel' | 'ExSel' | 'EraseEof' | 'Play' | 'ZoomOut' | ')' | '!' | '@' | '#' | '$' | '%' | '^' | '&' | '(' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | ':' | '<' | '_' | '>' | '?' | '~' | '{' | '|' | '}' | '"' | 'SoftLeft' | 'SoftRight' | 'Camera' | 'Call' | 'EndCall' | 'VolumeDown' | 'VolumeUp';
+
+/**
+ * @public
+ * {@inheritDoc PuppeteerNode.launch}
+ */
+export declare function launch(options?: LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions & {
+    product?: Product;
+    extraPrefsFirefox?: Record<string, unknown>;
+}): Promise<Browser>;
+
+/**
+ * Generic launch options that can be passed when launching any browser.
+ * @public
+ */
+export declare interface LaunchOptions {
+    /**
+     * Path to a browser executable to use instead of the bundled Chromium. Note
+     * that Puppeteer is only guaranteed to work with the bundled Chromium, so use
+     * this setting at your own risk.
+     */
+    executablePath?: string;
+    /**
+     * If `true`, do not use `puppeteer.defaultArgs()` when creating a browser. If
+     * an array is provided, these args will be filtered out. Use this with care -
+     * you probably want the default arguments Puppeteer uses.
+     * @defaultValue false
+     */
+    ignoreDefaultArgs?: boolean | string[];
+    /**
+     * Close the browser process on `Ctrl+C`.
+     * @defaultValue `true`
+     */
+    handleSIGINT?: boolean;
+    /**
+     * Close the browser process on `SIGTERM`.
+     * @defaultValue `true`
+     */
+    handleSIGTERM?: boolean;
+    /**
+     * Close the browser process on `SIGHUP`.
+     * @defaultValue `true`
+     */
+    handleSIGHUP?: boolean;
+    /**
+     * Maximum time in milliseconds to wait for the browser to start.
+     * Pass `0` to disable the timeout.
+     * @defaultValue 30000 (30 seconds).
+     */
+    timeout?: number;
+    /**
+     * If true, pipes the browser process stdout and stderr to `process.stdout`
+     * and `process.stderr`.
+     * @defaultValue false
+     */
+    dumpio?: boolean;
+    /**
+     * Specify environment variables that will be visible to the browser.
+     * @defaultValue The contents of `process.env`.
+     */
+    env?: Record<string, string | undefined>;
+    /**
+     * Connect to a browser over a pipe instead of a WebSocket.
+     * @defaultValue false
+     */
+    pipe?: boolean;
+    /**
+     * Which browser to launch.
+     * @defaultValue `chrome`
+     */
+    product?: Product;
+    /**
+     * {@link https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/Preference_reference | Additional preferences } that can be passed when launching with Firefox.
+     */
+    extraPrefsFirefox?: Record<string, unknown>;
+    /**
+     * Whether to wait for the initial page to be ready.
+     * Useful when a user explicitly disables that (e.g. `--no-startup-window` for Chrome).
+     * @defaultValue true
+     */
+    waitForInitialPage?: boolean;
+}
+
+/**
+ * @internal
+ */
+export declare class LifecycleWatcher {
+    _expectedLifecycle: ProtocolLifeCycleEvent[];
+    _frameManager: FrameManager;
+    _frame: Frame;
+    _timeout: number;
+    _navigationRequest?: HTTPRequest;
+    _eventListeners: PuppeteerEventListener[];
+    _initialLoaderId: string;
+    _sameDocumentNavigationPromise: Promise<Error | null>;
+    _sameDocumentNavigationCompleteCallback: (x?: Error) => void;
+    _lifecyclePromise: Promise<void>;
+    _lifecycleCallback: () => void;
+    _newDocumentNavigationPromise: Promise<Error | null>;
+    _newDocumentNavigationCompleteCallback: (x?: Error) => void;
+    _terminationPromise: Promise<Error | null>;
+    _terminationCallback: (x?: Error) => void;
+    _timeoutPromise: Promise<TimeoutError | null>;
+    _maximumTimer?: NodeJS.Timeout;
+    _hasSameDocumentNavigation?: boolean;
+    constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[], timeout: number);
+    _onRequest(request: HTTPRequest): void;
+    _onFrameDetached(frame: Frame): void;
+    navigationResponse(): HTTPResponse | null;
+    _terminate(error: Error): void;
+    sameDocumentNavigationPromise(): Promise<Error | null>;
+    newDocumentNavigationPromise(): Promise<Error | null>;
+    lifecyclePromise(): Promise<void>;
+    timeoutOrTerminationPromise(): Promise<Error | TimeoutError | null>;
+    _createTimeoutPromise(): Promise<TimeoutError | null>;
+    _navigatedWithinDocument(frame: Frame): void;
+    _checkLifecycleComplete(): void;
+    dispose(): void;
+}
+
+/**
+ * @public
+ */
+export declare interface MediaFeature {
+    name: string;
+    value: string;
+}
+
+/**
+ * @public
+ */
+export declare interface Metrics {
+    Timestamp?: number;
+    Documents?: number;
+    Frames?: number;
+    JSEventListeners?: number;
+    Nodes?: number;
+    LayoutCount?: number;
+    RecalcStyleCount?: number;
+    LayoutDuration?: number;
+    RecalcStyleDuration?: number;
+    ScriptDuration?: number;
+    TaskDuration?: number;
+    JSHeapUsedSize?: number;
+    JSHeapTotalSize?: number;
+}
+
+/**
+ * The Mouse class operates in main-frame CSS pixels
+ * relative to the top-left corner of the viewport.
+ * @remarks
+ * Every `page` object has its own Mouse, accessible with [`page.mouse`](#pagemouse).
+ *
+ * @example
+ * ```js
+ * // Using ‘page.mouse’ to trace a 100x100 square.
+ * await page.mouse.move(0, 0);
+ * await page.mouse.down();
+ * await page.mouse.move(0, 100);
+ * await page.mouse.move(100, 100);
+ * await page.mouse.move(100, 0);
+ * await page.mouse.move(0, 0);
+ * await page.mouse.up();
+ * ```
+ *
+ * **Note**: The mouse events trigger synthetic `MouseEvent`s.
+ * This means that it does not fully replicate the functionality of what a normal user
+ * would be able to do with their mouse.
+ *
+ * For example, dragging and selecting text is not possible using `page.mouse`.
+ * Instead, you can use the {@link https://developer.mozilla.org/en-US/docs/Web/API/DocumentOrShadowRoot/getSelection | `DocumentOrShadowRoot.getSelection()`} functionality implemented in the platform.
+ *
+ * @example
+ * For example, if you want to select all content between nodes:
+ * ```js
+ * await page.evaluate((from, to) => {
+ *   const selection = from.getRootNode().getSelection();
+ *   const range = document.createRange();
+ *   range.setStartBefore(from);
+ *   range.setEndAfter(to);
+ *   selection.removeAllRanges();
+ *   selection.addRange(range);
+ * }, fromJSHandle, toJSHandle);
+ * ```
+ * If you then would want to copy-paste your selection, you can use the clipboard api:
+ * ```js
+ * // The clipboard api does not allow you to copy, unless the tab is focused.
+ * await page.bringToFront();
+ * await page.evaluate(() => {
+ *   // Copy the selected content to the clipboard
+ *   document.execCommand('copy');
+ *   // Obtain the content of the clipboard as a string
+ *   return navigator.clipboard.readText();
+ * });
+ * ```
+ * **Note**: If you want access to the clipboard API,
+ * you have to give it permission to do so:
+ * ```js
+ * await browser.defaultBrowserContext().overridePermissions(
+ *   '<your origin>', ['clipboard-read', 'clipboard-write']
+ * );
+ * ```
+ * @public
+ */
+export declare class Mouse {
+    private _client;
+    private _keyboard;
+    private _x;
+    private _y;
+    private _button;
+    /**
+     * @internal
+     */
+    constructor(client: CDPSession, keyboard: Keyboard);
+    /**
+     * Dispatches a `mousemove` event.
+     * @param x - Horizontal position of the mouse.
+     * @param y - Vertical position of the mouse.
+     * @param options - Optional object. If specified, the `steps` property
+     * sends intermediate `mousemove` events when set to `1` (default).
+     */
+    move(x: number, y: number, options?: {
+        steps?: number;
+    }): Promise<void>;
+    /**
+     * Shortcut for `mouse.move`, `mouse.down` and `mouse.up`.
+     * @param x - Horizontal position of the mouse.
+     * @param y - Vertical position of the mouse.
+     * @param options - Optional `MouseOptions`.
+     */
+    click(x: number, y: number, options?: MouseOptions & {
+        delay?: number;
+    }): Promise<void>;
+    /**
+     * Dispatches a `mousedown` event.
+     * @param options - Optional `MouseOptions`.
+     */
+    down(options?: MouseOptions): Promise<void>;
+    /**
+     * Dispatches a `mouseup` event.
+     * @param options - Optional `MouseOptions`.
+     */
+    up(options?: MouseOptions): Promise<void>;
+    /**
+     * Dispatches a `mousewheel` event.
+     * @param options - Optional: `MouseWheelOptions`.
+     *
+     * @example
+     * An example of zooming into an element:
      * ```js
-     * // The clipboard api does not allow you to copy, unless the tab is focused.
-     * await page.bringToFront();
-     * await page.evaluate(() => {
-     *   // Copy the selected content to the clipboard
-     *   document.execCommand('copy');
-     *   // Obtain the content of the clipboard as a string
-     *   return navigator.clipboard.readText();
-     * });
+     * await page.goto('https://mdn.mozillademos.org/en-US/docs/Web/API/Element/wheel_event$samples/Scaling_an_element_via_the_wheel?revision=1587366');
+     *
+     * const elem = await page.$('div');
+     * const boundingBox = await elem.boundingBox();
+     * await page.mouse.move(
+     *   boundingBox.x + boundingBox.width / 2,
+     *   boundingBox.y + boundingBox.height / 2
+     * );
+     *
+     * await page.mouse.wheel({ deltaY: -100 })
      * ```
-     * **Note**: If you want access to the clipboard API,
-     * you have to give it permission to do so:
+     */
+    wheel(options?: MouseWheelOptions): Promise<void>;
+}
+
+/**
+ * @public
+ */
+export declare type MouseButton = 'left' | 'right' | 'middle';
+
+/**
+ * @public
+ */
+export declare interface MouseOptions {
+    button?: MouseButton;
+    clickCount?: number;
+}
+
+/**
+ * @public
+ */
+export declare interface MouseWheelOptions {
+    deltaX?: number;
+    deltaY?: number;
+}
+
+/**
+ * @public
+ */
+export declare interface NetworkConditions {
+    download: number;
+    upload: number;
+    latency: number;
+}
+
+/**
+ * @public
+ */
+export declare let networkConditions: PredefinedNetworkConditions;
+
+/**
+ * @internal
+ */
+export declare class NetworkManager extends EventEmitter {
+    _client: CDPSession;
+    _ignoreHTTPSErrors: boolean;
+    _frameManager: FrameManager;
+    _requestIdToRequestWillBeSentEvent: Map<string, Protocol.Network.RequestWillBeSentEvent>;
+    _requestIdToRequestPausedEvent: Map<string, Protocol.Fetch.RequestPausedEvent>;
+    _requestIdToRequest: Map<string, HTTPRequest>;
+    _extraHTTPHeaders: Record<string, string>;
+    _credentials?: Credentials;
+    _attemptedAuthentications: Set<string>;
+    _userRequestInterceptionEnabled: boolean;
+    _protocolRequestInterceptionEnabled: boolean;
+    _userCacheDisabled: boolean;
+    _emulatedNetworkConditions: InternalNetworkConditions;
+    constructor(client: CDPSession, ignoreHTTPSErrors: boolean, frameManager: FrameManager);
+    initialize(): Promise<void>;
+    authenticate(credentials?: Credentials): Promise<void>;
+    setExtraHTTPHeaders(extraHTTPHeaders: Record<string, string>): Promise<void>;
+    extraHTTPHeaders(): Record<string, string>;
+    setOfflineMode(value: boolean): Promise<void>;
+    emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
+    _updateNetworkConditions(): Promise<void>;
+    setUserAgent(userAgent: string): Promise<void>;
+    setCacheEnabled(enabled: boolean): Promise<void>;
+    setRequestInterception(value: boolean): Promise<void>;
+    _updateProtocolRequestInterception(): Promise<void>;
+    _cacheDisabled(): boolean;
+    _updateProtocolCacheDisabled(): Promise<void>;
+    _onRequestWillBeSent(event: Protocol.Network.RequestWillBeSentEvent): void;
+    _onAuthRequired(event: Protocol.Fetch.AuthRequiredEvent): void;
+    _onRequestPaused(event: Protocol.Fetch.RequestPausedEvent): void;
+    _onRequest(event: Protocol.Network.RequestWillBeSentEvent, interceptionId?: string): void;
+    _onRequestServedFromCache(event: Protocol.Network.RequestServedFromCacheEvent): void;
+    _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response): void;
+    _onResponseReceived(event: Protocol.Network.ResponseReceivedEvent): void;
+    _forgetRequest(request: HTTPRequest, events: boolean): void;
+    _onLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
+    _onLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
+}
+
+/**
+ * We use symbols to prevent any external parties listening to these events.
+ * They are internal to Puppeteer.
+ *
+ * @internal
+ */
+export declare const NetworkManagerEmittedEvents: {
+    readonly Request: symbol;
+    readonly RequestServedFromCache: symbol;
+    readonly Response: symbol;
+    readonly RequestFailed: symbol;
+    readonly RequestFinished: symbol;
+};
+
+/**
+ * Page provides methods to interact with a single tab or
+ * {@link https://developer.chrome.com/extensions/background_pages | extension background page} in Chromium.
+ *
+ * @remarks
+ *
+ * One Browser instance might have multiple Page instances.
+ *
+ * @example
+ * This example creates a page, navigates it to a URL, and then * saves a screenshot:
+ * ```js
+ * const puppeteer = require('puppeteer');
+ *
+ * (async () => {
+ *   const browser = await puppeteer.launch();
+ *   const page = await browser.newPage();
+ *   await page.goto('https://example.com');
+ *   await page.screenshot({path: 'screenshot.png'});
+ *   await browser.close();
+ * })();
+ * ```
+ *
+ * The Page class extends from Puppeteer's {@link EventEmitter} class and will
+ * emit various events which are documented in the {@link PageEmittedEvents} enum.
+ *
+ * @example
+ * This example logs a message for a single page `load` event:
+ * ```js
+ * page.once('load', () => console.log('Page loaded!'));
+ * ```
+ *
+ * To unsubscribe from events use the `off` method:
+ *
+ * ```js
+ * function logRequest(interceptedRequest) {
+ *   console.log('A request was made:', interceptedRequest.url());
+ * }
+ * page.on('request', logRequest);
+ * // Sometime later...
+ * page.off('request', logRequest);
+ * ```
+ * @public
+ */
+export declare class Page extends EventEmitter {
+    /**
+     * @internal
+     */
+    static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null): Promise<Page>;
+    private _closed;
+    private _client;
+    private _target;
+    private _keyboard;
+    private _mouse;
+    private _timeoutSettings;
+    private _touchscreen;
+    private _accessibility;
+    private _frameManager;
+    private _emulationManager;
+    private _tracing;
+    private _pageBindings;
+    private _coverage;
+    private _javascriptEnabled;
+    private _viewport;
+    private _screenshotTaskQueue;
+    private _workers;
+    private _fileChooserInterceptors;
+    private _disconnectPromise?;
+    /**
+     * @internal
+     */
+    constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean);
+    private _initialize;
+    private _onFileChooser;
+    /**
+     * @returns `true` if the page has JavaScript enabled, `false` otherwise.
+     */
+    isJavaScriptEnabled(): boolean;
+    /**
+     * Listen to page events.
+     */
+    on<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
+    once<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
+    /**
+     * @param options - Optional waiting parameters
+     * @returns Resolves after a page requests a file picker.
+     */
+    waitForFileChooser(options?: WaitTimeoutOptions): Promise<FileChooser>;
+    /**
+     * Sets the page's geolocation.
+     *
+     * @remarks
+     * Consider using {@link BrowserContext.overridePermissions} to grant
+     * permissions for the page to read its geolocation.
+     *
+     * @example
      * ```js
-     * await browser.defaultBrowserContext().overridePermissions(
-     *   '<your origin>', ['clipboard-read', 'clipboard-write']
+     * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
+     * ```
+     */
+    setGeolocation(options: GeolocationOptions): Promise<void>;
+    /**
+     * @returns A target this page was created from.
+     */
+    target(): Target;
+    /**
+     * @returns The browser this page belongs to.
+     */
+    browser(): Browser;
+    /**
+     * @returns The browser context that the page belongs to
+     */
+    browserContext(): BrowserContext;
+    private _onTargetCrashed;
+    private _onLogEntryAdded;
+    /**
+     * @returns The page's main frame.
+     */
+    mainFrame(): Frame;
+    get keyboard(): Keyboard;
+    get touchscreen(): Touchscreen;
+    get coverage(): Coverage;
+    get tracing(): Tracing;
+    get accessibility(): Accessibility;
+    /**
+     * @returns An array of all frames attached to the page.
+     */
+    frames(): Frame[];
+    /**
+     * @returns all of the dedicated
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorkers}
+     * associated with the page.
+     */
+    workers(): WebWorker[];
+    /**
+     * @param value - Whether to enable request interception.
+     *
+     * @remarks
+     * Activating request interception enables {@link HTTPRequest.abort},
+     * {@link HTTPRequest.continue} and {@link HTTPRequest.respond} methods.  This
+     * provides the capability to modify network requests that are made by a page.
+     *
+     * Once request interception is enabled, every request will stall unless it's
+     * continued, responded or aborted; or completed using the browser cache.
+     *
+     * @example
+     * An example of a naïve request interceptor that aborts all image requests:
+     * ```js
+     * const puppeteer = require('puppeteer');
+     * (async () => {
+     *   const browser = await puppeteer.launch();
+     *   const page = await browser.newPage();
+     *   await page.setRequestInterception(true);
+     *   page.on('request', interceptedRequest => {
+     *     if (interceptedRequest.url().endsWith('.png') ||
+     *         interceptedRequest.url().endsWith('.jpg'))
+     *       interceptedRequest.abort();
+     *     else
+     *       interceptedRequest.continue();
+     *     });
+     *   await page.goto('https://example.com');
+     *   await browser.close();
+     * })();
+     * ```
+     */
+    setRequestInterception(value: boolean): Promise<void>;
+    /**
+     * @param enabled - When `true`, enables offline mode for the page.
+     */
+    setOfflineMode(enabled: boolean): Promise<void>;
+    emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
+    /**
+     * @param timeout - Maximum navigation time in milliseconds.
+     */
+    setDefaultNavigationTimeout(timeout: number): void;
+    /**
+     * @param timeout - Maximum time in milliseconds.
+     */
+    setDefaultTimeout(timeout: number): void;
+    /**
+     * Runs `document.querySelector` within the page. If no element matches the
+     * selector, the return value resolves to `null`.
+     *
+     * @remarks
+     * Shortcut for {@link Frame.$ | Page.mainFrame().$(selector) }.
+     *
+     * @param selector - A `selector` to query page for
+     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
+     * to query page for.
+     */
+    $<T extends Element = Element>(selector: string): Promise<ElementHandle<T> | null>;
+    /**
+     * @remarks
+     *
+     * The only difference between {@link Page.evaluate | page.evaluate} and
+     * `page.evaluateHandle` is that `evaluateHandle` will return the value
+     * wrapped in an in-page object.
+     *
+     * If the function passed to `page.evaluteHandle` returns a Promise, the
+     * function will wait for the promise to resolve and return its value.
+     *
+     * You can pass a string instead of a function (although functions are
+     * recommended as they are easier to debug and use with TypeScript):
+     *
+     * @example
+     * ```
+     * const aHandle = await page.evaluateHandle('document')
+     * ```
+     *
+     * @example
+     * {@link JSHandle} instances can be passed as arguments to the `pageFunction`:
+     * ```
+     * const aHandle = await page.evaluateHandle(() => document.body);
+     * const resultHandle = await page.evaluateHandle(body => body.innerHTML, aHandle);
+     * console.log(await resultHandle.jsonValue());
+     * await resultHandle.dispose();
+     * ```
+     *
+     * Most of the time this function returns a {@link JSHandle},
+     * but if `pageFunction` returns a reference to an element,
+     * you instead get an {@link ElementHandle} back:
+     *
+     * @example
+     * ```
+     * const button = await page.evaluateHandle(() => document.querySelector('button'));
+     * // can call `click` because `button` is an `ElementHandle`
+     * await button.click();
+     * ```
+     *
+     * The TypeScript definitions assume that `evaluateHandle` returns
+     *  a `JSHandle`, but if you know it's going to return an
+     * `ElementHandle`, pass it as the generic argument:
+     *
+     * ```
+     * const button = await page.evaluateHandle<ElementHandle>(...);
+     * ```
+     *
+     * @param pageFunction - a function that is run within the page
+     * @param args - arguments to be passed to the pageFunction
+     */
+    evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandlerType>;
+    /**
+     * This method iterates the JavaScript heap and finds all objects with the
+     * given prototype.
+     *
+     * @remarks
+     *
+     * @example
+     *
+     * ```js
+     * // Create a Map object
+     * await page.evaluate(() => window.map = new Map());
+     * // Get a handle to the Map object prototype
+     * const mapPrototype = await page.evaluateHandle(() => Map.prototype);
+     * // Query all map instances into an array
+     * const mapInstances = await page.queryObjects(mapPrototype);
+     * // Count amount of map objects in heap
+     * const count = await page.evaluate(maps => maps.length, mapInstances);
+     * await mapInstances.dispose();
+     * await mapPrototype.dispose();
+     * ```
+     * @param prototypeHandle - a handle to the object prototype.
+     */
+    queryObjects(prototypeHandle: JSHandle): Promise<JSHandle>;
+    /**
+     * This method runs `document.querySelector` within the page and passes the
+     * result as the first argument to the `pageFunction`.
+     *
+     * @remarks
+     *
+     * If no element is found matching `selector`, the method will throw an error.
+     *
+     * If `pageFunction` returns a promise `$eval` will wait for the promise to
+     * resolve and then return its value.
+     *
+     * @example
+     *
+     * ```
+     * const searchValue = await page.$eval('#search', el => el.value);
+     * const preloadHref = await page.$eval('link[rel=preload]', el => el.href);
+     * const html = await page.$eval('.main-container', el => el.outerHTML);
+     * ```
+     *
+     * If you are using TypeScript, you may have to provide an explicit type to the
+     * first argument of the `pageFunction`.
+     * By default it is typed as `Element`, but you may need to provide a more
+     * specific sub-type:
+     *
+     * @example
+     *
+     * ```
+     * // if you don't provide HTMLInputElement here, TS will error
+     * // as `value` is not on `Element`
+     * const searchValue = await page.$eval('#search', (el: HTMLInputElement) => el.value);
+     * ```
+     *
+     * The compiler should be able to infer the return type
+     * from the `pageFunction` you provide. If it is unable to, you can use the generic
+     * type to tell the compiler what return type you expect from `$eval`:
+     *
+     * @example
+     *
+     * ```
+     * // The compiler can infer the return type in this case, but if it can't
+     * // or if you want to be more explicit, provide it as the generic type.
+     * const searchValue = await page.$eval<string>(
+     *  '#search', (el: HTMLInputElement) => el.value
      * );
      * ```
-     * @public
-     */
-    export declare class Mouse {
-        private _client;
-        private _keyboard;
-        private _x;
-        private _y;
-        private _button;
-        /**
-         * @internal
-         */
-        constructor(client: CDPSession, keyboard: Keyboard);
-        /**
-         * Dispatches a `mousemove` event.
-         * @param x - Horizontal position of the mouse.
-         * @param y - Vertical position of the mouse.
-         * @param options - Optional object. If specified, the `steps` property
-         * sends intermediate `mousemove` events when set to `1` (default).
-         */
-        move(x: number, y: number, options?: {
-            steps?: number;
-        }): Promise<void>;
-        /**
-         * Shortcut for `mouse.move`, `mouse.down` and `mouse.up`.
-         * @param x - Horizontal position of the mouse.
-         * @param y - Vertical position of the mouse.
-         * @param options - Optional `MouseOptions`.
-         */
-        click(x: number, y: number, options?: MouseOptions & {
-            delay?: number;
-        }): Promise<void>;
-        /**
-         * Dispatches a `mousedown` event.
-         * @param options - Optional `MouseOptions`.
-         */
-        down(options?: MouseOptions): Promise<void>;
-        /**
-         * Dispatches a `mouseup` event.
-         * @param options - Optional `MouseOptions`.
-         */
-        up(options?: MouseOptions): Promise<void>;
-        /**
-         * Dispatches a `mousewheel` event.
-         * @param options - Optional: `MouseWheelOptions`.
-         *
-         * @example
-         * An example of zooming into an element:
-         * ```js
-         * await page.goto('https://mdn.mozillademos.org/en-US/docs/Web/API/Element/wheel_event$samples/Scaling_an_element_via_the_wheel?revision=1587366');
-         *
-         * const elem = await page.$('div');
-         * const boundingBox = await elem.boundingBox();
-         * await page.mouse.move(
-         *   boundingBox.x + boundingBox.width / 2,
-         *   boundingBox.y + boundingBox.height / 2
-         * );
-         *
-         * await page.mouse.wheel({ deltaY: -100 })
-         * ```
-         */
-        wheel(options?: MouseWheelOptions): Promise<void>;
-        /**
-         * Dispatches a `drag` event.
-         * @param start - starting point for drag
-         * @param target - point to drag to
-         */
-        drag(start: Point, target: Point): Promise<Protocol.Input.DragData>;
-        /**
-         * Dispatches a `dragenter` event.
-         * @param target - point for emitting `dragenter` event
-         * @param data - drag data containing items and operations mask
-         */
-        dragEnter(target: Point, data: Protocol.Input.DragData): Promise<void>;
-        /**
-         * Dispatches a `dragover` event.
-         * @param target - point for emitting `dragover` event
-         * @param data - drag data containing items and operations mask
-         */
-        dragOver(target: Point, data: Protocol.Input.DragData): Promise<void>;
-        /**
-         * Performs a dragenter, dragover, and drop in sequence.
-         * @param target - point to drop on
-         * @param data - drag data containing items and operations mask
-         */
-        drop(target: Point, data: Protocol.Input.DragData): Promise<void>;
-        /**
-         * Performs a drag, dragenter, dragover, and drop in sequence.
-         * @param target - point to drag from
-         * @param target - point to drop on
-         * @param options - An object of options. Accepts delay which,
-         * if specified, is the time to wait between `dragover` and `drop` in milliseconds.
-         * Defaults to 0.
-         */
-        dragAndDrop(start: Point, target: Point, options?: {
-            delay?: number;
-        }): Promise<void>;
-    }
-
-    /**
-     * @public
-     */
-    export declare type MouseButton = 'left' | 'right' | 'middle';
-
-    /**
-     * @public
-     */
-    export declare interface MouseOptions {
-        button?: MouseButton;
-        clickCount?: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare interface MouseWheelOptions {
-        deltaX?: number;
-        deltaY?: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare interface NetworkConditions {
-        download: number;
-        upload: number;
-        latency: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare let networkConditions: PredefinedNetworkConditions;
-
-    /**
-     * @internal
-     */
-    export declare class NetworkManager extends EventEmitter {
-        _client: CDPSession_2;
-        _ignoreHTTPSErrors: boolean;
-        _frameManager: FrameManager_2;
-        _requestIdToRequestWillBeSentEvent: Map<string, Protocol.Network.RequestWillBeSentEvent>;
-        _requestIdToRequestPausedEvent: Map<string, Protocol.Fetch.RequestPausedEvent>;
-        _requestIdToRequest: Map<string, HTTPRequest>;
-        _requestIdToResponseReceivedExtraInfo: Map<string, Protocol.Network.ResponseReceivedExtraInfoEvent[]>;
-        _requestIdToQueuedRedirectInfoMap: Map<string, {
-            event: Protocol.Network.RequestWillBeSentEvent;
-            interceptionId?: string;
-        }[]>;
-        _requestIdToQueuedEvents: Map<string, {
-            responseReceived: Protocol.Network.ResponseReceivedEvent;
-            promise: Promise<void>;
-            resolver: () => void;
-            loadingFinished?: Protocol.Network.LoadingFinishedEvent;
-            loadingFailed?: Protocol.Network.LoadingFailedEvent;
-        }>;
-        _extraHTTPHeaders: Record<string, string>;
-        _credentials?: Credentials;
-        _attemptedAuthentications: Set<string>;
-        _userRequestInterceptionEnabled: boolean;
-        _protocolRequestInterceptionEnabled: boolean;
-        _userCacheDisabled: boolean;
-        _emulatedNetworkConditions: InternalNetworkConditions;
-        constructor(client: CDPSession_2, ignoreHTTPSErrors: boolean, frameManager: FrameManager_2);
-        initialize(): Promise<void>;
-        authenticate(credentials?: Credentials): Promise<void>;
-        setExtraHTTPHeaders(extraHTTPHeaders: Record<string, string>): Promise<void>;
-        extraHTTPHeaders(): Record<string, string>;
-        numRequestsInProgress(): number;
-        setOfflineMode(value: boolean): Promise<void>;
-        emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
-        _updateNetworkConditions(): Promise<void>;
-        setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
-        setCacheEnabled(enabled: boolean): Promise<void>;
-        setRequestInterception(value: boolean): Promise<void>;
-        _updateProtocolRequestInterception(): Promise<void>;
-        _cacheDisabled(): boolean;
-        _updateProtocolCacheDisabled(): Promise<void>;
-        _onRequestWillBeSent(event: Protocol.Network.RequestWillBeSentEvent): void;
-        _onAuthRequired(event: Protocol.Fetch.AuthRequiredEvent): void;
-        _onRequestPaused(event: Protocol.Fetch.RequestPausedEvent): void;
-        _requestIdToQueuedRedirectInfo(requestId: string): Array<{
-            event: Protocol.Network.RequestWillBeSentEvent;
-            interceptionId?: string;
-        }>;
-        _requestIdToResponseExtraInfo(requestId: string): Protocol.Network.ResponseReceivedExtraInfoEvent[];
-        _onRequest(event: Protocol.Network.RequestWillBeSentEvent, interceptionId?: string): void;
-        _onRequestServedFromCache(event: Protocol.Network.RequestServedFromCacheEvent): void;
-        _handleRequestRedirect(request: HTTPRequest, responsePayload: Protocol.Network.Response, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
-        _emitResponseEvent(responseReceived: Protocol.Network.ResponseReceivedEvent, extraInfo: Protocol.Network.ResponseReceivedExtraInfoEvent | null): void;
-        _onResponseReceived(event: Protocol.Network.ResponseReceivedEvent): void;
-        responseWaitingForExtraInfoPromise(requestId: string): Promise<void>;
-        _onResponseReceivedExtraInfo(event: Protocol.Network.ResponseReceivedExtraInfoEvent): void;
-        _forgetRequest(request: HTTPRequest, events: boolean): void;
-        _onLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
-        _emitLoadingFinished(event: Protocol.Network.LoadingFinishedEvent): void;
-        _onLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
-        _emitLoadingFailed(event: Protocol.Network.LoadingFailedEvent): void;
-    }
-
-    /**
-     * We use symbols to prevent any external parties listening to these events.
-     * They are internal to Puppeteer.
      *
-     * @internal
+     * @param selector - the
+     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
+     * to query for
+     * @param pageFunction - the function to be evaluated in the page context.
+     * Will be passed the result of `document.querySelector(selector)` as its
+     * first argument.
+     * @param args - any additional arguments to pass through to `pageFunction`.
+     *
+     * @returns The result of calling `pageFunction`. If it returns an element it
+     * is wrapped in an {@link ElementHandle}, else the raw value itself is
+     * returned.
      */
-    export declare const NetworkManagerEmittedEvents: {
-        readonly Request: symbol;
-        readonly RequestServedFromCache: symbol;
-        readonly Response: symbol;
-        readonly RequestFailed: symbol;
-        readonly RequestFinished: symbol;
-    };
-
+    $eval<ReturnType>(selector: string, pageFunction: (element: Element, ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
     /**
-     * @public
-     */
-    export declare interface Offset {
-        /**
-         * x-offset for the clickable point relative to the top-left corder of the border box.
-         */
-        x: number;
-        /**
-         * y-offset for the clickable point relative to the top-left corder of the border box.
-         */
-        y: number;
-    }
-
-    /**
-     * Page provides methods to interact with a single tab or
-     * {@link https://developer.chrome.com/extensions/background_pages | extension background page} in Chromium.
+     * This method runs `Array.from(document.querySelectorAll(selector))` within
+     * the page and passes the result as the first argument to the `pageFunction`.
      *
      * @remarks
      *
-     * One Browser instance might have multiple Page instances.
+     * If `pageFunction` returns a promise `$$eval` will wait for the promise to
+     * resolve and then return its value.
      *
      * @example
-     * This example creates a page, navigates it to a URL, and then * saves a screenshot:
+     *
+     * ```
+     * // get the amount of divs on the page
+     * const divCount = await page.$$eval('div', divs => divs.length);
+     *
+     * // get the text content of all the `.options` elements:
+     * const options = await page.$$eval('div > span.options', options => {
+     *   return options.map(option => option.textContent)
+     * });
+     * ```
+     *
+     * If you are using TypeScript, you may have to provide an explicit type to the
+     * first argument of the `pageFunction`.
+     * By default it is typed as `Element[]`, but you may need to provide a more
+     * specific sub-type:
+     *
+     * @example
+     *
+     * ```
+     * // if you don't provide HTMLInputElement here, TS will error
+     * // as `value` is not on `Element`
+     * await page.$$eval('input', (elements: HTMLInputElement[]) => {
+     *   return elements.map(e => e.value);
+     * });
+     * ```
+     *
+     * The compiler should be able to infer the return type
+     * from the `pageFunction` you provide. If it is unable to, you can use the generic
+     * type to tell the compiler what return type you expect from `$$eval`:
+     *
+     * @example
+     *
+     * ```
+     * // The compiler can infer the return type in this case, but if it can't
+     * // or if you want to be more explicit, provide it as the generic type.
+     * const allInputValues = await page.$$eval<string[]>(
+     *  'input', (elements: HTMLInputElement[]) => elements.map(e => e.textContent)
+     * );
+     * ```
+     *
+     * @param selector - the
+     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
+     * to query for
+     * @param pageFunction - the function to be evaluated in the page context. Will
+     * be passed the result of `Array.from(document.querySelectorAll(selector))`
+     * as its first argument.
+     * @param args - any additional arguments to pass through to `pageFunction`.
+     *
+     * @returns The result of calling `pageFunction`. If it returns an element it
+     * is wrapped in an {@link ElementHandle}, else the raw value itself is
+     * returned.
+     */
+    $$eval<ReturnType>(selector: string, pageFunction: (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
+    $$<T extends Element = Element>(selector: string): Promise<Array<ElementHandle<T>>>;
+    $x(expression: string): Promise<ElementHandle[]>;
+    /**
+     * If no URLs are specified, this method returns cookies for the current page
+     * URL. If URLs are specified, only cookies for those URLs are returned.
+     */
+    cookies(...urls: string[]): Promise<Protocol.Network.Cookie[]>;
+    deleteCookie(...cookies: Protocol.Network.DeleteCookiesRequest[]): Promise<void>;
+    setCookie(...cookies: Protocol.Network.CookieParam[]): Promise<void>;
+    addScriptTag(options: {
+        url?: string;
+        path?: string;
+        content?: string;
+        type?: string;
+    }): Promise<ElementHandle>;
+    addStyleTag(options: {
+        url?: string;
+        path?: string;
+        content?: string;
+    }): Promise<ElementHandle>;
+    exposeFunction(name: string, puppeteerFunction: Function): Promise<void>;
+    authenticate(credentials: Credentials): Promise<void>;
+    setExtraHTTPHeaders(headers: Record<string, string>): Promise<void>;
+    setUserAgent(userAgent: string): Promise<void>;
+    metrics(): Promise<Metrics>;
+    private _emitMetrics;
+    private _buildMetricsObject;
+    private _handleException;
+    private _onConsoleAPI;
+    private _onBindingCalled;
+    private _addConsoleMessage;
+    private _onDialog;
+    /**
+     * Resets default white background
+     */
+    private _resetDefaultBackgroundColor;
+    /**
+     * Hides default white background
+     */
+    private _setTransparentBackgroundColor;
+    url(): string;
+    content(): Promise<string>;
+    setContent(html: string, options?: WaitForOptions): Promise<void>;
+    goto(url: string, options?: WaitForOptions & {
+        referer?: string;
+    }): Promise<HTTPResponse>;
+    reload(options?: WaitForOptions): Promise<HTTPResponse | null>;
+    waitForNavigation(options?: WaitForOptions): Promise<HTTPResponse | null>;
+    private _sessionClosePromise;
+    waitForRequest(urlOrPredicate: string | ((req: HTTPRequest) => boolean | Promise<boolean>), options?: {
+        timeout?: number;
+    }): Promise<HTTPRequest>;
+    waitForResponse(urlOrPredicate: string | ((res: HTTPResponse) => boolean | Promise<boolean>), options?: {
+        timeout?: number;
+    }): Promise<HTTPResponse>;
+    goBack(options?: WaitForOptions): Promise<HTTPResponse | null>;
+    goForward(options?: WaitForOptions): Promise<HTTPResponse | null>;
+    private _go;
+    bringToFront(): Promise<void>;
+    emulate(options: {
+        viewport: Viewport;
+        userAgent: string;
+    }): Promise<void>;
+    setJavaScriptEnabled(enabled: boolean): Promise<void>;
+    setBypassCSP(enabled: boolean): Promise<void>;
+    emulateMediaType(type?: string): Promise<void>;
+    emulateMediaFeatures(features?: MediaFeature[]): Promise<void>;
+    emulateTimezone(timezoneId?: string): Promise<void>;
+    /**
+     * Emulates the idle state.
+     * If no arguments set, clears idle state emulation.
+     *
+     * @example
+     * ```js
+     * // set idle emulation
+     * await page.emulateIdleState({isUserActive: true, isScreenUnlocked: false});
+     *
+     * // do some checks here
+     * ...
+     *
+     * // clear idle emulation
+     * await page.emulateIdleState();
+     * ```
+     *
+     * @param overrides - Mock idle state. If not set, clears idle overrides
+     * @param isUserActive - Mock isUserActive
+     * @param isScreenUnlocked - Mock isScreenUnlocked
+     */
+    emulateIdleState(overrides?: {
+        isUserActive: boolean;
+        isScreenUnlocked: boolean;
+    }): Promise<void>;
+    /**
+     * Simulates the given vision deficiency on the page.
+     *
+     * @example
      * ```js
      * const puppeteer = require('puppeteer');
      *
      * (async () => {
      *   const browser = await puppeteer.launch();
      *   const page = await browser.newPage();
-     *   await page.goto('https://example.com');
-     *   await page.screenshot({path: 'screenshot.png'});
+     *   await page.goto('https://v8.dev/blog/10-years');
+     *
+     *   await page.emulateVisionDeficiency('achromatopsia');
+     *   await page.screenshot({ path: 'achromatopsia.png' });
+     *
+     *   await page.emulateVisionDeficiency('deuteranopia');
+     *   await page.screenshot({ path: 'deuteranopia.png' });
+     *
+     *   await page.emulateVisionDeficiency('blurredVision');
+     *   await page.screenshot({ path: 'blurred-vision.png' });
+     *
      *   await browser.close();
      * })();
      * ```
      *
-     * The Page class extends from Puppeteer's {@link EventEmitter} class and will
-     * emit various events which are documented in the {@link PageEmittedEvents} enum.
+     * @param type - the type of deficiency to simulate, or `'none'` to reset.
+     */
+    emulateVisionDeficiency(type?: Protocol.Emulation.SetEmulatedVisionDeficiencyRequest['type']): Promise<void>;
+    setViewport(viewport: Viewport): Promise<void>;
+    viewport(): Viewport | null;
+    /**
+     * @remarks
+     *
+     * Evaluates a function in the page's context and returns the result.
+     *
+     * If the function passed to `page.evaluteHandle` returns a Promise, the
+     * function will wait for the promise to resolve and return its value.
      *
      * @example
-     * This example logs a message for a single page `load` event:
-     * ```js
-     * page.once('load', () => console.log('Page loaded!'));
-     * ```
-     *
-     * To unsubscribe from events use the `off` method:
      *
      * ```js
-     * function logRequest(interceptedRequest) {
-     *   console.log('A request was made:', interceptedRequest.url());
-     * }
-     * page.on('request', logRequest);
-     * // Sometime later...
-     * page.off('request', logRequest);
+     * const result = await frame.evaluate(() => {
+     *   return Promise.resolve(8 * 7);
+     * });
+     * console.log(result); // prints "56"
      * ```
-     * @public
+     *
+     * You can pass a string instead of a function (although functions are
+     * recommended as they are easier to debug and use with TypeScript):
+     *
+     * @example
+     * ```
+     * const aHandle = await page.evaluate('1 + 2');
+     * ```
+     *
+     * To get the best TypeScript experience, you should pass in as the
+     * generic the type of `pageFunction`:
+     *
+     * ```
+     * const aHandle = await page.evaluate<() => number>(() => 2);
+     * ```
+     *
+     * @example
+     *
+     * {@link ElementHandle} instances (including {@link JSHandle}s) can be passed
+     * as arguments to the `pageFunction`:
+     *
+     * ```
+     * const bodyHandle = await page.$('body');
+     * const html = await page.evaluate(body => body.innerHTML, bodyHandle);
+     * await bodyHandle.dispose();
+     * ```
+     *
+     * @param pageFunction - a function that is run within the page
+     * @param args - arguments to be passed to the pageFunction
+     *
+     * @returns the return value of `pageFunction`.
      */
-    export declare class Page extends EventEmitter {
+    evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
+    evaluateOnNewDocument(pageFunction: Function | string, ...args: unknown[]): Promise<void>;
+    setCacheEnabled(enabled?: boolean): Promise<void>;
+    screenshot(options?: ScreenshotOptions): Promise<Buffer | string | void>;
+    private _screenshotTask;
+    /**
+     * Generatees a PDF of the page with the `print` CSS media type.
+     * @remarks
+     *
+     * IMPORTANT: PDF generation is only supported in Chrome headless mode.
+     *
+     * To generate a PDF with the `screen` media type, call
+     * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
+     * calling `page.pdf()`.
+     *
+     * By default, `page.pdf()` generates a pdf with modified colors for printing.
+     * Use the
+     * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-print-color-adjust | `-webkit-print-color-adjust`}
+     * property to force rendering of exact colors.
+     *
+     *
+     * @param options - options for generating the PDF.
+     */
+    pdf(options?: PDFOptions): Promise<Buffer>;
+    title(): Promise<string>;
+    close(options?: {
+        runBeforeUnload?: boolean;
+    }): Promise<void>;
+    isClosed(): boolean;
+    get mouse(): Mouse;
+    click(selector: string, options?: {
+        delay?: number;
+        button?: MouseButton;
+        clickCount?: number;
+    }): Promise<void>;
+    focus(selector: string): Promise<void>;
+    hover(selector: string): Promise<void>;
+    select(selector: string, ...values: string[]): Promise<string[]>;
+    tap(selector: string): Promise<void>;
+    type(selector: string, text: string, options?: {
+        delay: number;
+    }): Promise<void>;
+    /**
+     * @remarks
+     *
+     * This method behaves differently depending on the first parameter. If it's a
+     * `string`, it will be treated as a `selector` or `xpath` (if the string
+     * starts with `//`). This method then is a shortcut for
+     * {@link Page.waitForSelector} or {@link Page.waitForXPath}.
+     *
+     * If the first argument is a function this method is a shortcut for
+     * {@link Page.waitForFunction}.
+     *
+     * If the first argument is a `number`, it's treated as a timeout in
+     * milliseconds and the method returns a promise which resolves after the
+     * timeout.
+     *
+     * @param selectorOrFunctionOrTimeout - a selector, predicate or timeout to
+     * wait for.
+     * @param options - optional waiting parameters.
+     * @param args - arguments to pass to `pageFunction`.
+     *
+     * @deprecated Don't use this method directly. Instead use the more explicit
+     * methods available: {@link Page.waitForSelector},
+     * {@link Page.waitForXPath}, {@link Page.waitForFunction} or
+     * {@link Page.waitForTimeout}.
+     */
+    waitFor(selectorOrFunctionOrTimeout: string | number | Function, options?: {
+        visible?: boolean;
+        hidden?: boolean;
+        timeout?: number;
+        polling?: string | number;
+    }, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
+    /**
+     * Causes your script to wait for the given number of milliseconds.
+     *
+     * @remarks
+     *
+     * It's generally recommended to not wait for a number of seconds, but instead
+     * use {@link Page.waitForSelector}, {@link Page.waitForXPath} or
+     * {@link Page.waitForFunction} to wait for exactly the conditions you want.
+     *
+     * @example
+     *
+     * Wait for 1 second:
+     *
+     * ```
+     * await page.waitForTimeout(1000);
+     * ```
+     *
+     * @param milliseconds - the number of milliseconds to wait.
+     */
+    waitForTimeout(milliseconds: number): Promise<void>;
+    waitForSelector(selector: string, options?: {
+        visible?: boolean;
+        hidden?: boolean;
+        timeout?: number;
+    }): Promise<ElementHandle | null>;
+    waitForXPath(xpath: string, options?: {
+        visible?: boolean;
+        hidden?: boolean;
+        timeout?: number;
+    }): Promise<ElementHandle | null>;
+    waitForFunction(pageFunction: Function | string, options?: {
+        timeout?: number;
+        polling?: string | number;
+    }, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
+}
+
+/**
+ * @internal
+ */
+export declare interface PageBinding {
+    name: string;
+    pptrFunction: Function;
+}
+
+/**
+ * All the events that a page instance may emit.
+ *
+ * @public
+ */
+export declare const enum PageEmittedEvents {
+    /** Emitted when the page closes. */
+    Close = "close",
+    /**
+     * Emitted when JavaScript within the page calls one of console API methods,
+     * e.g. `console.log` or `console.dir`. Also emitted if the page throws an
+     * error or a warning.
+     *
+     * @remarks
+     *
+     * A `console` event provides a {@link ConsoleMessage} representing the
+     * console message that was logged.
+     *
+     * @example
+     * An example of handling `console` event:
+     * ```js
+     * page.on('console', msg => {
+     *   for (let i = 0; i < msg.args().length; ++i)
+     *    console.log(`${i}: ${msg.args()[i]}`);
+     *  });
+     *  page.evaluate(() => console.log('hello', 5, {foo: 'bar'}));
+     * ```
+     */
+    Console = "console",
+    /**
+     * Emitted when a JavaScript dialog appears, such as `alert`, `prompt`,
+     * `confirm` or `beforeunload`. Puppeteer can respond to the dialog via
+     * {@link Dialog.accept} or {@link Dialog.dismiss}.
+     */
+    Dialog = "dialog",
+    /**
+     * Emitted when the JavaScript
+     * {@link https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded | DOMContentLoaded } event is dispatched.
+     */
+    DOMContentLoaded = "domcontentloaded",
+    /**
+     * Emitted when the page crashes. Will contain an `Error`.
+     */
+    Error = "error",
+    /** Emitted when a frame is attached. Will contain a {@link Frame}. */
+    FrameAttached = "frameattached",
+    /** Emitted when a frame is detached. Will contain a {@link Frame}. */
+    FrameDetached = "framedetached",
+    /** Emitted when a frame is navigated to a new URL. Will contain a {@link Frame}. */
+    FrameNavigated = "framenavigated",
+    /**
+     * Emitted when the JavaScript
+     * {@link https://developer.mozilla.org/en-US/docs/Web/Events/load | load}
+     * event is dispatched.
+     */
+    Load = "load",
+    /**
+     * Emitted when the JavaScript code makes a call to `console.timeStamp`. For
+     * the list of metrics see {@link Page.metrics | page.metrics}.
+     *
+     * @remarks
+     * Contains an object with two properties:
+     * - `title`: the title passed to `console.timeStamp`
+     * - `metrics`: objec containing metrics as key/value pairs. The values will
+     *   be `number`s.
+     */
+    Metrics = "metrics",
+    /**
+     * Emitted when an uncaught exception happens within the page.
+     * Contains an `Error`.
+     */
+    PageError = "pageerror",
+    /**
+     * Emitted when the page opens a new tab or window.
+     *
+     * Contains a {@link Page} corresponding to the popup window.
+     *
+     * @example
+     *
+     * ```js
+     * const [popup] = await Promise.all([
+     *   new Promise(resolve => page.once('popup', resolve)),
+     *   page.click('a[target=_blank]'),
+     * ]);
+     * ```
+     *
+     * ```js
+     * const [popup] = await Promise.all([
+     *   new Promise(resolve => page.once('popup', resolve)),
+     *   page.evaluate(() => window.open('https://example.com')),
+     * ]);
+     * ```
+     */
+    Popup = "popup",
+    /**
+     * Emitted when a page issues a request and contains a {@link HTTPRequest}.
+     *
+     * @remarks
+     * The object is readonly. See {@link Page.setRequestInterception} for intercepting
+     * and mutating requests.
+     */
+    Request = "request",
+    /**
+     * Emitted when a request ended up loading from cache. Contains a {@link HTTPRequest}.
+     *
+     * @remarks
+     * For certain requests, might contain undefined.
+     * {@link https://crbug.com/750469}
+     */
+    RequestServedFromCache = "requestservedfromcache",
+    /**
+     * Emitted when a request fails, for example by timing out.
+     *
+     * Contains a {@link HTTPRequest}.
+     *
+     * @remarks
+     *
+     * NOTE: HTTP Error responses, such as 404 or 503, are still successful
+     * responses from HTTP standpoint, so request will complete with
+     * `requestfinished` event and not with `requestfailed`.
+     */
+    RequestFailed = "requestfailed",
+    /**
+     * Emitted when a request finishes successfully. Contains a {@link HTTPRequest}.
+     */
+    RequestFinished = "requestfinished",
+    /**
+     * Emitted when a response is received. Contains a {@link HTTPResponse}.
+     */
+    Response = "response",
+    /**
+     * Emitted when a dedicated
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}
+     * is spawned by the page.
+     */
+    WorkerCreated = "workercreated",
+    /**
+     * Emitted when a dedicated
+     * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}
+     * is destroyed by the page.
+     */
+    WorkerDestroyed = "workerdestroyed"
+}
+
+/**
+ * Denotes the objects received by callback functions for page events.
+ *
+ * See {@link PageEmittedEvents} for more detail on the events and when they are
+ * emitted.
+ * @public
+ */
+export declare interface PageEventObject {
+    close: never;
+    console: ConsoleMessage;
+    dialog: Dialog;
+    domcontentloaded: never;
+    error: Error;
+    frameattached: Frame;
+    framedetached: Frame;
+    framenavigated: Frame;
+    load: never;
+    metrics: {
+        title: string;
+        metrics: Metrics;
+    };
+    pageerror: Error;
+    popup: Page;
+    request: HTTPRequest;
+    response: HTTPResponse;
+    requestfailed: HTTPRequest;
+    requestfinished: HTTPRequest;
+    requestservedfromcache: HTTPRequest;
+    workercreated: WebWorker;
+    workerdestroyed: WebWorker;
+}
+
+/**
+ * All the valid paper format types when printing a PDF.
+ *
+ * @remarks
+ *
+ * The sizes of each format are as follows:
+ * - `Letter`: 8.5in x 11in
+ *
+ * - `Legal`: 8.5in x 14in
+ *
+ * - `Tabloid`: 11in x 17in
+ *
+ * - `Ledger`: 17in x 11in
+ *
+ * - `A0`: 33.1in x 46.8in
+ *
+ * - `A1`: 23.4in x 33.1in
+ *
+ * - `A2`: 16.54in x 23.4in
+ *
+ * - `A3`: 11.7in x 16.54in
+ *
+ * - `A4`: 8.27in x 11.7in
+ *
+ * - `A5`: 5.83in x 8.27in
+ *
+ * - `A6`: 4.13in x 5.83in
+ *
+ * @public
+ */
+export declare type PaperFormat = 'letter' | 'legal' | 'tabloid' | 'ledger' | 'a0' | 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6';
+
+/**
+ * @internal
+ */
+export declare interface PaperFormatDimensions {
+    width: number;
+    height: number;
+}
+
+/**
+ * @internal
+ */
+export declare const paperFormats: Record<PaperFormat, PaperFormatDimensions>;
+
+/**
+ * Copyright 2020 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * @public
+ */
+export declare interface PDFMargin {
+    top?: string | number;
+    bottom?: string | number;
+    left?: string | number;
+    right?: string | number;
+}
+
+/**
+ * Valid options to configure PDF generation via {@link Page.pdf}.
+ * @public
+ */
+export declare interface PDFOptions {
+    /**
+     * Scales the rendering of the web page. Amount must be between `0.1` and `2`.
+     * @defaultValue 1
+     */
+    scale?: number;
+    /**
+     * Whether to show the header and footer.
+     * @defaultValue false
+     */
+    displayHeaderFooter?: boolean;
+    /**
+     * HTML template for the print header. Should be valid HTML with the following
+     * classes used to inject values into them:
+     * - `date` formatted print date
+     *
+     * - `title` document title
+     *
+     * - `url` document location
+     *
+     * - `pageNumber` current page number
+     *
+     * - `totalPages` total pages in the document
+     */
+    headerTemplate?: string;
+    /**
+     * HTML template for the print footer. Has the same constraints and support
+     * for special classes as {@link PDFOptions.headerTemplate}.
+     */
+    footerTemplate?: string;
+    /**
+     * Set to `true` to print background graphics.
+     * @defaultValue false
+     */
+    printBackground?: boolean;
+    /**
+     * Whether to print in landscape orientation.
+     * @defaultValue = false
+     */
+    landscape?: boolean;
+    /**
+     * Paper ranges to print, e.g. `1-5, 8, 11-13`.
+     * @defaultValue The empty string, which means all pages are printed.
+     */
+    pageRanges?: string;
+    /**
+     * @remarks
+     * If set, this takes priority over the `width` and `height` options.
+     * @defaultValue `letter`.
+     */
+    format?: PaperFormat;
+    /**
+     * Sets the width of paper. You can pass in a number or a string with a unit.
+     */
+    width?: string | number;
+    /**
+     * Sets the height of paper. You can pass in a number or a string with a unit.
+     */
+    height?: string | number;
+    /**
+     * Give any CSS `@page` size declared in the page priority over what is
+     * declared in the `width` or `height` or `format` option.
+     * @defaultValue `false`, which will scale the content to fit the paper size.
+     */
+    preferCSSPageSize?: boolean;
+    /**
+     * Set the PDF margins.
+     * @defaultValue no margins are set.
+     */
+    margin?: PDFMargin;
+    /**
+     * The path to save the file to.
+     *
+     * @remarks
+     *
+     * If the path is relative, it's resolved relative to the current working directory.
+     *
+     * @defaultValue the empty string, which means the PDF will not be written to disk.
+     */
+    path?: string;
+    /**
+     * Hides default white background and allows generating pdfs with transparency.
+     * @defaultValue false
+     */
+    omitBackground?: boolean;
+}
+
+/**
+ * @public
+ */
+export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'idle-detection' | 'midi-sysex';
+
+/**
+ * Supported platforms.
+ * @public
+ */
+export declare type Platform = 'linux' | 'mac' | 'win32' | 'win64';
+
+/**
+ * @public
+ */
+export declare type PredefinedNetworkConditions = {
+    [name: string]: NetworkConditions;
+};
+
+/**
+ * @public
+ */
+export declare interface PressOptions {
+    /**
+     * Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
+     */
+    delay?: number;
+    /**
+     * If specified, generates an input event with this text.
+     */
+    text?: string;
+}
+
+/**
+ * Copyright 2020 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * Supported products.
+ * @public
+ */
+export declare type Product = 'chrome' | 'firefox';
+
+/**
+ * Describes a launcher - a class that is able to create and launch a browser instance.
+ * @public
+ */
+export declare interface ProductLauncher {
+    launch(object: PuppeteerNodeLaunchOptions): any;
+    executablePath: () => string;
+    defaultArgs(object: BrowserLaunchArgumentOptions): any;
+    product: Product;
+}
+
+/**********************************************************************
+ * Auto-generated by protocol-dts-generator.ts, do not edit manually. *
+ **********************************************************************/
+
+/**
+ * The Chrome DevTools Protocol.
+ * @public
+ */
+export declare namespace Protocol {
+
+    export type integer = number
+
+    /**
+     * This domain is deprecated - use Runtime or Log instead.
+     */
+    export namespace Console {
+
+        export const enum ConsoleMessageSource {
+            XML = 'xml',
+            Javascript = 'javascript',
+            Network = 'network',
+            ConsoleAPI = 'console-api',
+            Storage = 'storage',
+            Appcache = 'appcache',
+            Rendering = 'rendering',
+            Security = 'security',
+            Other = 'other',
+            Deprecation = 'deprecation',
+            Worker = 'worker',
+        }
+
+        export const enum ConsoleMessageLevel {
+            Log = 'log',
+            Warning = 'warning',
+            Error = 'error',
+            Debug = 'debug',
+            Info = 'info',
+        }
+
         /**
-         * @internal
+         * Console message.
          */
-        static create(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue): Promise<Page>;
-        private _closed;
-        private _client;
-        private _target;
-        private _keyboard;
-        private _mouse;
-        private _timeoutSettings;
-        private _touchscreen;
-        private _accessibility;
-        private _frameManager;
-        private _emulationManager;
-        private _tracing;
-        private _pageBindings;
-        private _coverage;
-        private _javascriptEnabled;
-        private _viewport;
-        private _screenshotTaskQueue;
-        private _workers;
-        private _fileChooserInterceptors;
-        private _disconnectPromise?;
-        private _userDragInterceptionEnabled;
-        private _handlerMap;
-        /**
-         * @internal
-         */
-        constructor(client: CDPSession, target: Target, ignoreHTTPSErrors: boolean, screenshotTaskQueue: TaskQueue);
-        private _initialize;
-        private _onFileChooser;
-        /**
-         * @returns `true` if drag events are being intercepted, `false` otherwise.
-         */
-        isDragInterceptionEnabled(): boolean;
-        /**
-         * @returns `true` if the page has JavaScript enabled, `false` otherwise.
-         */
-        isJavaScriptEnabled(): boolean;
-        /**
-         * Listen to page events.
-         */
-        on<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
-        once<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
-        off<K extends keyof PageEventObject>(eventName: K, handler: (event: PageEventObject[K]) => void): EventEmitter;
-        /**
-         * This method is typically coupled with an action that triggers file
-         * choosing. The following example clicks a button that issues a file chooser
-         * and then responds with `/tmp/myfile.pdf` as if a user has selected this file.
-         *
-         * ```js
-         * const [fileChooser] = await Promise.all([
-         * page.waitForFileChooser(),
-         * page.click('#upload-file-button'),
-         * // some button that triggers file selection
-         * ]);
-         * await fileChooser.accept(['/tmp/myfile.pdf']);
-         * ```
-         *
-         * NOTE: This must be called before the file chooser is launched. It will not
-         * return a currently active file chooser.
-         * @param options - Optional waiting parameters
-         * @returns Resolves after a page requests a file picker.
-         * @remarks
-         * NOTE: In non-headless Chromium, this method results in the native file picker
-         * dialog `not showing up` for the user.
-         */
-        waitForFileChooser(options?: WaitTimeoutOptions): Promise<FileChooser>;
-        /**
-         * Sets the page's geolocation.
-         * @remarks
-         * NOTE: Consider using {@link BrowserContext.overridePermissions} to grant
-         * permissions for the page to read its geolocation.
-         * @example
-         * ```js
-         * await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
-         * ```
-         */
-        setGeolocation(options: GeolocationOptions): Promise<void>;
-        /**
-         * @returns A target this page was created from.
-         */
-        target(): Target;
-        /**
-         * Get the CDP session client the page belongs to.
-         * @internal
-         */
-        client(): CDPSession;
-        /**
-         * Get the browser the page belongs to.
-         */
-        browser(): Browser;
-        /**
-         * Get the browser context that the page belongs to.
-         */
-        browserContext(): BrowserContext;
-        private _onTargetCrashed;
-        private _onLogEntryAdded;
-        /**
-         * @returns The page's main frame.
-         * @remarks
-         * Page is guaranteed to have a main frame which persists during navigations.
-         */
-        mainFrame(): Frame;
-        get keyboard(): Keyboard;
-        get touchscreen(): Touchscreen;
-        get coverage(): Coverage;
-        get tracing(): Tracing;
-        get accessibility(): Accessibility;
-        /**
-         * @returns An array of all frames attached to the page.
-         */
-        frames(): Frame[];
-        /**
-         * @returns all of the dedicated
-         * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
-         * WebWorkers}
-         * associated with the page.
-         * @remarks
-         * NOTE: This does not contain ServiceWorkers
-         */
-        workers(): WebWorker[];
-        /**
-         * @param value - Whether to enable request interception.
-         *
-         * @remarks
-         * Activating request interception enables {@link HTTPRequest.abort},
-         * {@link HTTPRequest.continue} and {@link HTTPRequest.respond} methods.  This
-         * provides the capability to modify network requests that are made by a page.
-         *
-         * Once request interception is enabled, every request will stall unless it's
-         * continued, responded or aborted; or completed using the browser cache.
-         *
-         * @example
-         * An example of a naïve request interceptor that aborts all image requests:
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * (async () => {
-         *   const browser = await puppeteer.launch();
-         *   const page = await browser.newPage();
-         *   await page.setRequestInterception(true);
-         *   page.on('request', interceptedRequest => {
-         *     if (interceptedRequest.url().endsWith('.png') ||
-         *         interceptedRequest.url().endsWith('.jpg'))
-         *       interceptedRequest.abort();
-         *     else
-         *       interceptedRequest.continue();
-         *     });
-         *   await page.goto('https://example.com');
-         *   await browser.close();
-         * })();
-         * ```
-         * NOTE: Enabling request interception disables page caching.
-         */
-        setRequestInterception(value: boolean): Promise<void>;
-        /**
-         * @param enabled - Whether to enable drag interception.
-         *
-         * @remarks
-         * Activating drag interception enables the `Input.drag`,
-         * methods  This provides the capability to capture drag events emitted
-         * on the page, which can then be used to simulate drag-and-drop.
-         */
-        setDragInterception(enabled: boolean): Promise<void>;
-        /**
-         * @param enabled - When `true`, enables offline mode for the page.
-         * @remarks
-         * NOTE: while this method sets the network connection to offline, it does
-         * not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
-         * (#pageemulatenetworkconditionsnetworkconditions)
-         */
-        setOfflineMode(enabled: boolean): Promise<void>;
-        /**
-         * @param networkConditions - Passing `null` disables network condition emulation.
-         * @example
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const slow3G = puppeteer.networkConditions['Slow 3G'];
-         *
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * await page.emulateNetworkConditions(slow3G);
-         * await page.goto('https://www.google.com');
-         * // other actions...
-         * await browser.close();
-         * })();
-         * ```
-         * @remarks
-         * NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
-         * https://crbug.com/563644). To set the page offline, you can use
-         * [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
-         */
-        emulateNetworkConditions(networkConditions: NetworkConditions | null): Promise<void>;
-        /**
-         * This setting will change the default maximum navigation time for the
-         * following methods and related shortcuts:
-         *
-         * - {@link Page.goBack | page.goBack(options)}
-         *
-         * - {@link Page.goForward | page.goForward(options)}
-         *
-         * - {@link Page.goto | page.goto(url,options)}
-         *
-         * - {@link Page.reload | page.reload(options)}
-         *
-         * - {@link Page.setContent | page.setContent(html,options)}
-         *
-         * - {@link Page.waitForNavigation | page.waitForNavigation(options)}
-         * @param timeout - Maximum navigation time in milliseconds.
-         */
-        setDefaultNavigationTimeout(timeout: number): void;
-        /**
-         * @param timeout - Maximum time in milliseconds.
-         */
-        setDefaultTimeout(timeout: number): void;
-        /**
-         * Runs `document.querySelector` within the page. If no element matches the
-         * selector, the return value resolves to `null`.
-         *
-         * @remarks
-         * Shortcut for {@link Frame.$ | Page.mainFrame().$(selector) }.
-         *
-         * @param selector - A `selector` to query page for
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * to query page for.
-         */
-        $<T extends Element = Element>(selector: string): Promise<ElementHandle<T> | null>;
-        /**
-         * @remarks
-         *
-         * The only difference between {@link Page.evaluate | page.evaluate} and
-         * `page.evaluateHandle` is that `evaluateHandle` will return the value
-         * wrapped in an in-page object.
-         *
-         * If the function passed to `page.evaluteHandle` returns a Promise, the
-         * function will wait for the promise to resolve and return its value.
-         *
-         * You can pass a string instead of a function (although functions are
-         * recommended as they are easier to debug and use with TypeScript):
-         *
-         * @example
-         * ```
-         * const aHandle = await page.evaluateHandle('document')
-         * ```
-         *
-         * @example
-         * {@link JSHandle} instances can be passed as arguments to the `pageFunction`:
-         * ```
-         * const aHandle = await page.evaluateHandle(() => document.body);
-         * const resultHandle = await page.evaluateHandle(body => body.innerHTML, aHandle);
-         * console.log(await resultHandle.jsonValue());
-         * await resultHandle.dispose();
-         * ```
-         *
-         * Most of the time this function returns a {@link JSHandle},
-         * but if `pageFunction` returns a reference to an element,
-         * you instead get an {@link ElementHandle} back:
-         *
-         * @example
-         * ```
-         * const button = await page.evaluateHandle(() => document.querySelector('button'));
-         * // can call `click` because `button` is an `ElementHandle`
-         * await button.click();
-         * ```
-         *
-         * The TypeScript definitions assume that `evaluateHandle` returns
-         *  a `JSHandle`, but if you know it's going to return an
-         * `ElementHandle`, pass it as the generic argument:
-         *
-         * ```
-         * const button = await page.evaluateHandle<ElementHandle>(...);
-         * ```
-         *
-         * @param pageFunction - a function that is run within the page
-         * @param args - arguments to be passed to the pageFunction
-         */
-        evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandlerType>;
-        /**
-         * This method iterates the JavaScript heap and finds all objects with the
-         * given prototype.
-         *
-         * @remarks
-         * Shortcut for
-         * {@link ExecutionContext.queryObjects |
-         * page.mainFrame().executionContext().queryObjects(prototypeHandle)}.
-         *
-         * @example
-         *
-         * ```js
-         * // Create a Map object
-         * await page.evaluate(() => window.map = new Map());
-         * // Get a handle to the Map object prototype
-         * const mapPrototype = await page.evaluateHandle(() => Map.prototype);
-         * // Query all map instances into an array
-         * const mapInstances = await page.queryObjects(mapPrototype);
-         * // Count amount of map objects in heap
-         * const count = await page.evaluate(maps => maps.length, mapInstances);
-         * await mapInstances.dispose();
-         * await mapPrototype.dispose();
-         * ```
-         * @param prototypeHandle - a handle to the object prototype.
-         * @returns Promise which resolves to a handle to an array of objects with
-         * this prototype.
-         */
-        queryObjects(prototypeHandle: JSHandle): Promise<JSHandle>;
-        /**
-         * This method runs `document.querySelector` within the page and passes the
-         * result as the first argument to the `pageFunction`.
-         *
-         * @remarks
-         *
-         * If no element is found matching `selector`, the method will throw an error.
-         *
-         * If `pageFunction` returns a promise `$eval` will wait for the promise to
-         * resolve and then return its value.
-         *
-         * @example
-         *
-         * ```
-         * const searchValue = await page.$eval('#search', el => el.value);
-         * const preloadHref = await page.$eval('link[rel=preload]', el => el.href);
-         * const html = await page.$eval('.main-container', el => el.outerHTML);
-         * ```
-         *
-         * If you are using TypeScript, you may have to provide an explicit type to the
-         * first argument of the `pageFunction`.
-         * By default it is typed as `Element`, but you may need to provide a more
-         * specific sub-type:
-         *
-         * @example
-         *
-         * ```
-         * // if you don't provide HTMLInputElement here, TS will error
-         * // as `value` is not on `Element`
-         * const searchValue = await page.$eval('#search', (el: HTMLInputElement) => el.value);
-         * ```
-         *
-         * The compiler should be able to infer the return type
-         * from the `pageFunction` you provide. If it is unable to, you can use the generic
-         * type to tell the compiler what return type you expect from `$eval`:
-         *
-         * @example
-         *
-         * ```
-         * // The compiler can infer the return type in this case, but if it can't
-         * // or if you want to be more explicit, provide it as the generic type.
-         * const searchValue = await page.$eval<string>(
-         *  '#search', (el: HTMLInputElement) => el.value
-         * );
-         * ```
-         *
-         * @param selector - the
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * to query for
-         * @param pageFunction - the function to be evaluated in the page context.
-         * Will be passed the result of `document.querySelector(selector)` as its
-         * first argument.
-         * @param args - any additional arguments to pass through to `pageFunction`.
-         *
-         * @returns The result of calling `pageFunction`. If it returns an element it
-         * is wrapped in an {@link ElementHandle}, else the raw value itself is
-         * returned.
-         */
-        $eval<ReturnType>(selector: string, pageFunction: (element: Element, ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
-        /**
-         * This method runs `Array.from(document.querySelectorAll(selector))` within
-         * the page and passes the result as the first argument to the `pageFunction`.
-         *
-         * @remarks
-         *
-         * If `pageFunction` returns a promise `$$eval` will wait for the promise to
-         * resolve and then return its value.
-         *
-         * @example
-         *
-         * ```
-         * // get the amount of divs on the page
-         * const divCount = await page.$$eval('div', divs => divs.length);
-         *
-         * // get the text content of all the `.options` elements:
-         * const options = await page.$$eval('div > span.options', options => {
-         *   return options.map(option => option.textContent)
-         * });
-         * ```
-         *
-         * If you are using TypeScript, you may have to provide an explicit type to the
-         * first argument of the `pageFunction`.
-         * By default it is typed as `Element[]`, but you may need to provide a more
-         * specific sub-type:
-         *
-         * @example
-         *
-         * ```
-         * // if you don't provide HTMLInputElement here, TS will error
-         * // as `value` is not on `Element`
-         * await page.$$eval('input', (elements: HTMLInputElement[]) => {
-         *   return elements.map(e => e.value);
-         * });
-         * ```
-         *
-         * The compiler should be able to infer the return type
-         * from the `pageFunction` you provide. If it is unable to, you can use the generic
-         * type to tell the compiler what return type you expect from `$$eval`:
-         *
-         * @example
-         *
-         * ```
-         * // The compiler can infer the return type in this case, but if it can't
-         * // or if you want to be more explicit, provide it as the generic type.
-         * const allInputValues = await page.$$eval<string[]>(
-         *  'input', (elements: HTMLInputElement[]) => elements.map(e => e.textContent)
-         * );
-         * ```
-         *
-         * @param selector - the
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * to query for
-         * @param pageFunction - the function to be evaluated in the page context. Will
-         * be passed the result of `Array.from(document.querySelectorAll(selector))`
-         * as its first argument.
-         * @param args - any additional arguments to pass through to `pageFunction`.
-         *
-         * @returns The result of calling `pageFunction`. If it returns an element it
-         * is wrapped in an {@link ElementHandle}, else the raw value itself is
-         * returned.
-         */
-        $$eval<ReturnType>(selector: string, pageFunction: (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;
-        /**
-         * The method runs `document.querySelectorAll` within the page. If no elements
-         * match the selector, the return value resolves to `[]`.
-         * @remarks
-         * Shortcut for {@link Frame.$$ | Page.mainFrame().$$(selector) }.
-         * @param selector - A `selector` to query page for
-         */
-        $$<T extends Element = Element>(selector: string): Promise<Array<ElementHandle<T>>>;
-        /**
-         * The method evaluates the XPath expression relative to the page document as
-         * its context node. If there are no such elements, the method resolves to an
-         * empty array.
-         * @remarks
-         * Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
-         * @param expression - Expression to evaluate
-         */
-        $x(expression: string): Promise<ElementHandle[]>;
-        /**
-         * If no URLs are specified, this method returns cookies for the current page
-         * URL. If URLs are specified, only cookies for those URLs are returned.
-         */
-        cookies(...urls: string[]): Promise<Protocol.Network.Cookie[]>;
-        deleteCookie(...cookies: Protocol.Network.DeleteCookiesRequest[]): Promise<void>;
-        /**
-         * @example
-         * ```js
-         * await page.setCookie(cookieObject1, cookieObject2);
-         * ```
-         */
-        setCookie(...cookies: Protocol.Network.CookieParam[]): Promise<void>;
-        /**
-         * Adds a `<script>` tag into the page with the desired URL or content.
-         * @remarks
-         * Shortcut for {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options) }.
-         * @returns Promise which resolves to the added tag when the script's onload fires or
-         * when the script content was injected into frame.
-         */
-        addScriptTag(options: {
+        export interface ConsoleMessage {
+            /**
+             * Message source. (ConsoleMessageSource enum)
+             */
+            source: ('xml' | 'javascript' | 'network' | 'console-api' | 'storage' | 'appcache' | 'rendering' | 'security' | 'other' | 'deprecation' | 'worker');
+            /**
+             * Message severity. (ConsoleMessageLevel enum)
+             */
+            level: ('log' | 'warning' | 'error' | 'debug' | 'info');
+            /**
+             * Message text.
+             */
+            text: string;
+            /**
+             * URL of the message origin.
+             */
             url?: string;
-            path?: string;
-            content?: string;
-            type?: string;
-            id?: string;
-        }): Promise<ElementHandle>;
+            /**
+             * Line number in the resource that generated this message (1-based).
+             */
+            line?: integer;
+            /**
+             * Column number in the resource that generated this message (1-based).
+             */
+            column?: integer;
+        }
+
         /**
-         * Adds a `<link rel="stylesheet">` tag into the page with the desired URL or a
-         * `<style type="text/css">` tag with the content.
-         * @returns Promise which resolves to the added tag when the stylesheet's
-         * onload fires or when the CSS content was injected into frame.
+         * Issued when new console message is added.
          */
-        addStyleTag(options: {
+        export interface MessageAddedEvent {
+            /**
+             * Console message that has been added.
+             */
+            message: ConsoleMessage;
+        }
+    }
+
+    /**
+     * Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing
+     * breakpoints, stepping through execution, exploring stack traces, etc.
+     */
+    export namespace Debugger {
+
+        /**
+         * Breakpoint identifier.
+         */
+        export type BreakpointId = string;
+
+        /**
+         * Call frame identifier.
+         */
+        export type CallFrameId = string;
+
+        /**
+         * Location in the source code.
+         */
+        export interface Location {
+            /**
+             * Script identifier as reported in the `Debugger.scriptParsed`.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * Line number in the script (0-based).
+             */
+            lineNumber: integer;
+            /**
+             * Column number in the script (0-based).
+             */
+            columnNumber?: integer;
+        }
+
+        /**
+         * Location in the source code.
+         */
+        export interface ScriptPosition {
+            lineNumber: integer;
+            columnNumber: integer;
+        }
+
+        /**
+         * Location range within one script.
+         */
+        export interface LocationRange {
+            scriptId: Runtime.ScriptId;
+            start: ScriptPosition;
+            end: ScriptPosition;
+        }
+
+        /**
+         * JavaScript call frame. Array of call frames form the call stack.
+         */
+        export interface CallFrame {
+            /**
+             * Call frame identifier. This identifier is only valid while the virtual machine is paused.
+             */
+            callFrameId: CallFrameId;
+            /**
+             * Name of the JavaScript function called on this call frame.
+             */
+            functionName: string;
+            /**
+             * Location in the source code.
+             */
+            functionLocation?: Location;
+            /**
+             * Location in the source code.
+             */
+            location: Location;
+            /**
+             * JavaScript script name or url.
+             */
+            url: string;
+            /**
+             * Scope chain for this call frame.
+             */
+            scopeChain: Scope[];
+            /**
+             * `this` object for this call frame.
+             */
+            this: Runtime.RemoteObject;
+            /**
+             * The value being returned, if the function is at return point.
+             */
+            returnValue?: Runtime.RemoteObject;
+        }
+
+        export const enum ScopeType {
+            Global = 'global',
+            Local = 'local',
+            With = 'with',
+            Closure = 'closure',
+            Catch = 'catch',
+            Block = 'block',
+            Script = 'script',
+            Eval = 'eval',
+            Module = 'module',
+            WasmExpressionStack = 'wasm-expression-stack',
+        }
+
+        /**
+         * Scope description.
+         */
+        export interface Scope {
+            /**
+             * Scope type. (ScopeType enum)
+             */
+            type: ('global' | 'local' | 'with' | 'closure' | 'catch' | 'block' | 'script' | 'eval' | 'module' | 'wasm-expression-stack');
+            /**
+             * Object representing the scope. For `global` and `with` scopes it represents the actual
+             * object; for the rest of the scopes, it is artificial transient object enumerating scope
+             * variables as its properties.
+             */
+            object: Runtime.RemoteObject;
+            name?: string;
+            /**
+             * Location in the source code where scope starts
+             */
+            startLocation?: Location;
+            /**
+             * Location in the source code where scope ends
+             */
+            endLocation?: Location;
+        }
+
+        /**
+         * Search match for resource.
+         */
+        export interface SearchMatch {
+            /**
+             * Line number in resource content.
+             */
+            lineNumber: number;
+            /**
+             * Line with match content.
+             */
+            lineContent: string;
+        }
+
+        export const enum BreakLocationType {
+            DebuggerStatement = 'debuggerStatement',
+            Call = 'call',
+            Return = 'return',
+        }
+
+        export interface BreakLocation {
+            /**
+             * Script identifier as reported in the `Debugger.scriptParsed`.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * Line number in the script (0-based).
+             */
+            lineNumber: integer;
+            /**
+             * Column number in the script (0-based).
+             */
+            columnNumber?: integer;
+            /**
+             *  (BreakLocationType enum)
+             */
+            type?: ('debuggerStatement' | 'call' | 'return');
+        }
+
+        /**
+         * Enum of possible script languages.
+         */
+        export type ScriptLanguage = ('JavaScript' | 'WebAssembly');
+
+        export const enum DebugSymbolsType {
+            None = 'None',
+            SourceMap = 'SourceMap',
+            EmbeddedDWARF = 'EmbeddedDWARF',
+            ExternalDWARF = 'ExternalDWARF',
+        }
+
+        /**
+         * Debug symbols available for a wasm script.
+         */
+        export interface DebugSymbols {
+            /**
+             * Type of the debug symbols. (DebugSymbolsType enum)
+             */
+            type: ('None' | 'SourceMap' | 'EmbeddedDWARF' | 'ExternalDWARF');
+            /**
+             * URL of the external symbol source.
+             */
+            externalURL?: string;
+        }
+
+        export const enum ContinueToLocationRequestTargetCallFrames {
+            Any = 'any',
+            Current = 'current',
+        }
+
+        export interface ContinueToLocationRequest {
+            /**
+             * Location to continue to.
+             */
+            location: Location;
+            /**
+             *  (ContinueToLocationRequestTargetCallFrames enum)
+             */
+            targetCallFrames?: ('any' | 'current');
+        }
+
+        export interface EnableRequest {
+            /**
+             * The maximum size in bytes of collected scripts (not referenced by other heap objects)
+             * the debugger can hold. Puts no limit if paramter is omitted.
+             */
+            maxScriptsCacheSize?: number;
+        }
+
+        export interface EnableResponse {
+            /**
+             * Unique identifier of the debugger.
+             */
+            debuggerId: Runtime.UniqueDebuggerId;
+        }
+
+        export interface EvaluateOnCallFrameRequest {
+            /**
+             * Call frame identifier to evaluate on.
+             */
+            callFrameId: CallFrameId;
+            /**
+             * Expression to evaluate.
+             */
+            expression: string;
+            /**
+             * String object group name to put result into (allows rapid releasing resulting object handles
+             * using `releaseObjectGroup`).
+             */
+            objectGroup?: string;
+            /**
+             * Specifies whether command line API should be available to the evaluated expression, defaults
+             * to false.
+             */
+            includeCommandLineAPI?: boolean;
+            /**
+             * In silent mode exceptions thrown during evaluation are not reported and do not pause
+             * execution. Overrides `setPauseOnException` state.
+             */
+            silent?: boolean;
+            /**
+             * Whether the result is expected to be a JSON object that should be sent by value.
+             */
+            returnByValue?: boolean;
+            /**
+             * Whether preview should be generated for the result.
+             */
+            generatePreview?: boolean;
+            /**
+             * Whether to throw an exception if side effect cannot be ruled out during evaluation.
+             */
+            throwOnSideEffect?: boolean;
+            /**
+             * Terminate execution after timing out (number of milliseconds).
+             */
+            timeout?: Runtime.TimeDelta;
+        }
+
+        export interface EvaluateOnCallFrameResponse {
+            /**
+             * Object wrapper for the evaluation result.
+             */
+            result: Runtime.RemoteObject;
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: Runtime.ExceptionDetails;
+        }
+
+        export interface GetPossibleBreakpointsRequest {
+            /**
+             * Start of range to search possible breakpoint locations in.
+             */
+            start: Location;
+            /**
+             * End of range to search possible breakpoint locations in (excluding). When not specified, end
+             * of scripts is used as end of range.
+             */
+            end?: Location;
+            /**
+             * Only consider locations which are in the same (non-nested) function as start.
+             */
+            restrictToFunction?: boolean;
+        }
+
+        export interface GetPossibleBreakpointsResponse {
+            /**
+             * List of the possible breakpoint locations.
+             */
+            locations: BreakLocation[];
+        }
+
+        export interface GetScriptSourceRequest {
+            /**
+             * Id of the script to get source for.
+             */
+            scriptId: Runtime.ScriptId;
+        }
+
+        export interface GetScriptSourceResponse {
+            /**
+             * Script source (empty in case of Wasm bytecode).
+             */
+            scriptSource: string;
+            /**
+             * Wasm bytecode. (Encoded as a base64 string when passed over JSON)
+             */
+            bytecode?: string;
+        }
+
+        export interface GetWasmBytecodeRequest {
+            /**
+             * Id of the Wasm script to get source for.
+             */
+            scriptId: Runtime.ScriptId;
+        }
+
+        export interface GetWasmBytecodeResponse {
+            /**
+             * Script source. (Encoded as a base64 string when passed over JSON)
+             */
+            bytecode: string;
+        }
+
+        export interface GetStackTraceRequest {
+            stackTraceId: Runtime.StackTraceId;
+        }
+
+        export interface GetStackTraceResponse {
+            stackTrace: Runtime.StackTrace;
+        }
+
+        export interface PauseOnAsyncCallRequest {
+            /**
+             * Debugger will pause when async call with given stack trace is started.
+             */
+            parentStackTraceId: Runtime.StackTraceId;
+        }
+
+        export interface RemoveBreakpointRequest {
+            breakpointId: BreakpointId;
+        }
+
+        export interface RestartFrameRequest {
+            /**
+             * Call frame identifier to evaluate on.
+             */
+            callFrameId: CallFrameId;
+        }
+
+        export interface RestartFrameResponse {
+            /**
+             * New stack trace.
+             */
+            callFrames: CallFrame[];
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTrace?: Runtime.StackTrace;
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTraceId?: Runtime.StackTraceId;
+        }
+
+        export interface ResumeRequest {
+            /**
+             * Set to true to terminate execution upon resuming execution. In contrast
+             * to Runtime.terminateExecution, this will allows to execute further
+             * JavaScript (i.e. via evaluation) until execution of the paused code
+             * is actually resumed, at which point termination is triggered.
+             * If execution is currently not paused, this parameter has no effect.
+             */
+            terminateOnResume?: boolean;
+        }
+
+        export interface SearchInContentRequest {
+            /**
+             * Id of the script to search in.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * String to search for.
+             */
+            query: string;
+            /**
+             * If true, search is case sensitive.
+             */
+            caseSensitive?: boolean;
+            /**
+             * If true, treats string parameter as regex.
+             */
+            isRegex?: boolean;
+        }
+
+        export interface SearchInContentResponse {
+            /**
+             * List of search matches.
+             */
+            result: SearchMatch[];
+        }
+
+        export interface SetAsyncCallStackDepthRequest {
+            /**
+             * Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async
+             * call stacks (default).
+             */
+            maxDepth: integer;
+        }
+
+        export interface SetBlackboxPatternsRequest {
+            /**
+             * Array of regexps that will be used to check script url for blackbox state.
+             */
+            patterns: string[];
+        }
+
+        export interface SetBlackboxedRangesRequest {
+            /**
+             * Id of the script.
+             */
+            scriptId: Runtime.ScriptId;
+            positions: ScriptPosition[];
+        }
+
+        export interface SetBreakpointRequest {
+            /**
+             * Location to set breakpoint in.
+             */
+            location: Location;
+            /**
+             * Expression to use as a breakpoint condition. When specified, debugger will only stop on the
+             * breakpoint if this expression evaluates to true.
+             */
+            condition?: string;
+        }
+
+        export interface SetBreakpointResponse {
+            /**
+             * Id of the created breakpoint for further reference.
+             */
+            breakpointId: BreakpointId;
+            /**
+             * Location this breakpoint resolved into.
+             */
+            actualLocation: Location;
+        }
+
+        export const enum SetInstrumentationBreakpointRequestInstrumentation {
+            BeforeScriptExecution = 'beforeScriptExecution',
+            BeforeScriptWithSourceMapExecution = 'beforeScriptWithSourceMapExecution',
+        }
+
+        export interface SetInstrumentationBreakpointRequest {
+            /**
+             * Instrumentation name. (SetInstrumentationBreakpointRequestInstrumentation enum)
+             */
+            instrumentation: ('beforeScriptExecution' | 'beforeScriptWithSourceMapExecution');
+        }
+
+        export interface SetInstrumentationBreakpointResponse {
+            /**
+             * Id of the created breakpoint for further reference.
+             */
+            breakpointId: BreakpointId;
+        }
+
+        export interface SetBreakpointByUrlRequest {
+            /**
+             * Line number to set breakpoint at.
+             */
+            lineNumber: integer;
+            /**
+             * URL of the resources to set breakpoint on.
+             */
             url?: string;
+            /**
+             * Regex pattern for the URLs of the resources to set breakpoints on. Either `url` or
+             * `urlRegex` must be specified.
+             */
+            urlRegex?: string;
+            /**
+             * Script hash of the resources to set breakpoint on.
+             */
+            scriptHash?: string;
+            /**
+             * Offset in the line to set breakpoint at.
+             */
+            columnNumber?: integer;
+            /**
+             * Expression to use as a breakpoint condition. When specified, debugger will only stop on the
+             * breakpoint if this expression evaluates to true.
+             */
+            condition?: string;
+        }
+
+        export interface SetBreakpointByUrlResponse {
+            /**
+             * Id of the created breakpoint for further reference.
+             */
+            breakpointId: BreakpointId;
+            /**
+             * List of the locations this breakpoint resolved into upon addition.
+             */
+            locations: Location[];
+        }
+
+        export interface SetBreakpointOnFunctionCallRequest {
+            /**
+             * Function object id.
+             */
+            objectId: Runtime.RemoteObjectId;
+            /**
+             * Expression to use as a breakpoint condition. When specified, debugger will
+             * stop on the breakpoint if this expression evaluates to true.
+             */
+            condition?: string;
+        }
+
+        export interface SetBreakpointOnFunctionCallResponse {
+            /**
+             * Id of the created breakpoint for further reference.
+             */
+            breakpointId: BreakpointId;
+        }
+
+        export interface SetBreakpointsActiveRequest {
+            /**
+             * New value for breakpoints active state.
+             */
+            active: boolean;
+        }
+
+        export const enum SetPauseOnExceptionsRequestState {
+            None = 'none',
+            Uncaught = 'uncaught',
+            All = 'all',
+        }
+
+        export interface SetPauseOnExceptionsRequest {
+            /**
+             * Pause on exceptions mode. (SetPauseOnExceptionsRequestState enum)
+             */
+            state: ('none' | 'uncaught' | 'all');
+        }
+
+        export interface SetReturnValueRequest {
+            /**
+             * New return value.
+             */
+            newValue: Runtime.CallArgument;
+        }
+
+        export interface SetScriptSourceRequest {
+            /**
+             * Id of the script to edit.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * New content of the script.
+             */
+            scriptSource: string;
+            /**
+             * If true the change will not actually be applied. Dry run may be used to get result
+             * description without actually modifying the code.
+             */
+            dryRun?: boolean;
+        }
+
+        export interface SetScriptSourceResponse {
+            /**
+             * New stack trace in case editing has happened while VM was stopped.
+             */
+            callFrames?: CallFrame[];
+            /**
+             * Whether current call stack  was modified after applying the changes.
+             */
+            stackChanged?: boolean;
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTrace?: Runtime.StackTrace;
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTraceId?: Runtime.StackTraceId;
+            /**
+             * Exception details if any.
+             */
+            exceptionDetails?: Runtime.ExceptionDetails;
+        }
+
+        export interface SetSkipAllPausesRequest {
+            /**
+             * New value for skip pauses state.
+             */
+            skip: boolean;
+        }
+
+        export interface SetVariableValueRequest {
+            /**
+             * 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch'
+             * scope types are allowed. Other scopes could be manipulated manually.
+             */
+            scopeNumber: integer;
+            /**
+             * Variable name.
+             */
+            variableName: string;
+            /**
+             * New variable value.
+             */
+            newValue: Runtime.CallArgument;
+            /**
+             * Id of callframe that holds variable.
+             */
+            callFrameId: CallFrameId;
+        }
+
+        export interface StepIntoRequest {
+            /**
+             * Debugger will pause on the execution of the first async task which was scheduled
+             * before next pause.
+             */
+            breakOnAsyncCall?: boolean;
+            /**
+             * The skipList specifies location ranges that should be skipped on step into.
+             */
+            skipList?: LocationRange[];
+        }
+
+        export interface StepOverRequest {
+            /**
+             * The skipList specifies location ranges that should be skipped on step over.
+             */
+            skipList?: LocationRange[];
+        }
+
+        /**
+         * Fired when breakpoint is resolved to an actual script and location.
+         */
+        export interface BreakpointResolvedEvent {
+            /**
+             * Breakpoint unique identifier.
+             */
+            breakpointId: BreakpointId;
+            /**
+             * Actual breakpoint location.
+             */
+            location: Location;
+        }
+
+        export const enum PausedEventReason {
+            Ambiguous = 'ambiguous',
+            Assert = 'assert',
+            CSPViolation = 'CSPViolation',
+            DebugCommand = 'debugCommand',
+            DOM = 'DOM',
+            EventListener = 'EventListener',
+            Exception = 'exception',
+            Instrumentation = 'instrumentation',
+            OOM = 'OOM',
+            Other = 'other',
+            PromiseRejection = 'promiseRejection',
+            XHR = 'XHR',
+        }
+
+        /**
+         * Fired when the virtual machine stopped on breakpoint or exception or any other stop criteria.
+         */
+        export interface PausedEvent {
+            /**
+             * Call stack the virtual machine stopped on.
+             */
+            callFrames: CallFrame[];
+            /**
+             * Pause reason. (PausedEventReason enum)
+             */
+            reason: ('ambiguous' | 'assert' | 'CSPViolation' | 'debugCommand' | 'DOM' | 'EventListener' | 'exception' | 'instrumentation' | 'OOM' | 'other' | 'promiseRejection' | 'XHR');
+            /**
+             * Object containing break-specific auxiliary properties.
+             */
+            data?: any;
+            /**
+             * Hit breakpoints IDs
+             */
+            hitBreakpoints?: string[];
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTrace?: Runtime.StackTrace;
+            /**
+             * Async stack trace, if any.
+             */
+            asyncStackTraceId?: Runtime.StackTraceId;
+            /**
+             * Never present, will be removed.
+             */
+            asyncCallStackTraceId?: Runtime.StackTraceId;
+        }
+
+        /**
+         * Fired when virtual machine fails to parse the script.
+         */
+        export interface ScriptFailedToParseEvent {
+            /**
+             * Identifier of the script parsed.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * URL or name of the script parsed (if any).
+             */
+            url: string;
+            /**
+             * Line offset of the script within the resource with given URL (for script tags).
+             */
+            startLine: integer;
+            /**
+             * Column offset of the script within the resource with given URL.
+             */
+            startColumn: integer;
+            /**
+             * Last line of the script.
+             */
+            endLine: integer;
+            /**
+             * Length of the last line of the script.
+             */
+            endColumn: integer;
+            /**
+             * Specifies script creation context.
+             */
+            executionContextId: Runtime.ExecutionContextId;
+            /**
+             * Content hash of the script.
+             */
+            hash: string;
+            /**
+             * Embedder-specific auxiliary data.
+             */
+            executionContextAuxData?: any;
+            /**
+             * URL of source map associated with script (if any).
+             */
+            sourceMapURL?: string;
+            /**
+             * True, if this script has sourceURL.
+             */
+            hasSourceURL?: boolean;
+            /**
+             * True, if this script is ES6 module.
+             */
+            isModule?: boolean;
+            /**
+             * This script length.
+             */
+            length?: integer;
+            /**
+             * JavaScript top stack frame of where the script parsed event was triggered if available.
+             */
+            stackTrace?: Runtime.StackTrace;
+            /**
+             * If the scriptLanguage is WebAssembly, the code section offset in the module.
+             */
+            codeOffset?: integer;
+            /**
+             * The language of the script.
+             */
+            scriptLanguage?: Debugger.ScriptLanguage;
+            /**
+             * The name the embedder supplied for this script.
+             */
+            embedderName?: string;
+        }
+
+        /**
+         * Fired when virtual machine parses script. This event is also fired for all known and uncollected
+         * scripts upon enabling debugger.
+         */
+        export interface ScriptParsedEvent {
+            /**
+             * Identifier of the script parsed.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * URL or name of the script parsed (if any).
+             */
+            url: string;
+            /**
+             * Line offset of the script within the resource with given URL (for script tags).
+             */
+            startLine: integer;
+            /**
+             * Column offset of the script within the resource with given URL.
+             */
+            startColumn: integer;
+            /**
+             * Last line of the script.
+             */
+            endLine: integer;
+            /**
+             * Length of the last line of the script.
+             */
+            endColumn: integer;
+            /**
+             * Specifies script creation context.
+             */
+            executionContextId: Runtime.ExecutionContextId;
+            /**
+             * Content hash of the script.
+             */
+            hash: string;
+            /**
+             * Embedder-specific auxiliary data.
+             */
+            executionContextAuxData?: any;
+            /**
+             * True, if this script is generated as a result of the live edit operation.
+             */
+            isLiveEdit?: boolean;
+            /**
+             * URL of source map associated with script (if any).
+             */
+            sourceMapURL?: string;
+            /**
+             * True, if this script has sourceURL.
+             */
+            hasSourceURL?: boolean;
+            /**
+             * True, if this script is ES6 module.
+             */
+            isModule?: boolean;
+            /**
+             * This script length.
+             */
+            length?: integer;
+            /**
+             * JavaScript top stack frame of where the script parsed event was triggered if available.
+             */
+            stackTrace?: Runtime.StackTrace;
+            /**
+             * If the scriptLanguage is WebAssembly, the code section offset in the module.
+             */
+            codeOffset?: integer;
+            /**
+             * The language of the script.
+             */
+            scriptLanguage?: Debugger.ScriptLanguage;
+            /**
+             * If the scriptLanguage is WebASsembly, the source of debug symbols for the module.
+             */
+            debugSymbols?: Debugger.DebugSymbols;
+            /**
+             * The name the embedder supplied for this script.
+             */
+            embedderName?: string;
+        }
+    }
+
+    export namespace HeapProfiler {
+
+        /**
+         * Heap snapshot object id.
+         */
+        export type HeapSnapshotObjectId = string;
+
+        /**
+         * Sampling Heap Profile node. Holds callsite information, allocation statistics and child nodes.
+         */
+        export interface SamplingHeapProfileNode {
+            /**
+             * Function location.
+             */
+            callFrame: Runtime.CallFrame;
+            /**
+             * Allocations size in bytes for the node excluding children.
+             */
+            selfSize: number;
+            /**
+             * Node id. Ids are unique across all profiles collected between startSampling and stopSampling.
+             */
+            id: integer;
+            /**
+             * Child nodes.
+             */
+            children: SamplingHeapProfileNode[];
+        }
+
+        /**
+         * A single sample from a sampling profile.
+         */
+        export interface SamplingHeapProfileSample {
+            /**
+             * Allocation size in bytes attributed to the sample.
+             */
+            size: number;
+            /**
+             * Id of the corresponding profile tree node.
+             */
+            nodeId: integer;
+            /**
+             * Time-ordered sample ordinal number. It is unique across all profiles retrieved
+             * between startSampling and stopSampling.
+             */
+            ordinal: number;
+        }
+
+        /**
+         * Sampling profile.
+         */
+        export interface SamplingHeapProfile {
+            head: SamplingHeapProfileNode;
+            samples: SamplingHeapProfileSample[];
+        }
+
+        export interface AddInspectedHeapObjectRequest {
+            /**
+             * Heap snapshot object id to be accessible by means of $x command line API.
+             */
+            heapObjectId: HeapSnapshotObjectId;
+        }
+
+        export interface GetHeapObjectIdRequest {
+            /**
+             * Identifier of the object to get heap object id for.
+             */
+            objectId: Runtime.RemoteObjectId;
+        }
+
+        export interface GetHeapObjectIdResponse {
+            /**
+             * Id of the heap snapshot object corresponding to the passed remote object id.
+             */
+            heapSnapshotObjectId: HeapSnapshotObjectId;
+        }
+
+        export interface GetObjectByHeapObjectIdRequest {
+            objectId: HeapSnapshotObjectId;
+            /**
+             * Symbolic group name that can be used to release multiple objects.
+             */
+            objectGroup?: string;
+        }
+
+        export interface GetObjectByHeapObjectIdResponse {
+            /**
+             * Evaluation result.
+             */
+            result: Runtime.RemoteObject;
+        }
+
+        export interface GetSamplingProfileResponse {
+            /**
+             * Return the sampling profile being collected.
+             */
+            profile: SamplingHeapProfile;
+        }
+
+        export interface StartSamplingRequest {
+            /**
+             * Average sample interval in bytes. Poisson distribution is used for the intervals. The
+             * default value is 32768 bytes.
+             */
+            samplingInterval?: number;
+        }
+
+        export interface StartTrackingHeapObjectsRequest {
+            trackAllocations?: boolean;
+        }
+
+        export interface StopSamplingResponse {
+            /**
+             * Recorded sampling heap profile.
+             */
+            profile: SamplingHeapProfile;
+        }
+
+        export interface StopTrackingHeapObjectsRequest {
+            /**
+             * If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken
+             * when the tracking is stopped.
+             */
+            reportProgress?: boolean;
+            treatGlobalObjectsAsRoots?: boolean;
+        }
+
+        export interface TakeHeapSnapshotRequest {
+            /**
+             * If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken.
+             */
+            reportProgress?: boolean;
+            /**
+             * If true, a raw snapshot without artifical roots will be generated
+             */
+            treatGlobalObjectsAsRoots?: boolean;
+        }
+
+        export interface AddHeapSnapshotChunkEvent {
+            chunk: string;
+        }
+
+        /**
+         * If heap objects tracking has been started then backend may send update for one or more fragments
+         */
+        export interface HeapStatsUpdateEvent {
+            /**
+             * An array of triplets. Each triplet describes a fragment. The first integer is the fragment
+             * index, the second integer is a total count of objects for the fragment, the third integer is
+             * a total size of the objects for the fragment.
+             */
+            statsUpdate: integer[];
+        }
+
+        /**
+         * If heap objects tracking has been started then backend regularly sends a current value for last
+         * seen object id and corresponding timestamp. If the were changes in the heap since last event
+         * then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.
+         */
+        export interface LastSeenObjectIdEvent {
+            lastSeenObjectId: integer;
+            timestamp: number;
+        }
+
+        export interface ReportHeapSnapshotProgressEvent {
+            done: integer;
+            total: integer;
+            finished?: boolean;
+        }
+    }
+
+    export namespace Profiler {
+
+        /**
+         * Profile node. Holds callsite information, execution statistics and child nodes.
+         */
+        export interface ProfileNode {
+            /**
+             * Unique id of the node.
+             */
+            id: integer;
+            /**
+             * Function location.
+             */
+            callFrame: Runtime.CallFrame;
+            /**
+             * Number of samples where this node was on top of the call stack.
+             */
+            hitCount?: integer;
+            /**
+             * Child node ids.
+             */
+            children?: integer[];
+            /**
+             * The reason of being not optimized. The function may be deoptimized or marked as don't
+             * optimize.
+             */
+            deoptReason?: string;
+            /**
+             * An array of source position ticks.
+             */
+            positionTicks?: PositionTickInfo[];
+        }
+
+        /**
+         * Profile.
+         */
+        export interface Profile {
+            /**
+             * The list of profile nodes. First item is the root node.
+             */
+            nodes: ProfileNode[];
+            /**
+             * Profiling start timestamp in microseconds.
+             */
+            startTime: number;
+            /**
+             * Profiling end timestamp in microseconds.
+             */
+            endTime: number;
+            /**
+             * Ids of samples top nodes.
+             */
+            samples?: integer[];
+            /**
+             * Time intervals between adjacent samples in microseconds. The first delta is relative to the
+             * profile startTime.
+             */
+            timeDeltas?: integer[];
+        }
+
+        /**
+         * Specifies a number of samples attributed to a certain source position.
+         */
+        export interface PositionTickInfo {
+            /**
+             * Source line number (1-based).
+             */
+            line: integer;
+            /**
+             * Number of samples attributed to the source line.
+             */
+            ticks: integer;
+        }
+
+        /**
+         * Coverage data for a source range.
+         */
+        export interface CoverageRange {
+            /**
+             * JavaScript script source offset for the range start.
+             */
+            startOffset: integer;
+            /**
+             * JavaScript script source offset for the range end.
+             */
+            endOffset: integer;
+            /**
+             * Collected execution count of the source range.
+             */
+            count: integer;
+        }
+
+        /**
+         * Coverage data for a JavaScript function.
+         */
+        export interface FunctionCoverage {
+            /**
+             * JavaScript function name.
+             */
+            functionName: string;
+            /**
+             * Source ranges inside the function with coverage data.
+             */
+            ranges: CoverageRange[];
+            /**
+             * Whether coverage data for this function has block granularity.
+             */
+            isBlockCoverage: boolean;
+        }
+
+        /**
+         * Coverage data for a JavaScript script.
+         */
+        export interface ScriptCoverage {
+            /**
+             * JavaScript script id.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * JavaScript script name or url.
+             */
+            url: string;
+            /**
+             * Functions contained in the script that has coverage data.
+             */
+            functions: FunctionCoverage[];
+        }
+
+        /**
+         * Describes a type collected during runtime.
+         */
+        export interface TypeObject {
+            /**
+             * Name of a type collected with type profiling.
+             */
+            name: string;
+        }
+
+        /**
+         * Source offset and types for a parameter or return value.
+         */
+        export interface TypeProfileEntry {
+            /**
+             * Source offset of the parameter or end of function for return values.
+             */
+            offset: integer;
+            /**
+             * The types for this parameter or return value.
+             */
+            types: TypeObject[];
+        }
+
+        /**
+         * Type profile data collected during runtime for a JavaScript script.
+         */
+        export interface ScriptTypeProfile {
+            /**
+             * JavaScript script id.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * JavaScript script name or url.
+             */
+            url: string;
+            /**
+             * Type profile entries for parameters and return values of the functions in the script.
+             */
+            entries: TypeProfileEntry[];
+        }
+
+        /**
+         * Collected counter information.
+         */
+        export interface CounterInfo {
+            /**
+             * Counter name.
+             */
+            name: string;
+            /**
+             * Counter value.
+             */
+            value: integer;
+        }
+
+        /**
+         * Runtime call counter information.
+         */
+        export interface RuntimeCallCounterInfo {
+            /**
+             * Counter name.
+             */
+            name: string;
+            /**
+             * Counter value.
+             */
+            value: number;
+            /**
+             * Counter time in seconds.
+             */
+            time: number;
+        }
+
+        export interface GetBestEffortCoverageResponse {
+            /**
+             * Coverage data for the current isolate.
+             */
+            result: ScriptCoverage[];
+        }
+
+        export interface SetSamplingIntervalRequest {
+            /**
+             * New sampling interval in microseconds.
+             */
+            interval: integer;
+        }
+
+        export interface StartPreciseCoverageRequest {
+            /**
+             * Collect accurate call counts beyond simple 'covered' or 'not covered'.
+             */
+            callCount?: boolean;
+            /**
+             * Collect block-based coverage.
+             */
+            detailed?: boolean;
+            /**
+             * Allow the backend to send updates on its own initiative
+             */
+            allowTriggeredUpdates?: boolean;
+        }
+
+        export interface StartPreciseCoverageResponse {
+            /**
+             * Monotonically increasing time (in seconds) when the coverage update was taken in the backend.
+             */
+            timestamp: number;
+        }
+
+        export interface StopResponse {
+            /**
+             * Recorded profile.
+             */
+            profile: Profile;
+        }
+
+        export interface TakePreciseCoverageResponse {
+            /**
+             * Coverage data for the current isolate.
+             */
+            result: ScriptCoverage[];
+            /**
+             * Monotonically increasing time (in seconds) when the coverage update was taken in the backend.
+             */
+            timestamp: number;
+        }
+
+        export interface TakeTypeProfileResponse {
+            /**
+             * Type profile for all scripts since startTypeProfile() was turned on.
+             */
+            result: ScriptTypeProfile[];
+        }
+
+        export interface GetCountersResponse {
+            /**
+             * Collected counters information.
+             */
+            result: CounterInfo[];
+        }
+
+        export interface GetRuntimeCallStatsResponse {
+            /**
+             * Collected runtime call counter information.
+             */
+            result: RuntimeCallCounterInfo[];
+        }
+
+        export interface ConsoleProfileFinishedEvent {
+            id: string;
+            /**
+             * Location of console.profileEnd().
+             */
+            location: Debugger.Location;
+            profile: Profile;
+            /**
+             * Profile title passed as an argument to console.profile().
+             */
+            title?: string;
+        }
+
+        /**
+         * Sent when new profile recording is started using console.profile() call.
+         */
+        export interface ConsoleProfileStartedEvent {
+            id: string;
+            /**
+             * Location of console.profile().
+             */
+            location: Debugger.Location;
+            /**
+             * Profile title passed as an argument to console.profile().
+             */
+            title?: string;
+        }
+
+        /**
+         * Reports coverage delta since the last poll (either from an event like this, or from
+         * `takePreciseCoverage` for the current isolate. May only be sent if precise code
+         * coverage has been started. This event can be trigged by the embedder to, for example,
+         * trigger collection of coverage data immediatelly at a certain point in time.
+         */
+        export interface PreciseCoverageDeltaUpdateEvent {
+            /**
+             * Monotonically increasing time (in seconds) when the coverage update was taken in the backend.
+             */
+            timestamp: number;
+            /**
+             * Identifier for distinguishing coverage events.
+             */
+            occassion: string;
+            /**
+             * Coverage data for the current isolate.
+             */
+            result: ScriptCoverage[];
+        }
+    }
+
+    /**
+     * Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects.
+     * Evaluation results are returned as mirror object that expose object type, string representation
+     * and unique identifier that can be used for further object reference. Original objects are
+     * maintained in memory unless they are either explicitly released or are released along with the
+     * other objects in their object group.
+     */
+    export namespace Runtime {
+
+        /**
+         * Unique script identifier.
+         */
+        export type ScriptId = string;
+
+        /**
+         * Unique object identifier.
+         */
+        export type RemoteObjectId = string;
+
+        /**
+         * Primitive value which cannot be JSON-stringified. Includes values `-0`, `NaN`, `Infinity`,
+         * `-Infinity`, and bigint literals.
+         */
+        export type UnserializableValue = string;
+
+        export const enum RemoteObjectType {
+            Object = 'object',
+            Function = 'function',
+            Undefined = 'undefined',
+            String = 'string',
+            Number = 'number',
+            Boolean = 'boolean',
+            Symbol = 'symbol',
+            Bigint = 'bigint',
+        }
+
+        export const enum RemoteObjectSubtype {
+            Array = 'array',
+            Null = 'null',
+            Node = 'node',
+            Regexp = 'regexp',
+            Date = 'date',
+            Map = 'map',
+            Set = 'set',
+            Weakmap = 'weakmap',
+            Weakset = 'weakset',
+            Iterator = 'iterator',
+            Generator = 'generator',
+            Error = 'error',
+            Proxy = 'proxy',
+            Promise = 'promise',
+            Typedarray = 'typedarray',
+            Arraybuffer = 'arraybuffer',
+            Dataview = 'dataview',
+            Webassemblymemory = 'webassemblymemory',
+            Wasmvalue = 'wasmvalue',
+        }
+
+        /**
+         * Mirror object referencing original JavaScript object.
+         */
+        export interface RemoteObject {
+            /**
+             * Object type. (RemoteObjectType enum)
+             */
+            type: ('object' | 'function' | 'undefined' | 'string' | 'number' | 'boolean' | 'symbol' | 'bigint');
+            /**
+             * Object subtype hint. Specified for `object` type values only.
+             * NOTE: If you change anything here, make sure to also update
+             * `subtype` in `ObjectPreview` and `PropertyPreview` below. (RemoteObjectSubtype enum)
+             */
+            subtype?: ('array' | 'null' | 'node' | 'regexp' | 'date' | 'map' | 'set' | 'weakmap' | 'weakset' | 'iterator' | 'generator' | 'error' | 'proxy' | 'promise' | 'typedarray' | 'arraybuffer' | 'dataview' | 'webassemblymemory' | 'wasmvalue');
+            /**
+             * Object class (constructor) name. Specified for `object` type values only.
+             */
+            className?: string;
+            /**
+             * Remote object value in case of primitive values or JSON values (if it was requested).
+             */
+            value?: any;
+            /**
+             * Primitive value which can not be JSON-stringified does not have `value`, but gets this
+             * property.
+             */
+            unserializableValue?: UnserializableValue;
+            /**
+             * String representation of the object.
+             */
+            description?: string;
+            /**
+             * Unique object identifier (for non-primitive values).
+             */
+            objectId?: RemoteObjectId;
+            /**
+             * Preview containing abbreviated property values. Specified for `object` type values only.
+             */
+            preview?: ObjectPreview;
+            customPreview?: CustomPreview;
+        }
+
+        export interface CustomPreview {
+            /**
+             * The JSON-stringified result of formatter.header(object, config) call.
+             * It contains json ML array that represents RemoteObject.
+             */
+            header: string;
+            /**
+             * If formatter returns true as a result of formatter.hasBody call then bodyGetterId will
+             * contain RemoteObjectId for the function that returns result of formatter.body(object, config) call.
+             * The result value is json ML array.
+             */
+            bodyGetterId?: RemoteObjectId;
+        }
+
+        export const enum ObjectPreviewType {
+            Object = 'object',
+            Function = 'function',
+            Undefined = 'undefined',
+            String = 'string',
+            Number = 'number',
+            Boolean = 'boolean',
+            Symbol = 'symbol',
+            Bigint = 'bigint',
+        }
+
+        export const enum ObjectPreviewSubtype {
+            Array = 'array',
+            Null = 'null',
+            Node = 'node',
+            Regexp = 'regexp',
+            Date = 'date',
+            Map = 'map',
+            Set = 'set',
+            Weakmap = 'weakmap',
+            Weakset = 'weakset',
+            Iterator = 'iterator',
+            Generator = 'generator',
+            Error = 'error',
+            Proxy = 'proxy',
+            Promise = 'promise',
+            Typedarray = 'typedarray',
+            Arraybuffer = 'arraybuffer',
+            Dataview = 'dataview',
+            Webassemblymemory = 'webassemblymemory',
+            Wasmvalue = 'wasmvalue',
+        }
+
+        /**
+         * Object containing abbreviated remote object value.
+         */
+        export interface ObjectPreview {
+            /**
+             * Object type. (ObjectPreviewType enum)
+             */
+            type: ('object' | 'function' | 'undefined' | 'string' | 'number' | 'boolean' | 'symbol' | 'bigint');
+            /**
+             * Object subtype hint. Specified for `object` type values only. (ObjectPreviewSubtype enum)
+             */
+            subtype?: ('array' | 'null' | 'node' | 'regexp' | 'date' | 'map' | 'set' | 'weakmap' | 'weakset' | 'iterator' | 'generator' | 'error' | 'proxy' | 'promise' | 'typedarray' | 'arraybuffer' | 'dataview' | 'webassemblymemory' | 'wasmvalue');
+            /**
+             * String representation of the object.
+             */
+            description?: string;
+            /**
+             * True iff some of the properties or entries of the original object did not fit.
+             */
+            overflow: boolean;
+            /**
+             * List of the properties.
+             */
+            properties: PropertyPreview[];
+            /**
+             * List of the entries. Specified for `map` and `set` subtype values only.
+             */
+            entries?: EntryPreview[];
+        }
+
+        export const enum PropertyPreviewType {
+            Object = 'object',
+            Function = 'function',
+            Undefined = 'undefined',
+            String = 'string',
+            Number = 'number',
+            Boolean = 'boolean',
+            Symbol = 'symbol',
+            Accessor = 'accessor',
+            Bigint = 'bigint',
+        }
+
+        export const enum PropertyPreviewSubtype {
+            Array = 'array',
+            Null = 'null',
+            Node = 'node',
+            Regexp = 'regexp',
+            Date = 'date',
+            Map = 'map',
+            Set = 'set',
+            Weakmap = 'weakmap',
+            Weakset = 'weakset',
+            Iterator = 'iterator',
+            Generator = 'generator',
+            Error = 'error',
+            Proxy = 'proxy',
+            Promise = 'promise',
+            Typedarray = 'typedarray',
+            Arraybuffer = 'arraybuffer',
+            Dataview = 'dataview',
+            Webassemblymemory = 'webassemblymemory',
+            Wasmvalue = 'wasmvalue',
+        }
+
+        export interface PropertyPreview {
+            /**
+             * Property name.
+             */
+            name: string;
+            /**
+             * Object type. Accessor means that the property itself is an accessor property. (PropertyPreviewType enum)
+             */
+            type: ('object' | 'function' | 'undefined' | 'string' | 'number' | 'boolean' | 'symbol' | 'accessor' | 'bigint');
+            /**
+             * User-friendly property value string.
+             */
+            value?: string;
+            /**
+             * Nested value preview.
+             */
+            valuePreview?: ObjectPreview;
+            /**
+             * Object subtype hint. Specified for `object` type values only. (PropertyPreviewSubtype enum)
+             */
+            subtype?: ('array' | 'null' | 'node' | 'regexp' | 'date' | 'map' | 'set' | 'weakmap' | 'weakset' | 'iterator' | 'generator' | 'error' | 'proxy' | 'promise' | 'typedarray' | 'arraybuffer' | 'dataview' | 'webassemblymemory' | 'wasmvalue');
+        }
+
+        export interface EntryPreview {
+            /**
+             * Preview of the key. Specified for map-like collection entries.
+             */
+            key?: ObjectPreview;
+            /**
+             * Preview of the value.
+             */
+            value: ObjectPreview;
+        }
+
+        /**
+         * Object property descriptor.
+         */
+        export interface PropertyDescriptor {
+            /**
+             * Property name or symbol description.
+             */
+            name: string;
+            /**
+             * The value associated with the property.
+             */
+            value?: RemoteObject;
+            /**
+             * True if the value associated with the property may be changed (data descriptors only).
+             */
+            writable?: boolean;
+            /**
+             * A function which serves as a getter for the property, or `undefined` if there is no getter
+             * (accessor descriptors only).
+             */
+            get?: RemoteObject;
+            /**
+             * A function which serves as a setter for the property, or `undefined` if there is no setter
+             * (accessor descriptors only).
+             */
+            set?: RemoteObject;
+            /**
+             * True if the type of this property descriptor may be changed and if the property may be
+             * deleted from the corresponding object.
+             */
+            configurable: boolean;
+            /**
+             * True if this property shows up during enumeration of the properties on the corresponding
+             * object.
+             */
+            enumerable: boolean;
+            /**
+             * True if the result was thrown during the evaluation.
+             */
+            wasThrown?: boolean;
+            /**
+             * True if the property is owned for the object.
+             */
+            isOwn?: boolean;
+            /**
+             * Property symbol object, if the property is of the `symbol` type.
+             */
+            symbol?: RemoteObject;
+        }
+
+        /**
+         * Object internal property descriptor. This property isn't normally visible in JavaScript code.
+         */
+        export interface InternalPropertyDescriptor {
+            /**
+             * Conventional property name.
+             */
+            name: string;
+            /**
+             * The value associated with the property.
+             */
+            value?: RemoteObject;
+        }
+
+        /**
+         * Object private field descriptor.
+         */
+        export interface PrivatePropertyDescriptor {
+            /**
+             * Private property name.
+             */
+            name: string;
+            /**
+             * The value associated with the private property.
+             */
+            value?: RemoteObject;
+            /**
+             * A function which serves as a getter for the private property,
+             * or `undefined` if there is no getter (accessor descriptors only).
+             */
+            get?: RemoteObject;
+            /**
+             * A function which serves as a setter for the private property,
+             * or `undefined` if there is no setter (accessor descriptors only).
+             */
+            set?: RemoteObject;
+        }
+
+        /**
+         * Represents function call argument. Either remote object id `objectId`, primitive `value`,
+         * unserializable primitive value or neither of (for undefined) them should be specified.
+         */
+        export interface CallArgument {
+            /**
+             * Primitive value or serializable javascript object.
+             */
+            value?: any;
+            /**
+             * Primitive value which can not be JSON-stringified.
+             */
+            unserializableValue?: UnserializableValue;
+            /**
+             * Remote object handle.
+             */
+            objectId?: RemoteObjectId;
+        }
+
+        /**
+         * Id of an execution context.
+         */
+        export type ExecutionContextId = integer;
+
+        /**
+         * Description of an isolated world.
+         */
+        export interface ExecutionContextDescription {
+            /**
+             * Unique id of the execution context. It can be used to specify in which execution context
+             * script evaluation should be performed.
+             */
+            id: ExecutionContextId;
+            /**
+             * Execution context origin.
+             */
+            origin: string;
+            /**
+             * Human readable name describing given context.
+             */
+            name: string;
+            /**
+             * A system-unique execution context identifier. Unlike the id, this is unique accross
+             * multiple processes, so can be reliably used to identify specific context while backend
+             * performs a cross-process navigation.
+             */
+            uniqueId: string;
+            /**
+             * Embedder-specific auxiliary data.
+             */
+            auxData?: any;
+        }
+
+        /**
+         * Detailed information about exception (or error) that was thrown during script compilation or
+         * execution.
+         */
+        export interface ExceptionDetails {
+            /**
+             * Exception id.
+             */
+            exceptionId: integer;
+            /**
+             * Exception text, which should be used together with exception object when available.
+             */
+            text: string;
+            /**
+             * Line number of the exception location (0-based).
+             */
+            lineNumber: integer;
+            /**
+             * Column number of the exception location (0-based).
+             */
+            columnNumber: integer;
+            /**
+             * Script ID of the exception location.
+             */
+            scriptId?: ScriptId;
+            /**
+             * URL of the exception location, to be used when the script was not reported.
+             */
+            url?: string;
+            /**
+             * JavaScript stack trace if available.
+             */
+            stackTrace?: StackTrace;
+            /**
+             * Exception object if available.
+             */
+            exception?: RemoteObject;
+            /**
+             * Identifier of the context where exception happened.
+             */
+            executionContextId?: ExecutionContextId;
+        }
+
+        /**
+         * Number of milliseconds since epoch.
+         */
+        export type Timestamp = number;
+
+        /**
+         * Number of milliseconds.
+         */
+        export type TimeDelta = number;
+
+        /**
+         * Stack entry for runtime errors and assertions.
+         */
+        export interface CallFrame {
+            /**
+             * JavaScript function name.
+             */
+            functionName: string;
+            /**
+             * JavaScript script id.
+             */
+            scriptId: ScriptId;
+            /**
+             * JavaScript script name or url.
+             */
+            url: string;
+            /**
+             * JavaScript script line number (0-based).
+             */
+            lineNumber: integer;
+            /**
+             * JavaScript script column number (0-based).
+             */
+            columnNumber: integer;
+        }
+
+        /**
+         * Call frames for assertions or error messages.
+         */
+        export interface StackTrace {
+            /**
+             * String label of this stack trace. For async traces this may be a name of the function that
+             * initiated the async call.
+             */
+            description?: string;
+            /**
+             * JavaScript function name.
+             */
+            callFrames: CallFrame[];
+            /**
+             * Asynchronous JavaScript stack trace that preceded this stack, if available.
+             */
+            parent?: StackTrace;
+            /**
+             * Asynchronous JavaScript stack trace that preceded this stack, if available.
+             */
+            parentId?: StackTraceId;
+        }
+
+        /**
+         * Unique identifier of current debugger.
+         */
+        export type UniqueDebuggerId = string;
+
+        /**
+         * If `debuggerId` is set stack trace comes from another debugger and can be resolved there. This
+         * allows to track cross-debugger calls. See `Runtime.StackTrace` and `Debugger.paused` for usages.
+         */
+        export interface StackTraceId {
+            id: string;
+            debuggerId?: UniqueDebuggerId;
+        }
+
+        export interface AwaitPromiseRequest {
+            /**
+             * Identifier of the promise.
+             */
+            promiseObjectId: RemoteObjectId;
+            /**
+             * Whether the result is expected to be a JSON object that should be sent by value.
+             */
+            returnByValue?: boolean;
+            /**
+             * Whether preview should be generated for the result.
+             */
+            generatePreview?: boolean;
+        }
+
+        export interface AwaitPromiseResponse {
+            /**
+             * Promise result. Will contain rejected value if promise was rejected.
+             */
+            result: RemoteObject;
+            /**
+             * Exception details if stack strace is available.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface CallFunctionOnRequest {
+            /**
+             * Declaration of the function to call.
+             */
+            functionDeclaration: string;
+            /**
+             * Identifier of the object to call function on. Either objectId or executionContextId should
+             * be specified.
+             */
+            objectId?: RemoteObjectId;
+            /**
+             * Call arguments. All call arguments must belong to the same JavaScript world as the target
+             * object.
+             */
+            arguments?: CallArgument[];
+            /**
+             * In silent mode exceptions thrown during evaluation are not reported and do not pause
+             * execution. Overrides `setPauseOnException` state.
+             */
+            silent?: boolean;
+            /**
+             * Whether the result is expected to be a JSON object which should be sent by value.
+             */
+            returnByValue?: boolean;
+            /**
+             * Whether preview should be generated for the result.
+             */
+            generatePreview?: boolean;
+            /**
+             * Whether execution should be treated as initiated by user in the UI.
+             */
+            userGesture?: boolean;
+            /**
+             * Whether execution should `await` for resulting value and return once awaited promise is
+             * resolved.
+             */
+            awaitPromise?: boolean;
+            /**
+             * Specifies execution context which global object will be used to call function on. Either
+             * executionContextId or objectId should be specified.
+             */
+            executionContextId?: ExecutionContextId;
+            /**
+             * Symbolic group name that can be used to release multiple objects. If objectGroup is not
+             * specified and objectId is, objectGroup will be inherited from object.
+             */
+            objectGroup?: string;
+        }
+
+        export interface CallFunctionOnResponse {
+            /**
+             * Call result.
+             */
+            result: RemoteObject;
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface CompileScriptRequest {
+            /**
+             * Expression to compile.
+             */
+            expression: string;
+            /**
+             * Source url to be set for the script.
+             */
+            sourceURL: string;
+            /**
+             * Specifies whether the compiled script should be persisted.
+             */
+            persistScript: boolean;
+            /**
+             * Specifies in which execution context to perform script run. If the parameter is omitted the
+             * evaluation will be performed in the context of the inspected page.
+             */
+            executionContextId?: ExecutionContextId;
+        }
+
+        export interface CompileScriptResponse {
+            /**
+             * Id of the script.
+             */
+            scriptId?: ScriptId;
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface EvaluateRequest {
+            /**
+             * Expression to evaluate.
+             */
+            expression: string;
+            /**
+             * Symbolic group name that can be used to release multiple objects.
+             */
+            objectGroup?: string;
+            /**
+             * Determines whether Command Line API should be available during the evaluation.
+             */
+            includeCommandLineAPI?: boolean;
+            /**
+             * In silent mode exceptions thrown during evaluation are not reported and do not pause
+             * execution. Overrides `setPauseOnException` state.
+             */
+            silent?: boolean;
+            /**
+             * Specifies in which execution context to perform evaluation. If the parameter is omitted the
+             * evaluation will be performed in the context of the inspected page.
+             * This is mutually exclusive with `uniqueContextId`, which offers an
+             * alternative way to identify the execution context that is more reliable
+             * in a multi-process environment.
+             */
+            contextId?: ExecutionContextId;
+            /**
+             * Whether the result is expected to be a JSON object that should be sent by value.
+             */
+            returnByValue?: boolean;
+            /**
+             * Whether preview should be generated for the result.
+             */
+            generatePreview?: boolean;
+            /**
+             * Whether execution should be treated as initiated by user in the UI.
+             */
+            userGesture?: boolean;
+            /**
+             * Whether execution should `await` for resulting value and return once awaited promise is
+             * resolved.
+             */
+            awaitPromise?: boolean;
+            /**
+             * Whether to throw an exception if side effect cannot be ruled out during evaluation.
+             * This implies `disableBreaks` below.
+             */
+            throwOnSideEffect?: boolean;
+            /**
+             * Terminate execution after timing out (number of milliseconds).
+             */
+            timeout?: TimeDelta;
+            /**
+             * Disable breakpoints during execution.
+             */
+            disableBreaks?: boolean;
+            /**
+             * Setting this flag to true enables `let` re-declaration and top-level `await`.
+             * Note that `let` variables can only be re-declared if they originate from
+             * `replMode` themselves.
+             */
+            replMode?: boolean;
+            /**
+             * The Content Security Policy (CSP) for the target might block 'unsafe-eval'
+             * which includes eval(), Function(), setTimeout() and setInterval()
+             * when called with non-callable arguments. This flag bypasses CSP for this
+             * evaluation and allows unsafe-eval. Defaults to true.
+             */
+            allowUnsafeEvalBlockedByCSP?: boolean;
+            /**
+             * An alternative way to specify the execution context to evaluate in.
+             * Compared to contextId that may be reused accross processes, this is guaranteed to be
+             * system-unique, so it can be used to prevent accidental evaluation of the expression
+             * in context different than intended (e.g. as a result of navigation accross process
+             * boundaries).
+             * This is mutually exclusive with `contextId`.
+             */
+            uniqueContextId?: string;
+        }
+
+        export interface EvaluateResponse {
+            /**
+             * Evaluation result.
+             */
+            result: RemoteObject;
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface GetIsolateIdResponse {
+            /**
+             * The isolate id.
+             */
+            id: string;
+        }
+
+        export interface GetHeapUsageResponse {
+            /**
+             * Used heap size in bytes.
+             */
+            usedSize: number;
+            /**
+             * Allocated heap size in bytes.
+             */
+            totalSize: number;
+        }
+
+        export interface GetPropertiesRequest {
+            /**
+             * Identifier of the object to return properties for.
+             */
+            objectId: RemoteObjectId;
+            /**
+             * If true, returns properties belonging only to the element itself, not to its prototype
+             * chain.
+             */
+            ownProperties?: boolean;
+            /**
+             * If true, returns accessor properties (with getter/setter) only; internal properties are not
+             * returned either.
+             */
+            accessorPropertiesOnly?: boolean;
+            /**
+             * Whether preview should be generated for the results.
+             */
+            generatePreview?: boolean;
+        }
+
+        export interface GetPropertiesResponse {
+            /**
+             * Object properties.
+             */
+            result: PropertyDescriptor[];
+            /**
+             * Internal object properties (only of the element itself).
+             */
+            internalProperties?: InternalPropertyDescriptor[];
+            /**
+             * Object private properties.
+             */
+            privateProperties?: PrivatePropertyDescriptor[];
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface GlobalLexicalScopeNamesRequest {
+            /**
+             * Specifies in which execution context to lookup global scope variables.
+             */
+            executionContextId?: ExecutionContextId;
+        }
+
+        export interface GlobalLexicalScopeNamesResponse {
+            names: string[];
+        }
+
+        export interface QueryObjectsRequest {
+            /**
+             * Identifier of the prototype to return objects for.
+             */
+            prototypeObjectId: RemoteObjectId;
+            /**
+             * Symbolic group name that can be used to release the results.
+             */
+            objectGroup?: string;
+        }
+
+        export interface QueryObjectsResponse {
+            /**
+             * Array with objects.
+             */
+            objects: RemoteObject;
+        }
+
+        export interface ReleaseObjectRequest {
+            /**
+             * Identifier of the object to release.
+             */
+            objectId: RemoteObjectId;
+        }
+
+        export interface ReleaseObjectGroupRequest {
+            /**
+             * Symbolic object group name.
+             */
+            objectGroup: string;
+        }
+
+        export interface RunScriptRequest {
+            /**
+             * Id of the script to run.
+             */
+            scriptId: ScriptId;
+            /**
+             * Specifies in which execution context to perform script run. If the parameter is omitted the
+             * evaluation will be performed in the context of the inspected page.
+             */
+            executionContextId?: ExecutionContextId;
+            /**
+             * Symbolic group name that can be used to release multiple objects.
+             */
+            objectGroup?: string;
+            /**
+             * In silent mode exceptions thrown during evaluation are not reported and do not pause
+             * execution. Overrides `setPauseOnException` state.
+             */
+            silent?: boolean;
+            /**
+             * Determines whether Command Line API should be available during the evaluation.
+             */
+            includeCommandLineAPI?: boolean;
+            /**
+             * Whether the result is expected to be a JSON object which should be sent by value.
+             */
+            returnByValue?: boolean;
+            /**
+             * Whether preview should be generated for the result.
+             */
+            generatePreview?: boolean;
+            /**
+             * Whether execution should `await` for resulting value and return once awaited promise is
+             * resolved.
+             */
+            awaitPromise?: boolean;
+        }
+
+        export interface RunScriptResponse {
+            /**
+             * Run result.
+             */
+            result: RemoteObject;
+            /**
+             * Exception details.
+             */
+            exceptionDetails?: ExceptionDetails;
+        }
+
+        export interface SetAsyncCallStackDepthRequest {
+            /**
+             * Maximum depth of async call stacks. Setting to `0` will effectively disable collecting async
+             * call stacks (default).
+             */
+            maxDepth: integer;
+        }
+
+        export interface SetCustomObjectFormatterEnabledRequest {
+            enabled: boolean;
+        }
+
+        export interface SetMaxCallStackSizeToCaptureRequest {
+            size: integer;
+        }
+
+        export interface AddBindingRequest {
+            name: string;
+            /**
+             * If specified, the binding would only be exposed to the specified
+             * execution context. If omitted and `executionContextName` is not set,
+             * the binding is exposed to all execution contexts of the target.
+             * This parameter is mutually exclusive with `executionContextName`.
+             */
+            executionContextId?: ExecutionContextId;
+            /**
+             * If specified, the binding is exposed to the executionContext with
+             * matching name, even for contexts created after the binding is added.
+             * See also `ExecutionContext.name` and `worldName` parameter to
+             * `Page.addScriptToEvaluateOnNewDocument`.
+             * This parameter is mutually exclusive with `executionContextId`.
+             */
+            executionContextName?: string;
+        }
+
+        export interface RemoveBindingRequest {
+            name: string;
+        }
+
+        /**
+         * Notification is issued every time when binding is called.
+         */
+        export interface BindingCalledEvent {
+            name: string;
+            payload: string;
+            /**
+             * Identifier of the context where the call was made.
+             */
+            executionContextId: ExecutionContextId;
+        }
+
+        export const enum ConsoleAPICalledEventType {
+            Log = 'log',
+            Debug = 'debug',
+            Info = 'info',
+            Error = 'error',
+            Warning = 'warning',
+            Dir = 'dir',
+            DirXML = 'dirxml',
+            Table = 'table',
+            Trace = 'trace',
+            Clear = 'clear',
+            StartGroup = 'startGroup',
+            StartGroupCollapsed = 'startGroupCollapsed',
+            EndGroup = 'endGroup',
+            Assert = 'assert',
+            Profile = 'profile',
+            ProfileEnd = 'profileEnd',
+            Count = 'count',
+            TimeEnd = 'timeEnd',
+        }
+
+        /**
+         * Issued when console API was called.
+         */
+        export interface ConsoleAPICalledEvent {
+            /**
+             * Type of the call. (ConsoleAPICalledEventType enum)
+             */
+            type: ('log' | 'debug' | 'info' | 'error' | 'warning' | 'dir' | 'dirxml' | 'table' | 'trace' | 'clear' | 'startGroup' | 'startGroupCollapsed' | 'endGroup' | 'assert' | 'profile' | 'profileEnd' | 'count' | 'timeEnd');
+            /**
+             * Call arguments.
+             */
+            args: RemoteObject[];
+            /**
+             * Identifier of the context where the call was made.
+             */
+            executionContextId: ExecutionContextId;
+            /**
+             * Call timestamp.
+             */
+            timestamp: Timestamp;
+            /**
+             * Stack trace captured when the call was made. The async stack chain is automatically reported for
+             * the following call types: `assert`, `error`, `trace`, `warning`. For other types the async call
+             * chain can be retrieved using `Debugger.getStackTrace` and `stackTrace.parentId` field.
+             */
+            stackTrace?: StackTrace;
+            /**
+             * Console context descriptor for calls on non-default console context (not console.*):
+             * 'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call
+             * on named context.
+             */
+            context?: string;
+        }
+
+        /**
+         * Issued when unhandled exception was revoked.
+         */
+        export interface ExceptionRevokedEvent {
+            /**
+             * Reason describing why exception was revoked.
+             */
+            reason: string;
+            /**
+             * The id of revoked exception, as reported in `exceptionThrown`.
+             */
+            exceptionId: integer;
+        }
+
+        /**
+         * Issued when exception was thrown and unhandled.
+         */
+        export interface ExceptionThrownEvent {
+            /**
+             * Timestamp of the exception.
+             */
+            timestamp: Timestamp;
+            exceptionDetails: ExceptionDetails;
+        }
+
+        /**
+         * Issued when new execution context is created.
+         */
+        export interface ExecutionContextCreatedEvent {
+            /**
+             * A newly created execution context.
+             */
+            context: ExecutionContextDescription;
+        }
+
+        /**
+         * Issued when execution context is destroyed.
+         */
+        export interface ExecutionContextDestroyedEvent {
+            /**
+             * Id of the destroyed context
+             */
+            executionContextId: ExecutionContextId;
+        }
+
+        /**
+         * Issued when object should be inspected (for example, as a result of inspect() command line API
+         * call).
+         */
+        export interface InspectRequestedEvent {
+            object: RemoteObject;
+            hints: any;
+        }
+    }
+
+    /**
+     * This domain is deprecated.
+     */
+    export namespace Schema {
+
+        /**
+         * Description of the protocol domain.
+         */
+        export interface Domain {
+            /**
+             * Domain name.
+             */
+            name: string;
+            /**
+             * Domain version.
+             */
+            version: string;
+        }
+
+        export interface GetDomainsResponse {
+            /**
+             * List of supported domains.
+             */
+            domains: Domain[];
+        }
+    }
+
+    export namespace Accessibility {
+
+        /**
+         * Unique accessibility node identifier.
+         */
+        export type AXNodeId = string;
+
+        /**
+         * Enum of possible property types.
+         */
+        export type AXValueType = ('boolean' | 'tristate' | 'booleanOrUndefined' | 'idref' | 'idrefList' | 'integer' | 'node' | 'nodeList' | 'number' | 'string' | 'computedString' | 'token' | 'tokenList' | 'domRelation' | 'role' | 'internalRole' | 'valueUndefined');
+
+        /**
+         * Enum of possible property sources.
+         */
+        export type AXValueSourceType = ('attribute' | 'implicit' | 'style' | 'contents' | 'placeholder' | 'relatedElement');
+
+        /**
+         * Enum of possible native property sources (as a subtype of a particular AXValueSourceType).
+         */
+        export type AXValueNativeSourceType = ('figcaption' | 'label' | 'labelfor' | 'labelwrapped' | 'legend' | 'rubyannotation' | 'tablecaption' | 'title' | 'other');
+
+        /**
+         * A single source for a computed AX property.
+         */
+        export interface AXValueSource {
+            /**
+             * What type of source this is.
+             */
+            type: AXValueSourceType;
+            /**
+             * The value of this property source.
+             */
+            value?: AXValue;
+            /**
+             * The name of the relevant attribute, if any.
+             */
+            attribute?: string;
+            /**
+             * The value of the relevant attribute, if any.
+             */
+            attributeValue?: AXValue;
+            /**
+             * Whether this source is superseded by a higher priority source.
+             */
+            superseded?: boolean;
+            /**
+             * The native markup source for this value, e.g. a <label> element.
+             */
+            nativeSource?: AXValueNativeSourceType;
+            /**
+             * The value, such as a node or node list, of the native source.
+             */
+            nativeSourceValue?: AXValue;
+            /**
+             * Whether the value for this property is invalid.
+             */
+            invalid?: boolean;
+            /**
+             * Reason for the value being invalid, if it is.
+             */
+            invalidReason?: string;
+        }
+
+        export interface AXRelatedNode {
+            /**
+             * The BackendNodeId of the related DOM node.
+             */
+            backendDOMNodeId: DOM.BackendNodeId;
+            /**
+             * The IDRef value provided, if any.
+             */
+            idref?: string;
+            /**
+             * The text alternative of this node in the current context.
+             */
+            text?: string;
+        }
+
+        export interface AXProperty {
+            /**
+             * The name of this property.
+             */
+            name: AXPropertyName;
+            /**
+             * The value of this property.
+             */
+            value: AXValue;
+        }
+
+        /**
+         * A single computed AX property.
+         */
+        export interface AXValue {
+            /**
+             * The type of this value.
+             */
+            type: AXValueType;
+            /**
+             * The computed value of this property.
+             */
+            value?: any;
+            /**
+             * One or more related nodes, if applicable.
+             */
+            relatedNodes?: AXRelatedNode[];
+            /**
+             * The sources which contributed to the computation of this property.
+             */
+            sources?: AXValueSource[];
+        }
+
+        /**
+         * Values of AXProperty name:
+         * - from 'busy' to 'roledescription': states which apply to every AX node
+         * - from 'live' to 'root': attributes which apply to nodes in live regions
+         * - from 'autocomplete' to 'valuetext': attributes which apply to widgets
+         * - from 'checked' to 'selected': states which apply to widgets
+         * - from 'activedescendant' to 'owns' - relationships between elements other than parent/child/sibling.
+         */
+        export type AXPropertyName = ('busy' | 'disabled' | 'editable' | 'focusable' | 'focused' | 'hidden' | 'hiddenRoot' | 'invalid' | 'keyshortcuts' | 'settable' | 'roledescription' | 'live' | 'atomic' | 'relevant' | 'root' | 'autocomplete' | 'hasPopup' | 'level' | 'multiselectable' | 'orientation' | 'multiline' | 'readonly' | 'required' | 'valuemin' | 'valuemax' | 'valuetext' | 'checked' | 'expanded' | 'modal' | 'pressed' | 'selected' | 'activedescendant' | 'controls' | 'describedby' | 'details' | 'errormessage' | 'flowto' | 'labelledby' | 'owns');
+
+        /**
+         * A node in the accessibility tree.
+         */
+        export interface AXNode {
+            /**
+             * Unique identifier for this node.
+             */
+            nodeId: AXNodeId;
+            /**
+             * Whether this node is ignored for accessibility
+             */
+            ignored: boolean;
+            /**
+             * Collection of reasons why this node is hidden.
+             */
+            ignoredReasons?: AXProperty[];
+            /**
+             * This `Node`'s role, whether explicit or implicit.
+             */
+            role?: AXValue;
+            /**
+             * The accessible name for this `Node`.
+             */
+            name?: AXValue;
+            /**
+             * The accessible description for this `Node`.
+             */
+            description?: AXValue;
+            /**
+             * The value for this `Node`.
+             */
+            value?: AXValue;
+            /**
+             * All other properties
+             */
+            properties?: AXProperty[];
+            /**
+             * IDs for each of this node's child nodes.
+             */
+            childIds?: AXNodeId[];
+            /**
+             * The backend ID for the associated DOM node, if any.
+             */
+            backendDOMNodeId?: DOM.BackendNodeId;
+        }
+
+        export interface GetPartialAXTreeRequest {
+            /**
+             * Identifier of the node to get the partial accessibility tree for.
+             */
+            nodeId?: DOM.NodeId;
+            /**
+             * Identifier of the backend node to get the partial accessibility tree for.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper to get the partial accessibility tree for.
+             */
+            objectId?: Runtime.RemoteObjectId;
+            /**
+             * Whether to fetch this nodes ancestors, siblings and children. Defaults to true.
+             */
+            fetchRelatives?: boolean;
+        }
+
+        export interface GetPartialAXTreeResponse {
+            /**
+             * The `Accessibility.AXNode` for this DOM node, if it exists, plus its ancestors, siblings and
+             * children, if requested.
+             */
+            nodes: AXNode[];
+        }
+
+        export interface GetFullAXTreeRequest {
+            /**
+             * The maximum depth at which descendants of the root node should be retrieved.
+             * If omitted, the full tree is returned.
+             */
+            max_depth?: integer;
+        }
+
+        export interface GetFullAXTreeResponse {
+            nodes: AXNode[];
+        }
+
+        export interface GetChildAXNodesRequest {
+            id: AXNodeId;
+        }
+
+        export interface GetChildAXNodesResponse {
+            nodes: AXNode[];
+        }
+
+        export interface QueryAXTreeRequest {
+            /**
+             * Identifier of the node for the root to query.
+             */
+            nodeId?: DOM.NodeId;
+            /**
+             * Identifier of the backend node for the root to query.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper for the root to query.
+             */
+            objectId?: Runtime.RemoteObjectId;
+            /**
+             * Find nodes with this computed name.
+             */
+            accessibleName?: string;
+            /**
+             * Find nodes with this computed role.
+             */
+            role?: string;
+        }
+
+        export interface QueryAXTreeResponse {
+            /**
+             * A list of `Accessibility.AXNode` matching the specified attributes,
+             * including nodes that are ignored for accessibility.
+             */
+            nodes: AXNode[];
+        }
+    }
+
+    export namespace Animation {
+
+        export const enum AnimationType {
+            CSSTransition = 'CSSTransition',
+            CSSAnimation = 'CSSAnimation',
+            WebAnimation = 'WebAnimation',
+        }
+
+        /**
+         * Animation instance.
+         */
+        export interface Animation {
+            /**
+             * `Animation`'s id.
+             */
+            id: string;
+            /**
+             * `Animation`'s name.
+             */
+            name: string;
+            /**
+             * `Animation`'s internal paused state.
+             */
+            pausedState: boolean;
+            /**
+             * `Animation`'s play state.
+             */
+            playState: string;
+            /**
+             * `Animation`'s playback rate.
+             */
+            playbackRate: number;
+            /**
+             * `Animation`'s start time.
+             */
+            startTime: number;
+            /**
+             * `Animation`'s current time.
+             */
+            currentTime: number;
+            /**
+             * Animation type of `Animation`. (AnimationType enum)
+             */
+            type: ('CSSTransition' | 'CSSAnimation' | 'WebAnimation');
+            /**
+             * `Animation`'s source animation node.
+             */
+            source?: AnimationEffect;
+            /**
+             * A unique ID for `Animation` representing the sources that triggered this CSS
+             * animation/transition.
+             */
+            cssId?: string;
+        }
+
+        /**
+         * AnimationEffect instance
+         */
+        export interface AnimationEffect {
+            /**
+             * `AnimationEffect`'s delay.
+             */
+            delay: number;
+            /**
+             * `AnimationEffect`'s end delay.
+             */
+            endDelay: number;
+            /**
+             * `AnimationEffect`'s iteration start.
+             */
+            iterationStart: number;
+            /**
+             * `AnimationEffect`'s iterations.
+             */
+            iterations: number;
+            /**
+             * `AnimationEffect`'s iteration duration.
+             */
+            duration: number;
+            /**
+             * `AnimationEffect`'s playback direction.
+             */
+            direction: string;
+            /**
+             * `AnimationEffect`'s fill mode.
+             */
+            fill: string;
+            /**
+             * `AnimationEffect`'s target node.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * `AnimationEffect`'s keyframes.
+             */
+            keyframesRule?: KeyframesRule;
+            /**
+             * `AnimationEffect`'s timing function.
+             */
+            easing: string;
+        }
+
+        /**
+         * Keyframes Rule
+         */
+        export interface KeyframesRule {
+            /**
+             * CSS keyframed animation's name.
+             */
+            name?: string;
+            /**
+             * List of animation keyframes.
+             */
+            keyframes: KeyframeStyle[];
+        }
+
+        /**
+         * Keyframe Style
+         */
+        export interface KeyframeStyle {
+            /**
+             * Keyframe's time offset.
+             */
+            offset: string;
+            /**
+             * `AnimationEffect`'s timing function.
+             */
+            easing: string;
+        }
+
+        export interface GetCurrentTimeRequest {
+            /**
+             * Id of animation.
+             */
+            id: string;
+        }
+
+        export interface GetCurrentTimeResponse {
+            /**
+             * Current time of the page.
+             */
+            currentTime: number;
+        }
+
+        export interface GetPlaybackRateResponse {
+            /**
+             * Playback rate for animations on page.
+             */
+            playbackRate: number;
+        }
+
+        export interface ReleaseAnimationsRequest {
+            /**
+             * List of animation ids to seek.
+             */
+            animations: string[];
+        }
+
+        export interface ResolveAnimationRequest {
+            /**
+             * Animation id.
+             */
+            animationId: string;
+        }
+
+        export interface ResolveAnimationResponse {
+            /**
+             * Corresponding remote object.
+             */
+            remoteObject: Runtime.RemoteObject;
+        }
+
+        export interface SeekAnimationsRequest {
+            /**
+             * List of animation ids to seek.
+             */
+            animations: string[];
+            /**
+             * Set the current time of each animation.
+             */
+            currentTime: number;
+        }
+
+        export interface SetPausedRequest {
+            /**
+             * Animations to set the pause state of.
+             */
+            animations: string[];
+            /**
+             * Paused state to set to.
+             */
+            paused: boolean;
+        }
+
+        export interface SetPlaybackRateRequest {
+            /**
+             * Playback rate for animations on page
+             */
+            playbackRate: number;
+        }
+
+        export interface SetTimingRequest {
+            /**
+             * Animation id.
+             */
+            animationId: string;
+            /**
+             * Duration of the animation.
+             */
+            duration: number;
+            /**
+             * Delay of the animation.
+             */
+            delay: number;
+        }
+
+        /**
+         * Event for when an animation has been cancelled.
+         */
+        export interface AnimationCanceledEvent {
+            /**
+             * Id of the animation that was cancelled.
+             */
+            id: string;
+        }
+
+        /**
+         * Event for each animation that has been created.
+         */
+        export interface AnimationCreatedEvent {
+            /**
+             * Id of the animation that was created.
+             */
+            id: string;
+        }
+
+        /**
+         * Event for animation that has been started.
+         */
+        export interface AnimationStartedEvent {
+            /**
+             * Animation that was started.
+             */
+            animation: Animation;
+        }
+    }
+
+    export namespace ApplicationCache {
+
+        /**
+         * Detailed application cache resource information.
+         */
+        export interface ApplicationCacheResource {
+            /**
+             * Resource url.
+             */
+            url: string;
+            /**
+             * Resource size.
+             */
+            size: integer;
+            /**
+             * Resource type.
+             */
+            type: string;
+        }
+
+        /**
+         * Detailed application cache information.
+         */
+        export interface ApplicationCache {
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Application cache size.
+             */
+            size: number;
+            /**
+             * Application cache creation time.
+             */
+            creationTime: number;
+            /**
+             * Application cache update time.
+             */
+            updateTime: number;
+            /**
+             * Application cache resources.
+             */
+            resources: ApplicationCacheResource[];
+        }
+
+        /**
+         * Frame identifier - manifest URL pair.
+         */
+        export interface FrameWithManifest {
+            /**
+             * Frame identifier.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Application cache status.
+             */
+            status: integer;
+        }
+
+        export interface GetApplicationCacheForFrameRequest {
+            /**
+             * Identifier of the frame containing document whose application cache is retrieved.
+             */
+            frameId: Page.FrameId;
+        }
+
+        export interface GetApplicationCacheForFrameResponse {
+            /**
+             * Relevant application cache data for the document in given frame.
+             */
+            applicationCache: ApplicationCache;
+        }
+
+        export interface GetFramesWithManifestsResponse {
+            /**
+             * Array of frame identifiers with manifest urls for each frame containing a document
+             * associated with some application cache.
+             */
+            frameIds: FrameWithManifest[];
+        }
+
+        export interface GetManifestForFrameRequest {
+            /**
+             * Identifier of the frame containing document whose manifest is retrieved.
+             */
+            frameId: Page.FrameId;
+        }
+
+        export interface GetManifestForFrameResponse {
+            /**
+             * Manifest URL for document in the given frame.
+             */
+            manifestURL: string;
+        }
+
+        export interface ApplicationCacheStatusUpdatedEvent {
+            /**
+             * Identifier of the frame containing document whose application cache updated status.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Manifest URL.
+             */
+            manifestURL: string;
+            /**
+             * Updated application cache status.
+             */
+            status: integer;
+        }
+
+        export interface NetworkStateUpdatedEvent {
+            isNowOnline: boolean;
+        }
+    }
+
+    /**
+     * Audits domain allows investigation of page violations and possible improvements.
+     */
+    export namespace Audits {
+
+        /**
+         * Information about a cookie that is affected by an inspector issue.
+         */
+        export interface AffectedCookie {
+            /**
+             * The following three properties uniquely identify a cookie
+             */
+            name: string;
+            path: string;
+            domain: string;
+        }
+
+        /**
+         * Information about a request that is affected by an inspector issue.
+         */
+        export interface AffectedRequest {
+            /**
+             * The unique request id.
+             */
+            requestId: Network.RequestId;
+            url?: string;
+        }
+
+        /**
+         * Information about the frame affected by an inspector issue.
+         */
+        export interface AffectedFrame {
+            frameId: Page.FrameId;
+        }
+
+        export type SameSiteCookieExclusionReason = ('ExcludeSameSiteUnspecifiedTreatedAsLax' | 'ExcludeSameSiteNoneInsecure' | 'ExcludeSameSiteLax' | 'ExcludeSameSiteStrict');
+
+        export type SameSiteCookieWarningReason = ('WarnSameSiteUnspecifiedCrossSiteContext' | 'WarnSameSiteNoneInsecure' | 'WarnSameSiteUnspecifiedLaxAllowUnsafe' | 'WarnSameSiteStrictLaxDowngradeStrict' | 'WarnSameSiteStrictCrossDowngradeStrict' | 'WarnSameSiteStrictCrossDowngradeLax' | 'WarnSameSiteLaxCrossDowngradeStrict' | 'WarnSameSiteLaxCrossDowngradeLax');
+
+        export type SameSiteCookieOperation = ('SetCookie' | 'ReadCookie');
+
+        /**
+         * This information is currently necessary, as the front-end has a difficult
+         * time finding a specific cookie. With this, we can convey specific error
+         * information without the cookie.
+         */
+        export interface SameSiteCookieIssueDetails {
+            cookie: AffectedCookie;
+            cookieWarningReasons: SameSiteCookieWarningReason[];
+            cookieExclusionReasons: SameSiteCookieExclusionReason[];
+            /**
+             * Optionally identifies the site-for-cookies and the cookie url, which
+             * may be used by the front-end as additional context.
+             */
+            operation: SameSiteCookieOperation;
+            siteForCookies?: string;
+            cookieUrl?: string;
+            request?: AffectedRequest;
+        }
+
+        export type MixedContentResolutionStatus = ('MixedContentBlocked' | 'MixedContentAutomaticallyUpgraded' | 'MixedContentWarning');
+
+        export type MixedContentResourceType = ('Audio' | 'Beacon' | 'CSPReport' | 'Download' | 'EventSource' | 'Favicon' | 'Font' | 'Form' | 'Frame' | 'Image' | 'Import' | 'Manifest' | 'Ping' | 'PluginData' | 'PluginResource' | 'Prefetch' | 'Resource' | 'Script' | 'ServiceWorker' | 'SharedWorker' | 'Stylesheet' | 'Track' | 'Video' | 'Worker' | 'XMLHttpRequest' | 'XSLT');
+
+        export interface MixedContentIssueDetails {
+            /**
+             * The type of resource causing the mixed content issue (css, js, iframe,
+             * form,...). Marked as optional because it is mapped to from
+             * blink::mojom::RequestContextType, which will be replaced
+             * by network::mojom::RequestDestination
+             */
+            resourceType?: MixedContentResourceType;
+            /**
+             * The way the mixed content issue is being resolved.
+             */
+            resolutionStatus: MixedContentResolutionStatus;
+            /**
+             * The unsafe http url causing the mixed content issue.
+             */
+            insecureURL: string;
+            /**
+             * The url responsible for the call to an unsafe url.
+             */
+            mainResourceURL: string;
+            /**
+             * The mixed content request.
+             * Does not always exist (e.g. for unsafe form submission urls).
+             */
+            request?: AffectedRequest;
+            /**
+             * Optional because not every mixed content issue is necessarily linked to a frame.
+             */
+            frame?: AffectedFrame;
+        }
+
+        /**
+         * Enum indicating the reason a response has been blocked. These reasons are
+         * refinements of the net error BLOCKED_BY_RESPONSE.
+         */
+        export type BlockedByResponseReason = ('CoepFrameResourceNeedsCoepHeader' | 'CoopSandboxedIFrameCannotNavigateToCoopPage' | 'CorpNotSameOrigin' | 'CorpNotSameOriginAfterDefaultedToSameOriginByCoep' | 'CorpNotSameSite');
+
+        /**
+         * Details for a request that has been blocked with the BLOCKED_BY_RESPONSE
+         * code. Currently only used for COEP/COOP, but may be extended to include
+         * some CSP errors in the future.
+         */
+        export interface BlockedByResponseIssueDetails {
+            request: AffectedRequest;
+            parentFrame?: AffectedFrame;
+            blockedFrame?: AffectedFrame;
+            reason: BlockedByResponseReason;
+        }
+
+        export type HeavyAdResolutionStatus = ('HeavyAdBlocked' | 'HeavyAdWarning');
+
+        export type HeavyAdReason = ('NetworkTotalLimit' | 'CpuTotalLimit' | 'CpuPeakLimit');
+
+        export interface HeavyAdIssueDetails {
+            /**
+             * The resolution status, either blocking the content or warning.
+             */
+            resolution: HeavyAdResolutionStatus;
+            /**
+             * The reason the ad was blocked, total network or cpu or peak cpu.
+             */
+            reason: HeavyAdReason;
+            /**
+             * The frame that was blocked.
+             */
+            frame: AffectedFrame;
+        }
+
+        export type ContentSecurityPolicyViolationType = ('kInlineViolation' | 'kEvalViolation' | 'kURLViolation' | 'kTrustedTypesSinkViolation' | 'kTrustedTypesPolicyViolation');
+
+        export interface SourceCodeLocation {
+            scriptId?: Runtime.ScriptId;
+            url: string;
+            lineNumber: integer;
+            columnNumber: integer;
+        }
+
+        export interface ContentSecurityPolicyIssueDetails {
+            /**
+             * The url not included in allowed sources.
+             */
+            blockedURL?: string;
+            /**
+             * Specific directive that is violated, causing the CSP issue.
+             */
+            violatedDirective: string;
+            isReportOnly: boolean;
+            contentSecurityPolicyViolationType: ContentSecurityPolicyViolationType;
+            frameAncestor?: AffectedFrame;
+            sourceCodeLocation?: SourceCodeLocation;
+            violatingNodeId?: DOM.BackendNodeId;
+        }
+
+        export type SharedArrayBufferIssueType = ('TransferIssue' | 'CreationIssue');
+
+        /**
+         * Details for a issue arising from an SAB being instantiated in, or
+         * transferred to a context that is not cross-origin isolated.
+         */
+        export interface SharedArrayBufferIssueDetails {
+            sourceCodeLocation: SourceCodeLocation;
+            isWarning: boolean;
+            type: SharedArrayBufferIssueType;
+        }
+
+        export type TwaQualityEnforcementViolationType = ('kHttpError' | 'kUnavailableOffline' | 'kDigitalAssetLinks');
+
+        export interface TrustedWebActivityIssueDetails {
+            /**
+             * The url that triggers the violation.
+             */
+            url: string;
+            violationType: TwaQualityEnforcementViolationType;
+            httpStatusCode?: integer;
+            /**
+             * The package name of the Trusted Web Activity client app. This field is
+             * only used when violation type is kDigitalAssetLinks.
+             */
+            packageName?: string;
+            /**
+             * The signature of the Trusted Web Activity client app. This field is only
+             * used when violation type is kDigitalAssetLinks.
+             */
+            signature?: string;
+        }
+
+        export interface LowTextContrastIssueDetails {
+            violatingNodeId: DOM.BackendNodeId;
+            violatingNodeSelector: string;
+            contrastRatio: number;
+            thresholdAA: number;
+            thresholdAAA: number;
+            fontSize: string;
+            fontWeight: string;
+        }
+
+        /**
+         * Details for a CORS related issue, e.g. a warning or error related to
+         * CORS RFC1918 enforcement.
+         */
+        export interface CorsIssueDetails {
+            corsErrorStatus: Network.CorsErrorStatus;
+            isWarning: boolean;
+            request: AffectedRequest;
+            location?: SourceCodeLocation;
+            initiatorOrigin?: string;
+            resourceIPAddressSpace?: Network.IPAddressSpace;
+            clientSecurityState?: Network.ClientSecurityState;
+        }
+
+        export type AttributionReportingIssueType = ('PermissionPolicyDisabled' | 'InvalidAttributionSourceEventId' | 'InvalidAttributionData' | 'AttributionSourceUntrustworthyOrigin' | 'AttributionUntrustworthyOrigin');
+
+        /**
+         * Details for issues around "Attribution Reporting API" usage.
+         * Explainer: https://github.com/WICG/conversion-measurement-api
+         */
+        export interface AttributionReportingIssueDetails {
+            violationType: AttributionReportingIssueType;
+            frame?: AffectedFrame;
+            request?: AffectedRequest;
+            violatingNodeId?: DOM.BackendNodeId;
+            invalidParameter?: string;
+        }
+
+        /**
+         * Details for issues about documents in Quirks Mode
+         * or Limited Quirks Mode that affects page layouting.
+         */
+        export interface QuirksModeIssueDetails {
+            /**
+             * If false, it means the document's mode is "quirks"
+             * instead of "limited-quirks".
+             */
+            isLimitedQuirksMode: boolean;
+            documentNodeId: DOM.BackendNodeId;
+            url: string;
+            frameId: Page.FrameId;
+            loaderId: Network.LoaderId;
+        }
+
+        /**
+         * A unique identifier for the type of issue. Each type may use one of the
+         * optional fields in InspectorIssueDetails to convey more specific
+         * information about the kind of issue.
+         */
+        export type InspectorIssueCode = ('SameSiteCookieIssue' | 'MixedContentIssue' | 'BlockedByResponseIssue' | 'HeavyAdIssue' | 'ContentSecurityPolicyIssue' | 'SharedArrayBufferIssue' | 'TrustedWebActivityIssue' | 'LowTextContrastIssue' | 'CorsIssue' | 'AttributionReportingIssue' | 'QuirksModeIssue');
+
+        /**
+         * This struct holds a list of optional fields with additional information
+         * specific to the kind of issue. When adding a new issue code, please also
+         * add a new optional field to this type.
+         */
+        export interface InspectorIssueDetails {
+            sameSiteCookieIssueDetails?: SameSiteCookieIssueDetails;
+            mixedContentIssueDetails?: MixedContentIssueDetails;
+            blockedByResponseIssueDetails?: BlockedByResponseIssueDetails;
+            heavyAdIssueDetails?: HeavyAdIssueDetails;
+            contentSecurityPolicyIssueDetails?: ContentSecurityPolicyIssueDetails;
+            sharedArrayBufferIssueDetails?: SharedArrayBufferIssueDetails;
+            twaQualityEnforcementDetails?: TrustedWebActivityIssueDetails;
+            lowTextContrastIssueDetails?: LowTextContrastIssueDetails;
+            corsIssueDetails?: CorsIssueDetails;
+            attributionReportingIssueDetails?: AttributionReportingIssueDetails;
+            quirksModeIssueDetails?: QuirksModeIssueDetails;
+        }
+
+        /**
+         * An inspector issue reported from the back-end.
+         */
+        export interface InspectorIssue {
+            code: InspectorIssueCode;
+            details: InspectorIssueDetails;
+        }
+
+        export const enum GetEncodedResponseRequestEncoding {
+            Webp = 'webp',
+            Jpeg = 'jpeg',
+            Png = 'png',
+        }
+
+        export interface GetEncodedResponseRequest {
+            /**
+             * Identifier of the network request to get content for.
+             */
+            requestId: Network.RequestId;
+            /**
+             * The encoding to use. (GetEncodedResponseRequestEncoding enum)
+             */
+            encoding: ('webp' | 'jpeg' | 'png');
+            /**
+             * The quality of the encoding (0-1). (defaults to 1)
+             */
+            quality?: number;
+            /**
+             * Whether to only return the size information (defaults to false).
+             */
+            sizeOnly?: boolean;
+        }
+
+        export interface GetEncodedResponseResponse {
+            /**
+             * The encoded body as a base64 string. Omitted if sizeOnly is true. (Encoded as a base64 string when passed over JSON)
+             */
+            body?: string;
+            /**
+             * Size before re-encoding.
+             */
+            originalSize: integer;
+            /**
+             * Size after re-encoding.
+             */
+            encodedSize: integer;
+        }
+
+        export interface CheckContrastRequest {
+            /**
+             * Whether to report WCAG AAA level issues. Default is false.
+             */
+            reportAAA?: boolean;
+        }
+
+        export interface IssueAddedEvent {
+            issue: InspectorIssue;
+        }
+    }
+
+    /**
+     * Defines events for background web platform features.
+     */
+    export namespace BackgroundService {
+
+        /**
+         * The Background Service that will be associated with the commands/events.
+         * Every Background Service operates independently, but they share the same
+         * API.
+         */
+        export type ServiceName = ('backgroundFetch' | 'backgroundSync' | 'pushMessaging' | 'notifications' | 'paymentHandler' | 'periodicBackgroundSync');
+
+        /**
+         * A key-value pair for additional event information to pass along.
+         */
+        export interface EventMetadata {
+            key: string;
+            value: string;
+        }
+
+        export interface BackgroundServiceEvent {
+            /**
+             * Timestamp of the event (in seconds).
+             */
+            timestamp: Network.TimeSinceEpoch;
+            /**
+             * The origin this event belongs to.
+             */
+            origin: string;
+            /**
+             * The Service Worker ID that initiated the event.
+             */
+            serviceWorkerRegistrationId: ServiceWorker.RegistrationID;
+            /**
+             * The Background Service this event belongs to.
+             */
+            service: ServiceName;
+            /**
+             * A description of the event.
+             */
+            eventName: string;
+            /**
+             * An identifier that groups related events together.
+             */
+            instanceId: string;
+            /**
+             * A list of event-specific information.
+             */
+            eventMetadata: EventMetadata[];
+        }
+
+        export interface StartObservingRequest {
+            service: ServiceName;
+        }
+
+        export interface StopObservingRequest {
+            service: ServiceName;
+        }
+
+        export interface SetRecordingRequest {
+            shouldRecord: boolean;
+            service: ServiceName;
+        }
+
+        export interface ClearEventsRequest {
+            service: ServiceName;
+        }
+
+        /**
+         * Called when the recording state for the service has been updated.
+         */
+        export interface RecordingStateChangedEvent {
+            isRecording: boolean;
+            service: ServiceName;
+        }
+
+        /**
+         * Called with all existing backgroundServiceEvents when enabled, and all new
+         * events afterwards if enabled and recording.
+         */
+        export interface BackgroundServiceEventReceivedEvent {
+            backgroundServiceEvent: BackgroundServiceEvent;
+        }
+    }
+
+    /**
+     * The Browser domain defines methods and events for browser managing.
+     */
+    export namespace Browser {
+
+        export type BrowserContextID = string;
+
+        export type WindowID = integer;
+
+        /**
+         * The state of the browser window.
+         */
+        export type WindowState = ('normal' | 'minimized' | 'maximized' | 'fullscreen');
+
+        /**
+         * Browser window bounds information
+         */
+        export interface Bounds {
+            /**
+             * The offset from the left edge of the screen to the window in pixels.
+             */
+            left?: integer;
+            /**
+             * The offset from the top edge of the screen to the window in pixels.
+             */
+            top?: integer;
+            /**
+             * The window width in pixels.
+             */
+            width?: integer;
+            /**
+             * The window height in pixels.
+             */
+            height?: integer;
+            /**
+             * The window state. Default to normal.
+             */
+            windowState?: WindowState;
+        }
+
+        export type PermissionType = ('accessibilityEvents' | 'audioCapture' | 'backgroundSync' | 'backgroundFetch' | 'clipboardReadWrite' | 'clipboardSanitizedWrite' | 'displayCapture' | 'durableStorage' | 'flash' | 'geolocation' | 'midi' | 'midiSysex' | 'nfc' | 'notifications' | 'paymentHandler' | 'periodicBackgroundSync' | 'protectedMediaIdentifier' | 'sensors' | 'videoCapture' | 'videoCapturePanTiltZoom' | 'idleDetection' | 'wakeLockScreen' | 'wakeLockSystem');
+
+        export type PermissionSetting = ('granted' | 'denied' | 'prompt');
+
+        /**
+         * Definition of PermissionDescriptor defined in the Permissions API:
+         * https://w3c.github.io/permissions/#dictdef-permissiondescriptor.
+         */
+        export interface PermissionDescriptor {
+            /**
+             * Name of permission.
+             * See https://cs.chromium.org/chromium/src/third_party/blink/renderer/modules/permissions/permission_descriptor.idl for valid permission names.
+             */
+            name: string;
+            /**
+             * For "midi" permission, may also specify sysex control.
+             */
+            sysex?: boolean;
+            /**
+             * For "push" permission, may specify userVisibleOnly.
+             * Note that userVisibleOnly = true is the only currently supported type.
+             */
+            userVisibleOnly?: boolean;
+            /**
+             * For "clipboard" permission, may specify allowWithoutSanitization.
+             */
+            allowWithoutSanitization?: boolean;
+            /**
+             * For "camera" permission, may specify panTiltZoom.
+             */
+            panTiltZoom?: boolean;
+        }
+
+        /**
+         * Browser command ids used by executeBrowserCommand.
+         */
+        export type BrowserCommandId = ('openTabSearch' | 'closeTabSearch');
+
+        /**
+         * Chrome histogram bucket.
+         */
+        export interface Bucket {
+            /**
+             * Minimum value (inclusive).
+             */
+            low: integer;
+            /**
+             * Maximum value (exclusive).
+             */
+            high: integer;
+            /**
+             * Number of samples.
+             */
+            count: integer;
+        }
+
+        /**
+         * Chrome histogram.
+         */
+        export interface Histogram {
+            /**
+             * Name.
+             */
+            name: string;
+            /**
+             * Sum of sample values.
+             */
+            sum: integer;
+            /**
+             * Total number of samples.
+             */
+            count: integer;
+            /**
+             * Buckets.
+             */
+            buckets: Bucket[];
+        }
+
+        export interface SetPermissionRequest {
+            /**
+             * Descriptor of permission to override.
+             */
+            permission: PermissionDescriptor;
+            /**
+             * Setting of the permission.
+             */
+            setting: PermissionSetting;
+            /**
+             * Origin the permission applies to, all origins if not specified.
+             */
+            origin?: string;
+            /**
+             * Context to override. When omitted, default browser context is used.
+             */
+            browserContextId?: BrowserContextID;
+        }
+
+        export interface GrantPermissionsRequest {
+            permissions: PermissionType[];
+            /**
+             * Origin the permission applies to, all origins if not specified.
+             */
+            origin?: string;
+            /**
+             * BrowserContext to override permissions. When omitted, default browser context is used.
+             */
+            browserContextId?: BrowserContextID;
+        }
+
+        export interface ResetPermissionsRequest {
+            /**
+             * BrowserContext to reset permissions. When omitted, default browser context is used.
+             */
+            browserContextId?: BrowserContextID;
+        }
+
+        export const enum SetDownloadBehaviorRequestBehavior {
+            Deny = 'deny',
+            Allow = 'allow',
+            AllowAndName = 'allowAndName',
+            Default = 'default',
+        }
+
+        export interface SetDownloadBehaviorRequest {
+            /**
+             * Whether to allow all or deny all download requests, or use default Chrome behavior if
+             * available (otherwise deny). |allowAndName| allows download and names files according to
+             * their dowmload guids. (SetDownloadBehaviorRequestBehavior enum)
+             */
+            behavior: ('deny' | 'allow' | 'allowAndName' | 'default');
+            /**
+             * BrowserContext to set download behavior. When omitted, default browser context is used.
+             */
+            browserContextId?: BrowserContextID;
+            /**
+             * The default path to save downloaded files to. This is required if behavior is set to 'allow'
+             * or 'allowAndName'.
+             */
+            downloadPath?: string;
+            /**
+             * Whether to emit download events (defaults to false).
+             */
+            eventsEnabled?: boolean;
+        }
+
+        export interface CancelDownloadRequest {
+            /**
+             * Global unique identifier of the download.
+             */
+            guid: string;
+            /**
+             * BrowserContext to perform the action in. When omitted, default browser context is used.
+             */
+            browserContextId?: BrowserContextID;
+        }
+
+        export interface GetVersionResponse {
+            /**
+             * Protocol version.
+             */
+            protocolVersion: string;
+            /**
+             * Product name.
+             */
+            product: string;
+            /**
+             * Product revision.
+             */
+            revision: string;
+            /**
+             * User-Agent.
+             */
+            userAgent: string;
+            /**
+             * V8 version.
+             */
+            jsVersion: string;
+        }
+
+        export interface GetBrowserCommandLineResponse {
+            /**
+             * Commandline parameters
+             */
+            arguments: string[];
+        }
+
+        export interface GetHistogramsRequest {
+            /**
+             * Requested substring in name. Only histograms which have query as a
+             * substring in their name are extracted. An empty or absent query returns
+             * all histograms.
+             */
+            query?: string;
+            /**
+             * If true, retrieve delta since last call.
+             */
+            delta?: boolean;
+        }
+
+        export interface GetHistogramsResponse {
+            /**
+             * Histograms.
+             */
+            histograms: Histogram[];
+        }
+
+        export interface GetHistogramRequest {
+            /**
+             * Requested histogram name.
+             */
+            name: string;
+            /**
+             * If true, retrieve delta since last call.
+             */
+            delta?: boolean;
+        }
+
+        export interface GetHistogramResponse {
+            /**
+             * Histogram.
+             */
+            histogram: Histogram;
+        }
+
+        export interface GetWindowBoundsRequest {
+            /**
+             * Browser window id.
+             */
+            windowId: WindowID;
+        }
+
+        export interface GetWindowBoundsResponse {
+            /**
+             * Bounds information of the window. When window state is 'minimized', the restored window
+             * position and size are returned.
+             */
+            bounds: Bounds;
+        }
+
+        export interface GetWindowForTargetRequest {
+            /**
+             * Devtools agent host id. If called as a part of the session, associated targetId is used.
+             */
+            targetId?: Target.TargetID;
+        }
+
+        export interface GetWindowForTargetResponse {
+            /**
+             * Browser window id.
+             */
+            windowId: WindowID;
+            /**
+             * Bounds information of the window. When window state is 'minimized', the restored window
+             * position and size are returned.
+             */
+            bounds: Bounds;
+        }
+
+        export interface SetWindowBoundsRequest {
+            /**
+             * Browser window id.
+             */
+            windowId: WindowID;
+            /**
+             * New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined
+             * with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged.
+             */
+            bounds: Bounds;
+        }
+
+        export interface SetDockTileRequest {
+            badgeLabel?: string;
+            /**
+             * Png encoded image. (Encoded as a base64 string when passed over JSON)
+             */
+            image?: string;
+        }
+
+        export interface ExecuteBrowserCommandRequest {
+            commandId: BrowserCommandId;
+        }
+
+        /**
+         * Fired when page is about to start a download.
+         */
+        export interface DownloadWillBeginEvent {
+            /**
+             * Id of the frame that caused the download to begin.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Global unique identifier of the download.
+             */
+            guid: string;
+            /**
+             * URL of the resource being downloaded.
+             */
+            url: string;
+            /**
+             * Suggested file name of the resource (the actual name of the file saved on disk may differ).
+             */
+            suggestedFilename: string;
+        }
+
+        export const enum DownloadProgressEventState {
+            InProgress = 'inProgress',
+            Completed = 'completed',
+            Canceled = 'canceled',
+        }
+
+        /**
+         * Fired when download makes progress. Last call has |done| == true.
+         */
+        export interface DownloadProgressEvent {
+            /**
+             * Global unique identifier of the download.
+             */
+            guid: string;
+            /**
+             * Total expected bytes to download.
+             */
+            totalBytes: number;
+            /**
+             * Total bytes received.
+             */
+            receivedBytes: number;
+            /**
+             * Download status. (DownloadProgressEventState enum)
+             */
+            state: ('inProgress' | 'completed' | 'canceled');
+        }
+    }
+
+    /**
+     * This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles)
+     * have an associated `id` used in subsequent operations on the related object. Each object type has
+     * a specific `id` structure, and those are not interchangeable between objects of different kinds.
+     * CSS objects can be loaded using the `get*ForNode()` calls (which accept a DOM node id). A client
+     * can also keep track of stylesheets via the `styleSheetAdded`/`styleSheetRemoved` events and
+     * subsequently load the required stylesheet contents using the `getStyleSheet[Text]()` methods.
+     */
+    export namespace CSS {
+
+        export type StyleSheetId = string;
+
+        /**
+         * Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent
+         * stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via
+         * inspector" rules), "regular" for regular stylesheets.
+         */
+        export type StyleSheetOrigin = ('injected' | 'user-agent' | 'inspector' | 'regular');
+
+        /**
+         * CSS rule collection for a single pseudo style.
+         */
+        export interface PseudoElementMatches {
+            /**
+             * Pseudo element type.
+             */
+            pseudoType: DOM.PseudoType;
+            /**
+             * Matches of CSS rules applicable to the pseudo style.
+             */
+            matches: RuleMatch[];
+        }
+
+        /**
+         * Inherited CSS rule collection from ancestor node.
+         */
+        export interface InheritedStyleEntry {
+            /**
+             * The ancestor node's inline style, if any, in the style inheritance chain.
+             */
+            inlineStyle?: CSSStyle;
+            /**
+             * Matches of CSS rules matching the ancestor node in the style inheritance chain.
+             */
+            matchedCSSRules: RuleMatch[];
+        }
+
+        /**
+         * Match data for a CSS rule.
+         */
+        export interface RuleMatch {
+            /**
+             * CSS rule in the match.
+             */
+            rule: CSSRule;
+            /**
+             * Matching selector indices in the rule's selectorList selectors (0-based).
+             */
+            matchingSelectors: integer[];
+        }
+
+        /**
+         * Data for a simple selector (these are delimited by commas in a selector list).
+         */
+        export interface Value {
+            /**
+             * Value text.
+             */
+            text: string;
+            /**
+             * Value range in the underlying resource (if available).
+             */
+            range?: SourceRange;
+        }
+
+        /**
+         * Selector list data.
+         */
+        export interface SelectorList {
+            /**
+             * Selectors in the list.
+             */
+            selectors: Value[];
+            /**
+             * Rule selector text.
+             */
+            text: string;
+        }
+
+        /**
+         * CSS stylesheet metainformation.
+         */
+        export interface CSSStyleSheetHeader {
+            /**
+             * The stylesheet identifier.
+             */
+            styleSheetId: StyleSheetId;
+            /**
+             * Owner frame identifier.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Stylesheet resource URL.
+             */
+            sourceURL: string;
+            /**
+             * URL of source map associated with the stylesheet (if any).
+             */
+            sourceMapURL?: string;
+            /**
+             * Stylesheet origin.
+             */
+            origin: StyleSheetOrigin;
+            /**
+             * Stylesheet title.
+             */
+            title: string;
+            /**
+             * The backend id for the owner node of the stylesheet.
+             */
+            ownerNode?: DOM.BackendNodeId;
+            /**
+             * Denotes whether the stylesheet is disabled.
+             */
+            disabled: boolean;
+            /**
+             * Whether the sourceURL field value comes from the sourceURL comment.
+             */
+            hasSourceURL?: boolean;
+            /**
+             * Whether this stylesheet is created for STYLE tag by parser. This flag is not set for
+             * document.written STYLE tags.
+             */
+            isInline: boolean;
+            /**
+             * Whether this stylesheet is mutable. Inline stylesheets become mutable
+             * after they have been modified via CSSOM API.
+             * <link> element's stylesheets become mutable only if DevTools modifies them.
+             * Constructed stylesheets (new CSSStyleSheet()) are mutable immediately after creation.
+             */
+            isMutable: boolean;
+            /**
+             * Whether this stylesheet is a constructed stylesheet (created using new CSSStyleSheet()).
+             */
+            isConstructed: boolean;
+            /**
+             * Line offset of the stylesheet within the resource (zero based).
+             */
+            startLine: number;
+            /**
+             * Column offset of the stylesheet within the resource (zero based).
+             */
+            startColumn: number;
+            /**
+             * Size of the content (in characters).
+             */
+            length: number;
+            /**
+             * Line offset of the end of the stylesheet within the resource (zero based).
+             */
+            endLine: number;
+            /**
+             * Column offset of the end of the stylesheet within the resource (zero based).
+             */
+            endColumn: number;
+        }
+
+        /**
+         * CSS rule representation.
+         */
+        export interface CSSRule {
+            /**
+             * The css style sheet identifier (absent for user agent stylesheet and user-specified
+             * stylesheet rules) this rule came from.
+             */
+            styleSheetId?: StyleSheetId;
+            /**
+             * Rule selector data.
+             */
+            selectorList: SelectorList;
+            /**
+             * Parent stylesheet's origin.
+             */
+            origin: StyleSheetOrigin;
+            /**
+             * Associated style declaration.
+             */
+            style: CSSStyle;
+            /**
+             * Media list array (for rules involving media queries). The array enumerates media queries
+             * starting with the innermost one, going outwards.
+             */
+            media?: CSSMedia[];
+        }
+
+        /**
+         * CSS coverage information.
+         */
+        export interface RuleUsage {
+            /**
+             * The css style sheet identifier (absent for user agent stylesheet and user-specified
+             * stylesheet rules) this rule came from.
+             */
+            styleSheetId: StyleSheetId;
+            /**
+             * Offset of the start of the rule (including selector) from the beginning of the stylesheet.
+             */
+            startOffset: number;
+            /**
+             * Offset of the end of the rule body from the beginning of the stylesheet.
+             */
+            endOffset: number;
+            /**
+             * Indicates whether the rule was actually used by some element in the page.
+             */
+            used: boolean;
+        }
+
+        /**
+         * Text range within a resource. All numbers are zero-based.
+         */
+        export interface SourceRange {
+            /**
+             * Start line of range.
+             */
+            startLine: integer;
+            /**
+             * Start column of range (inclusive).
+             */
+            startColumn: integer;
+            /**
+             * End line of range
+             */
+            endLine: integer;
+            /**
+             * End column of range (exclusive).
+             */
+            endColumn: integer;
+        }
+
+        export interface ShorthandEntry {
+            /**
+             * Shorthand name.
+             */
+            name: string;
+            /**
+             * Shorthand value.
+             */
+            value: string;
+            /**
+             * Whether the property has "!important" annotation (implies `false` if absent).
+             */
+            important?: boolean;
+        }
+
+        export interface CSSComputedStyleProperty {
+            /**
+             * Computed style property name.
+             */
+            name: string;
+            /**
+             * Computed style property value.
+             */
+            value: string;
+        }
+
+        /**
+         * CSS style representation.
+         */
+        export interface CSSStyle {
+            /**
+             * The css style sheet identifier (absent for user agent stylesheet and user-specified
+             * stylesheet rules) this rule came from.
+             */
+            styleSheetId?: StyleSheetId;
+            /**
+             * CSS properties in the style.
+             */
+            cssProperties: CSSProperty[];
+            /**
+             * Computed values for all shorthands found in the style.
+             */
+            shorthandEntries: ShorthandEntry[];
+            /**
+             * Style declaration text (if available).
+             */
+            cssText?: string;
+            /**
+             * Style declaration range in the enclosing stylesheet (if available).
+             */
+            range?: SourceRange;
+        }
+
+        /**
+         * CSS property declaration data.
+         */
+        export interface CSSProperty {
+            /**
+             * The property name.
+             */
+            name: string;
+            /**
+             * The property value.
+             */
+            value: string;
+            /**
+             * Whether the property has "!important" annotation (implies `false` if absent).
+             */
+            important?: boolean;
+            /**
+             * Whether the property is implicit (implies `false` if absent).
+             */
+            implicit?: boolean;
+            /**
+             * The full property text as specified in the style.
+             */
+            text?: string;
+            /**
+             * Whether the property is understood by the browser (implies `true` if absent).
+             */
+            parsedOk?: boolean;
+            /**
+             * Whether the property is disabled by the user (present for source-based properties only).
+             */
+            disabled?: boolean;
+            /**
+             * The entire property range in the enclosing style declaration (if available).
+             */
+            range?: SourceRange;
+        }
+
+        export const enum CSSMediaSource {
+            MediaRule = 'mediaRule',
+            ImportRule = 'importRule',
+            LinkedSheet = 'linkedSheet',
+            InlineSheet = 'inlineSheet',
+        }
+
+        /**
+         * CSS media rule descriptor.
+         */
+        export interface CSSMedia {
+            /**
+             * Media query text.
+             */
+            text: string;
+            /**
+             * Source of the media query: "mediaRule" if specified by a @media rule, "importRule" if
+             * specified by an @import rule, "linkedSheet" if specified by a "media" attribute in a linked
+             * stylesheet's LINK tag, "inlineSheet" if specified by a "media" attribute in an inline
+             * stylesheet's STYLE tag. (CSSMediaSource enum)
+             */
+            source: ('mediaRule' | 'importRule' | 'linkedSheet' | 'inlineSheet');
+            /**
+             * URL of the document containing the media query description.
+             */
+            sourceURL?: string;
+            /**
+             * The associated rule (@media or @import) header range in the enclosing stylesheet (if
+             * available).
+             */
+            range?: SourceRange;
+            /**
+             * Identifier of the stylesheet containing this object (if exists).
+             */
+            styleSheetId?: StyleSheetId;
+            /**
+             * Array of media queries.
+             */
+            mediaList?: MediaQuery[];
+        }
+
+        /**
+         * Media query descriptor.
+         */
+        export interface MediaQuery {
+            /**
+             * Array of media query expressions.
+             */
+            expressions: MediaQueryExpression[];
+            /**
+             * Whether the media query condition is satisfied.
+             */
+            active: boolean;
+        }
+
+        /**
+         * Media query expression descriptor.
+         */
+        export interface MediaQueryExpression {
+            /**
+             * Media query expression value.
+             */
+            value: number;
+            /**
+             * Media query expression units.
+             */
+            unit: string;
+            /**
+             * Media query expression feature.
+             */
+            feature: string;
+            /**
+             * The associated range of the value text in the enclosing stylesheet (if available).
+             */
+            valueRange?: SourceRange;
+            /**
+             * Computed length of media query expression (if applicable).
+             */
+            computedLength?: number;
+        }
+
+        /**
+         * Information about amount of glyphs that were rendered with given font.
+         */
+        export interface PlatformFontUsage {
+            /**
+             * Font's family name reported by platform.
+             */
+            familyName: string;
+            /**
+             * Indicates if the font was downloaded or resolved locally.
+             */
+            isCustomFont: boolean;
+            /**
+             * Amount of glyphs that were rendered with this font.
+             */
+            glyphCount: number;
+        }
+
+        /**
+         * Information about font variation axes for variable fonts
+         */
+        export interface FontVariationAxis {
+            /**
+             * The font-variation-setting tag (a.k.a. "axis tag").
+             */
+            tag: string;
+            /**
+             * Human-readable variation name in the default language (normally, "en").
+             */
+            name: string;
+            /**
+             * The minimum value (inclusive) the font supports for this tag.
+             */
+            minValue: number;
+            /**
+             * The maximum value (inclusive) the font supports for this tag.
+             */
+            maxValue: number;
+            /**
+             * The default value.
+             */
+            defaultValue: number;
+        }
+
+        /**
+         * Properties of a web font: https://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#font-descriptions
+         * and additional information such as platformFontFamily and fontVariationAxes.
+         */
+        export interface FontFace {
+            /**
+             * The font-family.
+             */
+            fontFamily: string;
+            /**
+             * The font-style.
+             */
+            fontStyle: string;
+            /**
+             * The font-variant.
+             */
+            fontVariant: string;
+            /**
+             * The font-weight.
+             */
+            fontWeight: string;
+            /**
+             * The font-stretch.
+             */
+            fontStretch: string;
+            /**
+             * The unicode-range.
+             */
+            unicodeRange: string;
+            /**
+             * The src.
+             */
+            src: string;
+            /**
+             * The resolved platform font family
+             */
+            platformFontFamily: string;
+            /**
+             * Available variation settings (a.k.a. "axes").
+             */
+            fontVariationAxes?: FontVariationAxis[];
+        }
+
+        /**
+         * CSS keyframes rule representation.
+         */
+        export interface CSSKeyframesRule {
+            /**
+             * Animation name.
+             */
+            animationName: Value;
+            /**
+             * List of keyframes.
+             */
+            keyframes: CSSKeyframeRule[];
+        }
+
+        /**
+         * CSS keyframe rule representation.
+         */
+        export interface CSSKeyframeRule {
+            /**
+             * The css style sheet identifier (absent for user agent stylesheet and user-specified
+             * stylesheet rules) this rule came from.
+             */
+            styleSheetId?: StyleSheetId;
+            /**
+             * Parent stylesheet's origin.
+             */
+            origin: StyleSheetOrigin;
+            /**
+             * Associated key text.
+             */
+            keyText: Value;
+            /**
+             * Associated style declaration.
+             */
+            style: CSSStyle;
+        }
+
+        /**
+         * A descriptor of operation to mutate style declaration text.
+         */
+        export interface StyleDeclarationEdit {
+            /**
+             * The css style sheet identifier.
+             */
+            styleSheetId: StyleSheetId;
+            /**
+             * The range of the style text in the enclosing stylesheet.
+             */
+            range: SourceRange;
+            /**
+             * New style text.
+             */
+            text: string;
+        }
+
+        export interface AddRuleRequest {
+            /**
+             * The css style sheet identifier where a new rule should be inserted.
+             */
+            styleSheetId: StyleSheetId;
+            /**
+             * The text of a new rule.
+             */
+            ruleText: string;
+            /**
+             * Text position of a new rule in the target style sheet.
+             */
+            location: SourceRange;
+        }
+
+        export interface AddRuleResponse {
+            /**
+             * The newly created rule.
+             */
+            rule: CSSRule;
+        }
+
+        export interface CollectClassNamesRequest {
+            styleSheetId: StyleSheetId;
+        }
+
+        export interface CollectClassNamesResponse {
+            /**
+             * Class name list.
+             */
+            classNames: string[];
+        }
+
+        export interface CreateStyleSheetRequest {
+            /**
+             * Identifier of the frame where "via-inspector" stylesheet should be created.
+             */
+            frameId: Page.FrameId;
+        }
+
+        export interface CreateStyleSheetResponse {
+            /**
+             * Identifier of the created "via-inspector" stylesheet.
+             */
+            styleSheetId: StyleSheetId;
+        }
+
+        export interface ForcePseudoStateRequest {
+            /**
+             * The element id for which to force the pseudo state.
+             */
+            nodeId: DOM.NodeId;
+            /**
+             * Element pseudo classes to force when computing the element's style.
+             */
+            forcedPseudoClasses: string[];
+        }
+
+        export interface GetBackgroundColorsRequest {
+            /**
+             * Id of the node to get background colors for.
+             */
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetBackgroundColorsResponse {
+            /**
+             * The range of background colors behind this element, if it contains any visible text. If no
+             * visible text is present, this will be undefined. In the case of a flat background color,
+             * this will consist of simply that color. In the case of a gradient, this will consist of each
+             * of the color stops. For anything more complicated, this will be an empty array. Images will
+             * be ignored (as if the image had failed to load).
+             */
+            backgroundColors?: string[];
+            /**
+             * The computed font size for this node, as a CSS computed value string (e.g. '12px').
+             */
+            computedFontSize?: string;
+            /**
+             * The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or
+             * '100').
+             */
+            computedFontWeight?: string;
+        }
+
+        export interface GetComputedStyleForNodeRequest {
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetComputedStyleForNodeResponse {
+            /**
+             * Computed style for the specified DOM node.
+             */
+            computedStyle: CSSComputedStyleProperty[];
+        }
+
+        export interface GetInlineStylesForNodeRequest {
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetInlineStylesForNodeResponse {
+            /**
+             * Inline style for the specified DOM node.
+             */
+            inlineStyle?: CSSStyle;
+            /**
+             * Attribute-defined element style (e.g. resulting from "width=20 height=100%").
+             */
+            attributesStyle?: CSSStyle;
+        }
+
+        export interface GetMatchedStylesForNodeRequest {
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetMatchedStylesForNodeResponse {
+            /**
+             * Inline style for the specified DOM node.
+             */
+            inlineStyle?: CSSStyle;
+            /**
+             * Attribute-defined element style (e.g. resulting from "width=20 height=100%").
+             */
+            attributesStyle?: CSSStyle;
+            /**
+             * CSS rules matching this node, from all applicable stylesheets.
+             */
+            matchedCSSRules?: RuleMatch[];
+            /**
+             * Pseudo style matches for this node.
+             */
+            pseudoElements?: PseudoElementMatches[];
+            /**
+             * A chain of inherited styles (from the immediate node parent up to the DOM tree root).
+             */
+            inherited?: InheritedStyleEntry[];
+            /**
+             * A list of CSS keyframed animations matching this node.
+             */
+            cssKeyframesRules?: CSSKeyframesRule[];
+        }
+
+        export interface GetMediaQueriesResponse {
+            medias: CSSMedia[];
+        }
+
+        export interface GetPlatformFontsForNodeRequest {
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetPlatformFontsForNodeResponse {
+            /**
+             * Usage statistics for every employed platform font.
+             */
+            fonts: PlatformFontUsage[];
+        }
+
+        export interface GetStyleSheetTextRequest {
+            styleSheetId: StyleSheetId;
+        }
+
+        export interface GetStyleSheetTextResponse {
+            /**
+             * The stylesheet text.
+             */
+            text: string;
+        }
+
+        export interface TrackComputedStyleUpdatesRequest {
+            propertiesToTrack: CSSComputedStyleProperty[];
+        }
+
+        export interface TakeComputedStyleUpdatesResponse {
+            /**
+             * The list of node Ids that have their tracked computed styles updated
+             */
+            nodeIds: DOM.NodeId[];
+        }
+
+        export interface SetEffectivePropertyValueForNodeRequest {
+            /**
+             * The element id for which to set property.
+             */
+            nodeId: DOM.NodeId;
+            propertyName: string;
+            value: string;
+        }
+
+        export interface SetKeyframeKeyRequest {
+            styleSheetId: StyleSheetId;
+            range: SourceRange;
+            keyText: string;
+        }
+
+        export interface SetKeyframeKeyResponse {
+            /**
+             * The resulting key text after modification.
+             */
+            keyText: Value;
+        }
+
+        export interface SetMediaTextRequest {
+            styleSheetId: StyleSheetId;
+            range: SourceRange;
+            text: string;
+        }
+
+        export interface SetMediaTextResponse {
+            /**
+             * The resulting CSS media rule after modification.
+             */
+            media: CSSMedia;
+        }
+
+        export interface SetRuleSelectorRequest {
+            styleSheetId: StyleSheetId;
+            range: SourceRange;
+            selector: string;
+        }
+
+        export interface SetRuleSelectorResponse {
+            /**
+             * The resulting selector list after modification.
+             */
+            selectorList: SelectorList;
+        }
+
+        export interface SetStyleSheetTextRequest {
+            styleSheetId: StyleSheetId;
+            text: string;
+        }
+
+        export interface SetStyleSheetTextResponse {
+            /**
+             * URL of source map associated with script (if any).
+             */
+            sourceMapURL?: string;
+        }
+
+        export interface SetStyleTextsRequest {
+            edits: StyleDeclarationEdit[];
+        }
+
+        export interface SetStyleTextsResponse {
+            /**
+             * The resulting styles after modification.
+             */
+            styles: CSSStyle[];
+        }
+
+        export interface StopRuleUsageTrackingResponse {
+            ruleUsage: RuleUsage[];
+        }
+
+        export interface TakeCoverageDeltaResponse {
+            coverage: RuleUsage[];
+            /**
+             * Monotonically increasing time, in seconds.
+             */
+            timestamp: number;
+        }
+
+        export interface SetLocalFontsEnabledRequest {
+            /**
+             * Whether rendering of local fonts is enabled.
+             */
+            enabled: boolean;
+        }
+
+        /**
+         * Fires whenever a web font is updated.  A non-empty font parameter indicates a successfully loaded
+         * web font
+         */
+        export interface FontsUpdatedEvent {
+            /**
+             * The web font that has loaded.
+             */
+            font?: FontFace;
+        }
+
+        /**
+         * Fired whenever an active document stylesheet is added.
+         */
+        export interface StyleSheetAddedEvent {
+            /**
+             * Added stylesheet metainfo.
+             */
+            header: CSSStyleSheetHeader;
+        }
+
+        /**
+         * Fired whenever a stylesheet is changed as a result of the client operation.
+         */
+        export interface StyleSheetChangedEvent {
+            styleSheetId: StyleSheetId;
+        }
+
+        /**
+         * Fired whenever an active document stylesheet is removed.
+         */
+        export interface StyleSheetRemovedEvent {
+            /**
+             * Identifier of the removed stylesheet.
+             */
+            styleSheetId: StyleSheetId;
+        }
+    }
+
+    export namespace CacheStorage {
+
+        /**
+         * Unique identifier of the Cache object.
+         */
+        export type CacheId = string;
+
+        /**
+         * type of HTTP response cached
+         */
+        export type CachedResponseType = ('basic' | 'cors' | 'default' | 'error' | 'opaqueResponse' | 'opaqueRedirect');
+
+        /**
+         * Data entry.
+         */
+        export interface DataEntry {
+            /**
+             * Request URL.
+             */
+            requestURL: string;
+            /**
+             * Request method.
+             */
+            requestMethod: string;
+            /**
+             * Request headers
+             */
+            requestHeaders: Header[];
+            /**
+             * Number of seconds since epoch.
+             */
+            responseTime: number;
+            /**
+             * HTTP response status code.
+             */
+            responseStatus: integer;
+            /**
+             * HTTP response status text.
+             */
+            responseStatusText: string;
+            /**
+             * HTTP response type
+             */
+            responseType: CachedResponseType;
+            /**
+             * Response headers
+             */
+            responseHeaders: Header[];
+        }
+
+        /**
+         * Cache identifier.
+         */
+        export interface Cache {
+            /**
+             * An opaque unique id of the cache.
+             */
+            cacheId: CacheId;
+            /**
+             * Security origin of the cache.
+             */
+            securityOrigin: string;
+            /**
+             * The name of the cache.
+             */
+            cacheName: string;
+        }
+
+        export interface Header {
+            name: string;
+            value: string;
+        }
+
+        /**
+         * Cached response
+         */
+        export interface CachedResponse {
+            /**
+             * Entry content, base64-encoded. (Encoded as a base64 string when passed over JSON)
+             */
+            body: string;
+        }
+
+        export interface DeleteCacheRequest {
+            /**
+             * Id of cache for deletion.
+             */
+            cacheId: CacheId;
+        }
+
+        export interface DeleteEntryRequest {
+            /**
+             * Id of cache where the entry will be deleted.
+             */
+            cacheId: CacheId;
+            /**
+             * URL spec of the request.
+             */
+            request: string;
+        }
+
+        export interface RequestCacheNamesRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+        }
+
+        export interface RequestCacheNamesResponse {
+            /**
+             * Caches for the security origin.
+             */
+            caches: Cache[];
+        }
+
+        export interface RequestCachedResponseRequest {
+            /**
+             * Id of cache that contains the entry.
+             */
+            cacheId: CacheId;
+            /**
+             * URL spec of the request.
+             */
+            requestURL: string;
+            /**
+             * headers of the request.
+             */
+            requestHeaders: Header[];
+        }
+
+        export interface RequestCachedResponseResponse {
+            /**
+             * Response read from the cache.
+             */
+            response: CachedResponse;
+        }
+
+        export interface RequestEntriesRequest {
+            /**
+             * ID of cache to get entries from.
+             */
+            cacheId: CacheId;
+            /**
+             * Number of records to skip.
+             */
+            skipCount?: integer;
+            /**
+             * Number of records to fetch.
+             */
+            pageSize?: integer;
+            /**
+             * If present, only return the entries containing this substring in the path
+             */
+            pathFilter?: string;
+        }
+
+        export interface RequestEntriesResponse {
+            /**
+             * Array of object store data entries.
+             */
+            cacheDataEntries: DataEntry[];
+            /**
+             * Count of returned entries from this storage. If pathFilter is empty, it
+             * is the count of all entries from this storage.
+             */
+            returnCount: number;
+        }
+    }
+
+    /**
+     * A domain for interacting with Cast, Presentation API, and Remote Playback API
+     * functionalities.
+     */
+    export namespace Cast {
+
+        export interface Sink {
+            name: string;
+            id: string;
+            /**
+             * Text describing the current session. Present only if there is an active
+             * session on the sink.
+             */
+            session?: string;
+        }
+
+        export interface EnableRequest {
+            presentationUrl?: string;
+        }
+
+        export interface SetSinkToUseRequest {
+            sinkName: string;
+        }
+
+        export interface StartTabMirroringRequest {
+            sinkName: string;
+        }
+
+        export interface StopCastingRequest {
+            sinkName: string;
+        }
+
+        /**
+         * This is fired whenever the list of available sinks changes. A sink is a
+         * device or a software surface that you can cast to.
+         */
+        export interface SinksUpdatedEvent {
+            sinks: Sink[];
+        }
+
+        /**
+         * This is fired whenever the outstanding issue/error message changes.
+         * |issueMessage| is empty if there is no issue.
+         */
+        export interface IssueUpdatedEvent {
+            issueMessage: string;
+        }
+    }
+
+    /**
+     * This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object
+     * that has an `id`. This `id` can be used to get additional information on the Node, resolve it into
+     * the JavaScript object wrapper, etc. It is important that client receives DOM events only for the
+     * nodes that are known to the client. Backend keeps track of the nodes that were sent to the client
+     * and never sends the same node twice. It is client's responsibility to collect information about
+     * the nodes that were sent to the client.<p>Note that `iframe` owner elements will return
+     * corresponding document elements as their child nodes.</p>
+     */
+    export namespace DOM {
+
+        /**
+         * Unique DOM node identifier.
+         */
+        export type NodeId = integer;
+
+        /**
+         * Unique DOM node identifier used to reference a node that may not have been pushed to the
+         * front-end.
+         */
+        export type BackendNodeId = integer;
+
+        /**
+         * Backend node with a friendly name.
+         */
+        export interface BackendNode {
+            /**
+             * `Node`'s nodeType.
+             */
+            nodeType: integer;
+            /**
+             * `Node`'s nodeName.
+             */
+            nodeName: string;
+            backendNodeId: BackendNodeId;
+        }
+
+        /**
+         * Pseudo element type.
+         */
+        export type PseudoType = ('first-line' | 'first-letter' | 'before' | 'after' | 'marker' | 'backdrop' | 'selection' | 'target-text' | 'spelling-error' | 'grammar-error' | 'first-line-inherited' | 'scrollbar' | 'scrollbar-thumb' | 'scrollbar-button' | 'scrollbar-track' | 'scrollbar-track-piece' | 'scrollbar-corner' | 'resizer' | 'input-list-button');
+
+        /**
+         * Shadow root type.
+         */
+        export type ShadowRootType = ('user-agent' | 'open' | 'closed');
+
+        /**
+         * Document compatibility mode.
+         */
+        export type CompatibilityMode = ('QuirksMode' | 'LimitedQuirksMode' | 'NoQuirksMode');
+
+        /**
+         * DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes.
+         * DOMNode is a base node mirror type.
+         */
+        export interface Node {
+            /**
+             * Node identifier that is passed into the rest of the DOM messages as the `nodeId`. Backend
+             * will only push node with given `id` once. It is aware of all requested nodes and will only
+             * fire DOM events for nodes known to the client.
+             */
+            nodeId: NodeId;
+            /**
+             * The id of the parent node if any.
+             */
+            parentId?: NodeId;
+            /**
+             * The BackendNodeId for this node.
+             */
+            backendNodeId: BackendNodeId;
+            /**
+             * `Node`'s nodeType.
+             */
+            nodeType: integer;
+            /**
+             * `Node`'s nodeName.
+             */
+            nodeName: string;
+            /**
+             * `Node`'s localName.
+             */
+            localName: string;
+            /**
+             * `Node`'s nodeValue.
+             */
+            nodeValue: string;
+            /**
+             * Child count for `Container` nodes.
+             */
+            childNodeCount?: integer;
+            /**
+             * Child nodes of this node when requested with children.
+             */
+            children?: Node[];
+            /**
+             * Attributes of the `Element` node in the form of flat array `[name1, value1, name2, value2]`.
+             */
+            attributes?: string[];
+            /**
+             * Document URL that `Document` or `FrameOwner` node points to.
+             */
+            documentURL?: string;
+            /**
+             * Base URL that `Document` or `FrameOwner` node uses for URL completion.
+             */
+            baseURL?: string;
+            /**
+             * `DocumentType`'s publicId.
+             */
+            publicId?: string;
+            /**
+             * `DocumentType`'s systemId.
+             */
+            systemId?: string;
+            /**
+             * `DocumentType`'s internalSubset.
+             */
+            internalSubset?: string;
+            /**
+             * `Document`'s XML version in case of XML documents.
+             */
+            xmlVersion?: string;
+            /**
+             * `Attr`'s name.
+             */
+            name?: string;
+            /**
+             * `Attr`'s value.
+             */
+            value?: string;
+            /**
+             * Pseudo element type for this node.
+             */
+            pseudoType?: PseudoType;
+            /**
+             * Shadow root type.
+             */
+            shadowRootType?: ShadowRootType;
+            /**
+             * Frame ID for frame owner elements.
+             */
+            frameId?: Page.FrameId;
+            /**
+             * Content document for frame owner elements.
+             */
+            contentDocument?: Node;
+            /**
+             * Shadow root list for given element host.
+             */
+            shadowRoots?: Node[];
+            /**
+             * Content document fragment for template elements.
+             */
+            templateContent?: Node;
+            /**
+             * Pseudo elements associated with this node.
+             */
+            pseudoElements?: Node[];
+            /**
+             * Deprecated, as the HTML Imports API has been removed (crbug.com/937746).
+             * This property used to return the imported document for the HTMLImport links.
+             * The property is always undefined now.
+             */
+            importedDocument?: Node;
+            /**
+             * Distributed nodes for given insertion point.
+             */
+            distributedNodes?: BackendNode[];
+            /**
+             * Whether the node is SVG.
+             */
+            isSVG?: boolean;
+            compatibilityMode?: CompatibilityMode;
+        }
+
+        /**
+         * A structure holding an RGBA color.
+         */
+        export interface RGBA {
+            /**
+             * The red component, in the [0-255] range.
+             */
+            r: integer;
+            /**
+             * The green component, in the [0-255] range.
+             */
+            g: integer;
+            /**
+             * The blue component, in the [0-255] range.
+             */
+            b: integer;
+            /**
+             * The alpha component, in the [0-1] range (default: 1).
+             */
+            a?: number;
+        }
+
+        /**
+         * An array of quad vertices, x immediately followed by y for each point, points clock-wise.
+         */
+        export type Quad = number[];
+
+        /**
+         * Box model.
+         */
+        export interface BoxModel {
+            /**
+             * Content box
+             */
+            content: Quad;
+            /**
+             * Padding box
+             */
+            padding: Quad;
+            /**
+             * Border box
+             */
+            border: Quad;
+            /**
+             * Margin box
+             */
+            margin: Quad;
+            /**
+             * Node width
+             */
+            width: integer;
+            /**
+             * Node height
+             */
+            height: integer;
+            /**
+             * Shape outside coordinates
+             */
+            shapeOutside?: ShapeOutsideInfo;
+        }
+
+        /**
+         * CSS Shape Outside details.
+         */
+        export interface ShapeOutsideInfo {
+            /**
+             * Shape bounds
+             */
+            bounds: Quad;
+            /**
+             * Shape coordinate details
+             */
+            shape: any[];
+            /**
+             * Margin shape bounds
+             */
+            marginShape: any[];
+        }
+
+        /**
+         * Rectangle.
+         */
+        export interface Rect {
+            /**
+             * X coordinate
+             */
+            x: number;
+            /**
+             * Y coordinate
+             */
+            y: number;
+            /**
+             * Rectangle width
+             */
+            width: number;
+            /**
+             * Rectangle height
+             */
+            height: number;
+        }
+
+        export interface CSSComputedStyleProperty {
+            /**
+             * Computed style property name.
+             */
+            name: string;
+            /**
+             * Computed style property value.
+             */
+            value: string;
+        }
+
+        export interface CollectClassNamesFromSubtreeRequest {
+            /**
+             * Id of the node to collect class names.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface CollectClassNamesFromSubtreeResponse {
+            /**
+             * Class name list.
+             */
+            classNames: string[];
+        }
+
+        export interface CopyToRequest {
+            /**
+             * Id of the node to copy.
+             */
+            nodeId: NodeId;
+            /**
+             * Id of the element to drop the copy into.
+             */
+            targetNodeId: NodeId;
+            /**
+             * Drop the copy before this node (if absent, the copy becomes the last child of
+             * `targetNodeId`).
+             */
+            insertBeforeNodeId?: NodeId;
+        }
+
+        export interface CopyToResponse {
+            /**
+             * Id of the node clone.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface DescribeNodeRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+            /**
+             * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
+             * entire subtree or provide an integer larger than 0.
+             */
+            depth?: integer;
+            /**
+             * Whether or not iframes and shadow roots should be traversed when returning the subtree
+             * (default is false).
+             */
+            pierce?: boolean;
+        }
+
+        export interface DescribeNodeResponse {
+            /**
+             * Node description.
+             */
+            node: Node;
+        }
+
+        export interface ScrollIntoViewIfNeededRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+            /**
+             * The rect to be scrolled into view, relative to the node's border box, in CSS pixels.
+             * When omitted, center of the node will be used, similar to Element.scrollIntoView.
+             */
+            rect?: Rect;
+        }
+
+        export interface DiscardSearchResultsRequest {
+            /**
+             * Unique search session identifier.
+             */
+            searchId: string;
+        }
+
+        export interface FocusRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface GetAttributesRequest {
+            /**
+             * Id of the node to retrieve attibutes for.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface GetAttributesResponse {
+            /**
+             * An interleaved array of node attribute names and values.
+             */
+            attributes: string[];
+        }
+
+        export interface GetBoxModelRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface GetBoxModelResponse {
+            /**
+             * Box model for the node.
+             */
+            model: BoxModel;
+        }
+
+        export interface GetContentQuadsRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface GetContentQuadsResponse {
+            /**
+             * Quads that describe node layout relative to viewport.
+             */
+            quads: Quad[];
+        }
+
+        export interface GetDocumentRequest {
+            /**
+             * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
+             * entire subtree or provide an integer larger than 0.
+             */
+            depth?: integer;
+            /**
+             * Whether or not iframes and shadow roots should be traversed when returning the subtree
+             * (default is false).
+             */
+            pierce?: boolean;
+        }
+
+        export interface GetDocumentResponse {
+            /**
+             * Resulting node.
+             */
+            root: Node;
+        }
+
+        export interface GetFlattenedDocumentRequest {
+            /**
+             * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
+             * entire subtree or provide an integer larger than 0.
+             */
+            depth?: integer;
+            /**
+             * Whether or not iframes and shadow roots should be traversed when returning the subtree
+             * (default is false).
+             */
+            pierce?: boolean;
+        }
+
+        export interface GetFlattenedDocumentResponse {
+            /**
+             * Resulting node.
+             */
+            nodes: Node[];
+        }
+
+        export interface GetNodesForSubtreeByStyleRequest {
+            /**
+             * Node ID pointing to the root of a subtree.
+             */
+            nodeId: NodeId;
+            /**
+             * The style to filter nodes by (includes nodes if any of properties matches).
+             */
+            computedStyles: CSSComputedStyleProperty[];
+            /**
+             * Whether or not iframes and shadow roots in the same target should be traversed when returning the
+             * results (default is false).
+             */
+            pierce?: boolean;
+        }
+
+        export interface GetNodesForSubtreeByStyleResponse {
+            /**
+             * Resulting nodes.
+             */
+            nodeIds: NodeId[];
+        }
+
+        export interface GetNodeForLocationRequest {
+            /**
+             * X coordinate.
+             */
+            x: integer;
+            /**
+             * Y coordinate.
+             */
+            y: integer;
+            /**
+             * False to skip to the nearest non-UA shadow root ancestor (default: false).
+             */
+            includeUserAgentShadowDOM?: boolean;
+            /**
+             * Whether to ignore pointer-events: none on elements and hit test them.
+             */
+            ignorePointerEventsNone?: boolean;
+        }
+
+        export interface GetNodeForLocationResponse {
+            /**
+             * Resulting node.
+             */
+            backendNodeId: BackendNodeId;
+            /**
+             * Frame this node belongs to.
+             */
+            frameId: Page.FrameId;
+            /**
+             * Id of the node at given coordinates, only when enabled and requested document.
+             */
+            nodeId?: NodeId;
+        }
+
+        export interface GetOuterHTMLRequest {
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface GetOuterHTMLResponse {
+            /**
+             * Outer HTML markup.
+             */
+            outerHTML: string;
+        }
+
+        export interface GetRelayoutBoundaryRequest {
+            /**
+             * Id of the node.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface GetRelayoutBoundaryResponse {
+            /**
+             * Relayout boundary node id for the given node.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface GetSearchResultsRequest {
+            /**
+             * Unique search session identifier.
+             */
+            searchId: string;
+            /**
+             * Start index of the search result to be returned.
+             */
+            fromIndex: integer;
+            /**
+             * End index of the search result to be returned.
+             */
+            toIndex: integer;
+        }
+
+        export interface GetSearchResultsResponse {
+            /**
+             * Ids of the search result nodes.
+             */
+            nodeIds: NodeId[];
+        }
+
+        export interface MoveToRequest {
+            /**
+             * Id of the node to move.
+             */
+            nodeId: NodeId;
+            /**
+             * Id of the element to drop the moved node into.
+             */
+            targetNodeId: NodeId;
+            /**
+             * Drop node before this one (if absent, the moved node becomes the last child of
+             * `targetNodeId`).
+             */
+            insertBeforeNodeId?: NodeId;
+        }
+
+        export interface MoveToResponse {
+            /**
+             * New id of the moved node.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface PerformSearchRequest {
+            /**
+             * Plain text or query selector or XPath search query.
+             */
+            query: string;
+            /**
+             * True to search in user agent shadow DOM.
+             */
+            includeUserAgentShadowDOM?: boolean;
+        }
+
+        export interface PerformSearchResponse {
+            /**
+             * Unique search session identifier.
+             */
+            searchId: string;
+            /**
+             * Number of search results.
+             */
+            resultCount: integer;
+        }
+
+        export interface PushNodeByPathToFrontendRequest {
+            /**
+             * Path to node in the proprietary format.
+             */
+            path: string;
+        }
+
+        export interface PushNodeByPathToFrontendResponse {
+            /**
+             * Id of the node for given path.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface PushNodesByBackendIdsToFrontendRequest {
+            /**
+             * The array of backend node ids.
+             */
+            backendNodeIds: BackendNodeId[];
+        }
+
+        export interface PushNodesByBackendIdsToFrontendResponse {
+            /**
+             * The array of ids of pushed nodes that correspond to the backend ids specified in
+             * backendNodeIds.
+             */
+            nodeIds: NodeId[];
+        }
+
+        export interface QuerySelectorRequest {
+            /**
+             * Id of the node to query upon.
+             */
+            nodeId: NodeId;
+            /**
+             * Selector string.
+             */
+            selector: string;
+        }
+
+        export interface QuerySelectorResponse {
+            /**
+             * Query selector result.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface QuerySelectorAllRequest {
+            /**
+             * Id of the node to query upon.
+             */
+            nodeId: NodeId;
+            /**
+             * Selector string.
+             */
+            selector: string;
+        }
+
+        export interface QuerySelectorAllResponse {
+            /**
+             * Query selector result.
+             */
+            nodeIds: NodeId[];
+        }
+
+        export interface RemoveAttributeRequest {
+            /**
+             * Id of the element to remove attribute from.
+             */
+            nodeId: NodeId;
+            /**
+             * Name of the attribute to remove.
+             */
+            name: string;
+        }
+
+        export interface RemoveNodeRequest {
+            /**
+             * Id of the node to remove.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface RequestChildNodesRequest {
+            /**
+             * Id of the node to get children for.
+             */
+            nodeId: NodeId;
+            /**
+             * The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
+             * entire subtree or provide an integer larger than 0.
+             */
+            depth?: integer;
+            /**
+             * Whether or not iframes and shadow roots should be traversed when returning the sub-tree
+             * (default is false).
+             */
+            pierce?: boolean;
+        }
+
+        export interface RequestNodeRequest {
+            /**
+             * JavaScript object id to convert into node.
+             */
+            objectId: Runtime.RemoteObjectId;
+        }
+
+        export interface RequestNodeResponse {
+            /**
+             * Node id for given object.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface ResolveNodeRequest {
+            /**
+             * Id of the node to resolve.
+             */
+            nodeId?: NodeId;
+            /**
+             * Backend identifier of the node to resolve.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * Symbolic group name that can be used to release multiple objects.
+             */
+            objectGroup?: string;
+            /**
+             * Execution context in which to resolve the node.
+             */
+            executionContextId?: Runtime.ExecutionContextId;
+        }
+
+        export interface ResolveNodeResponse {
+            /**
+             * JavaScript object wrapper for given node.
+             */
+            object: Runtime.RemoteObject;
+        }
+
+        export interface SetAttributeValueRequest {
+            /**
+             * Id of the element to set attribute for.
+             */
+            nodeId: NodeId;
+            /**
+             * Attribute name.
+             */
+            name: string;
+            /**
+             * Attribute value.
+             */
+            value: string;
+        }
+
+        export interface SetAttributesAsTextRequest {
+            /**
+             * Id of the element to set attributes for.
+             */
+            nodeId: NodeId;
+            /**
+             * Text with a number of attributes. Will parse this text using HTML parser.
+             */
+            text: string;
+            /**
+             * Attribute name to replace with new attributes derived from text in case text parsed
+             * successfully.
+             */
+            name?: string;
+        }
+
+        export interface SetFileInputFilesRequest {
+            /**
+             * Array of file paths to set.
+             */
+            files: string[];
+            /**
+             * Identifier of the node.
+             */
+            nodeId?: NodeId;
+            /**
+             * Identifier of the backend node.
+             */
+            backendNodeId?: BackendNodeId;
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface SetNodeStackTracesEnabledRequest {
+            /**
+             * Enable or disable.
+             */
+            enable: boolean;
+        }
+
+        export interface GetNodeStackTracesRequest {
+            /**
+             * Id of the node to get stack traces for.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface GetNodeStackTracesResponse {
+            /**
+             * Creation stack trace, if available.
+             */
+            creation?: Runtime.StackTrace;
+        }
+
+        export interface GetFileInfoRequest {
+            /**
+             * JavaScript object id of the node wrapper.
+             */
+            objectId: Runtime.RemoteObjectId;
+        }
+
+        export interface GetFileInfoResponse {
+            path: string;
+        }
+
+        export interface SetInspectedNodeRequest {
+            /**
+             * DOM node id to be accessible by means of $x command line API.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface SetNodeNameRequest {
+            /**
+             * Id of the node to set name for.
+             */
+            nodeId: NodeId;
+            /**
+             * New node's name.
+             */
+            name: string;
+        }
+
+        export interface SetNodeNameResponse {
+            /**
+             * New node's id.
+             */
+            nodeId: NodeId;
+        }
+
+        export interface SetNodeValueRequest {
+            /**
+             * Id of the node to set value for.
+             */
+            nodeId: NodeId;
+            /**
+             * New node's value.
+             */
+            value: string;
+        }
+
+        export interface SetOuterHTMLRequest {
+            /**
+             * Id of the node to set markup for.
+             */
+            nodeId: NodeId;
+            /**
+             * Outer HTML markup to set.
+             */
+            outerHTML: string;
+        }
+
+        export interface GetFrameOwnerRequest {
+            frameId: Page.FrameId;
+        }
+
+        export interface GetFrameOwnerResponse {
+            /**
+             * Resulting node.
+             */
+            backendNodeId: BackendNodeId;
+            /**
+             * Id of the node at given coordinates, only when enabled and requested document.
+             */
+            nodeId?: NodeId;
+        }
+
+        /**
+         * Fired when `Element`'s attribute is modified.
+         */
+        export interface AttributeModifiedEvent {
+            /**
+             * Id of the node that has changed.
+             */
+            nodeId: NodeId;
+            /**
+             * Attribute name.
+             */
+            name: string;
+            /**
+             * Attribute value.
+             */
+            value: string;
+        }
+
+        /**
+         * Fired when `Element`'s attribute is removed.
+         */
+        export interface AttributeRemovedEvent {
+            /**
+             * Id of the node that has changed.
+             */
+            nodeId: NodeId;
+            /**
+             * A ttribute name.
+             */
+            name: string;
+        }
+
+        /**
+         * Mirrors `DOMCharacterDataModified` event.
+         */
+        export interface CharacterDataModifiedEvent {
+            /**
+             * Id of the node that has changed.
+             */
+            nodeId: NodeId;
+            /**
+             * New text value.
+             */
+            characterData: string;
+        }
+
+        /**
+         * Fired when `Container`'s child node count has changed.
+         */
+        export interface ChildNodeCountUpdatedEvent {
+            /**
+             * Id of the node that has changed.
+             */
+            nodeId: NodeId;
+            /**
+             * New node count.
+             */
+            childNodeCount: integer;
+        }
+
+        /**
+         * Mirrors `DOMNodeInserted` event.
+         */
+        export interface ChildNodeInsertedEvent {
+            /**
+             * Id of the node that has changed.
+             */
+            parentNodeId: NodeId;
+            /**
+             * If of the previous siblint.
+             */
+            previousNodeId: NodeId;
+            /**
+             * Inserted node data.
+             */
+            node: Node;
+        }
+
+        /**
+         * Mirrors `DOMNodeRemoved` event.
+         */
+        export interface ChildNodeRemovedEvent {
+            /**
+             * Parent id.
+             */
+            parentNodeId: NodeId;
+            /**
+             * Id of the node that has been removed.
+             */
+            nodeId: NodeId;
+        }
+
+        /**
+         * Called when distribution is changed.
+         */
+        export interface DistributedNodesUpdatedEvent {
+            /**
+             * Insertion point where distributed nodes were updated.
+             */
+            insertionPointId: NodeId;
+            /**
+             * Distributed nodes for given insertion point.
+             */
+            distributedNodes: BackendNode[];
+        }
+
+        /**
+         * Fired when `Element`'s inline style is modified via a CSS property modification.
+         */
+        export interface InlineStyleInvalidatedEvent {
+            /**
+             * Ids of the nodes for which the inline styles have been invalidated.
+             */
+            nodeIds: NodeId[];
+        }
+
+        /**
+         * Called when a pseudo element is added to an element.
+         */
+        export interface PseudoElementAddedEvent {
+            /**
+             * Pseudo element's parent element id.
+             */
+            parentId: NodeId;
+            /**
+             * The added pseudo element.
+             */
+            pseudoElement: Node;
+        }
+
+        /**
+         * Called when a pseudo element is removed from an element.
+         */
+        export interface PseudoElementRemovedEvent {
+            /**
+             * Pseudo element's parent element id.
+             */
+            parentId: NodeId;
+            /**
+             * The removed pseudo element id.
+             */
+            pseudoElementId: NodeId;
+        }
+
+        /**
+         * Fired when backend wants to provide client with the missing DOM structure. This happens upon
+         * most of the calls requesting node ids.
+         */
+        export interface SetChildNodesEvent {
+            /**
+             * Parent node id to populate with children.
+             */
+            parentId: NodeId;
+            /**
+             * Child nodes array.
+             */
+            nodes: Node[];
+        }
+
+        /**
+         * Called when shadow root is popped from the element.
+         */
+        export interface ShadowRootPoppedEvent {
+            /**
+             * Host element id.
+             */
+            hostId: NodeId;
+            /**
+             * Shadow root id.
+             */
+            rootId: NodeId;
+        }
+
+        /**
+         * Called when shadow root is pushed into the element.
+         */
+        export interface ShadowRootPushedEvent {
+            /**
+             * Host element id.
+             */
+            hostId: NodeId;
+            /**
+             * Shadow root.
+             */
+            root: Node;
+        }
+    }
+
+    /**
+     * DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript
+     * execution will stop on these operations as if there was a regular breakpoint set.
+     */
+    export namespace DOMDebugger {
+
+        /**
+         * DOM breakpoint type.
+         */
+        export type DOMBreakpointType = ('subtree-modified' | 'attribute-modified' | 'node-removed');
+
+        /**
+         * CSP Violation type.
+         */
+        export type CSPViolationType = ('trustedtype-sink-violation' | 'trustedtype-policy-violation');
+
+        /**
+         * Object event listener.
+         */
+        export interface EventListener {
+            /**
+             * `EventListener`'s type.
+             */
+            type: string;
+            /**
+             * `EventListener`'s useCapture.
+             */
+            useCapture: boolean;
+            /**
+             * `EventListener`'s passive flag.
+             */
+            passive: boolean;
+            /**
+             * `EventListener`'s once flag.
+             */
+            once: boolean;
+            /**
+             * Script id of the handler code.
+             */
+            scriptId: Runtime.ScriptId;
+            /**
+             * Line number in the script (0-based).
+             */
+            lineNumber: integer;
+            /**
+             * Column number in the script (0-based).
+             */
+            columnNumber: integer;
+            /**
+             * Event handler function value.
+             */
+            handler?: Runtime.RemoteObject;
+            /**
+             * Event original handler function value.
+             */
+            originalHandler?: Runtime.RemoteObject;
+            /**
+             * Node the listener is added to (if any).
+             */
+            backendNodeId?: DOM.BackendNodeId;
+        }
+
+        export interface GetEventListenersRequest {
+            /**
+             * Identifier of the object to return listeners for.
+             */
+            objectId: Runtime.RemoteObjectId;
+            /**
+             * The maximum depth at which Node children should be retrieved, defaults to 1. Use -1 for the
+             * entire subtree or provide an integer larger than 0.
+             */
+            depth?: integer;
+            /**
+             * Whether or not iframes and shadow roots should be traversed when returning the subtree
+             * (default is false). Reports listeners for all contexts if pierce is enabled.
+             */
+            pierce?: boolean;
+        }
+
+        export interface GetEventListenersResponse {
+            /**
+             * Array of relevant listeners.
+             */
+            listeners: EventListener[];
+        }
+
+        export interface RemoveDOMBreakpointRequest {
+            /**
+             * Identifier of the node to remove breakpoint from.
+             */
+            nodeId: DOM.NodeId;
+            /**
+             * Type of the breakpoint to remove.
+             */
+            type: DOMBreakpointType;
+        }
+
+        export interface RemoveEventListenerBreakpointRequest {
+            /**
+             * Event name.
+             */
+            eventName: string;
+            /**
+             * EventTarget interface name.
+             */
+            targetName?: string;
+        }
+
+        export interface RemoveInstrumentationBreakpointRequest {
+            /**
+             * Instrumentation name to stop on.
+             */
+            eventName: string;
+        }
+
+        export interface RemoveXHRBreakpointRequest {
+            /**
+             * Resource URL substring.
+             */
+            url: string;
+        }
+
+        export interface SetBreakOnCSPViolationRequest {
+            /**
+             * CSP Violations to stop upon.
+             */
+            violationTypes: CSPViolationType[];
+        }
+
+        export interface SetDOMBreakpointRequest {
+            /**
+             * Identifier of the node to set breakpoint on.
+             */
+            nodeId: DOM.NodeId;
+            /**
+             * Type of the operation to stop upon.
+             */
+            type: DOMBreakpointType;
+        }
+
+        export interface SetEventListenerBreakpointRequest {
+            /**
+             * DOM Event name to stop on (any DOM event will do).
+             */
+            eventName: string;
+            /**
+             * EventTarget interface name to stop on. If equal to `"*"` or not provided, will stop on any
+             * EventTarget.
+             */
+            targetName?: string;
+        }
+
+        export interface SetInstrumentationBreakpointRequest {
+            /**
+             * Instrumentation name to stop on.
+             */
+            eventName: string;
+        }
+
+        export interface SetXHRBreakpointRequest {
+            /**
+             * Resource URL substring. All XHRs having this substring in the URL will get stopped upon.
+             */
+            url: string;
+        }
+    }
+
+    /**
+     * This domain facilitates obtaining document snapshots with DOM, layout, and style information.
+     */
+    export namespace DOMSnapshot {
+
+        /**
+         * A Node in the DOM tree.
+         */
+        export interface DOMNode {
+            /**
+             * `Node`'s nodeType.
+             */
+            nodeType: integer;
+            /**
+             * `Node`'s nodeName.
+             */
+            nodeName: string;
+            /**
+             * `Node`'s nodeValue.
+             */
+            nodeValue: string;
+            /**
+             * Only set for textarea elements, contains the text value.
+             */
+            textValue?: string;
+            /**
+             * Only set for input elements, contains the input's associated text value.
+             */
+            inputValue?: string;
+            /**
+             * Only set for radio and checkbox input elements, indicates if the element has been checked
+             */
+            inputChecked?: boolean;
+            /**
+             * Only set for option elements, indicates if the element has been selected
+             */
+            optionSelected?: boolean;
+            /**
+             * `Node`'s id, corresponds to DOM.Node.backendNodeId.
+             */
+            backendNodeId: DOM.BackendNodeId;
+            /**
+             * The indexes of the node's child nodes in the `domNodes` array returned by `getSnapshot`, if
+             * any.
+             */
+            childNodeIndexes?: integer[];
+            /**
+             * Attributes of an `Element` node.
+             */
+            attributes?: NameValue[];
+            /**
+             * Indexes of pseudo elements associated with this node in the `domNodes` array returned by
+             * `getSnapshot`, if any.
+             */
+            pseudoElementIndexes?: integer[];
+            /**
+             * The index of the node's related layout tree node in the `layoutTreeNodes` array returned by
+             * `getSnapshot`, if any.
+             */
+            layoutNodeIndex?: integer;
+            /**
+             * Document URL that `Document` or `FrameOwner` node points to.
+             */
+            documentURL?: string;
+            /**
+             * Base URL that `Document` or `FrameOwner` node uses for URL completion.
+             */
+            baseURL?: string;
+            /**
+             * Only set for documents, contains the document's content language.
+             */
+            contentLanguage?: string;
+            /**
+             * Only set for documents, contains the document's character set encoding.
+             */
+            documentEncoding?: string;
+            /**
+             * `DocumentType` node's publicId.
+             */
+            publicId?: string;
+            /**
+             * `DocumentType` node's systemId.
+             */
+            systemId?: string;
+            /**
+             * Frame ID for frame owner elements and also for the document node.
+             */
+            frameId?: Page.FrameId;
+            /**
+             * The index of a frame owner element's content document in the `domNodes` array returned by
+             * `getSnapshot`, if any.
+             */
+            contentDocumentIndex?: integer;
+            /**
+             * Type of a pseudo element node.
+             */
+            pseudoType?: DOM.PseudoType;
+            /**
+             * Shadow root type.
+             */
+            shadowRootType?: DOM.ShadowRootType;
+            /**
+             * Whether this DOM node responds to mouse clicks. This includes nodes that have had click
+             * event listeners attached via JavaScript as well as anchor tags that naturally navigate when
+             * clicked.
+             */
+            isClickable?: boolean;
+            /**
+             * Details of the node's event listeners, if any.
+             */
+            eventListeners?: DOMDebugger.EventListener[];
+            /**
+             * The selected url for nodes with a srcset attribute.
+             */
+            currentSourceURL?: string;
+            /**
+             * The url of the script (if any) that generates this node.
+             */
+            originURL?: string;
+            /**
+             * Scroll offsets, set when this node is a Document.
+             */
+            scrollOffsetX?: number;
+            scrollOffsetY?: number;
+        }
+
+        /**
+         * Details of post layout rendered text positions. The exact layout should not be regarded as
+         * stable and may change between versions.
+         */
+        export interface InlineTextBox {
+            /**
+             * The bounding box in document coordinates. Note that scroll offset of the document is ignored.
+             */
+            boundingBox: DOM.Rect;
+            /**
+             * The starting index in characters, for this post layout textbox substring. Characters that
+             * would be represented as a surrogate pair in UTF-16 have length 2.
+             */
+            startCharacterIndex: integer;
+            /**
+             * The number of characters in this post layout textbox substring. Characters that would be
+             * represented as a surrogate pair in UTF-16 have length 2.
+             */
+            numCharacters: integer;
+        }
+
+        /**
+         * Details of an element in the DOM tree with a LayoutObject.
+         */
+        export interface LayoutTreeNode {
+            /**
+             * The index of the related DOM node in the `domNodes` array returned by `getSnapshot`.
+             */
+            domNodeIndex: integer;
+            /**
+             * The bounding box in document coordinates. Note that scroll offset of the document is ignored.
+             */
+            boundingBox: DOM.Rect;
+            /**
+             * Contents of the LayoutText, if any.
+             */
+            layoutText?: string;
+            /**
+             * The post-layout inline text nodes, if any.
+             */
+            inlineTextNodes?: InlineTextBox[];
+            /**
+             * Index into the `computedStyles` array returned by `getSnapshot`.
+             */
+            styleIndex?: integer;
+            /**
+             * Global paint order index, which is determined by the stacking order of the nodes. Nodes
+             * that are painted together will have the same index. Only provided if includePaintOrder in
+             * getSnapshot was true.
+             */
+            paintOrder?: integer;
+            /**
+             * Set to true to indicate the element begins a new stacking context.
+             */
+            isStackingContext?: boolean;
+        }
+
+        /**
+         * A subset of the full ComputedStyle as defined by the request whitelist.
+         */
+        export interface ComputedStyle {
+            /**
+             * Name/value pairs of computed style properties.
+             */
+            properties: NameValue[];
+        }
+
+        /**
+         * A name/value pair.
+         */
+        export interface NameValue {
+            /**
+             * Attribute/property name.
+             */
+            name: string;
+            /**
+             * Attribute/property value.
+             */
+            value: string;
+        }
+
+        /**
+         * Index of the string in the strings table.
+         */
+        export type StringIndex = integer;
+
+        /**
+         * Index of the string in the strings table.
+         */
+        export type ArrayOfStrings = StringIndex[];
+
+        /**
+         * Data that is only present on rare nodes.
+         */
+        export interface RareStringData {
+            index: integer[];
+            value: StringIndex[];
+        }
+
+        export interface RareBooleanData {
+            index: integer[];
+        }
+
+        export interface RareIntegerData {
+            index: integer[];
+            value: integer[];
+        }
+
+        export type Rectangle = number[];
+
+        /**
+         * Document snapshot.
+         */
+        export interface DocumentSnapshot {
+            /**
+             * Document URL that `Document` or `FrameOwner` node points to.
+             */
+            documentURL: StringIndex;
+            /**
+             * Document title.
+             */
+            title: StringIndex;
+            /**
+             * Base URL that `Document` or `FrameOwner` node uses for URL completion.
+             */
+            baseURL: StringIndex;
+            /**
+             * Contains the document's content language.
+             */
+            contentLanguage: StringIndex;
+            /**
+             * Contains the document's character set encoding.
+             */
+            encodingName: StringIndex;
+            /**
+             * `DocumentType` node's publicId.
+             */
+            publicId: StringIndex;
+            /**
+             * `DocumentType` node's systemId.
+             */
+            systemId: StringIndex;
+            /**
+             * Frame ID for frame owner elements and also for the document node.
+             */
+            frameId: StringIndex;
+            /**
+             * A table with dom nodes.
+             */
+            nodes: NodeTreeSnapshot;
+            /**
+             * The nodes in the layout tree.
+             */
+            layout: LayoutTreeSnapshot;
+            /**
+             * The post-layout inline text nodes.
+             */
+            textBoxes: TextBoxSnapshot;
+            /**
+             * Horizontal scroll offset.
+             */
+            scrollOffsetX?: number;
+            /**
+             * Vertical scroll offset.
+             */
+            scrollOffsetY?: number;
+            /**
+             * Document content width.
+             */
+            contentWidth?: number;
+            /**
+             * Document content height.
+             */
+            contentHeight?: number;
+        }
+
+        /**
+         * Table containing nodes.
+         */
+        export interface NodeTreeSnapshot {
+            /**
+             * Parent node index.
+             */
+            parentIndex?: integer[];
+            /**
+             * `Node`'s nodeType.
+             */
+            nodeType?: integer[];
+            /**
+             * `Node`'s nodeName.
+             */
+            nodeName?: StringIndex[];
+            /**
+             * `Node`'s nodeValue.
+             */
+            nodeValue?: StringIndex[];
+            /**
+             * `Node`'s id, corresponds to DOM.Node.backendNodeId.
+             */
+            backendNodeId?: DOM.BackendNodeId[];
+            /**
+             * Attributes of an `Element` node. Flatten name, value pairs.
+             */
+            attributes?: ArrayOfStrings[];
+            /**
+             * Only set for textarea elements, contains the text value.
+             */
+            textValue?: RareStringData;
+            /**
+             * Only set for input elements, contains the input's associated text value.
+             */
+            inputValue?: RareStringData;
+            /**
+             * Only set for radio and checkbox input elements, indicates if the element has been checked
+             */
+            inputChecked?: RareBooleanData;
+            /**
+             * Only set for option elements, indicates if the element has been selected
+             */
+            optionSelected?: RareBooleanData;
+            /**
+             * The index of the document in the list of the snapshot documents.
+             */
+            contentDocumentIndex?: RareIntegerData;
+            /**
+             * Type of a pseudo element node.
+             */
+            pseudoType?: RareStringData;
+            /**
+             * Whether this DOM node responds to mouse clicks. This includes nodes that have had click
+             * event listeners attached via JavaScript as well as anchor tags that naturally navigate when
+             * clicked.
+             */
+            isClickable?: RareBooleanData;
+            /**
+             * The selected url for nodes with a srcset attribute.
+             */
+            currentSourceURL?: RareStringData;
+            /**
+             * The url of the script (if any) that generates this node.
+             */
+            originURL?: RareStringData;
+        }
+
+        /**
+         * Table of details of an element in the DOM tree with a LayoutObject.
+         */
+        export interface LayoutTreeSnapshot {
+            /**
+             * Index of the corresponding node in the `NodeTreeSnapshot` array returned by `captureSnapshot`.
+             */
+            nodeIndex: integer[];
+            /**
+             * Array of indexes specifying computed style strings, filtered according to the `computedStyles` parameter passed to `captureSnapshot`.
+             */
+            styles: ArrayOfStrings[];
+            /**
+             * The absolute position bounding box.
+             */
+            bounds: Rectangle[];
+            /**
+             * Contents of the LayoutText, if any.
+             */
+            text: StringIndex[];
+            /**
+             * Stacking context information.
+             */
+            stackingContexts: RareBooleanData;
+            /**
+             * Global paint order index, which is determined by the stacking order of the nodes. Nodes
+             * that are painted together will have the same index. Only provided if includePaintOrder in
+             * captureSnapshot was true.
+             */
+            paintOrders?: integer[];
+            /**
+             * The offset rect of nodes. Only available when includeDOMRects is set to true
+             */
+            offsetRects?: Rectangle[];
+            /**
+             * The scroll rect of nodes. Only available when includeDOMRects is set to true
+             */
+            scrollRects?: Rectangle[];
+            /**
+             * The client rect of nodes. Only available when includeDOMRects is set to true
+             */
+            clientRects?: Rectangle[];
+            /**
+             * The list of background colors that are blended with colors of overlapping elements.
+             */
+            blendedBackgroundColors?: StringIndex[];
+            /**
+             * The list of computed text opacities.
+             */
+            textColorOpacities?: number[];
+        }
+
+        /**
+         * Table of details of the post layout rendered text positions. The exact layout should not be regarded as
+         * stable and may change between versions.
+         */
+        export interface TextBoxSnapshot {
+            /**
+             * Index of the layout tree node that owns this box collection.
+             */
+            layoutIndex: integer[];
+            /**
+             * The absolute position bounding box.
+             */
+            bounds: Rectangle[];
+            /**
+             * The starting index in characters, for this post layout textbox substring. Characters that
+             * would be represented as a surrogate pair in UTF-16 have length 2.
+             */
+            start: integer[];
+            /**
+             * The number of characters in this post layout textbox substring. Characters that would be
+             * represented as a surrogate pair in UTF-16 have length 2.
+             */
+            length: integer[];
+        }
+
+        export interface GetSnapshotRequest {
+            /**
+             * Whitelist of computed styles to return.
+             */
+            computedStyleWhitelist: string[];
+            /**
+             * Whether or not to retrieve details of DOM listeners (default false).
+             */
+            includeEventListeners?: boolean;
+            /**
+             * Whether to determine and include the paint order index of LayoutTreeNodes (default false).
+             */
+            includePaintOrder?: boolean;
+            /**
+             * Whether to include UA shadow tree in the snapshot (default false).
+             */
+            includeUserAgentShadowTree?: boolean;
+        }
+
+        export interface GetSnapshotResponse {
+            /**
+             * The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document.
+             */
+            domNodes: DOMNode[];
+            /**
+             * The nodes in the layout tree.
+             */
+            layoutTreeNodes: LayoutTreeNode[];
+            /**
+             * Whitelisted ComputedStyle properties for each node in the layout tree.
+             */
+            computedStyles: ComputedStyle[];
+        }
+
+        export interface CaptureSnapshotRequest {
+            /**
+             * Whitelist of computed styles to return.
+             */
+            computedStyles: string[];
+            /**
+             * Whether to include layout object paint orders into the snapshot.
+             */
+            includePaintOrder?: boolean;
+            /**
+             * Whether to include DOM rectangles (offsetRects, clientRects, scrollRects) into the snapshot
+             */
+            includeDOMRects?: boolean;
+            /**
+             * Whether to include blended background colors in the snapshot (default: false).
+             * Blended background color is achieved by blending background colors of all elements
+             * that overlap with the current element.
+             */
+            includeBlendedBackgroundColors?: boolean;
+            /**
+             * Whether to include text color opacity in the snapshot (default: false).
+             * An element might have the opacity property set that affects the text color of the element.
+             * The final text color opacity is computed based on the opacity of all overlapping elements.
+             */
+            includeTextColorOpacities?: boolean;
+        }
+
+        export interface CaptureSnapshotResponse {
+            /**
+             * The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document.
+             */
+            documents: DocumentSnapshot[];
+            /**
+             * Shared string table that all string properties refer to with indexes.
+             */
+            strings: string[];
+        }
+    }
+
+    /**
+     * Query and modify DOM storage.
+     */
+    export namespace DOMStorage {
+
+        /**
+         * DOM Storage identifier.
+         */
+        export interface StorageId {
+            /**
+             * Security origin for the storage.
+             */
+            securityOrigin: string;
+            /**
+             * Whether the storage is local storage (not session storage).
+             */
+            isLocalStorage: boolean;
+        }
+
+        /**
+         * DOM Storage item.
+         */
+        export type Item = string[];
+
+        export interface ClearRequest {
+            storageId: StorageId;
+        }
+
+        export interface GetDOMStorageItemsRequest {
+            storageId: StorageId;
+        }
+
+        export interface GetDOMStorageItemsResponse {
+            entries: Item[];
+        }
+
+        export interface RemoveDOMStorageItemRequest {
+            storageId: StorageId;
+            key: string;
+        }
+
+        export interface SetDOMStorageItemRequest {
+            storageId: StorageId;
+            key: string;
+            value: string;
+        }
+
+        export interface DomStorageItemAddedEvent {
+            storageId: StorageId;
+            key: string;
+            newValue: string;
+        }
+
+        export interface DomStorageItemRemovedEvent {
+            storageId: StorageId;
+            key: string;
+        }
+
+        export interface DomStorageItemUpdatedEvent {
+            storageId: StorageId;
+            key: string;
+            oldValue: string;
+            newValue: string;
+        }
+
+        export interface DomStorageItemsClearedEvent {
+            storageId: StorageId;
+        }
+    }
+
+    export namespace Database {
+
+        /**
+         * Unique identifier of Database object.
+         */
+        export type DatabaseId = string;
+
+        /**
+         * Database object.
+         */
+        export interface Database {
+            /**
+             * Database ID.
+             */
+            id: DatabaseId;
+            /**
+             * Database domain.
+             */
+            domain: string;
+            /**
+             * Database name.
+             */
+            name: string;
+            /**
+             * Database version.
+             */
+            version: string;
+        }
+
+        /**
+         * Database error.
+         */
+        export interface Error {
+            /**
+             * Error message.
+             */
+            message: string;
+            /**
+             * Error code.
+             */
+            code: integer;
+        }
+
+        export interface ExecuteSQLRequest {
+            databaseId: DatabaseId;
+            query: string;
+        }
+
+        export interface ExecuteSQLResponse {
+            columnNames?: string[];
+            values?: any[];
+            sqlError?: Error;
+        }
+
+        export interface GetDatabaseTableNamesRequest {
+            databaseId: DatabaseId;
+        }
+
+        export interface GetDatabaseTableNamesResponse {
+            tableNames: string[];
+        }
+
+        export interface AddDatabaseEvent {
+            database: Database;
+        }
+    }
+
+    export namespace DeviceOrientation {
+
+        export interface SetDeviceOrientationOverrideRequest {
+            /**
+             * Mock alpha
+             */
+            alpha: number;
+            /**
+             * Mock beta
+             */
+            beta: number;
+            /**
+             * Mock gamma
+             */
+            gamma: number;
+        }
+    }
+
+    /**
+     * This domain emulates different environments for the page.
+     */
+    export namespace Emulation {
+
+        export const enum ScreenOrientationType {
+            PortraitPrimary = 'portraitPrimary',
+            PortraitSecondary = 'portraitSecondary',
+            LandscapePrimary = 'landscapePrimary',
+            LandscapeSecondary = 'landscapeSecondary',
+        }
+
+        /**
+         * Screen orientation.
+         */
+        export interface ScreenOrientation {
+            /**
+             * Orientation type. (ScreenOrientationType enum)
+             */
+            type: ('portraitPrimary' | 'portraitSecondary' | 'landscapePrimary' | 'landscapeSecondary');
+            /**
+             * Orientation angle.
+             */
+            angle: integer;
+        }
+
+        export const enum DisplayFeatureOrientation {
+            Vertical = 'vertical',
+            Horizontal = 'horizontal',
+        }
+
+        export interface DisplayFeature {
+            /**
+             * Orientation of a display feature in relation to screen (DisplayFeatureOrientation enum)
+             */
+            orientation: ('vertical' | 'horizontal');
+            /**
+             * The offset from the screen origin in either the x (for vertical
+             * orientation) or y (for horizontal orientation) direction.
+             */
+            offset: integer;
+            /**
+             * A display feature may mask content such that it is not physically
+             * displayed - this length along with the offset describes this area.
+             * A display feature that only splits content will have a 0 mask_length.
+             */
+            maskLength: integer;
+        }
+
+        export interface MediaFeature {
+            name: string;
+            value: string;
+        }
+
+        /**
+         * advance: If the scheduler runs out of immediate work, the virtual time base may fast forward to
+         * allow the next delayed task (if any) to run; pause: The virtual time base may not advance;
+         * pauseIfNetworkFetchesPending: The virtual time base may not advance if there are any pending
+         * resource fetches.
+         */
+        export type VirtualTimePolicy = ('advance' | 'pause' | 'pauseIfNetworkFetchesPending');
+
+        /**
+         * Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
+         */
+        export interface UserAgentBrandVersion {
+            brand: string;
+            version: string;
+        }
+
+        /**
+         * Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
+         * Missing optional values will be filled in by the target with what it would normally use.
+         */
+        export interface UserAgentMetadata {
+            brands?: UserAgentBrandVersion[];
+            fullVersion?: string;
+            platform: string;
+            platformVersion: string;
+            architecture: string;
+            model: string;
+            mobile: boolean;
+        }
+
+        /**
+         * Enum of image types that can be disabled.
+         */
+        export type DisabledImageType = ('avif' | 'jxl' | 'webp');
+
+        export interface CanEmulateResponse {
+            /**
+             * True if emulation is supported.
+             */
+            result: boolean;
+        }
+
+        export interface SetFocusEmulationEnabledRequest {
+            /**
+             * Whether to enable to disable focus emulation.
+             */
+            enabled: boolean;
+        }
+
+        export interface SetCPUThrottlingRateRequest {
+            /**
+             * Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
+             */
+            rate: number;
+        }
+
+        export interface SetDefaultBackgroundColorOverrideRequest {
+            /**
+             * RGBA of the default background color. If not specified, any existing override will be
+             * cleared.
+             */
+            color?: DOM.RGBA;
+        }
+
+        export interface SetDeviceMetricsOverrideRequest {
+            /**
+             * Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
+             */
+            width: integer;
+            /**
+             * Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
+             */
+            height: integer;
+            /**
+             * Overriding device scale factor value. 0 disables the override.
+             */
+            deviceScaleFactor: number;
+            /**
+             * Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
+             * autosizing and more.
+             */
+            mobile: boolean;
+            /**
+             * Scale to apply to resulting view image.
+             */
+            scale?: number;
+            /**
+             * Overriding screen width value in pixels (minimum 0, maximum 10000000).
+             */
+            screenWidth?: integer;
+            /**
+             * Overriding screen height value in pixels (minimum 0, maximum 10000000).
+             */
+            screenHeight?: integer;
+            /**
+             * Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
+             */
+            positionX?: integer;
+            /**
+             * Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
+             */
+            positionY?: integer;
+            /**
+             * Do not set visible view size, rely upon explicit setVisibleSize call.
+             */
+            dontSetVisibleSize?: boolean;
+            /**
+             * Screen orientation override.
+             */
+            screenOrientation?: ScreenOrientation;
+            /**
+             * If set, the visible area of the page will be overridden to this viewport. This viewport
+             * change is not observed by the page, e.g. viewport-relative elements do not change positions.
+             */
+            viewport?: Page.Viewport;
+            /**
+             * If set, the display feature of a multi-segment screen. If not set, multi-segment support
+             * is turned-off.
+             */
+            displayFeature?: DisplayFeature;
+        }
+
+        export interface SetScrollbarsHiddenRequest {
+            /**
+             * Whether scrollbars should be always hidden.
+             */
+            hidden: boolean;
+        }
+
+        export interface SetDocumentCookieDisabledRequest {
+            /**
+             * Whether document.coookie API should be disabled.
+             */
+            disabled: boolean;
+        }
+
+        export const enum SetEmitTouchEventsForMouseRequestConfiguration {
+            Mobile = 'mobile',
+            Desktop = 'desktop',
+        }
+
+        export interface SetEmitTouchEventsForMouseRequest {
+            /**
+             * Whether touch emulation based on mouse input should be enabled.
+             */
+            enabled: boolean;
+            /**
+             * Touch/gesture events configuration. Default: current platform. (SetEmitTouchEventsForMouseRequestConfiguration enum)
+             */
+            configuration?: ('mobile' | 'desktop');
+        }
+
+        export interface SetEmulatedMediaRequest {
+            /**
+             * Media type to emulate. Empty string disables the override.
+             */
+            media?: string;
+            /**
+             * Media features to emulate.
+             */
+            features?: MediaFeature[];
+        }
+
+        export const enum SetEmulatedVisionDeficiencyRequestType {
+            None = 'none',
+            Achromatopsia = 'achromatopsia',
+            BlurredVision = 'blurredVision',
+            Deuteranopia = 'deuteranopia',
+            Protanopia = 'protanopia',
+            Tritanopia = 'tritanopia',
+        }
+
+        export interface SetEmulatedVisionDeficiencyRequest {
+            /**
+             * Vision deficiency to emulate. (SetEmulatedVisionDeficiencyRequestType enum)
+             */
+            type: ('none' | 'achromatopsia' | 'blurredVision' | 'deuteranopia' | 'protanopia' | 'tritanopia');
+        }
+
+        export interface SetGeolocationOverrideRequest {
+            /**
+             * Mock latitude
+             */
+            latitude?: number;
+            /**
+             * Mock longitude
+             */
+            longitude?: number;
+            /**
+             * Mock accuracy
+             */
+            accuracy?: number;
+        }
+
+        export interface SetIdleOverrideRequest {
+            /**
+             * Mock isUserActive
+             */
+            isUserActive: boolean;
+            /**
+             * Mock isScreenUnlocked
+             */
+            isScreenUnlocked: boolean;
+        }
+
+        export interface SetNavigatorOverridesRequest {
+            /**
+             * The platform navigator.platform should return.
+             */
+            platform: string;
+        }
+
+        export interface SetPageScaleFactorRequest {
+            /**
+             * Page scale factor.
+             */
+            pageScaleFactor: number;
+        }
+
+        export interface SetScriptExecutionDisabledRequest {
+            /**
+             * Whether script execution should be disabled in the page.
+             */
+            value: boolean;
+        }
+
+        export interface SetTouchEmulationEnabledRequest {
+            /**
+             * Whether the touch event emulation should be enabled.
+             */
+            enabled: boolean;
+            /**
+             * Maximum touch points supported. Defaults to one.
+             */
+            maxTouchPoints?: integer;
+        }
+
+        export interface SetVirtualTimePolicyRequest {
+            policy: VirtualTimePolicy;
+            /**
+             * If set, after this many virtual milliseconds have elapsed virtual time will be paused and a
+             * virtualTimeBudgetExpired event is sent.
+             */
+            budget?: number;
+            /**
+             * If set this specifies the maximum number of tasks that can be run before virtual is forced
+             * forwards to prevent deadlock.
+             */
+            maxVirtualTimeTaskStarvationCount?: integer;
+            /**
+             * If set the virtual time policy change should be deferred until any frame starts navigating.
+             * Note any previous deferred policy change is superseded.
+             */
+            waitForNavigation?: boolean;
+            /**
+             * If set, base::Time::Now will be overridden to initially return this value.
+             */
+            initialVirtualTime?: Network.TimeSinceEpoch;
+        }
+
+        export interface SetVirtualTimePolicyResponse {
+            /**
+             * Absolute timestamp at which virtual time was first enabled (up time in milliseconds).
+             */
+            virtualTimeTicksBase: number;
+        }
+
+        export interface SetLocaleOverrideRequest {
+            /**
+             * ICU style C locale (e.g. "en_US"). If not specified or empty, disables the override and
+             * restores default host system locale.
+             */
+            locale?: string;
+        }
+
+        export interface SetTimezoneOverrideRequest {
+            /**
+             * The timezone identifier. If empty, disables the override and
+             * restores default host system timezone.
+             */
+            timezoneId: string;
+        }
+
+        export interface SetVisibleSizeRequest {
+            /**
+             * Frame width (DIP).
+             */
+            width: integer;
+            /**
+             * Frame height (DIP).
+             */
+            height: integer;
+        }
+
+        export interface SetDisabledImageTypesRequest {
+            /**
+             * Image types to disable.
+             */
+            imageTypes: DisabledImageType[];
+        }
+
+        export interface SetUserAgentOverrideRequest {
+            /**
+             * User agent to use.
+             */
+            userAgent: string;
+            /**
+             * Browser langugage to emulate.
+             */
+            acceptLanguage?: string;
+            /**
+             * The platform navigator.platform should return.
+             */
+            platform?: string;
+            /**
+             * To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
+             */
+            userAgentMetadata?: UserAgentMetadata;
+        }
+    }
+
+    /**
+     * This domain provides experimental commands only supported in headless mode.
+     */
+    export namespace HeadlessExperimental {
+
+        export const enum ScreenshotParamsFormat {
+            Jpeg = 'jpeg',
+            Png = 'png',
+        }
+
+        /**
+         * Encoding options for a screenshot.
+         */
+        export interface ScreenshotParams {
+            /**
+             * Image compression format (defaults to png). (ScreenshotParamsFormat enum)
+             */
+            format?: ('jpeg' | 'png');
+            /**
+             * Compression quality from range [0..100] (jpeg only).
+             */
+            quality?: integer;
+        }
+
+        export interface BeginFrameRequest {
+            /**
+             * Timestamp of this BeginFrame in Renderer TimeTicks (milliseconds of uptime). If not set,
+             * the current time will be used.
+             */
+            frameTimeTicks?: number;
+            /**
+             * The interval between BeginFrames that is reported to the compositor, in milliseconds.
+             * Defaults to a 60 frames/second interval, i.e. about 16.666 milliseconds.
+             */
+            interval?: number;
+            /**
+             * Whether updates should not be committed and drawn onto the display. False by default. If
+             * true, only side effects of the BeginFrame will be run, such as layout and animations, but
+             * any visual updates may not be visible on the display or in screenshots.
+             */
+            noDisplayUpdates?: boolean;
+            /**
+             * If set, a screenshot of the frame will be captured and returned in the response. Otherwise,
+             * no screenshot will be captured. Note that capturing a screenshot can fail, for example,
+             * during renderer initialization. In such a case, no screenshot data will be returned.
+             */
+            screenshot?: ScreenshotParams;
+        }
+
+        export interface BeginFrameResponse {
+            /**
+             * Whether the BeginFrame resulted in damage and, thus, a new frame was committed to the
+             * display. Reported for diagnostic uses, may be removed in the future.
+             */
+            hasDamage: boolean;
+            /**
+             * Base64-encoded image data of the screenshot, if one was requested and successfully taken. (Encoded as a base64 string when passed over JSON)
+             */
+            screenshotData?: string;
+        }
+
+        /**
+         * Issued when the target starts or stops needing BeginFrames.
+         * Deprecated. Issue beginFrame unconditionally instead and use result from
+         * beginFrame to detect whether the frames were suppressed.
+         */
+        export interface NeedsBeginFramesChangedEvent {
+            /**
+             * True if BeginFrames are needed, false otherwise.
+             */
+            needsBeginFrames: boolean;
+        }
+    }
+
+    /**
+     * Input/Output operations for streams produced by DevTools.
+     */
+    export namespace IO {
+
+        /**
+         * This is either obtained from another method or specified as `blob:&lt;uuid&gt;` where
+         * `&lt;uuid&gt` is an UUID of a Blob.
+         */
+        export type StreamHandle = string;
+
+        export interface CloseRequest {
+            /**
+             * Handle of the stream to close.
+             */
+            handle: StreamHandle;
+        }
+
+        export interface ReadRequest {
+            /**
+             * Handle of the stream to read.
+             */
+            handle: StreamHandle;
+            /**
+             * Seek to the specified offset before reading (if not specificed, proceed with offset
+             * following the last read). Some types of streams may only support sequential reads.
+             */
+            offset?: integer;
+            /**
+             * Maximum number of bytes to read (left upon the agent discretion if not specified).
+             */
+            size?: integer;
+        }
+
+        export interface ReadResponse {
+            /**
+             * Set if the data is base64-encoded
+             */
+            base64Encoded?: boolean;
+            /**
+             * Data that were read.
+             */
+            data: string;
+            /**
+             * Set if the end-of-file condition occurred while reading.
+             */
+            eof: boolean;
+        }
+
+        export interface ResolveBlobRequest {
+            /**
+             * Object id of a Blob object wrapper.
+             */
+            objectId: Runtime.RemoteObjectId;
+        }
+
+        export interface ResolveBlobResponse {
+            /**
+             * UUID of the specified Blob.
+             */
+            uuid: string;
+        }
+    }
+
+    export namespace IndexedDB {
+
+        /**
+         * Database with an array of object stores.
+         */
+        export interface DatabaseWithObjectStores {
+            /**
+             * Database name.
+             */
+            name: string;
+            /**
+             * Database version (type is not 'integer', as the standard
+             * requires the version number to be 'unsigned long long')
+             */
+            version: number;
+            /**
+             * Object stores in this database.
+             */
+            objectStores: ObjectStore[];
+        }
+
+        /**
+         * Object store.
+         */
+        export interface ObjectStore {
+            /**
+             * Object store name.
+             */
+            name: string;
+            /**
+             * Object store key path.
+             */
+            keyPath: KeyPath;
+            /**
+             * If true, object store has auto increment flag set.
+             */
+            autoIncrement: boolean;
+            /**
+             * Indexes in this object store.
+             */
+            indexes: ObjectStoreIndex[];
+        }
+
+        /**
+         * Object store index.
+         */
+        export interface ObjectStoreIndex {
+            /**
+             * Index name.
+             */
+            name: string;
+            /**
+             * Index key path.
+             */
+            keyPath: KeyPath;
+            /**
+             * If true, index is unique.
+             */
+            unique: boolean;
+            /**
+             * If true, index allows multiple entries for a key.
+             */
+            multiEntry: boolean;
+        }
+
+        export const enum KeyType {
+            Number = 'number',
+            String = 'string',
+            Date = 'date',
+            Array = 'array',
+        }
+
+        /**
+         * Key.
+         */
+        export interface Key {
+            /**
+             * Key type. (KeyType enum)
+             */
+            type: ('number' | 'string' | 'date' | 'array');
+            /**
+             * Number value.
+             */
+            number?: number;
+            /**
+             * String value.
+             */
+            string?: string;
+            /**
+             * Date value.
+             */
+            date?: number;
+            /**
+             * Array value.
+             */
+            array?: Key[];
+        }
+
+        /**
+         * Key range.
+         */
+        export interface KeyRange {
+            /**
+             * Lower bound.
+             */
+            lower?: Key;
+            /**
+             * Upper bound.
+             */
+            upper?: Key;
+            /**
+             * If true lower bound is open.
+             */
+            lowerOpen: boolean;
+            /**
+             * If true upper bound is open.
+             */
+            upperOpen: boolean;
+        }
+
+        /**
+         * Data entry.
+         */
+        export interface DataEntry {
+            /**
+             * Key object.
+             */
+            key: Runtime.RemoteObject;
+            /**
+             * Primary key object.
+             */
+            primaryKey: Runtime.RemoteObject;
+            /**
+             * Value object.
+             */
+            value: Runtime.RemoteObject;
+        }
+
+        export const enum KeyPathType {
+            Null = 'null',
+            String = 'string',
+            Array = 'array',
+        }
+
+        /**
+         * Key path.
+         */
+        export interface KeyPath {
+            /**
+             * Key path type. (KeyPathType enum)
+             */
+            type: ('null' | 'string' | 'array');
+            /**
+             * String value.
+             */
+            string?: string;
+            /**
+             * Array value.
+             */
+            array?: string[];
+        }
+
+        export interface ClearObjectStoreRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Database name.
+             */
+            databaseName: string;
+            /**
+             * Object store name.
+             */
+            objectStoreName: string;
+        }
+
+        export interface DeleteDatabaseRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Database name.
+             */
+            databaseName: string;
+        }
+
+        export interface DeleteObjectStoreEntriesRequest {
+            securityOrigin: string;
+            databaseName: string;
+            objectStoreName: string;
+            /**
+             * Range of entry keys to delete
+             */
+            keyRange: KeyRange;
+        }
+
+        export interface RequestDataRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Database name.
+             */
+            databaseName: string;
+            /**
+             * Object store name.
+             */
+            objectStoreName: string;
+            /**
+             * Index name, empty string for object store data requests.
+             */
+            indexName: string;
+            /**
+             * Number of records to skip.
+             */
+            skipCount: integer;
+            /**
+             * Number of records to fetch.
+             */
+            pageSize: integer;
+            /**
+             * Key range.
+             */
+            keyRange?: KeyRange;
+        }
+
+        export interface RequestDataResponse {
+            /**
+             * Array of object store data entries.
+             */
+            objectStoreDataEntries: DataEntry[];
+            /**
+             * If true, there are more entries to fetch in the given range.
+             */
+            hasMore: boolean;
+        }
+
+        export interface GetMetadataRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Database name.
+             */
+            databaseName: string;
+            /**
+             * Object store name.
+             */
+            objectStoreName: string;
+        }
+
+        export interface GetMetadataResponse {
+            /**
+             * the entries count
+             */
+            entriesCount: number;
+            /**
+             * the current value of key generator, to become the next inserted
+             * key into the object store. Valid if objectStore.autoIncrement
+             * is true.
+             */
+            keyGeneratorValue: number;
+        }
+
+        export interface RequestDatabaseRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Database name.
+             */
+            databaseName: string;
+        }
+
+        export interface RequestDatabaseResponse {
+            /**
+             * Database with an array of object stores.
+             */
+            databaseWithObjectStores: DatabaseWithObjectStores;
+        }
+
+        export interface RequestDatabaseNamesRequest {
+            /**
+             * Security origin.
+             */
+            securityOrigin: string;
+        }
+
+        export interface RequestDatabaseNamesResponse {
+            /**
+             * Database names for origin.
+             */
+            databaseNames: string[];
+        }
+    }
+
+    export namespace Input {
+
+        export interface TouchPoint {
+            /**
+             * X coordinate of the event relative to the main frame's viewport in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to
+             * the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
+             */
+            y: number;
+            /**
+             * X radius of the touch area (default: 1.0).
+             */
+            radiusX?: number;
+            /**
+             * Y radius of the touch area (default: 1.0).
+             */
+            radiusY?: number;
+            /**
+             * Rotation angle (default: 0.0).
+             */
+            rotationAngle?: number;
+            /**
+             * Force (default: 1.0).
+             */
+            force?: number;
+            /**
+             * The normalized tangential pressure, which has a range of [-1,1] (default: 0).
+             */
+            tangentialPressure?: number;
+            /**
+             * The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0)
+             */
+            tiltX?: integer;
+            /**
+             * The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0).
+             */
+            tiltY?: integer;
+            /**
+             * The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0).
+             */
+            twist?: integer;
+            /**
+             * Identifier used to track touch sources between events, must be unique within an event.
+             */
+            id?: number;
+        }
+
+        export type GestureSourceType = ('default' | 'touch' | 'mouse');
+
+        export type MouseButton = ('none' | 'left' | 'middle' | 'right' | 'back' | 'forward');
+
+        /**
+         * UTC time in seconds, counted from January 1, 1970.
+         */
+        export type TimeSinceEpoch = number;
+
+        export interface DragDataItem {
+            /**
+             * Mime type of the dragged data.
+             */
+            mimeType: string;
+            /**
+             * Depending of the value of `mimeType`, it contains the dragged link,
+             * text, HTML markup or any other data.
+             */
+            data: string;
+            /**
+             * Title associated with a link. Only valid when `mimeType` == "text/uri-list".
+             */
+            title?: string;
+            /**
+             * Stores the base URL for the contained markup. Only valid when `mimeType`
+             * == "text/html".
+             */
+            baseURL?: string;
+        }
+
+        export interface DragData {
+            items: DragDataItem[];
+            /**
+             * Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16
+             */
+            dragOperationsMask: integer;
+        }
+
+        export const enum DispatchDragEventRequestType {
+            DragEnter = 'dragEnter',
+            DragOver = 'dragOver',
+            Drop = 'drop',
+            DragCancel = 'dragCancel',
+        }
+
+        export interface DispatchDragEventRequest {
+            /**
+             * Type of the drag event. (DispatchDragEventRequestType enum)
+             */
+            type: ('dragEnter' | 'dragOver' | 'drop' | 'dragCancel');
+            /**
+             * X coordinate of the event relative to the main frame's viewport in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to
+             * the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
+             */
+            y: number;
+            data: DragData;
+            /**
+             * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
+             * (default: 0).
+             */
+            modifiers?: integer;
+        }
+
+        export const enum DispatchKeyEventRequestType {
+            KeyDown = 'keyDown',
+            KeyUp = 'keyUp',
+            RawKeyDown = 'rawKeyDown',
+            Char = 'char',
+        }
+
+        export interface DispatchKeyEventRequest {
+            /**
+             * Type of the key event. (DispatchKeyEventRequestType enum)
+             */
+            type: ('keyDown' | 'keyUp' | 'rawKeyDown' | 'char');
+            /**
+             * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
+             * (default: 0).
+             */
+            modifiers?: integer;
+            /**
+             * Time at which the event occurred.
+             */
+            timestamp?: TimeSinceEpoch;
+            /**
+             * Text as generated by processing a virtual key code with a keyboard layout. Not needed for
+             * for `keyUp` and `rawKeyDown` events (default: "")
+             */
+            text?: string;
+            /**
+             * Text that would have been generated by the keyboard if no modifiers were pressed (except for
+             * shift). Useful for shortcut (accelerator) key handling (default: "").
+             */
+            unmodifiedText?: string;
+            /**
+             * Unique key identifier (e.g., 'U+0041') (default: "").
+             */
+            keyIdentifier?: string;
+            /**
+             * Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: "").
+             */
+            code?: string;
+            /**
+             * Unique DOM defined string value describing the meaning of the key in the context of active
+             * modifiers, keyboard layout, etc (e.g., 'AltGr') (default: "").
+             */
+            key?: string;
+            /**
+             * Windows virtual key code (default: 0).
+             */
+            windowsVirtualKeyCode?: integer;
+            /**
+             * Native virtual key code (default: 0).
+             */
+            nativeVirtualKeyCode?: integer;
+            /**
+             * Whether the event was generated from auto repeat (default: false).
+             */
+            autoRepeat?: boolean;
+            /**
+             * Whether the event was generated from the keypad (default: false).
+             */
+            isKeypad?: boolean;
+            /**
+             * Whether the event was a system key event (default: false).
+             */
+            isSystemKey?: boolean;
+            /**
+             * Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default:
+             * 0).
+             */
+            location?: integer;
+            /**
+             * Editing commands to send with the key event (e.g., 'selectAll') (default: []).
+             * These are related to but not equal the command names used in `document.execCommand` and NSStandardKeyBindingResponding.
+             * See https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names.
+             */
+            commands?: string[];
+        }
+
+        export interface InsertTextRequest {
+            /**
+             * The text to insert.
+             */
+            text: string;
+        }
+
+        export const enum DispatchMouseEventRequestType {
+            MousePressed = 'mousePressed',
+            MouseReleased = 'mouseReleased',
+            MouseMoved = 'mouseMoved',
+            MouseWheel = 'mouseWheel',
+        }
+
+        export const enum DispatchMouseEventRequestPointerType {
+            Mouse = 'mouse',
+            Pen = 'pen',
+        }
+
+        export interface DispatchMouseEventRequest {
+            /**
+             * Type of the mouse event. (DispatchMouseEventRequestType enum)
+             */
+            type: ('mousePressed' | 'mouseReleased' | 'mouseMoved' | 'mouseWheel');
+            /**
+             * X coordinate of the event relative to the main frame's viewport in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to
+             * the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
+             */
+            y: number;
+            /**
+             * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
+             * (default: 0).
+             */
+            modifiers?: integer;
+            /**
+             * Time at which the event occurred.
+             */
+            timestamp?: TimeSinceEpoch;
+            /**
+             * Mouse button (default: "none").
+             */
+            button?: MouseButton;
+            /**
+             * A number indicating which buttons are pressed on the mouse when a mouse event is triggered.
+             * Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0.
+             */
+            buttons?: integer;
+            /**
+             * Number of times the mouse button was clicked (default: 0).
+             */
+            clickCount?: integer;
+            /**
+             * The normalized pressure, which has a range of [0,1] (default: 0).
+             */
+            force?: number;
+            /**
+             * The normalized tangential pressure, which has a range of [-1,1] (default: 0).
+             */
+            tangentialPressure?: number;
+            /**
+             * The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0).
+             */
+            tiltX?: integer;
+            /**
+             * The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0).
+             */
+            tiltY?: integer;
+            /**
+             * The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0).
+             */
+            twist?: integer;
+            /**
+             * X delta in CSS pixels for mouse wheel event (default: 0).
+             */
+            deltaX?: number;
+            /**
+             * Y delta in CSS pixels for mouse wheel event (default: 0).
+             */
+            deltaY?: number;
+            /**
+             * Pointer type (default: "mouse"). (DispatchMouseEventRequestPointerType enum)
+             */
+            pointerType?: ('mouse' | 'pen');
+        }
+
+        export const enum DispatchTouchEventRequestType {
+            TouchStart = 'touchStart',
+            TouchEnd = 'touchEnd',
+            TouchMove = 'touchMove',
+            TouchCancel = 'touchCancel',
+        }
+
+        export interface DispatchTouchEventRequest {
+            /**
+             * Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while
+             * TouchStart and TouchMove must contains at least one. (DispatchTouchEventRequestType enum)
+             */
+            type: ('touchStart' | 'touchEnd' | 'touchMove' | 'touchCancel');
+            /**
+             * Active touch points on the touch device. One event per any changed point (compared to
+             * previous touch event in a sequence) is generated, emulating pressing/moving/releasing points
+             * one by one.
+             */
+            touchPoints: TouchPoint[];
+            /**
+             * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
+             * (default: 0).
+             */
+            modifiers?: integer;
+            /**
+             * Time at which the event occurred.
+             */
+            timestamp?: TimeSinceEpoch;
+        }
+
+        export const enum EmulateTouchFromMouseEventRequestType {
+            MousePressed = 'mousePressed',
+            MouseReleased = 'mouseReleased',
+            MouseMoved = 'mouseMoved',
+            MouseWheel = 'mouseWheel',
+        }
+
+        export interface EmulateTouchFromMouseEventRequest {
+            /**
+             * Type of the mouse event. (EmulateTouchFromMouseEventRequestType enum)
+             */
+            type: ('mousePressed' | 'mouseReleased' | 'mouseMoved' | 'mouseWheel');
+            /**
+             * X coordinate of the mouse pointer in DIP.
+             */
+            x: integer;
+            /**
+             * Y coordinate of the mouse pointer in DIP.
+             */
+            y: integer;
+            /**
+             * Mouse button. Only "none", "left", "right" are supported.
+             */
+            button: MouseButton;
+            /**
+             * Time at which the event occurred (default: current time).
+             */
+            timestamp?: TimeSinceEpoch;
+            /**
+             * X delta in DIP for mouse wheel event (default: 0).
+             */
+            deltaX?: number;
+            /**
+             * Y delta in DIP for mouse wheel event (default: 0).
+             */
+            deltaY?: number;
+            /**
+             * Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8
+             * (default: 0).
+             */
+            modifiers?: integer;
+            /**
+             * Number of times the mouse button was clicked (default: 0).
+             */
+            clickCount?: integer;
+        }
+
+        export interface SetIgnoreInputEventsRequest {
+            /**
+             * Ignores input events processing when set to true.
+             */
+            ignore: boolean;
+        }
+
+        export interface SetInterceptDragsRequest {
+            enabled: boolean;
+        }
+
+        export interface SynthesizePinchGestureRequest {
+            /**
+             * X coordinate of the start of the gesture in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the start of the gesture in CSS pixels.
+             */
+            y: number;
+            /**
+             * Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
+             */
+            scaleFactor: number;
+            /**
+             * Relative pointer speed in pixels per second (default: 800).
+             */
+            relativeSpeed?: integer;
+            /**
+             * Which type of input events to be generated (default: 'default', which queries the platform
+             * for the preferred input type).
+             */
+            gestureSourceType?: GestureSourceType;
+        }
+
+        export interface SynthesizeScrollGestureRequest {
+            /**
+             * X coordinate of the start of the gesture in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the start of the gesture in CSS pixels.
+             */
+            y: number;
+            /**
+             * The distance to scroll along the X axis (positive to scroll left).
+             */
+            xDistance?: number;
+            /**
+             * The distance to scroll along the Y axis (positive to scroll up).
+             */
+            yDistance?: number;
+            /**
+             * The number of additional pixels to scroll back along the X axis, in addition to the given
+             * distance.
+             */
+            xOverscroll?: number;
+            /**
+             * The number of additional pixels to scroll back along the Y axis, in addition to the given
+             * distance.
+             */
+            yOverscroll?: number;
+            /**
+             * Prevent fling (default: true).
+             */
+            preventFling?: boolean;
+            /**
+             * Swipe speed in pixels per second (default: 800).
+             */
+            speed?: integer;
+            /**
+             * Which type of input events to be generated (default: 'default', which queries the platform
+             * for the preferred input type).
+             */
+            gestureSourceType?: GestureSourceType;
+            /**
+             * The number of times to repeat the gesture (default: 0).
+             */
+            repeatCount?: integer;
+            /**
+             * The number of milliseconds delay between each repeat. (default: 250).
+             */
+            repeatDelayMs?: integer;
+            /**
+             * The name of the interaction markers to generate, if not empty (default: "").
+             */
+            interactionMarkerName?: string;
+        }
+
+        export interface SynthesizeTapGestureRequest {
+            /**
+             * X coordinate of the start of the gesture in CSS pixels.
+             */
+            x: number;
+            /**
+             * Y coordinate of the start of the gesture in CSS pixels.
+             */
+            y: number;
+            /**
+             * Duration between touchdown and touchup events in ms (default: 50).
+             */
+            duration?: integer;
+            /**
+             * Number of times to perform the tap (e.g. 2 for double tap, default: 1).
+             */
+            tapCount?: integer;
+            /**
+             * Which type of input events to be generated (default: 'default', which queries the platform
+             * for the preferred input type).
+             */
+            gestureSourceType?: GestureSourceType;
+        }
+
+        /**
+         * Emitted only when `Input.setInterceptDrags` is enabled. Use this data with `Input.dispatchDragEvent` to
+         * restore normal drag and drop behavior.
+         */
+        export interface DragInterceptedEvent {
+            data: DragData;
+        }
+    }
+
+    export namespace Inspector {
+
+        /**
+         * Fired when remote debugging connection is about to be terminated. Contains detach reason.
+         */
+        export interface DetachedEvent {
+            /**
+             * The reason why connection has been terminated.
+             */
+            reason: string;
+        }
+    }
+
+    export namespace LayerTree {
+
+        /**
+         * Unique Layer identifier.
+         */
+        export type LayerId = string;
+
+        /**
+         * Unique snapshot identifier.
+         */
+        export type SnapshotId = string;
+
+        export const enum ScrollRectType {
+            RepaintsOnScroll = 'RepaintsOnScroll',
+            TouchEventHandler = 'TouchEventHandler',
+            WheelEventHandler = 'WheelEventHandler',
+        }
+
+        /**
+         * Rectangle where scrolling happens on the main thread.
+         */
+        export interface ScrollRect {
+            /**
+             * Rectangle itself.
+             */
+            rect: DOM.Rect;
+            /**
+             * Reason for rectangle to force scrolling on the main thread (ScrollRectType enum)
+             */
+            type: ('RepaintsOnScroll' | 'TouchEventHandler' | 'WheelEventHandler');
+        }
+
+        /**
+         * Sticky position constraints.
+         */
+        export interface StickyPositionConstraint {
+            /**
+             * Layout rectangle of the sticky element before being shifted
+             */
+            stickyBoxRect: DOM.Rect;
+            /**
+             * Layout rectangle of the containing block of the sticky element
+             */
+            containingBlockRect: DOM.Rect;
+            /**
+             * The nearest sticky layer that shifts the sticky box
+             */
+            nearestLayerShiftingStickyBox?: LayerId;
+            /**
+             * The nearest sticky layer that shifts the containing block
+             */
+            nearestLayerShiftingContainingBlock?: LayerId;
+        }
+
+        /**
+         * Serialized fragment of layer picture along with its offset within the layer.
+         */
+        export interface PictureTile {
+            /**
+             * Offset from owning layer left boundary
+             */
+            x: number;
+            /**
+             * Offset from owning layer top boundary
+             */
+            y: number;
+            /**
+             * Base64-encoded snapshot data. (Encoded as a base64 string when passed over JSON)
+             */
+            picture: string;
+        }
+
+        /**
+         * Information about a compositing layer.
+         */
+        export interface Layer {
+            /**
+             * The unique id for this layer.
+             */
+            layerId: LayerId;
+            /**
+             * The id of parent (not present for root).
+             */
+            parentLayerId?: LayerId;
+            /**
+             * The backend id for the node associated with this layer.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * Offset from parent layer, X coordinate.
+             */
+            offsetX: number;
+            /**
+             * Offset from parent layer, Y coordinate.
+             */
+            offsetY: number;
+            /**
+             * Layer width.
+             */
+            width: number;
+            /**
+             * Layer height.
+             */
+            height: number;
+            /**
+             * Transformation matrix for layer, default is identity matrix
+             */
+            transform?: number[];
+            /**
+             * Transform anchor point X, absent if no transform specified
+             */
+            anchorX?: number;
+            /**
+             * Transform anchor point Y, absent if no transform specified
+             */
+            anchorY?: number;
+            /**
+             * Transform anchor point Z, absent if no transform specified
+             */
+            anchorZ?: number;
+            /**
+             * Indicates how many time this layer has painted.
+             */
+            paintCount: integer;
+            /**
+             * Indicates whether this layer hosts any content, rather than being used for
+             * transform/scrolling purposes only.
+             */
+            drawsContent: boolean;
+            /**
+             * Set if layer is not visible.
+             */
+            invisible?: boolean;
+            /**
+             * Rectangles scrolling on main thread only.
+             */
+            scrollRects?: ScrollRect[];
+            /**
+             * Sticky position constraint information
+             */
+            stickyPositionConstraint?: StickyPositionConstraint;
+        }
+
+        /**
+         * Array of timings, one per paint step.
+         */
+        export type PaintProfile = number[];
+
+        export interface CompositingReasonsRequest {
+            /**
+             * The id of the layer for which we want to get the reasons it was composited.
+             */
+            layerId: LayerId;
+        }
+
+        export interface CompositingReasonsResponse {
+            /**
+             * A list of strings specifying reasons for the given layer to become composited.
+             */
+            compositingReasons: string[];
+            /**
+             * A list of strings specifying reason IDs for the given layer to become composited.
+             */
+            compositingReasonIds: string[];
+        }
+
+        export interface LoadSnapshotRequest {
+            /**
+             * An array of tiles composing the snapshot.
+             */
+            tiles: PictureTile[];
+        }
+
+        export interface LoadSnapshotResponse {
+            /**
+             * The id of the snapshot.
+             */
+            snapshotId: SnapshotId;
+        }
+
+        export interface MakeSnapshotRequest {
+            /**
+             * The id of the layer.
+             */
+            layerId: LayerId;
+        }
+
+        export interface MakeSnapshotResponse {
+            /**
+             * The id of the layer snapshot.
+             */
+            snapshotId: SnapshotId;
+        }
+
+        export interface ProfileSnapshotRequest {
+            /**
+             * The id of the layer snapshot.
+             */
+            snapshotId: SnapshotId;
+            /**
+             * The maximum number of times to replay the snapshot (1, if not specified).
+             */
+            minRepeatCount?: integer;
+            /**
+             * The minimum duration (in seconds) to replay the snapshot.
+             */
+            minDuration?: number;
+            /**
+             * The clip rectangle to apply when replaying the snapshot.
+             */
+            clipRect?: DOM.Rect;
+        }
+
+        export interface ProfileSnapshotResponse {
+            /**
+             * The array of paint profiles, one per run.
+             */
+            timings: PaintProfile[];
+        }
+
+        export interface ReleaseSnapshotRequest {
+            /**
+             * The id of the layer snapshot.
+             */
+            snapshotId: SnapshotId;
+        }
+
+        export interface ReplaySnapshotRequest {
+            /**
+             * The id of the layer snapshot.
+             */
+            snapshotId: SnapshotId;
+            /**
+             * The first step to replay from (replay from the very start if not specified).
+             */
+            fromStep?: integer;
+            /**
+             * The last step to replay to (replay till the end if not specified).
+             */
+            toStep?: integer;
+            /**
+             * The scale to apply while replaying (defaults to 1).
+             */
+            scale?: number;
+        }
+
+        export interface ReplaySnapshotResponse {
+            /**
+             * A data: URL for resulting image.
+             */
+            dataURL: string;
+        }
+
+        export interface SnapshotCommandLogRequest {
+            /**
+             * The id of the layer snapshot.
+             */
+            snapshotId: SnapshotId;
+        }
+
+        export interface SnapshotCommandLogResponse {
+            /**
+             * The array of canvas function calls.
+             */
+            commandLog: any[];
+        }
+
+        export interface LayerPaintedEvent {
+            /**
+             * The id of the painted layer.
+             */
+            layerId: LayerId;
+            /**
+             * Clip rectangle.
+             */
+            clip: DOM.Rect;
+        }
+
+        export interface LayerTreeDidChangeEvent {
+            /**
+             * Layer tree, absent if not in the comspositing mode.
+             */
+            layers?: Layer[];
+        }
+    }
+
+    /**
+     * Provides access to log entries.
+     */
+    export namespace Log {
+
+        export const enum LogEntrySource {
+            XML = 'xml',
+            Javascript = 'javascript',
+            Network = 'network',
+            Storage = 'storage',
+            Appcache = 'appcache',
+            Rendering = 'rendering',
+            Security = 'security',
+            Deprecation = 'deprecation',
+            Worker = 'worker',
+            Violation = 'violation',
+            Intervention = 'intervention',
+            Recommendation = 'recommendation',
+            Other = 'other',
+        }
+
+        export const enum LogEntryLevel {
+            Verbose = 'verbose',
+            Info = 'info',
+            Warning = 'warning',
+            Error = 'error',
+        }
+
+        /**
+         * Log entry.
+         */
+        export interface LogEntry {
+            /**
+             * Log entry source. (LogEntrySource enum)
+             */
+            source: ('xml' | 'javascript' | 'network' | 'storage' | 'appcache' | 'rendering' | 'security' | 'deprecation' | 'worker' | 'violation' | 'intervention' | 'recommendation' | 'other');
+            /**
+             * Log entry severity. (LogEntryLevel enum)
+             */
+            level: ('verbose' | 'info' | 'warning' | 'error');
+            /**
+             * Logged text.
+             */
+            text: string;
+            /**
+             * Timestamp when this entry was added.
+             */
+            timestamp: Runtime.Timestamp;
+            /**
+             * URL of the resource if known.
+             */
+            url?: string;
+            /**
+             * Line number in the resource.
+             */
+            lineNumber?: integer;
+            /**
+             * JavaScript stack trace.
+             */
+            stackTrace?: Runtime.StackTrace;
+            /**
+             * Identifier of the network request associated with this entry.
+             */
+            networkRequestId?: Network.RequestId;
+            /**
+             * Identifier of the worker associated with this entry.
+             */
+            workerId?: string;
+            /**
+             * Call arguments.
+             */
+            args?: Runtime.RemoteObject[];
+        }
+
+        export const enum ViolationSettingName {
+            LongTask = 'longTask',
+            LongLayout = 'longLayout',
+            BlockedEvent = 'blockedEvent',
+            BlockedParser = 'blockedParser',
+            DiscouragedAPIUse = 'discouragedAPIUse',
+            Handler = 'handler',
+            RecurringHandler = 'recurringHandler',
+        }
+
+        /**
+         * Violation configuration setting.
+         */
+        export interface ViolationSetting {
+            /**
+             * Violation type. (ViolationSettingName enum)
+             */
+            name: ('longTask' | 'longLayout' | 'blockedEvent' | 'blockedParser' | 'discouragedAPIUse' | 'handler' | 'recurringHandler');
+            /**
+             * Time threshold to trigger upon.
+             */
+            threshold: number;
+        }
+
+        export interface StartViolationsReportRequest {
+            /**
+             * Configuration for violations.
+             */
+            config: ViolationSetting[];
+        }
+
+        /**
+         * Issued when new message was logged.
+         */
+        export interface EntryAddedEvent {
+            /**
+             * The entry.
+             */
+            entry: LogEntry;
+        }
+    }
+
+    export namespace Memory {
+
+        /**
+         * Memory pressure level.
+         */
+        export type PressureLevel = ('moderate' | 'critical');
+
+        /**
+         * Heap profile sample.
+         */
+        export interface SamplingProfileNode {
+            /**
+             * Size of the sampled allocation.
+             */
+            size: number;
+            /**
+             * Total bytes attributed to this sample.
+             */
+            total: number;
+            /**
+             * Execution stack at the point of allocation.
+             */
+            stack: string[];
+        }
+
+        /**
+         * Array of heap profile samples.
+         */
+        export interface SamplingProfile {
+            samples: SamplingProfileNode[];
+            modules: Module[];
+        }
+
+        /**
+         * Executable module information
+         */
+        export interface Module {
+            /**
+             * Name of the module.
+             */
+            name: string;
+            /**
+             * UUID of the module.
+             */
+            uuid: string;
+            /**
+             * Base address where the module is loaded into memory. Encoded as a decimal
+             * or hexadecimal (0x prefixed) string.
+             */
+            baseAddress: string;
+            /**
+             * Size of the module in bytes.
+             */
+            size: number;
+        }
+
+        export interface GetDOMCountersResponse {
+            documents: integer;
+            nodes: integer;
+            jsEventListeners: integer;
+        }
+
+        export interface SetPressureNotificationsSuppressedRequest {
+            /**
+             * If true, memory pressure notifications will be suppressed.
+             */
+            suppressed: boolean;
+        }
+
+        export interface SimulatePressureNotificationRequest {
+            /**
+             * Memory pressure level of the notification.
+             */
+            level: PressureLevel;
+        }
+
+        export interface StartSamplingRequest {
+            /**
+             * Average number of bytes between samples.
+             */
+            samplingInterval?: integer;
+            /**
+             * Do not randomize intervals between samples.
+             */
+            suppressRandomness?: boolean;
+        }
+
+        export interface GetAllTimeSamplingProfileResponse {
+            profile: SamplingProfile;
+        }
+
+        export interface GetBrowserSamplingProfileResponse {
+            profile: SamplingProfile;
+        }
+
+        export interface GetSamplingProfileResponse {
+            profile: SamplingProfile;
+        }
+    }
+
+    /**
+     * Network domain allows tracking network activities of the page. It exposes information about http,
+     * file, data and other requests and responses, their headers, bodies, timing, etc.
+     */
+    export namespace Network {
+
+        /**
+         * Resource type as it was perceived by the rendering engine.
+         */
+        export type ResourceType = ('Document' | 'Stylesheet' | 'Image' | 'Media' | 'Font' | 'Script' | 'TextTrack' | 'XHR' | 'Fetch' | 'EventSource' | 'WebSocket' | 'Manifest' | 'SignedExchange' | 'Ping' | 'CSPViolationReport' | 'Preflight' | 'Other');
+
+        /**
+         * Unique loader identifier.
+         */
+        export type LoaderId = string;
+
+        /**
+         * Unique request identifier.
+         */
+        export type RequestId = string;
+
+        /**
+         * Unique intercepted request identifier.
+         */
+        export type InterceptionId = string;
+
+        /**
+         * Network level fetch failure reason.
+         */
+        export type ErrorReason = ('Failed' | 'Aborted' | 'TimedOut' | 'AccessDenied' | 'ConnectionClosed' | 'ConnectionReset' | 'ConnectionRefused' | 'ConnectionAborted' | 'ConnectionFailed' | 'NameNotResolved' | 'InternetDisconnected' | 'AddressUnreachable' | 'BlockedByClient' | 'BlockedByResponse');
+
+        /**
+         * UTC time in seconds, counted from January 1, 1970.
+         */
+        export type TimeSinceEpoch = number;
+
+        /**
+         * Monotonically increasing time in seconds since an arbitrary point in the past.
+         */
+        export type MonotonicTime = number;
+
+        /**
+         * Request / response headers as keys / values of JSON object.
+         */
+        export interface Headers {
+            [key: string]: string;
+        }
+
+        /**
+         * The underlying connection technology that the browser is supposedly using.
+         */
+        export type ConnectionType = ('none' | 'cellular2g' | 'cellular3g' | 'cellular4g' | 'bluetooth' | 'ethernet' | 'wifi' | 'wimax' | 'other');
+
+        /**
+         * Represents the cookie's 'SameSite' status:
+         * https://tools.ietf.org/html/draft-west-first-party-cookies
+         */
+        export type CookieSameSite = ('Strict' | 'Lax' | 'None');
+
+        /**
+         * Represents the cookie's 'Priority' status:
+         * https://tools.ietf.org/html/draft-west-cookie-priority-00
+         */
+        export type CookiePriority = ('Low' | 'Medium' | 'High');
+
+        /**
+         * Represents the source scheme of the origin that originally set the cookie.
+         * A value of "Unset" allows protocol clients to emulate legacy cookie scope for the scheme.
+         * This is a temporary ability and it will be removed in the future.
+         */
+        export type CookieSourceScheme = ('Unset' | 'NonSecure' | 'Secure');
+
+        /**
+         * Timing information for the request.
+         */
+        export interface ResourceTiming {
+            /**
+             * Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
+             * milliseconds relatively to this requestTime.
+             */
+            requestTime: number;
+            /**
+             * Started resolving proxy.
+             */
+            proxyStart: number;
+            /**
+             * Finished resolving proxy.
+             */
+            proxyEnd: number;
+            /**
+             * Started DNS address resolve.
+             */
+            dnsStart: number;
+            /**
+             * Finished DNS address resolve.
+             */
+            dnsEnd: number;
+            /**
+             * Started connecting to the remote host.
+             */
+            connectStart: number;
+            /**
+             * Connected to the remote host.
+             */
+            connectEnd: number;
+            /**
+             * Started SSL handshake.
+             */
+            sslStart: number;
+            /**
+             * Finished SSL handshake.
+             */
+            sslEnd: number;
+            /**
+             * Started running ServiceWorker.
+             */
+            workerStart: number;
+            /**
+             * Finished Starting ServiceWorker.
+             */
+            workerReady: number;
+            /**
+             * Started fetch event.
+             */
+            workerFetchStart: number;
+            /**
+             * Settled fetch event respondWith promise.
+             */
+            workerRespondWithSettled: number;
+            /**
+             * Started sending request.
+             */
+            sendStart: number;
+            /**
+             * Finished sending request.
+             */
+            sendEnd: number;
+            /**
+             * Time the server started pushing request.
+             */
+            pushStart: number;
+            /**
+             * Time the server finished pushing request.
+             */
+            pushEnd: number;
+            /**
+             * Finished receiving response headers.
+             */
+            receiveHeadersEnd: number;
+        }
+
+        /**
+         * Loading priority of a resource request.
+         */
+        export type ResourcePriority = ('VeryLow' | 'Low' | 'Medium' | 'High' | 'VeryHigh');
+
+        /**
+         * Post data entry for HTTP request
+         */
+        export interface PostDataEntry {
+            bytes?: string;
+        }
+
+        export const enum RequestReferrerPolicy {
+            UnsafeUrl = 'unsafe-url',
+            NoReferrerWhenDowngrade = 'no-referrer-when-downgrade',
+            NoReferrer = 'no-referrer',
+            Origin = 'origin',
+            OriginWhenCrossOrigin = 'origin-when-cross-origin',
+            SameOrigin = 'same-origin',
+            StrictOrigin = 'strict-origin',
+            StrictOriginWhenCrossOrigin = 'strict-origin-when-cross-origin',
+        }
+
+        /**
+         * HTTP request data.
+         */
+        export interface Request {
+            /**
+             * Request URL (without fragment).
+             */
+            url: string;
+            /**
+             * Fragment of the requested URL starting with hash, if present.
+             */
+            urlFragment?: string;
+            /**
+             * HTTP request method.
+             */
+            method: string;
+            /**
+             * HTTP request headers.
+             */
+            headers: Headers;
+            /**
+             * HTTP POST request data.
+             */
+            postData?: string;
+            /**
+             * True when the request has POST data. Note that postData might still be omitted when this flag is true when the data is too long.
+             */
+            hasPostData?: boolean;
+            /**
+             * Request body elements. This will be converted from base64 to binary
+             */
+            postDataEntries?: PostDataEntry[];
+            /**
+             * The mixed content type of the request.
+             */
+            mixedContentType?: Security.MixedContentType;
+            /**
+             * Priority of the resource request at the time request is sent.
+             */
+            initialPriority: ResourcePriority;
+            /**
+             * The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/ (RequestReferrerPolicy enum)
+             */
+            referrerPolicy: ('unsafe-url' | 'no-referrer-when-downgrade' | 'no-referrer' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin');
+            /**
+             * Whether is loaded via link preload.
+             */
+            isLinkPreload?: boolean;
+            /**
+             * Set for requests when the TrustToken API is used. Contains the parameters
+             * passed by the developer (e.g. via "fetch") as understood by the backend.
+             */
+            trustTokenParams?: TrustTokenParams;
+        }
+
+        /**
+         * Details of a signed certificate timestamp (SCT).
+         */
+        export interface SignedCertificateTimestamp {
+            /**
+             * Validation status.
+             */
+            status: string;
+            /**
+             * Origin.
+             */
+            origin: string;
+            /**
+             * Log name / description.
+             */
+            logDescription: string;
+            /**
+             * Log ID.
+             */
+            logId: string;
+            /**
+             * Issuance date.
+             */
+            timestamp: TimeSinceEpoch;
+            /**
+             * Hash algorithm.
+             */
+            hashAlgorithm: string;
+            /**
+             * Signature algorithm.
+             */
+            signatureAlgorithm: string;
+            /**
+             * Signature data.
+             */
+            signatureData: string;
+        }
+
+        /**
+         * Security details about a request.
+         */
+        export interface SecurityDetails {
+            /**
+             * Protocol name (e.g. "TLS 1.2" or "QUIC").
+             */
+            protocol: string;
+            /**
+             * Key Exchange used by the connection, or the empty string if not applicable.
+             */
+            keyExchange: string;
+            /**
+             * (EC)DH group used by the connection, if applicable.
+             */
+            keyExchangeGroup?: string;
+            /**
+             * Cipher name.
+             */
+            cipher: string;
+            /**
+             * TLS MAC. Note that AEAD ciphers do not have separate MACs.
+             */
+            mac?: string;
+            /**
+             * Certificate ID value.
+             */
+            certificateId: Security.CertificateId;
+            /**
+             * Certificate subject name.
+             */
+            subjectName: string;
+            /**
+             * Subject Alternative Name (SAN) DNS names and IP addresses.
+             */
+            sanList: string[];
+            /**
+             * Name of the issuing CA.
+             */
+            issuer: string;
+            /**
+             * Certificate valid from date.
+             */
+            validFrom: TimeSinceEpoch;
+            /**
+             * Certificate valid to (expiration) date
+             */
+            validTo: TimeSinceEpoch;
+            /**
+             * List of signed certificate timestamps (SCTs).
+             */
+            signedCertificateTimestampList: SignedCertificateTimestamp[];
+            /**
+             * Whether the request complied with Certificate Transparency policy
+             */
+            certificateTransparencyCompliance: CertificateTransparencyCompliance;
+        }
+
+        /**
+         * Whether the request complied with Certificate Transparency policy.
+         */
+        export type CertificateTransparencyCompliance = ('unknown' | 'not-compliant' | 'compliant');
+
+        /**
+         * The reason why request was blocked.
+         */
+        export type BlockedReason = ('other' | 'csp' | 'mixed-content' | 'origin' | 'inspector' | 'subresource-filter' | 'content-type' | 'coep-frame-resource-needs-coep-header' | 'coop-sandboxed-iframe-cannot-navigate-to-coop-page' | 'corp-not-same-origin' | 'corp-not-same-origin-after-defaulted-to-same-origin-by-coep' | 'corp-not-same-site');
+
+        /**
+         * The reason why request was blocked.
+         */
+        export type CorsError = ('DisallowedByMode' | 'InvalidResponse' | 'WildcardOriginNotAllowed' | 'MissingAllowOriginHeader' | 'MultipleAllowOriginValues' | 'InvalidAllowOriginValue' | 'AllowOriginMismatch' | 'InvalidAllowCredentials' | 'CorsDisabledScheme' | 'PreflightInvalidStatus' | 'PreflightDisallowedRedirect' | 'PreflightWildcardOriginNotAllowed' | 'PreflightMissingAllowOriginHeader' | 'PreflightMultipleAllowOriginValues' | 'PreflightInvalidAllowOriginValue' | 'PreflightAllowOriginMismatch' | 'PreflightInvalidAllowCredentials' | 'PreflightMissingAllowExternal' | 'PreflightInvalidAllowExternal' | 'InvalidAllowMethodsPreflightResponse' | 'InvalidAllowHeadersPreflightResponse' | 'MethodDisallowedByPreflightResponse' | 'HeaderDisallowedByPreflightResponse' | 'RedirectContainsCredentials' | 'InsecurePrivateNetwork' | 'NoCorsRedirectModeNotFollow');
+
+        export interface CorsErrorStatus {
+            corsError: CorsError;
+            failedParameter: string;
+        }
+
+        /**
+         * Source of serviceworker response.
+         */
+        export type ServiceWorkerResponseSource = ('cache-storage' | 'http-cache' | 'fallback-code' | 'network');
+
+        export const enum TrustTokenParamsRefreshPolicy {
+            UseCached = 'UseCached',
+            Refresh = 'Refresh',
+        }
+
+        /**
+         * Determines what type of Trust Token operation is executed and
+         * depending on the type, some additional parameters. The values
+         * are specified in third_party/blink/renderer/core/fetch/trust_token.idl.
+         */
+        export interface TrustTokenParams {
+            type: TrustTokenOperationType;
+            /**
+             * Only set for "token-redemption" type and determine whether
+             * to request a fresh SRR or use a still valid cached SRR. (TrustTokenParamsRefreshPolicy enum)
+             */
+            refreshPolicy: ('UseCached' | 'Refresh');
+            /**
+             * Origins of issuers from whom to request tokens or redemption
+             * records.
+             */
+            issuers?: string[];
+        }
+
+        export type TrustTokenOperationType = ('Issuance' | 'Redemption' | 'Signing');
+
+        /**
+         * HTTP response data.
+         */
+        export interface Response {
+            /**
+             * Response URL. This URL can be different from CachedResource.url in case of redirect.
+             */
+            url: string;
+            /**
+             * HTTP response status code.
+             */
+            status: integer;
+            /**
+             * HTTP response status text.
+             */
+            statusText: string;
+            /**
+             * HTTP response headers.
+             */
+            headers: Headers;
+            /**
+             * HTTP response headers text.
+             */
+            headersText?: string;
+            /**
+             * Resource mimeType as determined by the browser.
+             */
+            mimeType: string;
+            /**
+             * Refined HTTP request headers that were actually transmitted over the network.
+             */
+            requestHeaders?: Headers;
+            /**
+             * HTTP request headers text.
+             */
+            requestHeadersText?: string;
+            /**
+             * Specifies whether physical connection was actually reused for this request.
+             */
+            connectionReused: boolean;
+            /**
+             * Physical connection id that was actually used for this request.
+             */
+            connectionId: number;
+            /**
+             * Remote IP address.
+             */
+            remoteIPAddress?: string;
+            /**
+             * Remote port.
+             */
+            remotePort?: integer;
+            /**
+             * Specifies that the request was served from the disk cache.
+             */
+            fromDiskCache?: boolean;
+            /**
+             * Specifies that the request was served from the ServiceWorker.
+             */
+            fromServiceWorker?: boolean;
+            /**
+             * Specifies that the request was served from the prefetch cache.
+             */
+            fromPrefetchCache?: boolean;
+            /**
+             * Total number of bytes received for this request so far.
+             */
+            encodedDataLength: number;
+            /**
+             * Timing information for the given request.
+             */
+            timing?: ResourceTiming;
+            /**
+             * Response source of response from ServiceWorker.
+             */
+            serviceWorkerResponseSource?: ServiceWorkerResponseSource;
+            /**
+             * The time at which the returned response was generated.
+             */
+            responseTime?: TimeSinceEpoch;
+            /**
+             * Cache Storage Cache Name.
+             */
+            cacheStorageCacheName?: string;
+            /**
+             * Protocol used to fetch this request.
+             */
+            protocol?: string;
+            /**
+             * Security state of the request resource.
+             */
+            securityState: Security.SecurityState;
+            /**
+             * Security details for the request.
+             */
+            securityDetails?: SecurityDetails;
+        }
+
+        /**
+         * WebSocket request data.
+         */
+        export interface WebSocketRequest {
+            /**
+             * HTTP request headers.
+             */
+            headers: Headers;
+        }
+
+        /**
+         * WebSocket response data.
+         */
+        export interface WebSocketResponse {
+            /**
+             * HTTP response status code.
+             */
+            status: integer;
+            /**
+             * HTTP response status text.
+             */
+            statusText: string;
+            /**
+             * HTTP response headers.
+             */
+            headers: Headers;
+            /**
+             * HTTP response headers text.
+             */
+            headersText?: string;
+            /**
+             * HTTP request headers.
+             */
+            requestHeaders?: Headers;
+            /**
+             * HTTP request headers text.
+             */
+            requestHeadersText?: string;
+        }
+
+        /**
+         * WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests.
+         */
+        export interface WebSocketFrame {
+            /**
+             * WebSocket message opcode.
+             */
+            opcode: number;
+            /**
+             * WebSocket message mask.
+             */
+            mask: boolean;
+            /**
+             * WebSocket message payload data.
+             * If the opcode is 1, this is a text message and payloadData is a UTF-8 string.
+             * If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data.
+             */
+            payloadData: string;
+        }
+
+        /**
+         * Information about the cached resource.
+         */
+        export interface CachedResource {
+            /**
+             * Resource URL. This is the url of the original network request.
+             */
+            url: string;
+            /**
+             * Type of this resource.
+             */
+            type: ResourceType;
+            /**
+             * Cached response data.
+             */
+            response?: Response;
+            /**
+             * Cached response body size.
+             */
+            bodySize: number;
+        }
+
+        export const enum InitiatorType {
+            Parser = 'parser',
+            Script = 'script',
+            Preload = 'preload',
+            SignedExchange = 'SignedExchange',
+            Preflight = 'preflight',
+            Other = 'other',
+        }
+
+        /**
+         * Information about the request initiator.
+         */
+        export interface Initiator {
+            /**
+             * Type of this initiator. (InitiatorType enum)
+             */
+            type: ('parser' | 'script' | 'preload' | 'SignedExchange' | 'preflight' | 'other');
+            /**
+             * Initiator JavaScript stack trace, set for Script only.
+             */
+            stack?: Runtime.StackTrace;
+            /**
+             * Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type.
+             */
+            url?: string;
+            /**
+             * Initiator line number, set for Parser type or for Script type (when script is importing
+             * module) (0-based).
+             */
+            lineNumber?: number;
+            /**
+             * Initiator column number, set for Parser type or for Script type (when script is importing
+             * module) (0-based).
+             */
+            columnNumber?: number;
+            /**
+             * Set if another request triggered this request (e.g. preflight).
+             */
+            requestId?: RequestId;
+        }
+
+        /**
+         * Cookie object
+         */
+        export interface Cookie {
+            /**
+             * Cookie name.
+             */
+            name: string;
+            /**
+             * Cookie value.
+             */
+            value: string;
+            /**
+             * Cookie domain.
+             */
+            domain: string;
+            /**
+             * Cookie path.
+             */
+            path: string;
+            /**
+             * Cookie expiration date as the number of seconds since the UNIX epoch.
+             */
+            expires: number;
+            /**
+             * Cookie size.
+             */
+            size: integer;
+            /**
+             * True if cookie is http-only.
+             */
+            httpOnly: boolean;
+            /**
+             * True if cookie is secure.
+             */
+            secure: boolean;
+            /**
+             * True in case of session cookie.
+             */
+            session: boolean;
+            /**
+             * Cookie SameSite type.
+             */
+            sameSite?: CookieSameSite;
+            /**
+             * Cookie Priority
+             */
+            priority: CookiePriority;
+            /**
+             * True if cookie is SameParty.
+             */
+            sameParty: boolean;
+            /**
+             * Cookie source scheme type.
+             */
+            sourceScheme: CookieSourceScheme;
+            /**
+             * Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
+             * An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
+             * This is a temporary ability and it will be removed in the future.
+             */
+            sourcePort: integer;
+        }
+
+        /**
+         * Types of reasons why a cookie may not be stored from a response.
+         */
+        export type SetCookieBlockedReason = ('SecureOnly' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'SyntaxError' | 'SchemeNotSupported' | 'OverwriteSecure' | 'InvalidDomain' | 'InvalidPrefix' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext' | 'SamePartyConflictsWithOtherAttributes');
+
+        /**
+         * Types of reasons why a cookie may not be sent with a request.
+         */
+        export type CookieBlockedReason = ('SecureOnly' | 'NotOnPath' | 'DomainMismatch' | 'SameSiteStrict' | 'SameSiteLax' | 'SameSiteUnspecifiedTreatedAsLax' | 'SameSiteNoneInsecure' | 'UserPreferences' | 'UnknownError' | 'SchemefulSameSiteStrict' | 'SchemefulSameSiteLax' | 'SchemefulSameSiteUnspecifiedTreatedAsLax' | 'SamePartyFromCrossPartyContext');
+
+        /**
+         * A cookie which was not stored from a response with the corresponding reason.
+         */
+        export interface BlockedSetCookieWithReason {
+            /**
+             * The reason(s) this cookie was blocked.
+             */
+            blockedReasons: SetCookieBlockedReason[];
+            /**
+             * The string representing this individual cookie as it would appear in the header.
+             * This is not the entire "cookie" or "set-cookie" header which could have multiple cookies.
+             */
+            cookieLine: string;
+            /**
+             * The cookie object which represents the cookie which was not stored. It is optional because
+             * sometimes complete cookie information is not available, such as in the case of parsing
+             * errors.
+             */
+            cookie?: Cookie;
+        }
+
+        /**
+         * A cookie with was not sent with a request with the corresponding reason.
+         */
+        export interface BlockedCookieWithReason {
+            /**
+             * The reason(s) the cookie was blocked.
+             */
+            blockedReasons: CookieBlockedReason[];
+            /**
+             * The cookie object representing the cookie which was not sent.
+             */
+            cookie: Cookie;
+        }
+
+        /**
+         * Cookie parameter object
+         */
+        export interface CookieParam {
+            /**
+             * Cookie name.
+             */
+            name: string;
+            /**
+             * Cookie value.
+             */
+            value: string;
+            /**
+             * The request-URI to associate with the setting of the cookie. This value can affect the
+             * default domain, path, source port, and source scheme values of the created cookie.
+             */
+            url?: string;
+            /**
+             * Cookie domain.
+             */
+            domain?: string;
+            /**
+             * Cookie path.
+             */
             path?: string;
-            content?: string;
-        }): Promise<ElementHandle>;
+            /**
+             * True if cookie is secure.
+             */
+            secure?: boolean;
+            /**
+             * True if cookie is http-only.
+             */
+            httpOnly?: boolean;
+            /**
+             * Cookie SameSite type.
+             */
+            sameSite?: CookieSameSite;
+            /**
+             * Cookie expiration date, session cookie if not set
+             */
+            expires?: TimeSinceEpoch;
+            /**
+             * Cookie Priority.
+             */
+            priority?: CookiePriority;
+            /**
+             * True if cookie is SameParty.
+             */
+            sameParty?: boolean;
+            /**
+             * Cookie source scheme type.
+             */
+            sourceScheme?: CookieSourceScheme;
+            /**
+             * Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
+             * An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
+             * This is a temporary ability and it will be removed in the future.
+             */
+            sourcePort?: integer;
+        }
+
+        export const enum AuthChallengeSource {
+            Server = 'Server',
+            Proxy = 'Proxy',
+        }
+
         /**
-         * The method adds a function called `name` on the page's `window` object. When
-         * called, the function executes `puppeteerFunction` in node.js and returns a
-         * `Promise` which resolves to the return value of `puppeteerFunction`.
-         *
-         * If the puppeteerFunction returns a `Promise`, it will be awaited.
-         *
-         * NOTE: Functions installed via `page.exposeFunction` survive navigations.
-         * @param name - Name of the function on the window object
-         * @param puppeteerFunction -  Callback function which will be called in
-         * Puppeteer's context.
-         * @example
-         * An example of adding an `md5` function into the page:
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const crypto = require('crypto');
-         *
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * page.on('console', (msg) => console.log(msg.text()));
-         * await page.exposeFunction('md5', (text) =>
-         * crypto.createHash('md5').update(text).digest('hex')
-         * );
-         * await page.evaluate(async () => {
-         * // use window.md5 to compute hashes
-         * const myString = 'PUPPETEER';
-         * const myHash = await window.md5(myString);
-         * console.log(`md5 of ${myString} is ${myHash}`);
-         * });
-         * await browser.close();
-         * })();
-         * ```
-         * An example of adding a `window.readfile` function into the page:
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const fs = require('fs');
-         *
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * page.on('console', (msg) => console.log(msg.text()));
-         * await page.exposeFunction('readfile', async (filePath) => {
-         * return new Promise((resolve, reject) => {
-         * fs.readFile(filePath, 'utf8', (err, text) => {
-         *    if (err) reject(err);
-         *    else resolve(text);
-         *  });
-         * });
-         * });
-         * await page.evaluate(async () => {
-         * // use window.readfile to read contents of a file
-         * const content = await window.readfile('/etc/hosts');
-         * console.log(content);
-         * });
-         * await browser.close();
-         * })();
-         * ```
+         * Authorization challenge for HTTP status code 401 or 407.
          */
-        exposeFunction(name: string, puppeteerFunction: Function | {
-            default: Function;
-        }): Promise<void>;
+        export interface AuthChallenge {
+            /**
+             * Source of the authentication challenge. (AuthChallengeSource enum)
+             */
+            source?: ('Server' | 'Proxy');
+            /**
+             * Origin of the challenger.
+             */
+            origin: string;
+            /**
+             * The authentication scheme used, such as basic or digest
+             */
+            scheme: string;
+            /**
+             * The realm of the challenge. May be empty.
+             */
+            realm: string;
+        }
+
+        export const enum AuthChallengeResponseResponse {
+            Default = 'Default',
+            CancelAuth = 'CancelAuth',
+            ProvideCredentials = 'ProvideCredentials',
+        }
+
         /**
-         * Provide credentials for `HTTP authentication`.
-         * @remarks To disable authentication, pass `null`.
+         * Response to an AuthChallenge.
          */
-        authenticate(credentials: Credentials): Promise<void>;
+        export interface AuthChallengeResponse {
+            /**
+             * The decision on what to do in response to the authorization challenge.  Default means
+             * deferring to the default behavior of the net stack, which will likely either the Cancel
+             * authentication or display a popup dialog box. (AuthChallengeResponseResponse enum)
+             */
+            response: ('Default' | 'CancelAuth' | 'ProvideCredentials');
+            /**
+             * The username to provide, possibly empty. Should only be set if response is
+             * ProvideCredentials.
+             */
+            username?: string;
+            /**
+             * The password to provide, possibly empty. Should only be set if response is
+             * ProvideCredentials.
+             */
+            password?: string;
+        }
+
         /**
-         * The extra HTTP headers will be sent with every request the page initiates.
-         * NOTE: All HTTP header names are lowercased. (HTTP headers are
-         * case-insensitive, so this shouldn’t impact your server code.)
-         * NOTE: page.setExtraHTTPHeaders does not guarantee the order of headers in
-         * the outgoing requests.
-         * @param headers - An object containing additional HTTP headers to be sent
-         * with every request. All header values must be strings.
-         * @returns
+         * Stages of the interception to begin intercepting. Request will intercept before the request is
+         * sent. Response will intercept after the response is received.
          */
-        setExtraHTTPHeaders(headers: Record<string, string>): Promise<void>;
+        export type InterceptionStage = ('Request' | 'HeadersReceived');
+
         /**
-         * @param userAgent - Specific user agent to use in this page
-         * @param userAgentData - Specific user agent client hint data to use in this
-         * page
-         * @returns Promise which resolves when the user agent is set.
+         * Request pattern for interception.
          */
-        setUserAgent(userAgent: string, userAgentMetadata?: Protocol.Emulation.UserAgentMetadata): Promise<void>;
+        export interface RequestPattern {
+            /**
+             * Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is
+             * backslash. Omitting is equivalent to `"*"`.
+             */
+            urlPattern?: string;
+            /**
+             * If set, only requests for matching resource types will be intercepted.
+             */
+            resourceType?: ResourceType;
+            /**
+             * Stage at which to begin intercepting requests. Default is Request.
+             */
+            interceptionStage?: InterceptionStage;
+        }
+
         /**
-         * @returns Object containing metrics as key/value pairs.
-         *
-         * - `Timestamp` : The timestamp when the metrics sample was taken.
-         *
-         * - `Documents` : Number of documents in the page.
-         *
-         * - `Frames` : Number of frames in the page.
-         *
-         * - `JSEventListeners` : Number of events in the page.
-         *
-         * - `Nodes` : Number of DOM nodes in the page.
-         *
-         * - `LayoutCount` : Total number of full or partial page layout.
-         *
-         * - `RecalcStyleCount` : Total number of page style recalculations.
-         *
-         * - `LayoutDuration` : Combined durations of all page layouts.
-         *
-         * - `RecalcStyleDuration` : Combined duration of all page style
-         *   recalculations.
-         *
-         * - `ScriptDuration` : Combined duration of JavaScript execution.
-         *
-         * - `TaskDuration` : Combined duration of all tasks performed by the browser.
-         *
-         *
-         * - `JSHeapUsedSize` : Used JavaScript heap size.
-         *
-         * - `JSHeapTotalSize` : Total JavaScript heap size.
-         * @remarks
-         * NOTE: All timestamps are in monotonic time: monotonically increasing time
-         * in seconds since an arbitrary point in the past.
+         * Information about a signed exchange signature.
+         * https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1
          */
-        metrics(): Promise<Metrics>;
-        private _emitMetrics;
-        private _buildMetricsObject;
-        private _handleException;
-        private _onConsoleAPI;
-        private _onBindingCalled;
-        private _addConsoleMessage;
-        private _onDialog;
+        export interface SignedExchangeSignature {
+            /**
+             * Signed exchange signature label.
+             */
+            label: string;
+            /**
+             * The hex string of signed exchange signature.
+             */
+            signature: string;
+            /**
+             * Signed exchange signature integrity.
+             */
+            integrity: string;
+            /**
+             * Signed exchange signature cert Url.
+             */
+            certUrl?: string;
+            /**
+             * The hex string of signed exchange signature cert sha256.
+             */
+            certSha256?: string;
+            /**
+             * Signed exchange signature validity Url.
+             */
+            validityUrl: string;
+            /**
+             * Signed exchange signature date.
+             */
+            date: integer;
+            /**
+             * Signed exchange signature expires.
+             */
+            expires: integer;
+            /**
+             * The encoded certificates.
+             */
+            certificates?: string[];
+        }
+
         /**
-         * Resets default white background
+         * Information about a signed exchange header.
+         * https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation
          */
-        private _resetDefaultBackgroundColor;
+        export interface SignedExchangeHeader {
+            /**
+             * Signed exchange request URL.
+             */
+            requestUrl: string;
+            /**
+             * Signed exchange response code.
+             */
+            responseCode: integer;
+            /**
+             * Signed exchange response headers.
+             */
+            responseHeaders: Headers;
+            /**
+             * Signed exchange response signature.
+             */
+            signatures: SignedExchangeSignature[];
+            /**
+             * Signed exchange header integrity hash in the form of "sha256-<base64-hash-value>".
+             */
+            headerIntegrity: string;
+        }
+
         /**
-         * Hides default white background
+         * Field type for a signed exchange related error.
          */
-        private _setTransparentBackgroundColor;
+        export type SignedExchangeErrorField = ('signatureSig' | 'signatureIntegrity' | 'signatureCertUrl' | 'signatureCertSha256' | 'signatureValidityUrl' | 'signatureTimestamps');
+
         /**
-         *
-         * @returns
-         * @remarks Shortcut for
-         * {@link Frame.url | page.mainFrame().url()}.
+         * Information about a signed exchange response.
          */
-        url(): string;
-        content(): Promise<string>;
+        export interface SignedExchangeError {
+            /**
+             * Error message.
+             */
+            message: string;
+            /**
+             * The index of the signature which caused the error.
+             */
+            signatureIndex?: integer;
+            /**
+             * The field which caused the error.
+             */
+            errorField?: SignedExchangeErrorField;
+        }
+
         /**
-         * @param html - HTML markup to assign to the page.
-         * @param options - Parameters that has some properties.
-         * @remarks
-         * The parameter `options` might have the following options.
-         *
-         * - `timeout` : Maximum time in milliseconds for resources to load, defaults
-         *   to 30 seconds, pass `0` to disable timeout. The default value can be
-         *   changed by using the
-         *   {@link Page.setDefaultNavigationTimeout |
-         *   page.setDefaultNavigationTimeout(timeout)}
-         *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-         *   methods.
-         *
-         * - `waitUntil`: When to consider setting markup succeeded, defaults to `load`.
-         *    Given an array of event strings, setting content is considered to be
-         *    successful after all events have been fired. Events can be either:<br/>
-         *  - `load` : consider setting content to be finished when the `load` event is
-         *    fired.<br/>
-         *  - `domcontentloaded` : consider setting content to be finished when the
-         *   `DOMContentLoaded` event is fired.<br/>
-         *  - `networkidle0` : consider setting content to be finished when there are no
-         *   more than 0 network connections for at least `500` ms.<br/>
-         *  - `networkidle2` : consider setting content to be finished when there are no
-         *   more than 2 network connections for at least `500` ms.
+         * Information about a signed exchange response.
          */
-        setContent(html: string, options?: WaitForOptions): Promise<void>;
+        export interface SignedExchangeInfo {
+            /**
+             * The outer response of signed HTTP exchange which was received from network.
+             */
+            outerResponse: Response;
+            /**
+             * Information about the signed exchange header.
+             */
+            header?: SignedExchangeHeader;
+            /**
+             * Security details for the signed exchange header.
+             */
+            securityDetails?: SecurityDetails;
+            /**
+             * Errors occurred while handling the signed exchagne.
+             */
+            errors?: SignedExchangeError[];
+        }
+
         /**
-         * @param url - URL to navigate page to. The URL should include scheme, e.g.
-         * `https://`
-         * @param options - Navigation Parameter
-         * @returns Promise which resolves to the main resource response. In case of
-         * multiple redirects, the navigation will resolve with the response of the
-         * last redirect.
-         * @remarks
-         * The argument `options` might have the following properties:
-         *
-         * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-         *   seconds, pass 0 to disable timeout. The default value can be changed by
-         *   using the
-         *   {@link Page.setDefaultNavigationTimeout |
-         *   page.setDefaultNavigationTimeout(timeout)}
-         *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-         *   methods.
-         *
-         * - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
-         *    Given an array of event strings, navigation is considered to be successful
-         *    after all events have been fired. Events can be either:<br/>
-         *  - `load` : consider navigation to be finished when the load event is
-         *    fired.<br/>
-         *  - `domcontentloaded` : consider navigation to be finished when the
-         *    DOMContentLoaded event is fired.<br/>
-         *  - `networkidle0` : consider navigation to be finished when there are no
-         *    more than 0 network connections for at least `500` ms.<br/>
-         *  - `networkidle2` : consider navigation to be finished when there are no
-         *    more than 2 network connections for at least `500` ms.
-         *
-         * - `referer` : Referer header value. If provided it will take preference
-         *   over the referer header value set by
-         *   {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
-         *
-         * `page.goto` will throw an error if:
-         * - there's an SSL error (e.g. in case of self-signed certificates).
-         * - target URL is invalid.
-         * - the timeout is exceeded during navigation.
-         * - the remote server does not respond or is unreachable.
-         * - the main resource failed to load.
-         *
-         * `page.goto` will not throw an error when any valid HTTP status code is
-         *   returned by the remote server, including 404 "Not Found" and 500
-         *   "Internal Server Error". The status code for such responses can be
-         *   retrieved by calling response.status().
-         *
-         * NOTE: `page.goto` either throws an error or returns a main resource
-         * response. The only exceptions are navigation to about:blank or navigation
-         * to the same URL with a different hash, which would succeed and return null.
-         *
-         * NOTE: Headless mode doesn't support navigation to a PDF document. See the
-         * {@link https://bugs.chromium.org/p/chromium/issues/detail?id=761295
-         * | upstream issue}.
-         *
-         * Shortcut for {@link Frame.goto | page.mainFrame().goto(url, options)}.
+         * List of content encodings supported by the backend.
          */
-        goto(url: string, options?: WaitForOptions & {
-            referer?: string;
-        }): Promise<HTTPResponse>;
+        export type ContentEncoding = ('deflate' | 'gzip' | 'br');
+
+        export type PrivateNetworkRequestPolicy = ('Allow' | 'BlockFromInsecureToMorePrivate' | 'WarnFromInsecureToMorePrivate');
+
+        export type IPAddressSpace = ('Local' | 'Private' | 'Public' | 'Unknown');
+
+        export interface ClientSecurityState {
+            initiatorIsSecureContext: boolean;
+            initiatorIPAddressSpace: IPAddressSpace;
+            privateNetworkRequestPolicy: PrivateNetworkRequestPolicy;
+        }
+
+        export type CrossOriginOpenerPolicyValue = ('SameOrigin' | 'SameOriginAllowPopups' | 'UnsafeNone' | 'SameOriginPlusCoep');
+
+        export interface CrossOriginOpenerPolicyStatus {
+            value: CrossOriginOpenerPolicyValue;
+            reportOnlyValue: CrossOriginOpenerPolicyValue;
+            reportingEndpoint?: string;
+            reportOnlyReportingEndpoint?: string;
+        }
+
+        export type CrossOriginEmbedderPolicyValue = ('None' | 'CorsOrCredentialless' | 'RequireCorp');
+
+        export interface CrossOriginEmbedderPolicyStatus {
+            value: CrossOriginEmbedderPolicyValue;
+            reportOnlyValue: CrossOriginEmbedderPolicyValue;
+            reportingEndpoint?: string;
+            reportOnlyReportingEndpoint?: string;
+        }
+
+        export interface SecurityIsolationStatus {
+            coop?: CrossOriginOpenerPolicyStatus;
+            coep?: CrossOriginEmbedderPolicyStatus;
+        }
+
         /**
-         * @param options - Navigation parameters which might have the following
-         * properties:
-         * @returns Promise which resolves to the main resource response. In case of
-         * multiple redirects, the navigation will resolve with the response of the
-         * last redirect.
-         * @remarks
-         * The argument `options` might have the following properties:
-         *
-         * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-         *   seconds, pass 0 to disable timeout. The default value can be changed by
-         *   using the
-         *   {@link Page.setDefaultNavigationTimeout |
-         *   page.setDefaultNavigationTimeout(timeout)}
-         *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-         *   methods.
-         *
-         * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-         *    Given an array of event strings, navigation is considered to be
-         *    successful after all events have been fired. Events can be either:<br/>
-         *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-         *  - `domcontentloaded` : consider navigation to be finished when the
-         *   DOMContentLoaded event is fired.<br/>
-         *  - `networkidle0` : consider navigation to be finished when there are no
-         *   more than 0 network connections for at least `500` ms.<br/>
-         *  - `networkidle2` : consider navigation to be finished when there are no
-         *   more than 2 network connections for at least `500` ms.
+         * An object providing the result of a network resource load.
          */
-        reload(options?: WaitForOptions): Promise<HTTPResponse | null>;
+        export interface LoadNetworkResourcePageResult {
+            success: boolean;
+            /**
+             * Optional values used for error reporting.
+             */
+            netError?: number;
+            netErrorName?: string;
+            httpStatusCode?: number;
+            /**
+             * If successful, one of the following two fields holds the result.
+             */
+            stream?: IO.StreamHandle;
+            /**
+             * Response headers.
+             */
+            headers?: Network.Headers;
+        }
+
         /**
-         * This resolves when the page navigates to a new URL or reloads. It is useful
-         * when you run code that will indirectly cause the page to navigate. Consider
-         * this example:
-         * ```js
-         * const [response] = await Promise.all([
-         * page.waitForNavigation(), // The promise resolves after navigation has finished
-         * page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
-         * ]);
-         * ```
-         *
-         * @param options - Navigation parameters which might have the following properties:
-         * @returns Promise which resolves to the main resource response. In case of
-         * multiple redirects, the navigation will resolve with the response of the
-         * last redirect. In case of navigation to a different anchor or navigation
-         * due to History API usage, the navigation will resolve with `null`.
-         * @remarks
-         * NOTE: Usage of the
-         * {@link https://developer.mozilla.org/en-US/docs/Web/API/History_API | History API}
-         * to change the URL is considered a navigation.
-         *
-         * Shortcut for
-         * {@link Frame.waitForNavigation | page.mainFrame().waitForNavigation(options)}.
+         * An options object that may be extended later to better support CORS,
+         * CORB and streaming.
          */
-        waitForNavigation(options?: WaitForOptions): Promise<HTTPResponse | null>;
-        private _sessionClosePromise;
+        export interface LoadNetworkResourceOptions {
+            disableCache: boolean;
+            includeCredentials: boolean;
+        }
+
+        export interface SetAcceptedEncodingsRequest {
+            /**
+             * List of accepted content encodings.
+             */
+            encodings: ContentEncoding[];
+        }
+
+        export interface CanClearBrowserCacheResponse {
+            /**
+             * True if browser cache can be cleared.
+             */
+            result: boolean;
+        }
+
+        export interface CanClearBrowserCookiesResponse {
+            /**
+             * True if browser cookies can be cleared.
+             */
+            result: boolean;
+        }
+
+        export interface CanEmulateNetworkConditionsResponse {
+            /**
+             * True if emulation of network conditions is supported.
+             */
+            result: boolean;
+        }
+
+        export interface ContinueInterceptedRequestRequest {
+            interceptionId: InterceptionId;
+            /**
+             * If set this causes the request to fail with the given reason. Passing `Aborted` for requests
+             * marked with `isNavigationRequest` also cancels the navigation. Must not be set in response
+             * to an authChallenge.
+             */
+            errorReason?: ErrorReason;
+            /**
+             * If set the requests completes using with the provided base64 encoded raw response, including
+             * HTTP status line and headers etc... Must not be set in response to an authChallenge. (Encoded as a base64 string when passed over JSON)
+             */
+            rawResponse?: string;
+            /**
+             * If set the request url will be modified in a way that's not observable by page. Must not be
+             * set in response to an authChallenge.
+             */
+            url?: string;
+            /**
+             * If set this allows the request method to be overridden. Must not be set in response to an
+             * authChallenge.
+             */
+            method?: string;
+            /**
+             * If set this allows postData to be set. Must not be set in response to an authChallenge.
+             */
+            postData?: string;
+            /**
+             * If set this allows the request headers to be changed. Must not be set in response to an
+             * authChallenge.
+             */
+            headers?: Headers;
+            /**
+             * Response to a requestIntercepted with an authChallenge. Must not be set otherwise.
+             */
+            authChallengeResponse?: AuthChallengeResponse;
+        }
+
+        export interface DeleteCookiesRequest {
+            /**
+             * Name of the cookies to remove.
+             */
+            name: string;
+            /**
+             * If specified, deletes all the cookies with the given name where domain and path match
+             * provided URL.
+             */
+            url?: string;
+            /**
+             * If specified, deletes only cookies with the exact domain.
+             */
+            domain?: string;
+            /**
+             * If specified, deletes only cookies with the exact path.
+             */
+            path?: string;
+        }
+
+        export interface EmulateNetworkConditionsRequest {
+            /**
+             * True to emulate internet disconnection.
+             */
+            offline: boolean;
+            /**
+             * Minimum latency from request sent to response headers received (ms).
+             */
+            latency: number;
+            /**
+             * Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
+             */
+            downloadThroughput: number;
+            /**
+             * Maximal aggregated upload throughput (bytes/sec).  -1 disables upload throttling.
+             */
+            uploadThroughput: number;
+            /**
+             * Connection type if known.
+             */
+            connectionType?: ConnectionType;
+        }
+
+        export interface EnableRequest {
+            /**
+             * Buffer size in bytes to use when preserving network payloads (XHRs, etc).
+             */
+            maxTotalBufferSize?: integer;
+            /**
+             * Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc).
+             */
+            maxResourceBufferSize?: integer;
+            /**
+             * Longest post body size (in bytes) that would be included in requestWillBeSent notification
+             */
+            maxPostDataSize?: integer;
+        }
+
+        export interface GetAllCookiesResponse {
+            /**
+             * Array of cookie objects.
+             */
+            cookies: Cookie[];
+        }
+
+        export interface GetCertificateRequest {
+            /**
+             * Origin to get certificate for.
+             */
+            origin: string;
+        }
+
+        export interface GetCertificateResponse {
+            tableNames: string[];
+        }
+
+        export interface GetCookiesRequest {
+            /**
+             * The list of URLs for which applicable cookies will be fetched.
+             * If not specified, it's assumed to be set to the list containing
+             * the URLs of the page and all of its subframes.
+             */
+            urls?: string[];
+        }
+
+        export interface GetCookiesResponse {
+            /**
+             * Array of cookie objects.
+             */
+            cookies: Cookie[];
+        }
+
+        export interface GetResponseBodyRequest {
+            /**
+             * Identifier of the network request to get content for.
+             */
+            requestId: RequestId;
+        }
+
+        export interface GetResponseBodyResponse {
+            /**
+             * Response body.
+             */
+            body: string;
+            /**
+             * True, if content was sent as base64.
+             */
+            base64Encoded: boolean;
+        }
+
+        export interface GetRequestPostDataRequest {
+            /**
+             * Identifier of the network request to get content for.
+             */
+            requestId: RequestId;
+        }
+
+        export interface GetRequestPostDataResponse {
+            /**
+             * Request body string, omitting files from multipart requests
+             */
+            postData: string;
+        }
+
+        export interface GetResponseBodyForInterceptionRequest {
+            /**
+             * Identifier for the intercepted request to get body for.
+             */
+            interceptionId: InterceptionId;
+        }
+
+        export interface GetResponseBodyForInterceptionResponse {
+            /**
+             * Response body.
+             */
+            body: string;
+            /**
+             * True, if content was sent as base64.
+             */
+            base64Encoded: boolean;
+        }
+
+        export interface TakeResponseBodyForInterceptionAsStreamRequest {
+            interceptionId: InterceptionId;
+        }
+
+        export interface TakeResponseBodyForInterceptionAsStreamResponse {
+            stream: IO.StreamHandle;
+        }
+
+        export interface ReplayXHRRequest {
+            /**
+             * Identifier of XHR to replay.
+             */
+            requestId: RequestId;
+        }
+
+        export interface SearchInResponseBodyRequest {
+            /**
+             * Identifier of the network response to search.
+             */
+            requestId: RequestId;
+            /**
+             * String to search for.
+             */
+            query: string;
+            /**
+             * If true, search is case sensitive.
+             */
+            caseSensitive?: boolean;
+            /**
+             * If true, treats string parameter as regex.
+             */
+            isRegex?: boolean;
+        }
+
+        export interface SearchInResponseBodyResponse {
+            /**
+             * List of search matches.
+             */
+            result: Debugger.SearchMatch[];
+        }
+
+        export interface SetBlockedURLsRequest {
+            /**
+             * URL patterns to block. Wildcards ('*') are allowed.
+             */
+            urls: string[];
+        }
+
+        export interface SetBypassServiceWorkerRequest {
+            /**
+             * Bypass service worker and load from network.
+             */
+            bypass: boolean;
+        }
+
+        export interface SetCacheDisabledRequest {
+            /**
+             * Cache disabled state.
+             */
+            cacheDisabled: boolean;
+        }
+
+        export interface SetCookieRequest {
+            /**
+             * Cookie name.
+             */
+            name: string;
+            /**
+             * Cookie value.
+             */
+            value: string;
+            /**
+             * The request-URI to associate with the setting of the cookie. This value can affect the
+             * default domain, path, source port, and source scheme values of the created cookie.
+             */
+            url?: string;
+            /**
+             * Cookie domain.
+             */
+            domain?: string;
+            /**
+             * Cookie path.
+             */
+            path?: string;
+            /**
+             * True if cookie is secure.
+             */
+            secure?: boolean;
+            /**
+             * True if cookie is http-only.
+             */
+            httpOnly?: boolean;
+            /**
+             * Cookie SameSite type.
+             */
+            sameSite?: CookieSameSite;
+            /**
+             * Cookie expiration date, session cookie if not set
+             */
+            expires?: TimeSinceEpoch;
+            /**
+             * Cookie Priority type.
+             */
+            priority?: CookiePriority;
+            /**
+             * True if cookie is SameParty.
+             */
+            sameParty?: boolean;
+            /**
+             * Cookie source scheme type.
+             */
+            sourceScheme?: CookieSourceScheme;
+            /**
+             * Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
+             * An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
+             * This is a temporary ability and it will be removed in the future.
+             */
+            sourcePort?: integer;
+        }
+
+        export interface SetCookieResponse {
+            /**
+             * Always set to true. If an error occurs, the response indicates protocol error.
+             */
+            success: boolean;
+        }
+
+        export interface SetCookiesRequest {
+            /**
+             * Cookies to be set.
+             */
+            cookies: CookieParam[];
+        }
+
+        export interface SetDataSizeLimitsForTestRequest {
+            /**
+             * Maximum total buffer size.
+             */
+            maxTotalSize: integer;
+            /**
+             * Maximum per-resource size.
+             */
+            maxResourceSize: integer;
+        }
+
+        export interface SetExtraHTTPHeadersRequest {
+            /**
+             * Map with extra HTTP headers.
+             */
+            headers: Headers;
+        }
+
+        export interface SetAttachDebugStackRequest {
+            /**
+             * Whether to attach a page script stack for debugging purpose.
+             */
+            enabled: boolean;
+        }
+
+        export interface SetRequestInterceptionRequest {
+            /**
+             * Requests matching any of these patterns will be forwarded and wait for the corresponding
+             * continueInterceptedRequest call.
+             */
+            patterns: RequestPattern[];
+        }
+
+        export interface SetUserAgentOverrideRequest {
+            /**
+             * User agent to use.
+             */
+            userAgent: string;
+            /**
+             * Browser langugage to emulate.
+             */
+            acceptLanguage?: string;
+            /**
+             * The platform navigator.platform should return.
+             */
+            platform?: string;
+            /**
+             * To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
+             */
+            userAgentMetadata?: Emulation.UserAgentMetadata;
+        }
+
+        export interface GetSecurityIsolationStatusRequest {
+            /**
+             * If no frameId is provided, the status of the target is provided.
+             */
+            frameId?: Page.FrameId;
+        }
+
+        export interface GetSecurityIsolationStatusResponse {
+            status: SecurityIsolationStatus;
+        }
+
+        export interface LoadNetworkResourceRequest {
+            /**
+             * Frame id to get the resource for.
+             */
+            frameId: Page.FrameId;
+            /**
+             * URL of the resource to get content for.
+             */
+            url: string;
+            /**
+             * Options for the request.
+             */
+            options: LoadNetworkResourceOptions;
+        }
+
+        export interface LoadNetworkResourceResponse {
+            resource: LoadNetworkResourcePageResult;
+        }
+
         /**
-         * @param urlOrPredicate - A URL or predicate to wait for
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves to the matched response
-         * @example
-         * ```js
-         * const firstResponse = await page.waitForResponse(
-         * 'https://example.com/resource'
-         * );
-         * const finalResponse = await page.waitForResponse(
-         * (response) =>
-         * response.url() === 'https://example.com' && response.status() === 200
-         * );
-         * const finalResponse = await page.waitForResponse(async (response) => {
-         * return (await response.text()).includes('<html>');
-         * });
-         * return finalResponse.ok();
-         * ```
-         * @remarks
-         * Optional Waiting Parameters have:
-         *
-         * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
-         * `0` to disable the timeout. The default value can be changed by using the
-         * {@link Page.setDefaultTimeout} method.
+         * Fired when data chunk was received over the network.
          */
-        waitForRequest(urlOrPredicate: string | ((req: HTTPRequest) => boolean | Promise<boolean>), options?: {
-            timeout?: number;
-        }): Promise<HTTPRequest>;
+        export interface DataReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Data chunk length.
+             */
+            dataLength: integer;
+            /**
+             * Actual bytes received (might be less than dataLength for compressed encodings).
+             */
+            encodedDataLength: integer;
+        }
+
         /**
-         * @param urlOrPredicate - A URL or predicate to wait for.
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves to the matched response.
-         * @example
-         * ```js
-         * const firstResponse = await page.waitForResponse(
-         * 'https://example.com/resource'
-         * );
-         * const finalResponse = await page.waitForResponse(
-         * (response) =>
-         * response.url() === 'https://example.com' && response.status() === 200
-         * );
-         * const finalResponse = await page.waitForResponse(async (response) => {
-         * return (await response.text()).includes('<html>');
-         * });
-         * return finalResponse.ok();
-         * ```
-         * @remarks
-         * Optional Parameter have:
-         *
-         * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-         * pass `0` to disable the timeout. The default value can be changed by using
-         * the {@link Page.setDefaultTimeout} method.
+         * Fired when EventSource message is received.
          */
-        waitForResponse(urlOrPredicate: string | ((res: HTTPResponse) => boolean | Promise<boolean>), options?: {
-            timeout?: number;
-        }): Promise<HTTPResponse>;
+        export interface EventSourceMessageReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Message type.
+             */
+            eventName: string;
+            /**
+             * Message identifier.
+             */
+            eventId: string;
+            /**
+             * Message content.
+             */
+            data: string;
+        }
+
         /**
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves when network is idle
+         * Fired when HTTP request has failed to load.
          */
-        waitForNetworkIdle(options?: {
-            idleTime?: number;
-            timeout?: number;
-        }): Promise<void>;
+        export interface LoadingFailedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Resource type.
+             */
+            type: ResourceType;
+            /**
+             * User friendly error message.
+             */
+            errorText: string;
+            /**
+             * True if loading was canceled.
+             */
+            canceled?: boolean;
+            /**
+             * The reason why loading was blocked, if any.
+             */
+            blockedReason?: BlockedReason;
+            /**
+             * The reason why loading was blocked by CORS, if any.
+             */
+            corsErrorStatus?: CorsErrorStatus;
+        }
+
         /**
-         * @param urlOrPredicate - A URL or predicate to wait for.
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves to the matched frame.
-         * @example
-         * ```js
-         * const frame = await page.waitForFrame(async (frame) => {
-         *   return frame.name() === 'Test';
-         * });
-         * ```
-         * @remarks
-         * Optional Parameter have:
-         *
-         * - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
-         * pass `0` to disable the timeout. The default value can be changed by using
-         * the {@link Page.setDefaultTimeout} method.
+         * Fired when HTTP request has finished loading.
          */
-        waitForFrame(urlOrPredicate: string | ((frame: Frame) => boolean | Promise<boolean>), options?: {
-            timeout?: number;
-        }): Promise<Frame>;
+        export interface LoadingFinishedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Total number of bytes received for this request.
+             */
+            encodedDataLength: number;
+            /**
+             * Set when 1) response was blocked by Cross-Origin Read Blocking and also
+             * 2) this needs to be reported to the DevTools console.
+             */
+            shouldReportCorbBlocking?: boolean;
+        }
+
         /**
-         * This method navigate to the previous page in history.
-         * @param options - Navigation parameters
-         * @returns Promise which resolves to the main resource response. In case of
-         * multiple redirects, the navigation will resolve with the response of the
-         * last redirect. If can not go back, resolves to `null`.
-         * @remarks
-         * The argument `options` might have the following properties:
-         *
-         * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-         *   seconds, pass 0 to disable timeout. The default value can be changed by
-         *   using the
-         *   {@link Page.setDefaultNavigationTimeout
-         *   | page.setDefaultNavigationTimeout(timeout)}
-         *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-         *   methods.
-         *
-         * - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
-         *    Given an array of event strings, navigation is considered to be
-         *    successful after all events have been fired. Events can be either:<br/>
-         *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-         *  - `domcontentloaded` : consider navigation to be finished when the
-         *   DOMContentLoaded event is fired.<br/>
-         *  - `networkidle0` : consider navigation to be finished when there are no
-         *   more than 0 network connections for at least `500` ms.<br/>
-         *  - `networkidle2` : consider navigation to be finished when there are no
-         *   more than 2 network connections for at least `500` ms.
+         * Details of an intercepted HTTP request, which must be either allowed, blocked, modified or
+         * mocked.
+         * Deprecated, use Fetch.requestPaused instead.
          */
-        goBack(options?: WaitForOptions): Promise<HTTPResponse | null>;
+        export interface RequestInterceptedEvent {
+            /**
+             * Each request the page makes will have a unique id, however if any redirects are encountered
+             * while processing that fetch, they will be reported with the same id as the original fetch.
+             * Likewise if HTTP authentication is needed then the same fetch id will be used.
+             */
+            interceptionId: InterceptionId;
+            request: Request;
+            /**
+             * The id of the frame that initiated the request.
+             */
+            frameId: Page.FrameId;
+            /**
+             * How the requested resource will be used.
+             */
+            resourceType: ResourceType;
+            /**
+             * Whether this is a navigation request, which can abort the navigation completely.
+             */
+            isNavigationRequest: boolean;
+            /**
+             * Set if the request is a navigation that will result in a download.
+             * Only present after response is received from the server (i.e. HeadersReceived stage).
+             */
+            isDownload?: boolean;
+            /**
+             * Redirect location, only sent if a redirect was intercepted.
+             */
+            redirectUrl?: string;
+            /**
+             * Details of the Authorization Challenge encountered. If this is set then
+             * continueInterceptedRequest must contain an authChallengeResponse.
+             */
+            authChallenge?: AuthChallenge;
+            /**
+             * Response error if intercepted at response stage or if redirect occurred while intercepting
+             * request.
+             */
+            responseErrorReason?: ErrorReason;
+            /**
+             * Response code if intercepted at response stage or if redirect occurred while intercepting
+             * request or auth retry occurred.
+             */
+            responseStatusCode?: integer;
+            /**
+             * Response headers if intercepted at the response stage or if redirect occurred while
+             * intercepting request or auth retry occurred.
+             */
+            responseHeaders?: Headers;
+            /**
+             * If the intercepted request had a corresponding requestWillBeSent event fired for it, then
+             * this requestId will be the same as the requestId present in the requestWillBeSent event.
+             */
+            requestId?: RequestId;
+        }
+
         /**
-         * This method navigate to the next page in history.
-         * @param options - Navigation Parameter
-         * @returns Promise which resolves to the main resource response. In case of
-         * multiple redirects, the navigation will resolve with the response of the
-         * last redirect. If can not go forward, resolves to `null`.
-         * @remarks
-         * The argument `options` might have the following properties:
-         *
-         * - `timeout` : Maximum navigation time in milliseconds, defaults to 30
-         *   seconds, pass 0 to disable timeout. The default value can be changed by
-         *   using the
-         *   {@link Page.setDefaultNavigationTimeout
-         *   | page.setDefaultNavigationTimeout(timeout)}
-         *   or {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)}
-         *   methods.
-         *
-         * - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
-         *    Given an array of event strings, navigation is considered to be
-         *    successful after all events have been fired. Events can be either:<br/>
-         *  - `load` : consider navigation to be finished when the load event is fired.<br/>
-         *  - `domcontentloaded` : consider navigation to be finished when the
-         *   DOMContentLoaded event is fired.<br/>
-         *  - `networkidle0` : consider navigation to be finished when there are no
-         *   more than 0 network connections for at least `500` ms.<br/>
-         *  - `networkidle2` : consider navigation to be finished when there are no
-         *   more than 2 network connections for at least `500` ms.
+         * Fired if request ended up loading from cache.
          */
-        goForward(options?: WaitForOptions): Promise<HTTPResponse | null>;
-        private _go;
+        export interface RequestServedFromCacheEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+        }
+
+        /**
+         * Fired when page is about to send HTTP request.
+         */
+        export interface RequestWillBeSentEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Loader identifier. Empty string if the request is fetched from worker.
+             */
+            loaderId: LoaderId;
+            /**
+             * URL of the document this request is loaded for.
+             */
+            documentURL: string;
+            /**
+             * Request data.
+             */
+            request: Request;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Timestamp.
+             */
+            wallTime: TimeSinceEpoch;
+            /**
+             * Request initiator.
+             */
+            initiator: Initiator;
+            /**
+             * Redirect response data.
+             */
+            redirectResponse?: Response;
+            /**
+             * Type of this resource.
+             */
+            type?: ResourceType;
+            /**
+             * Frame identifier.
+             */
+            frameId?: Page.FrameId;
+            /**
+             * Whether the request is initiated by a user gesture. Defaults to false.
+             */
+            hasUserGesture?: boolean;
+        }
+
+        /**
+         * Fired when resource loading priority is changed
+         */
+        export interface ResourceChangedPriorityEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * New priority
+             */
+            newPriority: ResourcePriority;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+        }
+
+        /**
+         * Fired when a signed exchange was received over the network
+         */
+        export interface SignedExchangeReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Information about the signed exchange response.
+             */
+            info: SignedExchangeInfo;
+        }
+
+        /**
+         * Fired when HTTP response is available.
+         */
+        export interface ResponseReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Loader identifier. Empty string if the request is fetched from worker.
+             */
+            loaderId: LoaderId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Resource type.
+             */
+            type: ResourceType;
+            /**
+             * Response data.
+             */
+            response: Response;
+            /**
+             * Frame identifier.
+             */
+            frameId?: Page.FrameId;
+        }
+
+        /**
+         * Fired when WebSocket is closed.
+         */
+        export interface WebSocketClosedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+        }
+
+        /**
+         * Fired upon WebSocket creation.
+         */
+        export interface WebSocketCreatedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * WebSocket request URL.
+             */
+            url: string;
+            /**
+             * Request initiator.
+             */
+            initiator?: Initiator;
+        }
+
+        /**
+         * Fired when WebSocket message error occurs.
+         */
+        export interface WebSocketFrameErrorEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * WebSocket error message.
+             */
+            errorMessage: string;
+        }
+
+        /**
+         * Fired when WebSocket message is received.
+         */
+        export interface WebSocketFrameReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * WebSocket response data.
+             */
+            response: WebSocketFrame;
+        }
+
+        /**
+         * Fired when WebSocket message is sent.
+         */
+        export interface WebSocketFrameSentEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * WebSocket response data.
+             */
+            response: WebSocketFrame;
+        }
+
+        /**
+         * Fired when WebSocket handshake response becomes available.
+         */
+        export interface WebSocketHandshakeResponseReceivedEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * WebSocket response data.
+             */
+            response: WebSocketResponse;
+        }
+
+        /**
+         * Fired when WebSocket is about to initiate handshake.
+         */
+        export interface WebSocketWillSendHandshakeRequestEvent {
+            /**
+             * Request identifier.
+             */
+            requestId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * UTC Timestamp.
+             */
+            wallTime: TimeSinceEpoch;
+            /**
+             * WebSocket request data.
+             */
+            request: WebSocketRequest;
+        }
+
+        /**
+         * Fired upon WebTransport creation.
+         */
+        export interface WebTransportCreatedEvent {
+            /**
+             * WebTransport identifier.
+             */
+            transportId: RequestId;
+            /**
+             * WebTransport request URL.
+             */
+            url: string;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+            /**
+             * Request initiator.
+             */
+            initiator?: Initiator;
+        }
+
+        /**
+         * Fired when WebTransport handshake is finished.
+         */
+        export interface WebTransportConnectionEstablishedEvent {
+            /**
+             * WebTransport identifier.
+             */
+            transportId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+        }
+
+        /**
+         * Fired when WebTransport is disposed.
+         */
+        export interface WebTransportClosedEvent {
+            /**
+             * WebTransport identifier.
+             */
+            transportId: RequestId;
+            /**
+             * Timestamp.
+             */
+            timestamp: MonotonicTime;
+        }
+
+        /**
+         * Fired when additional information about a requestWillBeSent event is available from the
+         * network stack. Not every requestWillBeSent event will have an additional
+         * requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent
+         * or requestWillBeSentExtraInfo will be fired first for the same request.
+         */
+        export interface RequestWillBeSentExtraInfoEvent {
+            /**
+             * Request identifier. Used to match this information to an existing requestWillBeSent event.
+             */
+            requestId: RequestId;
+            /**
+             * A list of cookies potentially associated to the requested URL. This includes both cookies sent with
+             * the request and the ones not sent; the latter are distinguished by having blockedReason field set.
+             */
+            associatedCookies: BlockedCookieWithReason[];
+            /**
+             * Raw request headers as they will be sent over the wire.
+             */
+            headers: Headers;
+            /**
+             * The client security state set for the request.
+             */
+            clientSecurityState?: ClientSecurityState;
+        }
+
+        /**
+         * Fired when additional information about a responseReceived event is available from the network
+         * stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for
+         * it, and responseReceivedExtraInfo may be fired before or after responseReceived.
+         */
+        export interface ResponseReceivedExtraInfoEvent {
+            /**
+             * Request identifier. Used to match this information to another responseReceived event.
+             */
+            requestId: RequestId;
+            /**
+             * A list of cookies which were not stored from the response along with the corresponding
+             * reasons for blocking. The cookies here may not be valid due to syntax errors, which
+             * are represented by the invalid cookie line string instead of a proper cookie.
+             */
+            blockedCookies: BlockedSetCookieWithReason[];
+            /**
+             * Raw response headers as they were received over the wire.
+             */
+            headers: Headers;
+            /**
+             * The IP address space of the resource. The address space can only be determined once the transport
+             * established the connection, so we can't send it in `requestWillBeSentExtraInfo`.
+             */
+            resourceIPAddressSpace: IPAddressSpace;
+            /**
+             * Raw response header text as it was received over the wire. The raw text may not always be
+             * available, such as in the case of HTTP/2 or QUIC.
+             */
+            headersText?: string;
+        }
+
+        export const enum TrustTokenOperationDoneEventStatus {
+            Ok = 'Ok',
+            InvalidArgument = 'InvalidArgument',
+            FailedPrecondition = 'FailedPrecondition',
+            ResourceExhausted = 'ResourceExhausted',
+            AlreadyExists = 'AlreadyExists',
+            Unavailable = 'Unavailable',
+            BadResponse = 'BadResponse',
+            InternalError = 'InternalError',
+            UnknownError = 'UnknownError',
+            FulfilledLocally = 'FulfilledLocally',
+        }
+
+        /**
+         * Fired exactly once for each Trust Token operation. Depending on
+         * the type of the operation and whether the operation succeeded or
+         * failed, the event is fired before the corresponding request was sent
+         * or after the response was received.
+         */
+        export interface TrustTokenOperationDoneEvent {
+            /**
+             * Detailed success or error status of the operation.
+             * 'AlreadyExists' also signifies a successful operation, as the result
+             * of the operation already exists und thus, the operation was abort
+             * preemptively (e.g. a cache hit). (TrustTokenOperationDoneEventStatus enum)
+             */
+            status: ('Ok' | 'InvalidArgument' | 'FailedPrecondition' | 'ResourceExhausted' | 'AlreadyExists' | 'Unavailable' | 'BadResponse' | 'InternalError' | 'UnknownError' | 'FulfilledLocally');
+            type: TrustTokenOperationType;
+            requestId: RequestId;
+            /**
+             * Top level origin. The context in which the operation was attempted.
+             */
+            topLevelOrigin?: string;
+            /**
+             * Origin of the issuer in case of a "Issuance" or "Redemption" operation.
+             */
+            issuerOrigin?: string;
+            /**
+             * The number of obtained Trust Tokens on a successful "Issuance" operation.
+             */
+            issuedTokenCount?: integer;
+        }
+    }
+
+    /**
+     * This domain provides various functionality related to drawing atop the inspected page.
+     */
+    export namespace Overlay {
+
+        /**
+         * Configuration data for drawing the source order of an elements children.
+         */
+        export interface SourceOrderConfig {
+            /**
+             * the color to outline the givent element in.
+             */
+            parentOutlineColor: DOM.RGBA;
+            /**
+             * the color to outline the child elements in.
+             */
+            childOutlineColor: DOM.RGBA;
+        }
+
+        /**
+         * Configuration data for the highlighting of Grid elements.
+         */
+        export interface GridHighlightConfig {
+            /**
+             * Whether the extension lines from grid cells to the rulers should be shown (default: false).
+             */
+            showGridExtensionLines?: boolean;
+            /**
+             * Show Positive line number labels (default: false).
+             */
+            showPositiveLineNumbers?: boolean;
+            /**
+             * Show Negative line number labels (default: false).
+             */
+            showNegativeLineNumbers?: boolean;
+            /**
+             * Show area name labels (default: false).
+             */
+            showAreaNames?: boolean;
+            /**
+             * Show line name labels (default: false).
+             */
+            showLineNames?: boolean;
+            /**
+             * Show track size labels (default: false).
+             */
+            showTrackSizes?: boolean;
+            /**
+             * The grid container border highlight color (default: transparent).
+             */
+            gridBorderColor?: DOM.RGBA;
+            /**
+             * The cell border color (default: transparent). Deprecated, please use rowLineColor and columnLineColor instead.
+             */
+            cellBorderColor?: DOM.RGBA;
+            /**
+             * The row line color (default: transparent).
+             */
+            rowLineColor?: DOM.RGBA;
+            /**
+             * The column line color (default: transparent).
+             */
+            columnLineColor?: DOM.RGBA;
+            /**
+             * Whether the grid border is dashed (default: false).
+             */
+            gridBorderDash?: boolean;
+            /**
+             * Whether the cell border is dashed (default: false). Deprecated, please us rowLineDash and columnLineDash instead.
+             */
+            cellBorderDash?: boolean;
+            /**
+             * Whether row lines are dashed (default: false).
+             */
+            rowLineDash?: boolean;
+            /**
+             * Whether column lines are dashed (default: false).
+             */
+            columnLineDash?: boolean;
+            /**
+             * The row gap highlight fill color (default: transparent).
+             */
+            rowGapColor?: DOM.RGBA;
+            /**
+             * The row gap hatching fill color (default: transparent).
+             */
+            rowHatchColor?: DOM.RGBA;
+            /**
+             * The column gap highlight fill color (default: transparent).
+             */
+            columnGapColor?: DOM.RGBA;
+            /**
+             * The column gap hatching fill color (default: transparent).
+             */
+            columnHatchColor?: DOM.RGBA;
+            /**
+             * The named grid areas border color (Default: transparent).
+             */
+            areaBorderColor?: DOM.RGBA;
+            /**
+             * The grid container background color (Default: transparent).
+             */
+            gridBackgroundColor?: DOM.RGBA;
+        }
+
+        /**
+         * Configuration data for the highlighting of Flex container elements.
+         */
+        export interface FlexContainerHighlightConfig {
+            /**
+             * The style of the container border
+             */
+            containerBorder?: LineStyle;
+            /**
+             * The style of the separator between lines
+             */
+            lineSeparator?: LineStyle;
+            /**
+             * The style of the separator between items
+             */
+            itemSeparator?: LineStyle;
+            /**
+             * Style of content-distribution space on the main axis (justify-content).
+             */
+            mainDistributedSpace?: BoxStyle;
+            /**
+             * Style of content-distribution space on the cross axis (align-content).
+             */
+            crossDistributedSpace?: BoxStyle;
+            /**
+             * Style of empty space caused by row gaps (gap/row-gap).
+             */
+            rowGapSpace?: BoxStyle;
+            /**
+             * Style of empty space caused by columns gaps (gap/column-gap).
+             */
+            columnGapSpace?: BoxStyle;
+            /**
+             * Style of the self-alignment line (align-items).
+             */
+            crossAlignment?: LineStyle;
+        }
+
+        /**
+         * Configuration data for the highlighting of Flex item elements.
+         */
+        export interface FlexItemHighlightConfig {
+            /**
+             * Style of the box representing the item's base size
+             */
+            baseSizeBox?: BoxStyle;
+            /**
+             * Style of the border around the box representing the item's base size
+             */
+            baseSizeBorder?: LineStyle;
+            /**
+             * Style of the arrow representing if the item grew or shrank
+             */
+            flexibilityArrow?: LineStyle;
+        }
+
+        export const enum LineStylePattern {
+            Dashed = 'dashed',
+            Dotted = 'dotted',
+        }
+
+        /**
+         * Style information for drawing a line.
+         */
+        export interface LineStyle {
+            /**
+             * The color of the line (default: transparent)
+             */
+            color?: DOM.RGBA;
+            /**
+             * The line pattern (default: solid) (LineStylePattern enum)
+             */
+            pattern?: ('dashed' | 'dotted');
+        }
+
+        /**
+         * Style information for drawing a box.
+         */
+        export interface BoxStyle {
+            /**
+             * The background color for the box (default: transparent)
+             */
+            fillColor?: DOM.RGBA;
+            /**
+             * The hatching color for the box (default: transparent)
+             */
+            hatchColor?: DOM.RGBA;
+        }
+
+        export type ContrastAlgorithm = ('aa' | 'aaa' | 'apca');
+
+        /**
+         * Configuration data for the highlighting of page elements.
+         */
+        export interface HighlightConfig {
+            /**
+             * Whether the node info tooltip should be shown (default: false).
+             */
+            showInfo?: boolean;
+            /**
+             * Whether the node styles in the tooltip (default: false).
+             */
+            showStyles?: boolean;
+            /**
+             * Whether the rulers should be shown (default: false).
+             */
+            showRulers?: boolean;
+            /**
+             * Whether the a11y info should be shown (default: true).
+             */
+            showAccessibilityInfo?: boolean;
+            /**
+             * Whether the extension lines from node to the rulers should be shown (default: false).
+             */
+            showExtensionLines?: boolean;
+            /**
+             * The content box highlight fill color (default: transparent).
+             */
+            contentColor?: DOM.RGBA;
+            /**
+             * The padding highlight fill color (default: transparent).
+             */
+            paddingColor?: DOM.RGBA;
+            /**
+             * The border highlight fill color (default: transparent).
+             */
+            borderColor?: DOM.RGBA;
+            /**
+             * The margin highlight fill color (default: transparent).
+             */
+            marginColor?: DOM.RGBA;
+            /**
+             * The event target element highlight fill color (default: transparent).
+             */
+            eventTargetColor?: DOM.RGBA;
+            /**
+             * The shape outside fill color (default: transparent).
+             */
+            shapeColor?: DOM.RGBA;
+            /**
+             * The shape margin fill color (default: transparent).
+             */
+            shapeMarginColor?: DOM.RGBA;
+            /**
+             * The grid layout color (default: transparent).
+             */
+            cssGridColor?: DOM.RGBA;
+            /**
+             * The color format used to format color styles (default: hex).
+             */
+            colorFormat?: ColorFormat;
+            /**
+             * The grid layout highlight configuration (default: all transparent).
+             */
+            gridHighlightConfig?: GridHighlightConfig;
+            /**
+             * The flex container highlight configuration (default: all transparent).
+             */
+            flexContainerHighlightConfig?: FlexContainerHighlightConfig;
+            /**
+             * The flex item highlight configuration (default: all transparent).
+             */
+            flexItemHighlightConfig?: FlexItemHighlightConfig;
+            /**
+             * The contrast algorithm to use for the contrast ratio (default: aa).
+             */
+            contrastAlgorithm?: ContrastAlgorithm;
+        }
+
+        export type ColorFormat = ('rgb' | 'hsl' | 'hex');
+
+        /**
+         * Configurations for Persistent Grid Highlight
+         */
+        export interface GridNodeHighlightConfig {
+            /**
+             * A descriptor for the highlight appearance.
+             */
+            gridHighlightConfig: GridHighlightConfig;
+            /**
+             * Identifier of the node to highlight.
+             */
+            nodeId: DOM.NodeId;
+        }
+
+        export interface FlexNodeHighlightConfig {
+            /**
+             * A descriptor for the highlight appearance of flex containers.
+             */
+            flexContainerHighlightConfig: FlexContainerHighlightConfig;
+            /**
+             * Identifier of the node to highlight.
+             */
+            nodeId: DOM.NodeId;
+        }
+
+        export interface ScrollSnapContainerHighlightConfig {
+            /**
+             * The style of the snapport border (default: transparent)
+             */
+            snapportBorder?: LineStyle;
+            /**
+             * The style of the snap area border (default: transparent)
+             */
+            snapAreaBorder?: LineStyle;
+            /**
+             * The margin highlight fill color (default: transparent).
+             */
+            scrollMarginColor?: DOM.RGBA;
+            /**
+             * The padding highlight fill color (default: transparent).
+             */
+            scrollPaddingColor?: DOM.RGBA;
+        }
+
+        export interface ScrollSnapHighlightConfig {
+            /**
+             * A descriptor for the highlight appearance of scroll snap containers.
+             */
+            scrollSnapContainerHighlightConfig: ScrollSnapContainerHighlightConfig;
+            /**
+             * Identifier of the node to highlight.
+             */
+            nodeId: DOM.NodeId;
+        }
+
+        /**
+         * Configuration for dual screen hinge
+         */
+        export interface HingeConfig {
+            /**
+             * A rectangle represent hinge
+             */
+            rect: DOM.Rect;
+            /**
+             * The content box highlight fill color (default: a dark color).
+             */
+            contentColor?: DOM.RGBA;
+            /**
+             * The content box highlight outline color (default: transparent).
+             */
+            outlineColor?: DOM.RGBA;
+        }
+
+        export type InspectMode = ('searchForNode' | 'searchForUAShadowDOM' | 'captureAreaScreenshot' | 'showDistances' | 'none');
+
+        export interface GetHighlightObjectForTestRequest {
+            /**
+             * Id of the node to get highlight object for.
+             */
+            nodeId: DOM.NodeId;
+            /**
+             * Whether to include distance info.
+             */
+            includeDistance?: boolean;
+            /**
+             * Whether to include style info.
+             */
+            includeStyle?: boolean;
+            /**
+             * The color format to get config with (default: hex).
+             */
+            colorFormat?: ColorFormat;
+            /**
+             * Whether to show accessibility info (default: true).
+             */
+            showAccessibilityInfo?: boolean;
+        }
+
+        export interface GetHighlightObjectForTestResponse {
+            /**
+             * Highlight data for the node.
+             */
+            highlight: any;
+        }
+
+        export interface GetGridHighlightObjectsForTestRequest {
+            /**
+             * Ids of the node to get highlight object for.
+             */
+            nodeIds: DOM.NodeId[];
+        }
+
+        export interface GetGridHighlightObjectsForTestResponse {
+            /**
+             * Grid Highlight data for the node ids provided.
+             */
+            highlights: any;
+        }
+
+        export interface GetSourceOrderHighlightObjectForTestRequest {
+            /**
+             * Id of the node to highlight.
+             */
+            nodeId: DOM.NodeId;
+        }
+
+        export interface GetSourceOrderHighlightObjectForTestResponse {
+            /**
+             * Source order highlight data for the node id provided.
+             */
+            highlight: any;
+        }
+
+        export interface HighlightFrameRequest {
+            /**
+             * Identifier of the frame to highlight.
+             */
+            frameId: Page.FrameId;
+            /**
+             * The content box highlight fill color (default: transparent).
+             */
+            contentColor?: DOM.RGBA;
+            /**
+             * The content box highlight outline color (default: transparent).
+             */
+            contentOutlineColor?: DOM.RGBA;
+        }
+
+        export interface HighlightNodeRequest {
+            /**
+             * A descriptor for the highlight appearance.
+             */
+            highlightConfig: HighlightConfig;
+            /**
+             * Identifier of the node to highlight.
+             */
+            nodeId?: DOM.NodeId;
+            /**
+             * Identifier of the backend node to highlight.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * JavaScript object id of the node to be highlighted.
+             */
+            objectId?: Runtime.RemoteObjectId;
+            /**
+             * Selectors to highlight relevant nodes.
+             */
+            selector?: string;
+        }
+
+        export interface HighlightQuadRequest {
+            /**
+             * Quad to highlight
+             */
+            quad: DOM.Quad;
+            /**
+             * The highlight fill color (default: transparent).
+             */
+            color?: DOM.RGBA;
+            /**
+             * The highlight outline color (default: transparent).
+             */
+            outlineColor?: DOM.RGBA;
+        }
+
+        export interface HighlightRectRequest {
+            /**
+             * X coordinate
+             */
+            x: integer;
+            /**
+             * Y coordinate
+             */
+            y: integer;
+            /**
+             * Rectangle width
+             */
+            width: integer;
+            /**
+             * Rectangle height
+             */
+            height: integer;
+            /**
+             * The highlight fill color (default: transparent).
+             */
+            color?: DOM.RGBA;
+            /**
+             * The highlight outline color (default: transparent).
+             */
+            outlineColor?: DOM.RGBA;
+        }
+
+        export interface HighlightSourceOrderRequest {
+            /**
+             * A descriptor for the appearance of the overlay drawing.
+             */
+            sourceOrderConfig: SourceOrderConfig;
+            /**
+             * Identifier of the node to highlight.
+             */
+            nodeId?: DOM.NodeId;
+            /**
+             * Identifier of the backend node to highlight.
+             */
+            backendNodeId?: DOM.BackendNodeId;
+            /**
+             * JavaScript object id of the node to be highlighted.
+             */
+            objectId?: Runtime.RemoteObjectId;
+        }
+
+        export interface SetInspectModeRequest {
+            /**
+             * Set an inspection mode.
+             */
+            mode: InspectMode;
+            /**
+             * A descriptor for the highlight appearance of hovered-over nodes. May be omitted if `enabled
+             * == false`.
+             */
+            highlightConfig?: HighlightConfig;
+        }
+
+        export interface SetShowAdHighlightsRequest {
+            /**
+             * True for showing ad highlights
+             */
+            show: boolean;
+        }
+
+        export interface SetPausedInDebuggerMessageRequest {
+            /**
+             * The message to display, also triggers resume and step over controls.
+             */
+            message?: string;
+        }
+
+        export interface SetShowDebugBordersRequest {
+            /**
+             * True for showing debug borders
+             */
+            show: boolean;
+        }
+
+        export interface SetShowFPSCounterRequest {
+            /**
+             * True for showing the FPS counter
+             */
+            show: boolean;
+        }
+
+        export interface SetShowGridOverlaysRequest {
+            /**
+             * An array of node identifiers and descriptors for the highlight appearance.
+             */
+            gridNodeHighlightConfigs: GridNodeHighlightConfig[];
+        }
+
+        export interface SetShowFlexOverlaysRequest {
+            /**
+             * An array of node identifiers and descriptors for the highlight appearance.
+             */
+            flexNodeHighlightConfigs: FlexNodeHighlightConfig[];
+        }
+
+        export interface SetShowScrollSnapOverlaysRequest {
+            /**
+             * An array of node identifiers and descriptors for the highlight appearance.
+             */
+            scrollSnapHighlightConfigs: ScrollSnapHighlightConfig[];
+        }
+
+        export interface SetShowPaintRectsRequest {
+            /**
+             * True for showing paint rectangles
+             */
+            result: boolean;
+        }
+
+        export interface SetShowLayoutShiftRegionsRequest {
+            /**
+             * True for showing layout shift regions
+             */
+            result: boolean;
+        }
+
+        export interface SetShowScrollBottleneckRectsRequest {
+            /**
+             * True for showing scroll bottleneck rects
+             */
+            show: boolean;
+        }
+
+        export interface SetShowHitTestBordersRequest {
+            /**
+             * True for showing hit-test borders
+             */
+            show: boolean;
+        }
+
+        export interface SetShowWebVitalsRequest {
+            show: boolean;
+        }
+
+        export interface SetShowViewportSizeOnResizeRequest {
+            /**
+             * Whether to paint size or not.
+             */
+            show: boolean;
+        }
+
+        export interface SetShowHingeRequest {
+            /**
+             * hinge data, null means hideHinge
+             */
+            hingeConfig?: HingeConfig;
+        }
+
+        /**
+         * Fired when the node should be inspected. This happens after call to `setInspectMode` or when
+         * user manually inspects an element.
+         */
+        export interface InspectNodeRequestedEvent {
+            /**
+             * Id of the node to inspect.
+             */
+            backendNodeId: DOM.BackendNodeId;
+        }
+
+        /**
+         * Fired when the node should be highlighted. This happens after call to `setInspectMode`.
+         */
+        export interface NodeHighlightRequestedEvent {
+            nodeId: DOM.NodeId;
+        }
+
+        /**
+         * Fired when user asks to capture screenshot of some area on the page.
+         */
+        export interface ScreenshotRequestedEvent {
+            /**
+             * Viewport to capture, in device independent pixels (dip).
+             */
+            viewport: Page.Viewport;
+        }
+    }
+
+    /**
+     * Actions and events related to the inspected page belong to the page domain.
+     */
+    export namespace Page {
+
+        /**
+         * Unique frame identifier.
+         */
+        export type FrameId = string;
+
+        /**
+         * Indicates whether a frame has been identified as an ad.
+         */
+        export type AdFrameType = ('none' | 'child' | 'root');
+
+        /**
+         * Indicates whether the frame is a secure context and why it is the case.
+         */
+        export type SecureContextType = ('Secure' | 'SecureLocalhost' | 'InsecureScheme' | 'InsecureAncestor');
+
+        /**
+         * Indicates whether the frame is cross-origin isolated and why it is the case.
+         */
+        export type CrossOriginIsolatedContextType = ('Isolated' | 'NotIsolated' | 'NotIsolatedFeatureDisabled');
+
+        export type GatedAPIFeatures = ('SharedArrayBuffers' | 'SharedArrayBuffersTransferAllowed' | 'PerformanceMeasureMemory' | 'PerformanceProfile');
+
+        /**
+         * All Permissions Policy features. This enum should match the one defined
+         * in third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5.
+         */
+        export type PermissionsPolicyFeature = ('accelerometer' | 'ambient-light-sensor' | 'attribution-reporting' | 'autoplay' | 'camera' | 'ch-dpr' | 'ch-device-memory' | 'ch-downlink' | 'ch-ect' | 'ch-lang' | 'ch-prefers-color-scheme' | 'ch-rtt' | 'ch-ua' | 'ch-ua-arch' | 'ch-ua-platform' | 'ch-ua-model' | 'ch-ua-mobile' | 'ch-ua-full-version' | 'ch-ua-platform-version' | 'ch-viewport-width' | 'ch-width' | 'clipboard-read' | 'clipboard-write' | 'cross-origin-isolated' | 'direct-sockets' | 'display-capture' | 'document-domain' | 'encrypted-media' | 'execution-while-out-of-viewport' | 'execution-while-not-rendered' | 'focus-without-user-activation' | 'fullscreen' | 'frobulate' | 'gamepad' | 'geolocation' | 'gyroscope' | 'hid' | 'idle-detection' | 'interest-cohort' | 'magnetometer' | 'microphone' | 'midi' | 'otp-credentials' | 'payment' | 'picture-in-picture' | 'publickey-credentials-get' | 'screen-wake-lock' | 'serial' | 'shared-autofill' | 'storage-access-api' | 'sync-xhr' | 'trust-token-redemption' | 'usb' | 'vertical-scroll' | 'web-share' | 'xr-spatial-tracking');
+
+        /**
+         * Reason for a permissions policy feature to be disabled.
+         */
+        export type PermissionsPolicyBlockReason = ('Header' | 'IframeAttribute');
+
+        export interface PermissionsPolicyBlockLocator {
+            frameId: FrameId;
+            blockReason: PermissionsPolicyBlockReason;
+        }
+
+        export interface PermissionsPolicyFeatureState {
+            feature: PermissionsPolicyFeature;
+            allowed: boolean;
+            locator?: PermissionsPolicyBlockLocator;
+        }
+
+        /**
+         * Origin Trial(https://www.chromium.org/blink/origin-trials) support.
+         * Status for an Origin Trial token.
+         */
+        export type OriginTrialTokenStatus = ('Success' | 'NotSupported' | 'Insecure' | 'Expired' | 'WrongOrigin' | 'InvalidSignature' | 'Malformed' | 'WrongVersion' | 'FeatureDisabled' | 'TokenDisabled' | 'FeatureDisabledForUser');
+
+        /**
+         * Status for an Origin Trial.
+         */
+        export type OriginTrialStatus = ('Enabled' | 'ValidTokenNotProvided' | 'OSNotSupported' | 'TrialNotAllowed');
+
+        export type OriginTrialUsageRestriction = ('None' | 'Subset');
+
+        export interface OriginTrialToken {
+            origin: string;
+            matchSubDomains: boolean;
+            trialName: string;
+            expiryTime: Network.TimeSinceEpoch;
+            isThirdParty: boolean;
+            usageRestriction: OriginTrialUsageRestriction;
+        }
+
+        export interface OriginTrialTokenWithStatus {
+            rawTokenText: string;
+            /**
+             * `parsedToken` is present only when the token is extractable and
+             * parsable.
+             */
+            parsedToken?: OriginTrialToken;
+            status: OriginTrialTokenStatus;
+        }
+
+        export interface OriginTrial {
+            trialName: string;
+            status: OriginTrialStatus;
+            tokensWithStatus: OriginTrialTokenWithStatus[];
+        }
+
+        /**
+         * Information about the Frame on the page.
+         */
+        export interface Frame {
+            /**
+             * Frame unique identifier.
+             */
+            id: FrameId;
+            /**
+             * Parent frame identifier.
+             */
+            parentId?: string;
+            /**
+             * Identifier of the loader associated with this frame.
+             */
+            loaderId: Network.LoaderId;
+            /**
+             * Frame's name as specified in the tag.
+             */
+            name?: string;
+            /**
+             * Frame document's URL without fragment.
+             */
+            url: string;
+            /**
+             * Frame document's URL fragment including the '#'.
+             */
+            urlFragment?: string;
+            /**
+             * Frame document's registered domain, taking the public suffixes list into account.
+             * Extracted from the Frame's url.
+             * Example URLs: http://www.google.com/file.html -> "google.com"
+             *               http://a.b.co.uk/file.html      -> "b.co.uk"
+             */
+            domainAndRegistry: string;
+            /**
+             * Frame document's security origin.
+             */
+            securityOrigin: string;
+            /**
+             * Frame document's mimeType as determined by the browser.
+             */
+            mimeType: string;
+            /**
+             * If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment.
+             */
+            unreachableUrl?: string;
+            /**
+             * Indicates whether this frame was tagged as an ad.
+             */
+            adFrameType?: AdFrameType;
+            /**
+             * Indicates whether the main document is a secure context and explains why that is the case.
+             */
+            secureContextType: SecureContextType;
+            /**
+             * Indicates whether this is a cross origin isolated context.
+             */
+            crossOriginIsolatedContextType: CrossOriginIsolatedContextType;
+            /**
+             * Indicated which gated APIs / features are available.
+             */
+            gatedAPIFeatures: GatedAPIFeatures[];
+            /**
+             * Frame document's origin trials with at least one token present.
+             */
+            originTrials?: OriginTrial[];
+        }
+
+        /**
+         * Information about the Resource on the page.
+         */
+        export interface FrameResource {
+            /**
+             * Resource URL.
+             */
+            url: string;
+            /**
+             * Type of this resource.
+             */
+            type: Network.ResourceType;
+            /**
+             * Resource mimeType as determined by the browser.
+             */
+            mimeType: string;
+            /**
+             * last-modified timestamp as reported by server.
+             */
+            lastModified?: Network.TimeSinceEpoch;
+            /**
+             * Resource content size.
+             */
+            contentSize?: number;
+            /**
+             * True if the resource failed to load.
+             */
+            failed?: boolean;
+            /**
+             * True if the resource was canceled during loading.
+             */
+            canceled?: boolean;
+        }
+
+        /**
+         * Information about the Frame hierarchy along with their cached resources.
+         */
+        export interface FrameResourceTree {
+            /**
+             * Frame information for this tree item.
+             */
+            frame: Frame;
+            /**
+             * Child frames.
+             */
+            childFrames?: FrameResourceTree[];
+            /**
+             * Information about frame resources.
+             */
+            resources: FrameResource[];
+        }
+
+        /**
+         * Information about the Frame hierarchy.
+         */
+        export interface FrameTree {
+            /**
+             * Frame information for this tree item.
+             */
+            frame: Frame;
+            /**
+             * Child frames.
+             */
+            childFrames?: FrameTree[];
+        }
+
+        /**
+         * Unique script identifier.
+         */
+        export type ScriptIdentifier = string;
+
+        /**
+         * Transition type.
+         */
+        export type TransitionType = ('link' | 'typed' | 'address_bar' | 'auto_bookmark' | 'auto_subframe' | 'manual_subframe' | 'generated' | 'auto_toplevel' | 'form_submit' | 'reload' | 'keyword' | 'keyword_generated' | 'other');
+
+        /**
+         * Navigation history entry.
+         */
+        export interface NavigationEntry {
+            /**
+             * Unique id of the navigation history entry.
+             */
+            id: integer;
+            /**
+             * URL of the navigation history entry.
+             */
+            url: string;
+            /**
+             * URL that the user typed in the url bar.
+             */
+            userTypedURL: string;
+            /**
+             * Title of the navigation history entry.
+             */
+            title: string;
+            /**
+             * Transition type.
+             */
+            transitionType: TransitionType;
+        }
+
+        /**
+         * Screencast frame metadata.
+         */
+        export interface ScreencastFrameMetadata {
+            /**
+             * Top offset in DIP.
+             */
+            offsetTop: number;
+            /**
+             * Page scale factor.
+             */
+            pageScaleFactor: number;
+            /**
+             * Device screen width in DIP.
+             */
+            deviceWidth: number;
+            /**
+             * Device screen height in DIP.
+             */
+            deviceHeight: number;
+            /**
+             * Position of horizontal scroll in CSS pixels.
+             */
+            scrollOffsetX: number;
+            /**
+             * Position of vertical scroll in CSS pixels.
+             */
+            scrollOffsetY: number;
+            /**
+             * Frame swap timestamp.
+             */
+            timestamp?: Network.TimeSinceEpoch;
+        }
+
+        /**
+         * Javascript dialog type.
+         */
+        export type DialogType = ('alert' | 'confirm' | 'prompt' | 'beforeunload');
+
+        /**
+         * Error while paring app manifest.
+         */
+        export interface AppManifestError {
+            /**
+             * Error message.
+             */
+            message: string;
+            /**
+             * If criticial, this is a non-recoverable parse error.
+             */
+            critical: integer;
+            /**
+             * Error line.
+             */
+            line: integer;
+            /**
+             * Error column.
+             */
+            column: integer;
+        }
+
+        /**
+         * Parsed app manifest properties.
+         */
+        export interface AppManifestParsedProperties {
+            /**
+             * Computed scope value
+             */
+            scope: string;
+        }
+
+        /**
+         * Layout viewport position and dimensions.
+         */
+        export interface LayoutViewport {
+            /**
+             * Horizontal offset relative to the document (CSS pixels).
+             */
+            pageX: integer;
+            /**
+             * Vertical offset relative to the document (CSS pixels).
+             */
+            pageY: integer;
+            /**
+             * Width (CSS pixels), excludes scrollbar if present.
+             */
+            clientWidth: integer;
+            /**
+             * Height (CSS pixels), excludes scrollbar if present.
+             */
+            clientHeight: integer;
+        }
+
+        /**
+         * Visual viewport position, dimensions, and scale.
+         */
+        export interface VisualViewport {
+            /**
+             * Horizontal offset relative to the layout viewport (CSS pixels).
+             */
+            offsetX: number;
+            /**
+             * Vertical offset relative to the layout viewport (CSS pixels).
+             */
+            offsetY: number;
+            /**
+             * Horizontal offset relative to the document (CSS pixels).
+             */
+            pageX: number;
+            /**
+             * Vertical offset relative to the document (CSS pixels).
+             */
+            pageY: number;
+            /**
+             * Width (CSS pixels), excludes scrollbar if present.
+             */
+            clientWidth: number;
+            /**
+             * Height (CSS pixels), excludes scrollbar if present.
+             */
+            clientHeight: number;
+            /**
+             * Scale relative to the ideal viewport (size at width=device-width).
+             */
+            scale: number;
+            /**
+             * Page zoom factor (CSS to device independent pixels ratio).
+             */
+            zoom?: number;
+        }
+
+        /**
+         * Viewport for capturing screenshot.
+         */
+        export interface Viewport {
+            /**
+             * X offset in device independent pixels (dip).
+             */
+            x: number;
+            /**
+             * Y offset in device independent pixels (dip).
+             */
+            y: number;
+            /**
+             * Rectangle width in device independent pixels (dip).
+             */
+            width: number;
+            /**
+             * Rectangle height in device independent pixels (dip).
+             */
+            height: number;
+            /**
+             * Page scale factor.
+             */
+            scale: number;
+        }
+
+        /**
+         * Generic font families collection.
+         */
+        export interface FontFamilies {
+            /**
+             * The standard font-family.
+             */
+            standard?: string;
+            /**
+             * The fixed font-family.
+             */
+            fixed?: string;
+            /**
+             * The serif font-family.
+             */
+            serif?: string;
+            /**
+             * The sansSerif font-family.
+             */
+            sansSerif?: string;
+            /**
+             * The cursive font-family.
+             */
+            cursive?: string;
+            /**
+             * The fantasy font-family.
+             */
+            fantasy?: string;
+            /**
+             * The pictograph font-family.
+             */
+            pictograph?: string;
+        }
+
+        /**
+         * Default font sizes.
+         */
+        export interface FontSizes {
+            /**
+             * Default standard font size.
+             */
+            standard?: integer;
+            /**
+             * Default fixed font size.
+             */
+            fixed?: integer;
+        }
+
+        export type ClientNavigationReason = ('formSubmissionGet' | 'formSubmissionPost' | 'httpHeaderRefresh' | 'scriptInitiated' | 'metaTagRefresh' | 'pageBlockInterstitial' | 'reload' | 'anchorClick');
+
+        export type ClientNavigationDisposition = ('currentTab' | 'newTab' | 'newWindow' | 'download');
+
+        export interface InstallabilityErrorArgument {
+            /**
+             * Argument name (e.g. name:'minimum-icon-size-in-pixels').
+             */
+            name: string;
+            /**
+             * Argument value (e.g. value:'64').
+             */
+            value: string;
+        }
+
+        /**
+         * The installability error
+         */
+        export interface InstallabilityError {
+            /**
+             * The error id (e.g. 'manifest-missing-suitable-icon').
+             */
+            errorId: string;
+            /**
+             * The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}).
+             */
+            errorArguments: InstallabilityErrorArgument[];
+        }
+
+        /**
+         * The referring-policy used for the navigation.
+         */
+        export type ReferrerPolicy = ('noReferrer' | 'noReferrerWhenDowngrade' | 'origin' | 'originWhenCrossOrigin' | 'sameOrigin' | 'strictOrigin' | 'strictOriginWhenCrossOrigin' | 'unsafeUrl');
+
+        /**
+         * Per-script compilation cache parameters for `Page.produceCompilationCache`
+         */
+        export interface CompilationCacheParams {
+            /**
+             * The URL of the script to produce a compilation cache entry for.
+             */
+            url: string;
+            /**
+             * A hint to the backend whether eager compilation is recommended.
+             * (the actual compilation mode used is upon backend discretion).
+             */
+            eager?: boolean;
+        }
+
+        /**
+         * The type of a frameNavigated event.
+         */
+        export type NavigationType = ('Navigation' | 'BackForwardCacheRestore');
+
+        export interface AddScriptToEvaluateOnLoadRequest {
+            scriptSource: string;
+        }
+
+        export interface AddScriptToEvaluateOnLoadResponse {
+            /**
+             * Identifier of the added script.
+             */
+            identifier: ScriptIdentifier;
+        }
+
+        export interface AddScriptToEvaluateOnNewDocumentRequest {
+            source: string;
+            /**
+             * If specified, creates an isolated world with the given name and evaluates given script in it.
+             * This world name will be used as the ExecutionContextDescription::name when the corresponding
+             * event is emitted.
+             */
+            worldName?: string;
+            /**
+             * Specifies whether command line API should be available to the script, defaults
+             * to false.
+             */
+            includeCommandLineAPI?: boolean;
+        }
+
+        export interface AddScriptToEvaluateOnNewDocumentResponse {
+            /**
+             * Identifier of the added script.
+             */
+            identifier: ScriptIdentifier;
+        }
+
+        export const enum CaptureScreenshotRequestFormat {
+            Jpeg = 'jpeg',
+            Png = 'png',
+        }
+
+        export interface CaptureScreenshotRequest {
+            /**
+             * Image compression format (defaults to png). (CaptureScreenshotRequestFormat enum)
+             */
+            format?: ('jpeg' | 'png');
+            /**
+             * Compression quality from range [0..100] (jpeg only).
+             */
+            quality?: integer;
+            /**
+             * Capture the screenshot of a given region only.
+             */
+            clip?: Viewport;
+            /**
+             * Capture the screenshot from the surface, rather than the view. Defaults to true.
+             */
+            fromSurface?: boolean;
+            /**
+             * Capture the screenshot beyond the viewport. Defaults to false.
+             */
+            captureBeyondViewport?: boolean;
+        }
+
+        export interface CaptureScreenshotResponse {
+            /**
+             * Base64-encoded image data. (Encoded as a base64 string when passed over JSON)
+             */
+            data: string;
+        }
+
+        export const enum CaptureSnapshotRequestFormat {
+            MHTML = 'mhtml',
+        }
+
+        export interface CaptureSnapshotRequest {
+            /**
+             * Format (defaults to mhtml). (CaptureSnapshotRequestFormat enum)
+             */
+            format?: ('mhtml');
+        }
+
+        export interface CaptureSnapshotResponse {
+            /**
+             * Serialized page data.
+             */
+            data: string;
+        }
+
+        export interface CreateIsolatedWorldRequest {
+            /**
+             * Id of the frame in which the isolated world should be created.
+             */
+            frameId: FrameId;
+            /**
+             * An optional name which is reported in the Execution Context.
+             */
+            worldName?: string;
+            /**
+             * Whether or not universal access should be granted to the isolated world. This is a powerful
+             * option, use with caution.
+             */
+            grantUniveralAccess?: boolean;
+        }
+
+        export interface CreateIsolatedWorldResponse {
+            /**
+             * Execution context of the isolated world.
+             */
+            executionContextId: Runtime.ExecutionContextId;
+        }
+
+        export interface DeleteCookieRequest {
+            /**
+             * Name of the cookie to remove.
+             */
+            cookieName: string;
+            /**
+             * URL to match cooke domain and path.
+             */
+            url: string;
+        }
+
+        export interface GetAppManifestResponse {
+            /**
+             * Manifest location.
+             */
+            url: string;
+            errors: AppManifestError[];
+            /**
+             * Manifest content.
+             */
+            data?: string;
+            /**
+             * Parsed manifest properties
+             */
+            parsed?: AppManifestParsedProperties;
+        }
+
+        export interface GetInstallabilityErrorsResponse {
+            installabilityErrors: InstallabilityError[];
+        }
+
+        export interface GetManifestIconsResponse {
+            primaryIcon?: string;
+        }
+
+        export interface GetCookiesResponse {
+            /**
+             * Array of cookie objects.
+             */
+            cookies: Network.Cookie[];
+        }
+
+        export interface GetFrameTreeResponse {
+            /**
+             * Present frame tree structure.
+             */
+            frameTree: FrameTree;
+        }
+
+        export interface GetLayoutMetricsResponse {
+            /**
+             * Deprecated metrics relating to the layout viewport. Can be in DP or in CSS pixels depending on the `enable-use-zoom-for-dsf` flag. Use `cssLayoutViewport` instead.
+             */
+            layoutViewport: LayoutViewport;
+            /**
+             * Deprecated metrics relating to the visual viewport. Can be in DP or in CSS pixels depending on the `enable-use-zoom-for-dsf` flag. Use `cssVisualViewport` instead.
+             */
+            visualViewport: VisualViewport;
+            /**
+             * Deprecated size of scrollable area. Can be in DP or in CSS pixels depending on the `enable-use-zoom-for-dsf` flag. Use `cssContentSize` instead.
+             */
+            contentSize: DOM.Rect;
+            /**
+             * Metrics relating to the layout viewport in CSS pixels.
+             */
+            cssLayoutViewport: LayoutViewport;
+            /**
+             * Metrics relating to the visual viewport in CSS pixels.
+             */
+            cssVisualViewport: VisualViewport;
+            /**
+             * Size of scrollable area in CSS pixels.
+             */
+            cssContentSize: DOM.Rect;
+        }
+
+        export interface GetNavigationHistoryResponse {
+            /**
+             * Index of the current navigation history entry.
+             */
+            currentIndex: integer;
+            /**
+             * Array of navigation history entries.
+             */
+            entries: NavigationEntry[];
+        }
+
+        export interface GetResourceContentRequest {
+            /**
+             * Frame id to get resource for.
+             */
+            frameId: FrameId;
+            /**
+             * URL of the resource to get content for.
+             */
+            url: string;
+        }
+
+        export interface GetResourceContentResponse {
+            /**
+             * Resource content.
+             */
+            content: string;
+            /**
+             * True, if content was served as base64.
+             */
+            base64Encoded: boolean;
+        }
+
+        export interface GetResourceTreeResponse {
+            /**
+             * Present frame / resource tree structure.
+             */
+            frameTree: FrameResourceTree;
+        }
+
+        export interface HandleJavaScriptDialogRequest {
+            /**
+             * Whether to accept or dismiss the dialog.
+             */
+            accept: boolean;
+            /**
+             * The text to enter into the dialog prompt before accepting. Used only if this is a prompt
+             * dialog.
+             */
+            promptText?: string;
+        }
+
+        export interface NavigateRequest {
+            /**
+             * URL to navigate the page to.
+             */
+            url: string;
+            /**
+             * Referrer URL.
+             */
+            referrer?: string;
+            /**
+             * Intended transition type.
+             */
+            transitionType?: TransitionType;
+            /**
+             * Frame id to navigate, if not specified navigates the top frame.
+             */
+            frameId?: FrameId;
+            /**
+             * Referrer-policy used for the navigation.
+             */
+            referrerPolicy?: ReferrerPolicy;
+        }
+
+        export interface NavigateResponse {
+            /**
+             * Frame id that has navigated (or failed to navigate)
+             */
+            frameId: FrameId;
+            /**
+             * Loader identifier.
+             */
+            loaderId?: Network.LoaderId;
+            /**
+             * User friendly error message, present if and only if navigation has failed.
+             */
+            errorText?: string;
+        }
+
+        export interface NavigateToHistoryEntryRequest {
+            /**
+             * Unique id of the entry to navigate to.
+             */
+            entryId: integer;
+        }
+
+        export const enum PrintToPDFRequestTransferMode {
+            ReturnAsBase64 = 'ReturnAsBase64',
+            ReturnAsStream = 'ReturnAsStream',
+        }
+
+        export interface PrintToPDFRequest {
+            /**
+             * Paper orientation. Defaults to false.
+             */
+            landscape?: boolean;
+            /**
+             * Display header and footer. Defaults to false.
+             */
+            displayHeaderFooter?: boolean;
+            /**
+             * Print background graphics. Defaults to false.
+             */
+            printBackground?: boolean;
+            /**
+             * Scale of the webpage rendering. Defaults to 1.
+             */
+            scale?: number;
+            /**
+             * Paper width in inches. Defaults to 8.5 inches.
+             */
+            paperWidth?: number;
+            /**
+             * Paper height in inches. Defaults to 11 inches.
+             */
+            paperHeight?: number;
+            /**
+             * Top margin in inches. Defaults to 1cm (~0.4 inches).
+             */
+            marginTop?: number;
+            /**
+             * Bottom margin in inches. Defaults to 1cm (~0.4 inches).
+             */
+            marginBottom?: number;
+            /**
+             * Left margin in inches. Defaults to 1cm (~0.4 inches).
+             */
+            marginLeft?: number;
+            /**
+             * Right margin in inches. Defaults to 1cm (~0.4 inches).
+             */
+            marginRight?: number;
+            /**
+             * Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means
+             * print all pages.
+             */
+            pageRanges?: string;
+            /**
+             * Whether to silently ignore invalid but successfully parsed page ranges, such as '3-2'.
+             * Defaults to false.
+             */
+            ignoreInvalidPageRanges?: boolean;
+            /**
+             * HTML template for the print header. Should be valid HTML markup with following
+             * classes used to inject printing values into them:
+             * - `date`: formatted print date
+             * - `title`: document title
+             * - `url`: document location
+             * - `pageNumber`: current page number
+             * - `totalPages`: total pages in the document
+             * 
+             * For example, `<span class=title></span>` would generate span containing the title.
+             */
+            headerTemplate?: string;
+            /**
+             * HTML template for the print footer. Should use the same format as the `headerTemplate`.
+             */
+            footerTemplate?: string;
+            /**
+             * Whether or not to prefer page size as defined by css. Defaults to false,
+             * in which case the content will be scaled to fit the paper size.
+             */
+            preferCSSPageSize?: boolean;
+            /**
+             * return as stream (PrintToPDFRequestTransferMode enum)
+             */
+            transferMode?: ('ReturnAsBase64' | 'ReturnAsStream');
+        }
+
+        export interface PrintToPDFResponse {
+            /**
+             * Base64-encoded pdf data. Empty if |returnAsStream| is specified. (Encoded as a base64 string when passed over JSON)
+             */
+            data: string;
+            /**
+             * A handle of the stream that holds resulting PDF data.
+             */
+            stream?: IO.StreamHandle;
+        }
+
+        export interface ReloadRequest {
+            /**
+             * If true, browser cache is ignored (as if the user pressed Shift+refresh).
+             */
+            ignoreCache?: boolean;
+            /**
+             * If set, the script will be injected into all frames of the inspected page after reload.
+             * Argument will be ignored if reloading dataURL origin.
+             */
+            scriptToEvaluateOnLoad?: string;
+        }
+
+        export interface RemoveScriptToEvaluateOnLoadRequest {
+            identifier: ScriptIdentifier;
+        }
+
+        export interface RemoveScriptToEvaluateOnNewDocumentRequest {
+            identifier: ScriptIdentifier;
+        }
+
+        export interface ScreencastFrameAckRequest {
+            /**
+             * Frame number.
+             */
+            sessionId: integer;
+        }
+
+        export interface SearchInResourceRequest {
+            /**
+             * Frame id for resource to search in.
+             */
+            frameId: FrameId;
+            /**
+             * URL of the resource to search in.
+             */
+            url: string;
+            /**
+             * String to search for.
+             */
+            query: string;
+            /**
+             * If true, search is case sensitive.
+             */
+            caseSensitive?: boolean;
+            /**
+             * If true, treats string parameter as regex.
+             */
+            isRegex?: boolean;
+        }
+
+        export interface SearchInResourceResponse {
+            /**
+             * List of search matches.
+             */
+            result: Debugger.SearchMatch[];
+        }
+
+        export interface SetAdBlockingEnabledRequest {
+            /**
+             * Whether to block ads.
+             */
+            enabled: boolean;
+        }
+
+        export interface SetBypassCSPRequest {
+            /**
+             * Whether to bypass page CSP.
+             */
+            enabled: boolean;
+        }
+
+        export interface GetPermissionsPolicyStateRequest {
+            frameId: FrameId;
+        }
+
+        export interface GetPermissionsPolicyStateResponse {
+            states: PermissionsPolicyFeatureState[];
+        }
+
+        export interface SetDeviceMetricsOverrideRequest {
+            /**
+             * Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
+             */
+            width: integer;
+            /**
+             * Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
+             */
+            height: integer;
+            /**
+             * Overriding device scale factor value. 0 disables the override.
+             */
+            deviceScaleFactor: number;
+            /**
+             * Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
+             * autosizing and more.
+             */
+            mobile: boolean;
+            /**
+             * Scale to apply to resulting view image.
+             */
+            scale?: number;
+            /**
+             * Overriding screen width value in pixels (minimum 0, maximum 10000000).
+             */
+            screenWidth?: integer;
+            /**
+             * Overriding screen height value in pixels (minimum 0, maximum 10000000).
+             */
+            screenHeight?: integer;
+            /**
+             * Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
+             */
+            positionX?: integer;
+            /**
+             * Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
+             */
+            positionY?: integer;
+            /**
+             * Do not set visible view size, rely upon explicit setVisibleSize call.
+             */
+            dontSetVisibleSize?: boolean;
+            /**
+             * Screen orientation override.
+             */
+            screenOrientation?: Emulation.ScreenOrientation;
+            /**
+             * The viewport dimensions and scale. If not set, the override is cleared.
+             */
+            viewport?: Viewport;
+        }
+
+        export interface SetDeviceOrientationOverrideRequest {
+            /**
+             * Mock alpha
+             */
+            alpha: number;
+            /**
+             * Mock beta
+             */
+            beta: number;
+            /**
+             * Mock gamma
+             */
+            gamma: number;
+        }
+
+        export interface SetFontFamiliesRequest {
+            /**
+             * Specifies font families to set. If a font family is not specified, it won't be changed.
+             */
+            fontFamilies: FontFamilies;
+        }
+
+        export interface SetFontSizesRequest {
+            /**
+             * Specifies font sizes to set. If a font size is not specified, it won't be changed.
+             */
+            fontSizes: FontSizes;
+        }
+
+        export interface SetDocumentContentRequest {
+            /**
+             * Frame id to set HTML for.
+             */
+            frameId: FrameId;
+            /**
+             * HTML content to set.
+             */
+            html: string;
+        }
+
+        export const enum SetDownloadBehaviorRequestBehavior {
+            Deny = 'deny',
+            Allow = 'allow',
+            Default = 'default',
+        }
+
+        export interface SetDownloadBehaviorRequest {
+            /**
+             * Whether to allow all or deny all download requests, or use default Chrome behavior if
+             * available (otherwise deny). (SetDownloadBehaviorRequestBehavior enum)
+             */
+            behavior: ('deny' | 'allow' | 'default');
+            /**
+             * The default path to save downloaded files to. This is required if behavior is set to 'allow'
+             */
+            downloadPath?: string;
+        }
+
+        export interface SetGeolocationOverrideRequest {
+            /**
+             * Mock latitude
+             */
+            latitude?: number;
+            /**
+             * Mock longitude
+             */
+            longitude?: number;
+            /**
+             * Mock accuracy
+             */
+            accuracy?: number;
+        }
+
+        export interface SetLifecycleEventsEnabledRequest {
+            /**
+             * If true, starts emitting lifecycle events.
+             */
+            enabled: boolean;
+        }
+
+        export const enum SetTouchEmulationEnabledRequestConfiguration {
+            Mobile = 'mobile',
+            Desktop = 'desktop',
+        }
+
+        export interface SetTouchEmulationEnabledRequest {
+            /**
+             * Whether the touch event emulation should be enabled.
+             */
+            enabled: boolean;
+            /**
+             * Touch/gesture events configuration. Default: current platform. (SetTouchEmulationEnabledRequestConfiguration enum)
+             */
+            configuration?: ('mobile' | 'desktop');
+        }
+
+        export const enum StartScreencastRequestFormat {
+            Jpeg = 'jpeg',
+            Png = 'png',
+        }
+
+        export interface StartScreencastRequest {
+            /**
+             * Image compression format. (StartScreencastRequestFormat enum)
+             */
+            format?: ('jpeg' | 'png');
+            /**
+             * Compression quality from range [0..100].
+             */
+            quality?: integer;
+            /**
+             * Maximum screenshot width.
+             */
+            maxWidth?: integer;
+            /**
+             * Maximum screenshot height.
+             */
+            maxHeight?: integer;
+            /**
+             * Send every n-th frame.
+             */
+            everyNthFrame?: integer;
+        }
+
+        export const enum SetWebLifecycleStateRequestState {
+            Frozen = 'frozen',
+            Active = 'active',
+        }
+
+        export interface SetWebLifecycleStateRequest {
+            /**
+             * Target lifecycle state (SetWebLifecycleStateRequestState enum)
+             */
+            state: ('frozen' | 'active');
+        }
+
+        export interface SetProduceCompilationCacheRequest {
+            enabled: boolean;
+        }
+
+        export interface ProduceCompilationCacheRequest {
+            scripts: CompilationCacheParams[];
+        }
+
+        export interface AddCompilationCacheRequest {
+            url: string;
+            /**
+             * Base64-encoded data (Encoded as a base64 string when passed over JSON)
+             */
+            data: string;
+        }
+
+        export interface GenerateTestReportRequest {
+            /**
+             * Message to be displayed in the report.
+             */
+            message: string;
+            /**
+             * Specifies the endpoint group to deliver the report to.
+             */
+            group?: string;
+        }
+
+        export interface SetInterceptFileChooserDialogRequest {
+            enabled: boolean;
+        }
+
+        export interface DomContentEventFiredEvent {
+            timestamp: Network.MonotonicTime;
+        }
+
+        export const enum FileChooserOpenedEventMode {
+            SelectSingle = 'selectSingle',
+            SelectMultiple = 'selectMultiple',
+        }
+
+        /**
+         * Emitted only when `page.interceptFileChooser` is enabled.
+         */
+        export interface FileChooserOpenedEvent {
+            /**
+             * Id of the frame containing input node.
+             */
+            frameId: FrameId;
+            /**
+             * Input node id.
+             */
+            backendNodeId: DOM.BackendNodeId;
+            /**
+             * Input mode. (FileChooserOpenedEventMode enum)
+             */
+            mode: ('selectSingle' | 'selectMultiple');
+        }
+
+        /**
+         * Fired when frame has been attached to its parent.
+         */
+        export interface FrameAttachedEvent {
+            /**
+             * Id of the frame that has been attached.
+             */
+            frameId: FrameId;
+            /**
+             * Parent frame identifier.
+             */
+            parentFrameId: FrameId;
+            /**
+             * JavaScript stack trace of when frame was attached, only set if frame initiated from script.
+             */
+            stack?: Runtime.StackTrace;
+        }
+
+        /**
+         * Fired when frame no longer has a scheduled navigation.
+         */
+        export interface FrameClearedScheduledNavigationEvent {
+            /**
+             * Id of the frame that has cleared its scheduled navigation.
+             */
+            frameId: FrameId;
+        }
+
+        export const enum FrameDetachedEventReason {
+            Remove = 'remove',
+            Swap = 'swap',
+        }
+
+        /**
+         * Fired when frame has been detached from its parent.
+         */
+        export interface FrameDetachedEvent {
+            /**
+             * Id of the frame that has been detached.
+             */
+            frameId: FrameId;
+            /**
+             *  (FrameDetachedEventReason enum)
+             */
+            reason: ('remove' | 'swap');
+        }
+
+        /**
+         * Fired once navigation of the frame has completed. Frame is now associated with the new loader.
+         */
+        export interface FrameNavigatedEvent {
+            /**
+             * Frame object.
+             */
+            frame: Frame;
+            type: NavigationType;
+        }
+
+        /**
+         * Fired when opening document to write to.
+         */
+        export interface DocumentOpenedEvent {
+            /**
+             * Frame object.
+             */
+            frame: Frame;
+        }
+
+        /**
+         * Fired when a renderer-initiated navigation is requested.
+         * Navigation may still be cancelled after the event is issued.
+         */
+        export interface FrameRequestedNavigationEvent {
+            /**
+             * Id of the frame that is being navigated.
+             */
+            frameId: FrameId;
+            /**
+             * The reason for the navigation.
+             */
+            reason: ClientNavigationReason;
+            /**
+             * The destination URL for the requested navigation.
+             */
+            url: string;
+            /**
+             * The disposition for the navigation.
+             */
+            disposition: ClientNavigationDisposition;
+        }
+
+        /**
+         * Fired when frame schedules a potential navigation.
+         */
+        export interface FrameScheduledNavigationEvent {
+            /**
+             * Id of the frame that has scheduled a navigation.
+             */
+            frameId: FrameId;
+            /**
+             * Delay (in seconds) until the navigation is scheduled to begin. The navigation is not
+             * guaranteed to start.
+             */
+            delay: number;
+            /**
+             * The reason for the navigation.
+             */
+            reason: ClientNavigationReason;
+            /**
+             * The destination URL for the scheduled navigation.
+             */
+            url: string;
+        }
+
+        /**
+         * Fired when frame has started loading.
+         */
+        export interface FrameStartedLoadingEvent {
+            /**
+             * Id of the frame that has started loading.
+             */
+            frameId: FrameId;
+        }
+
+        /**
+         * Fired when frame has stopped loading.
+         */
+        export interface FrameStoppedLoadingEvent {
+            /**
+             * Id of the frame that has stopped loading.
+             */
+            frameId: FrameId;
+        }
+
+        /**
+         * Fired when page is about to start a download.
+         * Deprecated. Use Browser.downloadWillBegin instead.
+         */
+        export interface DownloadWillBeginEvent {
+            /**
+             * Id of the frame that caused download to begin.
+             */
+            frameId: FrameId;
+            /**
+             * Global unique identifier of the download.
+             */
+            guid: string;
+            /**
+             * URL of the resource being downloaded.
+             */
+            url: string;
+            /**
+             * Suggested file name of the resource (the actual name of the file saved on disk may differ).
+             */
+            suggestedFilename: string;
+        }
+
+        export const enum DownloadProgressEventState {
+            InProgress = 'inProgress',
+            Completed = 'completed',
+            Canceled = 'canceled',
+        }
+
+        /**
+         * Fired when download makes progress. Last call has |done| == true.
+         * Deprecated. Use Browser.downloadProgress instead.
+         */
+        export interface DownloadProgressEvent {
+            /**
+             * Global unique identifier of the download.
+             */
+            guid: string;
+            /**
+             * Total expected bytes to download.
+             */
+            totalBytes: number;
+            /**
+             * Total bytes received.
+             */
+            receivedBytes: number;
+            /**
+             * Download status. (DownloadProgressEventState enum)
+             */
+            state: ('inProgress' | 'completed' | 'canceled');
+        }
+
+        /**
+         * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been
+         * closed.
+         */
+        export interface JavascriptDialogClosedEvent {
+            /**
+             * Whether dialog was confirmed.
+             */
+            result: boolean;
+            /**
+             * User input in case of prompt.
+             */
+            userInput: string;
+        }
+
+        /**
+         * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to
+         * open.
+         */
+        export interface JavascriptDialogOpeningEvent {
+            /**
+             * Frame url.
+             */
+            url: string;
+            /**
+             * Message that will be displayed by the dialog.
+             */
+            message: string;
+            /**
+             * Dialog type.
+             */
+            type: DialogType;
+            /**
+             * True iff browser is capable showing or acting on the given dialog. When browser has no
+             * dialog handler for given target, calling alert while Page domain is engaged will stall
+             * the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog.
+             */
+            hasBrowserHandler: boolean;
+            /**
+             * Default dialog prompt.
+             */
+            defaultPrompt?: string;
+        }
+
+        /**
+         * Fired for top level page lifecycle events such as navigation, load, paint, etc.
+         */
+        export interface LifecycleEventEvent {
+            /**
+             * Id of the frame.
+             */
+            frameId: FrameId;
+            /**
+             * Loader identifier. Empty string if the request is fetched from worker.
+             */
+            loaderId: Network.LoaderId;
+            name: string;
+            timestamp: Network.MonotonicTime;
+        }
+
+        /**
+         * Fired for failed bfcache history navigations if BackForwardCache feature is enabled. Do
+         * not assume any ordering with the Page.frameNavigated event. This event is fired only for
+         * main-frame history navigation where the document changes (non-same-document navigations),
+         * when bfcache navigation fails.
+         */
+        export interface BackForwardCacheNotUsedEvent {
+            /**
+             * The loader id for the associated navgation.
+             */
+            loaderId: Network.LoaderId;
+            /**
+             * The frame id of the associated frame.
+             */
+            frameId: FrameId;
+        }
+
+        export interface LoadEventFiredEvent {
+            timestamp: Network.MonotonicTime;
+        }
+
+        /**
+         * Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation.
+         */
+        export interface NavigatedWithinDocumentEvent {
+            /**
+             * Id of the frame.
+             */
+            frameId: FrameId;
+            /**
+             * Frame's new url.
+             */
+            url: string;
+        }
+
+        /**
+         * Compressed image data requested by the `startScreencast`.
+         */
+        export interface ScreencastFrameEvent {
+            /**
+             * Base64-encoded compressed image. (Encoded as a base64 string when passed over JSON)
+             */
+            data: string;
+            /**
+             * Screencast frame metadata.
+             */
+            metadata: ScreencastFrameMetadata;
+            /**
+             * Frame number.
+             */
+            sessionId: integer;
+        }
+
+        /**
+         * Fired when the page with currently enabled screencast was shown or hidden `.
+         */
+        export interface ScreencastVisibilityChangedEvent {
+            /**
+             * True if the page is visible.
+             */
+            visible: boolean;
+        }
+
+        /**
+         * Fired when a new window is going to be opened, via window.open(), link click, form submission,
+         * etc.
+         */
+        export interface WindowOpenEvent {
+            /**
+             * The URL for the new window.
+             */
+            url: string;
+            /**
+             * Window name.
+             */
+            windowName: string;
+            /**
+             * An array of enabled window features.
+             */
+            windowFeatures: string[];
+            /**
+             * Whether or not it was triggered by user gesture.
+             */
+            userGesture: boolean;
+        }
+
+        /**
+         * Issued for every compilation cache generated. Is only available
+         * if Page.setGenerateCompilationCache is enabled.
+         */
+        export interface CompilationCacheProducedEvent {
+            url: string;
+            /**
+             * Base64-encoded data (Encoded as a base64 string when passed over JSON)
+             */
+            data: string;
+        }
+    }
+
+    export namespace Performance {
+
+        /**
+         * Run-time execution metric.
+         */
+        export interface Metric {
+            /**
+             * Metric name.
+             */
+            name: string;
+            /**
+             * Metric value.
+             */
+            value: number;
+        }
+
+        export const enum EnableRequestTimeDomain {
+            TimeTicks = 'timeTicks',
+            ThreadTicks = 'threadTicks',
+        }
+
+        export interface EnableRequest {
+            /**
+             * Time domain to use for collecting and reporting duration metrics. (EnableRequestTimeDomain enum)
+             */
+            timeDomain?: ('timeTicks' | 'threadTicks');
+        }
+
+        export const enum SetTimeDomainRequestTimeDomain {
+            TimeTicks = 'timeTicks',
+            ThreadTicks = 'threadTicks',
+        }
+
+        export interface SetTimeDomainRequest {
+            /**
+             * Time domain (SetTimeDomainRequestTimeDomain enum)
+             */
+            timeDomain: ('timeTicks' | 'threadTicks');
+        }
+
+        export interface GetMetricsResponse {
+            /**
+             * Current values for run-time metrics.
+             */
+            metrics: Metric[];
+        }
+
+        /**
+         * Current values of the metrics.
+         */
+        export interface MetricsEvent {
+            /**
+             * Current values of the metrics.
+             */
+            metrics: Metric[];
+            /**
+             * Timestamp title.
+             */
+            title: string;
+        }
+    }
+
+    /**
+     * Reporting of performance timeline events, as specified in
+     * https://w3c.github.io/performance-timeline/#dom-performanceobserver.
+     */
+    export namespace PerformanceTimeline {
+
+        /**
+         * See https://github.com/WICG/LargestContentfulPaint and largest_contentful_paint.idl
+         */
+        export interface LargestContentfulPaint {
+            renderTime: Network.TimeSinceEpoch;
+            loadTime: Network.TimeSinceEpoch;
+            /**
+             * The number of pixels being painted.
+             */
+            size: number;
+            /**
+             * The id attribute of the element, if available.
+             */
+            elementId?: string;
+            /**
+             * The URL of the image (may be trimmed).
+             */
+            url?: string;
+            nodeId?: DOM.BackendNodeId;
+        }
+
+        export interface LayoutShiftAttribution {
+            previousRect: DOM.Rect;
+            currentRect: DOM.Rect;
+            nodeId?: DOM.BackendNodeId;
+        }
+
+        /**
+         * See https://wicg.github.io/layout-instability/#sec-layout-shift and layout_shift.idl
+         */
+        export interface LayoutShift {
+            /**
+             * Score increment produced by this event.
+             */
+            value: number;
+            hadRecentInput: boolean;
+            lastInputTime: Network.TimeSinceEpoch;
+            sources: LayoutShiftAttribution[];
+        }
+
+        export interface TimelineEvent {
+            /**
+             * Identifies the frame that this event is related to. Empty for non-frame targets.
+             */
+            frameId: Page.FrameId;
+            /**
+             * The event type, as specified in https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype
+             * This determines which of the optional "details" fiedls is present.
+             */
+            type: string;
+            /**
+             * Name may be empty depending on the type.
+             */
+            name: string;
+            /**
+             * Time in seconds since Epoch, monotonically increasing within document lifetime.
+             */
+            time: Network.TimeSinceEpoch;
+            /**
+             * Event duration, if applicable.
+             */
+            duration?: number;
+            lcpDetails?: LargestContentfulPaint;
+            layoutShiftDetails?: LayoutShift;
+        }
+
+        export interface EnableRequest {
+            /**
+             * The types of event to report, as specified in
+             * https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype
+             * The specified filter overrides any previous filters, passing empty
+             * filter disables recording.
+             * Note that not all types exposed to the web platform are currently supported.
+             */
+            eventTypes: string[];
+        }
+
+        /**
+         * Sent when a performance timeline event is added. See reportPerformanceTimeline method.
+         */
+        export interface TimelineEventAddedEvent {
+            event: TimelineEvent;
+        }
+    }
+
+    /**
+     * Security
+     */
+    export namespace Security {
+
+        /**
+         * An internal certificate ID value.
+         */
+        export type CertificateId = integer;
+
+        /**
+         * A description of mixed content (HTTP resources on HTTPS pages), as defined by
+         * https://www.w3.org/TR/mixed-content/#categories
+         */
+        export type MixedContentType = ('blockable' | 'optionally-blockable' | 'none');
+
+        /**
+         * The security level of a page or resource.
+         */
+        export type SecurityState = ('unknown' | 'neutral' | 'insecure' | 'secure' | 'info' | 'insecure-broken');
+
+        /**
+         * Details about the security state of the page certificate.
+         */
+        export interface CertificateSecurityState {
+            /**
+             * Protocol name (e.g. "TLS 1.2" or "QUIC").
+             */
+            protocol: string;
+            /**
+             * Key Exchange used by the connection, or the empty string if not applicable.
+             */
+            keyExchange: string;
+            /**
+             * (EC)DH group used by the connection, if applicable.
+             */
+            keyExchangeGroup?: string;
+            /**
+             * Cipher name.
+             */
+            cipher: string;
+            /**
+             * TLS MAC. Note that AEAD ciphers do not have separate MACs.
+             */
+            mac?: string;
+            /**
+             * Page certificate.
+             */
+            certificate: string[];
+            /**
+             * Certificate subject name.
+             */
+            subjectName: string;
+            /**
+             * Name of the issuing CA.
+             */
+            issuer: string;
+            /**
+             * Certificate valid from date.
+             */
+            validFrom: Network.TimeSinceEpoch;
+            /**
+             * Certificate valid to (expiration) date
+             */
+            validTo: Network.TimeSinceEpoch;
+            /**
+             * The highest priority network error code, if the certificate has an error.
+             */
+            certificateNetworkError?: string;
+            /**
+             * True if the certificate uses a weak signature aglorithm.
+             */
+            certificateHasWeakSignature: boolean;
+            /**
+             * True if the certificate has a SHA1 signature in the chain.
+             */
+            certificateHasSha1Signature: boolean;
+            /**
+             * True if modern SSL
+             */
+            modernSSL: boolean;
+            /**
+             * True if the connection is using an obsolete SSL protocol.
+             */
+            obsoleteSslProtocol: boolean;
+            /**
+             * True if the connection is using an obsolete SSL key exchange.
+             */
+            obsoleteSslKeyExchange: boolean;
+            /**
+             * True if the connection is using an obsolete SSL cipher.
+             */
+            obsoleteSslCipher: boolean;
+            /**
+             * True if the connection is using an obsolete SSL signature.
+             */
+            obsoleteSslSignature: boolean;
+        }
+
+        export type SafetyTipStatus = ('badReputation' | 'lookalike');
+
+        export interface SafetyTipInfo {
+            /**
+             * Describes whether the page triggers any safety tips or reputation warnings. Default is unknown.
+             */
+            safetyTipStatus: SafetyTipStatus;
+            /**
+             * The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches.
+             */
+            safeUrl?: string;
+        }
+
+        /**
+         * Security state information about the page.
+         */
+        export interface VisibleSecurityState {
+            /**
+             * The security level of the page.
+             */
+            securityState: SecurityState;
+            /**
+             * Security state details about the page certificate.
+             */
+            certificateSecurityState?: CertificateSecurityState;
+            /**
+             * The type of Safety Tip triggered on the page. Note that this field will be set even if the Safety Tip UI was not actually shown.
+             */
+            safetyTipInfo?: SafetyTipInfo;
+            /**
+             * Array of security state issues ids.
+             */
+            securityStateIssueIds: string[];
+        }
+
+        /**
+         * An explanation of an factor contributing to the security state.
+         */
+        export interface SecurityStateExplanation {
+            /**
+             * Security state representing the severity of the factor being explained.
+             */
+            securityState: SecurityState;
+            /**
+             * Title describing the type of factor.
+             */
+            title: string;
+            /**
+             * Short phrase describing the type of factor.
+             */
+            summary: string;
+            /**
+             * Full text explanation of the factor.
+             */
+            description: string;
+            /**
+             * The type of mixed content described by the explanation.
+             */
+            mixedContentType: MixedContentType;
+            /**
+             * Page certificate.
+             */
+            certificate: string[];
+            /**
+             * Recommendations to fix any issues.
+             */
+            recommendations?: string[];
+        }
+
+        /**
+         * Information about insecure content on the page.
+         */
+        export interface InsecureContentStatus {
+            /**
+             * Always false.
+             */
+            ranMixedContent: boolean;
+            /**
+             * Always false.
+             */
+            displayedMixedContent: boolean;
+            /**
+             * Always false.
+             */
+            containedMixedForm: boolean;
+            /**
+             * Always false.
+             */
+            ranContentWithCertErrors: boolean;
+            /**
+             * Always false.
+             */
+            displayedContentWithCertErrors: boolean;
+            /**
+             * Always set to unknown.
+             */
+            ranInsecureContentStyle: SecurityState;
+            /**
+             * Always set to unknown.
+             */
+            displayedInsecureContentStyle: SecurityState;
+        }
+
+        /**
+         * The action to take when a certificate error occurs. continue will continue processing the
+         * request and cancel will cancel the request.
+         */
+        export type CertificateErrorAction = ('continue' | 'cancel');
+
+        export interface SetIgnoreCertificateErrorsRequest {
+            /**
+             * If true, all certificate errors will be ignored.
+             */
+            ignore: boolean;
+        }
+
+        export interface HandleCertificateErrorRequest {
+            /**
+             * The ID of the event.
+             */
+            eventId: integer;
+            /**
+             * The action to take on the certificate error.
+             */
+            action: CertificateErrorAction;
+        }
+
+        export interface SetOverrideCertificateErrorsRequest {
+            /**
+             * If true, certificate errors will be overridden.
+             */
+            override: boolean;
+        }
+
+        /**
+         * There is a certificate error. If overriding certificate errors is enabled, then it should be
+         * handled with the `handleCertificateError` command. Note: this event does not fire if the
+         * certificate error has been allowed internally. Only one client per target should override
+         * certificate errors at the same time.
+         */
+        export interface CertificateErrorEvent {
+            /**
+             * The ID of the event.
+             */
+            eventId: integer;
+            /**
+             * The type of the error.
+             */
+            errorType: string;
+            /**
+             * The url that was requested.
+             */
+            requestURL: string;
+        }
+
+        /**
+         * The security state of the page changed.
+         */
+        export interface VisibleSecurityStateChangedEvent {
+            /**
+             * Security state information about the page.
+             */
+            visibleSecurityState: VisibleSecurityState;
+        }
+
+        /**
+         * The security state of the page changed.
+         */
+        export interface SecurityStateChangedEvent {
+            /**
+             * Security state.
+             */
+            securityState: SecurityState;
+            /**
+             * True if the page was loaded over cryptographic transport such as HTTPS.
+             */
+            schemeIsCryptographic: boolean;
+            /**
+             * List of explanations for the security state. If the overall security state is `insecure` or
+             * `warning`, at least one corresponding explanation should be included.
+             */
+            explanations: SecurityStateExplanation[];
+            /**
+             * Information about insecure content on the page.
+             */
+            insecureContentStatus: InsecureContentStatus;
+            /**
+             * Overrides user-visible description of the state.
+             */
+            summary?: string;
+        }
+    }
+
+    export namespace ServiceWorker {
+
+        export type RegistrationID = string;
+
+        /**
+         * ServiceWorker registration.
+         */
+        export interface ServiceWorkerRegistration {
+            registrationId: RegistrationID;
+            scopeURL: string;
+            isDeleted: boolean;
+        }
+
+        export type ServiceWorkerVersionRunningStatus = ('stopped' | 'starting' | 'running' | 'stopping');
+
+        export type ServiceWorkerVersionStatus = ('new' | 'installing' | 'installed' | 'activating' | 'activated' | 'redundant');
+
+        /**
+         * ServiceWorker version.
+         */
+        export interface ServiceWorkerVersion {
+            versionId: string;
+            registrationId: RegistrationID;
+            scriptURL: string;
+            runningStatus: ServiceWorkerVersionRunningStatus;
+            status: ServiceWorkerVersionStatus;
+            /**
+             * The Last-Modified header value of the main script.
+             */
+            scriptLastModified?: number;
+            /**
+             * The time at which the response headers of the main script were received from the server.
+             * For cached script it is the last time the cache entry was validated.
+             */
+            scriptResponseTime?: number;
+            controlledClients?: Target.TargetID[];
+            targetId?: Target.TargetID;
+        }
+
+        /**
+         * ServiceWorker error message.
+         */
+        export interface ServiceWorkerErrorMessage {
+            errorMessage: string;
+            registrationId: RegistrationID;
+            versionId: string;
+            sourceURL: string;
+            lineNumber: integer;
+            columnNumber: integer;
+        }
+
+        export interface DeliverPushMessageRequest {
+            origin: string;
+            registrationId: RegistrationID;
+            data: string;
+        }
+
+        export interface DispatchSyncEventRequest {
+            origin: string;
+            registrationId: RegistrationID;
+            tag: string;
+            lastChance: boolean;
+        }
+
+        export interface DispatchPeriodicSyncEventRequest {
+            origin: string;
+            registrationId: RegistrationID;
+            tag: string;
+        }
+
+        export interface InspectWorkerRequest {
+            versionId: string;
+        }
+
+        export interface SetForceUpdateOnPageLoadRequest {
+            forceUpdateOnPageLoad: boolean;
+        }
+
+        export interface SkipWaitingRequest {
+            scopeURL: string;
+        }
+
+        export interface StartWorkerRequest {
+            scopeURL: string;
+        }
+
+        export interface StopWorkerRequest {
+            versionId: string;
+        }
+
+        export interface UnregisterRequest {
+            scopeURL: string;
+        }
+
+        export interface UpdateRegistrationRequest {
+            scopeURL: string;
+        }
+
+        export interface WorkerErrorReportedEvent {
+            errorMessage: ServiceWorkerErrorMessage;
+        }
+
+        export interface WorkerRegistrationUpdatedEvent {
+            registrations: ServiceWorkerRegistration[];
+        }
+
+        export interface WorkerVersionUpdatedEvent {
+            versions: ServiceWorkerVersion[];
+        }
+    }
+
+    export namespace Storage {
+
+        /**
+         * Enum of possible storage types.
+         */
+        export type StorageType = ('appcache' | 'cookies' | 'file_systems' | 'indexeddb' | 'local_storage' | 'shader_cache' | 'websql' | 'service_workers' | 'cache_storage' | 'all' | 'other');
+
+        /**
+         * Usage for a storage type.
+         */
+        export interface UsageForType {
+            /**
+             * Name of storage type.
+             */
+            storageType: StorageType;
+            /**
+             * Storage usage (bytes).
+             */
+            usage: number;
+        }
+
+        /**
+         * Pair of issuer origin and number of available (signed, but not used) Trust
+         * Tokens from that issuer.
+         */
+        export interface TrustTokens {
+            issuerOrigin: string;
+            count: number;
+        }
+
+        export interface ClearDataForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+            /**
+             * Comma separated list of StorageType to clear.
+             */
+            storageTypes: string;
+        }
+
+        export interface GetCookiesRequest {
+            /**
+             * Browser context to use when called on the browser endpoint.
+             */
+            browserContextId?: Browser.BrowserContextID;
+        }
+
+        export interface GetCookiesResponse {
+            /**
+             * Array of cookie objects.
+             */
+            cookies: Network.Cookie[];
+        }
+
+        export interface SetCookiesRequest {
+            /**
+             * Cookies to be set.
+             */
+            cookies: Network.CookieParam[];
+            /**
+             * Browser context to use when called on the browser endpoint.
+             */
+            browserContextId?: Browser.BrowserContextID;
+        }
+
+        export interface ClearCookiesRequest {
+            /**
+             * Browser context to use when called on the browser endpoint.
+             */
+            browserContextId?: Browser.BrowserContextID;
+        }
+
+        export interface GetUsageAndQuotaRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+        }
+
+        export interface GetUsageAndQuotaResponse {
+            /**
+             * Storage usage (bytes).
+             */
+            usage: number;
+            /**
+             * Storage quota (bytes).
+             */
+            quota: number;
+            /**
+             * Whether or not the origin has an active storage quota override
+             */
+            overrideActive: boolean;
+            /**
+             * Storage usage per type (bytes).
+             */
+            usageBreakdown: UsageForType[];
+        }
+
+        export interface OverrideQuotaForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+            /**
+             * The quota size (in bytes) to override the original quota with.
+             * If this is called multiple times, the overridden quota will be equal to
+             * the quotaSize provided in the final call. If this is called without
+             * specifying a quotaSize, the quota will be reset to the default value for
+             * the specified origin. If this is called multiple times with different
+             * origins, the override will be maintained for each origin until it is
+             * disabled (called without a quotaSize).
+             */
+            quotaSize?: number;
+        }
+
+        export interface TrackCacheStorageForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+        }
+
+        export interface TrackIndexedDBForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+        }
+
+        export interface UntrackCacheStorageForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+        }
+
+        export interface UntrackIndexedDBForOriginRequest {
+            /**
+             * Security origin.
+             */
+            origin: string;
+        }
+
+        export interface GetTrustTokensResponse {
+            tokens: TrustTokens[];
+        }
+
+        export interface ClearTrustTokensRequest {
+            issuerOrigin: string;
+        }
+
+        export interface ClearTrustTokensResponse {
+            /**
+             * True if any tokens were deleted, false otherwise.
+             */
+            didDeleteTokens: boolean;
+        }
+
+        /**
+         * A cache's contents have been modified.
+         */
+        export interface CacheStorageContentUpdatedEvent {
+            /**
+             * Origin to update.
+             */
+            origin: string;
+            /**
+             * Name of cache in origin.
+             */
+            cacheName: string;
+        }
+
+        /**
+         * A cache has been added/deleted.
+         */
+        export interface CacheStorageListUpdatedEvent {
+            /**
+             * Origin to update.
+             */
+            origin: string;
+        }
+
+        /**
+         * The origin's IndexedDB object store has been modified.
+         */
+        export interface IndexedDBContentUpdatedEvent {
+            /**
+             * Origin to update.
+             */
+            origin: string;
+            /**
+             * Database to update.
+             */
+            databaseName: string;
+            /**
+             * ObjectStore to update.
+             */
+            objectStoreName: string;
+        }
+
+        /**
+         * The origin's IndexedDB database list has been modified.
+         */
+        export interface IndexedDBListUpdatedEvent {
+            /**
+             * Origin to update.
+             */
+            origin: string;
+        }
+    }
+
+    /**
+     * The SystemInfo domain defines methods and events for querying low-level system information.
+     */
+    export namespace SystemInfo {
+
+        /**
+         * Describes a single graphics processor (GPU).
+         */
+        export interface GPUDevice {
+            /**
+             * PCI ID of the GPU vendor, if available; 0 otherwise.
+             */
+            vendorId: number;
+            /**
+             * PCI ID of the GPU device, if available; 0 otherwise.
+             */
+            deviceId: number;
+            /**
+             * Sub sys ID of the GPU, only available on Windows.
+             */
+            subSysId?: number;
+            /**
+             * Revision of the GPU, only available on Windows.
+             */
+            revision?: number;
+            /**
+             * String description of the GPU vendor, if the PCI ID is not available.
+             */
+            vendorString: string;
+            /**
+             * String description of the GPU device, if the PCI ID is not available.
+             */
+            deviceString: string;
+            /**
+             * String description of the GPU driver vendor.
+             */
+            driverVendor: string;
+            /**
+             * String description of the GPU driver version.
+             */
+            driverVersion: string;
+        }
+
+        /**
+         * Describes the width and height dimensions of an entity.
+         */
+        export interface Size {
+            /**
+             * Width in pixels.
+             */
+            width: integer;
+            /**
+             * Height in pixels.
+             */
+            height: integer;
+        }
+
+        /**
+         * Describes a supported video decoding profile with its associated minimum and
+         * maximum resolutions.
+         */
+        export interface VideoDecodeAcceleratorCapability {
+            /**
+             * Video codec profile that is supported, e.g. VP9 Profile 2.
+             */
+            profile: string;
+            /**
+             * Maximum video dimensions in pixels supported for this |profile|.
+             */
+            maxResolution: Size;
+            /**
+             * Minimum video dimensions in pixels supported for this |profile|.
+             */
+            minResolution: Size;
+        }
+
+        /**
+         * Describes a supported video encoding profile with its associated maximum
+         * resolution and maximum framerate.
+         */
+        export interface VideoEncodeAcceleratorCapability {
+            /**
+             * Video codec profile that is supported, e.g H264 Main.
+             */
+            profile: string;
+            /**
+             * Maximum video dimensions in pixels supported for this |profile|.
+             */
+            maxResolution: Size;
+            /**
+             * Maximum encoding framerate in frames per second supported for this
+             * |profile|, as fraction's numerator and denominator, e.g. 24/1 fps,
+             * 24000/1001 fps, etc.
+             */
+            maxFramerateNumerator: integer;
+            maxFramerateDenominator: integer;
+        }
+
+        /**
+         * YUV subsampling type of the pixels of a given image.
+         */
+        export type SubsamplingFormat = ('yuv420' | 'yuv422' | 'yuv444');
+
+        /**
+         * Image format of a given image.
+         */
+        export type ImageType = ('jpeg' | 'webp' | 'unknown');
+
+        /**
+         * Describes a supported image decoding profile with its associated minimum and
+         * maximum resolutions and subsampling.
+         */
+        export interface ImageDecodeAcceleratorCapability {
+            /**
+             * Image coded, e.g. Jpeg.
+             */
+            imageType: ImageType;
+            /**
+             * Maximum supported dimensions of the image in pixels.
+             */
+            maxDimensions: Size;
+            /**
+             * Minimum supported dimensions of the image in pixels.
+             */
+            minDimensions: Size;
+            /**
+             * Optional array of supported subsampling formats, e.g. 4:2:0, if known.
+             */
+            subsamplings: SubsamplingFormat[];
+        }
+
+        /**
+         * Provides information about the GPU(s) on the system.
+         */
+        export interface GPUInfo {
+            /**
+             * The graphics devices on the system. Element 0 is the primary GPU.
+             */
+            devices: GPUDevice[];
+            /**
+             * An optional dictionary of additional GPU related attributes.
+             */
+            auxAttributes?: any;
+            /**
+             * An optional dictionary of graphics features and their status.
+             */
+            featureStatus?: any;
+            /**
+             * An optional array of GPU driver bug workarounds.
+             */
+            driverBugWorkarounds: string[];
+            /**
+             * Supported accelerated video decoding capabilities.
+             */
+            videoDecoding: VideoDecodeAcceleratorCapability[];
+            /**
+             * Supported accelerated video encoding capabilities.
+             */
+            videoEncoding: VideoEncodeAcceleratorCapability[];
+            /**
+             * Supported accelerated image decoding capabilities.
+             */
+            imageDecoding: ImageDecodeAcceleratorCapability[];
+        }
+
+        /**
+         * Represents process info.
+         */
+        export interface ProcessInfo {
+            /**
+             * Specifies process type.
+             */
+            type: string;
+            /**
+             * Specifies process id.
+             */
+            id: integer;
+            /**
+             * Specifies cumulative CPU usage in seconds across all threads of the
+             * process since the process start.
+             */
+            cpuTime: number;
+        }
+
+        export interface GetInfoResponse {
+            /**
+             * Information about the GPUs on the system.
+             */
+            gpu: GPUInfo;
+            /**
+             * A platform-dependent description of the model of the machine. On Mac OS, this is, for
+             * example, 'MacBookPro'. Will be the empty string if not supported.
+             */
+            modelName: string;
+            /**
+             * A platform-dependent description of the version of the machine. On Mac OS, this is, for
+             * example, '10.1'. Will be the empty string if not supported.
+             */
+            modelVersion: string;
+            /**
+             * The command line string used to launch the browser. Will be the empty string if not
+             * supported.
+             */
+            commandLine: string;
+        }
+
+        export interface GetProcessInfoResponse {
+            /**
+             * An array of process info blocks.
+             */
+            processInfo: ProcessInfo[];
+        }
+    }
+
+    /**
+     * Supports additional targets discovery and allows to attach to them.
+     */
+    export namespace Target {
+
+        export type TargetID = string;
+
+        /**
+         * Unique identifier of attached debugging session.
+         */
+        export type SessionID = string;
+
+        export interface TargetInfo {
+            targetId: TargetID;
+            type: string;
+            title: string;
+            url: string;
+            /**
+             * Whether the target has an attached client.
+             */
+            attached: boolean;
+            /**
+             * Opener target Id
+             */
+            openerId?: TargetID;
+            /**
+             * Whether the target has access to the originating window.
+             */
+            canAccessOpener: boolean;
+            /**
+             * Frame id of originating window (is only set if target has an opener).
+             */
+            openerFrameId?: Page.FrameId;
+            browserContextId?: Browser.BrowserContextID;
+        }
+
+        export interface RemoteLocation {
+            host: string;
+            port: integer;
+        }
+
+        export interface ActivateTargetRequest {
+            targetId: TargetID;
+        }
+
+        export interface AttachToTargetRequest {
+            targetId: TargetID;
+            /**
+             * Enables "flat" access to the session via specifying sessionId attribute in the commands.
+             * We plan to make this the default, deprecate non-flattened mode,
+             * and eventually retire it. See crbug.com/991325.
+             */
+            flatten?: boolean;
+        }
+
+        export interface AttachToTargetResponse {
+            /**
+             * Id assigned to the session.
+             */
+            sessionId: SessionID;
+        }
+
+        export interface AttachToBrowserTargetResponse {
+            /**
+             * Id assigned to the session.
+             */
+            sessionId: SessionID;
+        }
+
+        export interface CloseTargetRequest {
+            targetId: TargetID;
+        }
+
+        export interface CloseTargetResponse {
+            /**
+             * Always set to true. If an error occurs, the response indicates protocol error.
+             */
+            success: boolean;
+        }
+
+        export interface ExposeDevToolsProtocolRequest {
+            targetId: TargetID;
+            /**
+             * Binding name, 'cdp' if not specified.
+             */
+            bindingName?: string;
+        }
+
+        export interface CreateBrowserContextRequest {
+            /**
+             * If specified, disposes this context when debugging session disconnects.
+             */
+            disposeOnDetach?: boolean;
+            /**
+             * Proxy server, similar to the one passed to --proxy-server
+             */
+            proxyServer?: string;
+            /**
+             * Proxy bypass list, similar to the one passed to --proxy-bypass-list
+             */
+            proxyBypassList?: string;
+        }
+
+        export interface CreateBrowserContextResponse {
+            /**
+             * The id of the context created.
+             */
+            browserContextId: Browser.BrowserContextID;
+        }
+
+        export interface GetBrowserContextsResponse {
+            /**
+             * An array of browser context ids.
+             */
+            browserContextIds: Browser.BrowserContextID[];
+        }
+
+        export interface CreateTargetRequest {
+            /**
+             * The initial URL the page will be navigated to. An empty string indicates about:blank.
+             */
+            url: string;
+            /**
+             * Frame width in DIP (headless chrome only).
+             */
+            width?: integer;
+            /**
+             * Frame height in DIP (headless chrome only).
+             */
+            height?: integer;
+            /**
+             * The browser context to create the page in.
+             */
+            browserContextId?: Browser.BrowserContextID;
+            /**
+             * Whether BeginFrames for this target will be controlled via DevTools (headless chrome only,
+             * not supported on MacOS yet, false by default).
+             */
+            enableBeginFrameControl?: boolean;
+            /**
+             * Whether to create a new Window or Tab (chrome-only, false by default).
+             */
+            newWindow?: boolean;
+            /**
+             * Whether to create the target in background or foreground (chrome-only,
+             * false by default).
+             */
+            background?: boolean;
+        }
+
+        export interface CreateTargetResponse {
+            /**
+             * The id of the page opened.
+             */
+            targetId: TargetID;
+        }
+
+        export interface DetachFromTargetRequest {
+            /**
+             * Session to detach.
+             */
+            sessionId?: SessionID;
+            /**
+             * Deprecated.
+             */
+            targetId?: TargetID;
+        }
+
+        export interface DisposeBrowserContextRequest {
+            browserContextId: Browser.BrowserContextID;
+        }
+
+        export interface GetTargetInfoRequest {
+            targetId?: TargetID;
+        }
+
+        export interface GetTargetInfoResponse {
+            targetInfo: TargetInfo;
+        }
+
+        export interface GetTargetsResponse {
+            /**
+             * The list of targets.
+             */
+            targetInfos: TargetInfo[];
+        }
+
+        export interface SendMessageToTargetRequest {
+            message: string;
+            /**
+             * Identifier of the session.
+             */
+            sessionId?: SessionID;
+            /**
+             * Deprecated.
+             */
+            targetId?: TargetID;
+        }
+
+        export interface SetAutoAttachRequest {
+            /**
+             * Whether to auto-attach to related targets.
+             */
+            autoAttach: boolean;
+            /**
+             * Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger`
+             * to run paused targets.
+             */
+            waitForDebuggerOnStart: boolean;
+            /**
+             * Enables "flat" access to the session via specifying sessionId attribute in the commands.
+             * We plan to make this the default, deprecate non-flattened mode,
+             * and eventually retire it. See crbug.com/991325.
+             */
+            flatten?: boolean;
+        }
+
+        export interface SetDiscoverTargetsRequest {
+            /**
+             * Whether to discover available targets.
+             */
+            discover: boolean;
+        }
+
+        export interface SetRemoteLocationsRequest {
+            /**
+             * List of remote locations.
+             */
+            locations: RemoteLocation[];
+        }
+
+        /**
+         * Issued when attached to target because of auto-attach or `attachToTarget` command.
+         */
+        export interface AttachedToTargetEvent {
+            /**
+             * Identifier assigned to the session used to send/receive messages.
+             */
+            sessionId: SessionID;
+            targetInfo: TargetInfo;
+            waitingForDebugger: boolean;
+        }
+
+        /**
+         * Issued when detached from target for any reason (including `detachFromTarget` command). Can be
+         * issued multiple times per target if multiple sessions have been attached to it.
+         */
+        export interface DetachedFromTargetEvent {
+            /**
+             * Detached session identifier.
+             */
+            sessionId: SessionID;
+            /**
+             * Deprecated.
+             */
+            targetId?: TargetID;
+        }
+
+        /**
+         * Notifies about a new protocol message received from the session (as reported in
+         * `attachedToTarget` event).
+         */
+        export interface ReceivedMessageFromTargetEvent {
+            /**
+             * Identifier of a session which sends a message.
+             */
+            sessionId: SessionID;
+            message: string;
+            /**
+             * Deprecated.
+             */
+            targetId?: TargetID;
+        }
+
+        /**
+         * Issued when a possible inspection target is created.
+         */
+        export interface TargetCreatedEvent {
+            targetInfo: TargetInfo;
+        }
+
+        /**
+         * Issued when a target is destroyed.
+         */
+        export interface TargetDestroyedEvent {
+            targetId: TargetID;
+        }
+
+        /**
+         * Issued when a target has crashed.
+         */
+        export interface TargetCrashedEvent {
+            targetId: TargetID;
+            /**
+             * Termination status type.
+             */
+            status: string;
+            /**
+             * Termination error code.
+             */
+            errorCode: integer;
+        }
+
+        /**
+         * Issued when some information about a target has changed. This only happens between
+         * `targetCreated` and `targetDestroyed`.
+         */
+        export interface TargetInfoChangedEvent {
+            targetInfo: TargetInfo;
+        }
+    }
+
+    /**
+     * The Tethering domain defines methods and events for browser port binding.
+     */
+    export namespace Tethering {
+
+        export interface BindRequest {
+            /**
+             * Port number to bind.
+             */
+            port: integer;
+        }
+
+        export interface UnbindRequest {
+            /**
+             * Port number to unbind.
+             */
+            port: integer;
+        }
+
+        /**
+         * Informs that port was successfully bound and got a specified connection id.
+         */
+        export interface AcceptedEvent {
+            /**
+             * Port number that was successfully bound.
+             */
+            port: integer;
+            /**
+             * Connection id to be used.
+             */
+            connectionId: string;
+        }
+    }
+
+    export namespace Tracing {
+
+        /**
+         * Configuration for memory dump. Used only when "memory-infra" category is enabled.
+         */
+        export interface MemoryDumpConfig {
+            [key: string]: string;
+        }
+
+        export const enum TraceConfigRecordMode {
+            RecordUntilFull = 'recordUntilFull',
+            RecordContinuously = 'recordContinuously',
+            RecordAsMuchAsPossible = 'recordAsMuchAsPossible',
+            EchoToConsole = 'echoToConsole',
+        }
+
+        export interface TraceConfig {
+            /**
+             * Controls how the trace buffer stores data. (TraceConfigRecordMode enum)
+             */
+            recordMode?: ('recordUntilFull' | 'recordContinuously' | 'recordAsMuchAsPossible' | 'echoToConsole');
+            /**
+             * Turns on JavaScript stack sampling.
+             */
+            enableSampling?: boolean;
+            /**
+             * Turns on system tracing.
+             */
+            enableSystrace?: boolean;
+            /**
+             * Turns on argument filter.
+             */
+            enableArgumentFilter?: boolean;
+            /**
+             * Included category filters.
+             */
+            includedCategories?: string[];
+            /**
+             * Excluded category filters.
+             */
+            excludedCategories?: string[];
+            /**
+             * Configuration to synthesize the delays in tracing.
+             */
+            syntheticDelays?: string[];
+            /**
+             * Configuration for memory dump triggers. Used only when "memory-infra" category is enabled.
+             */
+            memoryDumpConfig?: MemoryDumpConfig;
+        }
+
+        /**
+         * Data format of a trace. Can be either the legacy JSON format or the
+         * protocol buffer format. Note that the JSON format will be deprecated soon.
+         */
+        export type StreamFormat = ('json' | 'proto');
+
+        /**
+         * Compression type to use for traces returned via streams.
+         */
+        export type StreamCompression = ('none' | 'gzip');
+
+        /**
+         * Details exposed when memory request explicitly declared.
+         * Keep consistent with memory_dump_request_args.h and
+         * memory_instrumentation.mojom
+         */
+        export type MemoryDumpLevelOfDetail = ('background' | 'light' | 'detailed');
+
+        /**
+         * Backend type to use for tracing. `chrome` uses the Chrome-integrated
+         * tracing service and is supported on all platforms. `system` is only
+         * supported on Chrome OS and uses the Perfetto system tracing service.
+         * `auto` chooses `system` when the perfettoConfig provided to Tracing.start
+         * specifies at least one non-Chrome data source; otherwise uses `chrome`.
+         */
+        export type TracingBackend = ('auto' | 'chrome' | 'system');
+
+        export interface GetCategoriesResponse {
+            /**
+             * A list of supported tracing categories.
+             */
+            categories: string[];
+        }
+
+        export interface RecordClockSyncMarkerRequest {
+            /**
+             * The ID of this clock sync marker
+             */
+            syncId: string;
+        }
+
+        export interface RequestMemoryDumpRequest {
+            /**
+             * Enables more deterministic results by forcing garbage collection
+             */
+            deterministic?: boolean;
+            /**
+             * Specifies level of details in memory dump. Defaults to "detailed".
+             */
+            levelOfDetail?: MemoryDumpLevelOfDetail;
+        }
+
+        export interface RequestMemoryDumpResponse {
+            /**
+             * GUID of the resulting global memory dump.
+             */
+            dumpGuid: string;
+            /**
+             * True iff the global memory dump succeeded.
+             */
+            success: boolean;
+        }
+
+        export const enum StartRequestTransferMode {
+            ReportEvents = 'ReportEvents',
+            ReturnAsStream = 'ReturnAsStream',
+        }
+
+        export interface StartRequest {
+            /**
+             * Category/tag filter
+             */
+            categories?: string;
+            /**
+             * Tracing options
+             */
+            options?: string;
+            /**
+             * If set, the agent will issue bufferUsage events at this interval, specified in milliseconds
+             */
+            bufferUsageReportingInterval?: number;
+            /**
+             * Whether to report trace events as series of dataCollected events or to save trace to a
+             * stream (defaults to `ReportEvents`). (StartRequestTransferMode enum)
+             */
+            transferMode?: ('ReportEvents' | 'ReturnAsStream');
+            /**
+             * Trace data format to use. This only applies when using `ReturnAsStream`
+             * transfer mode (defaults to `json`).
+             */
+            streamFormat?: StreamFormat;
+            /**
+             * Compression format to use. This only applies when using `ReturnAsStream`
+             * transfer mode (defaults to `none`)
+             */
+            streamCompression?: StreamCompression;
+            traceConfig?: TraceConfig;
+            /**
+             * Base64-encoded serialized perfetto.protos.TraceConfig protobuf message
+             * When specified, the parameters `categories`, `options`, `traceConfig`
+             * are ignored. (Encoded as a base64 string when passed over JSON)
+             */
+            perfettoConfig?: string;
+            /**
+             * Backend type (defaults to `auto`)
+             */
+            tracingBackend?: TracingBackend;
+        }
+
+        export interface BufferUsageEvent {
+            /**
+             * A number in range [0..1] that indicates the used size of event buffer as a fraction of its
+             * total size.
+             */
+            percentFull?: number;
+            /**
+             * An approximate number of events in the trace log.
+             */
+            eventCount?: number;
+            /**
+             * A number in range [0..1] that indicates the used size of event buffer as a fraction of its
+             * total size.
+             */
+            value?: number;
+        }
+
+        /**
+         * Contains an bucket of collected trace events. When tracing is stopped collected events will be
+         * send as a sequence of dataCollected events followed by tracingComplete event.
+         */
+        export interface DataCollectedEvent {
+            value: any[];
+        }
+
+        /**
+         * Signals that tracing is stopped and there is no trace buffers pending flush, all data were
+         * delivered via dataCollected events.
+         */
+        export interface TracingCompleteEvent {
+            /**
+             * Indicates whether some trace data is known to have been lost, e.g. because the trace ring
+             * buffer wrapped around.
+             */
+            dataLossOccurred: boolean;
+            /**
+             * A handle of the stream that holds resulting trace data.
+             */
+            stream?: IO.StreamHandle;
+            /**
+             * Trace data format of returned stream.
+             */
+            traceFormat?: StreamFormat;
+            /**
+             * Compression format of returned stream.
+             */
+            streamCompression?: StreamCompression;
+        }
+    }
+
+    /**
+     * A domain for letting clients substitute browser's network layer with client code.
+     */
+    export namespace Fetch {
+
+        /**
+         * Unique request identifier.
+         */
+        export type RequestId = string;
+
+        /**
+         * Stages of the request to handle. Request will intercept before the request is
+         * sent. Response will intercept after the response is received (but before response
+         * body is received.
+         */
+        export type RequestStage = ('Request' | 'Response');
+
+        export interface RequestPattern {
+            /**
+             * Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is
+             * backslash. Omitting is equivalent to `"*"`.
+             */
+            urlPattern?: string;
+            /**
+             * If set, only requests for matching resource types will be intercepted.
+             */
+            resourceType?: Network.ResourceType;
+            /**
+             * Stage at which to begin intercepting requests. Default is Request.
+             */
+            requestStage?: RequestStage;
+        }
+
+        /**
+         * Response HTTP header entry
+         */
+        export interface HeaderEntry {
+            name: string;
+            value: string;
+        }
+
+        export const enum AuthChallengeSource {
+            Server = 'Server',
+            Proxy = 'Proxy',
+        }
+
+        /**
+         * Authorization challenge for HTTP status code 401 or 407.
+         */
+        export interface AuthChallenge {
+            /**
+             * Source of the authentication challenge. (AuthChallengeSource enum)
+             */
+            source?: ('Server' | 'Proxy');
+            /**
+             * Origin of the challenger.
+             */
+            origin: string;
+            /**
+             * The authentication scheme used, such as basic or digest
+             */
+            scheme: string;
+            /**
+             * The realm of the challenge. May be empty.
+             */
+            realm: string;
+        }
+
+        export const enum AuthChallengeResponseResponse {
+            Default = 'Default',
+            CancelAuth = 'CancelAuth',
+            ProvideCredentials = 'ProvideCredentials',
+        }
+
+        /**
+         * Response to an AuthChallenge.
+         */
+        export interface AuthChallengeResponse {
+            /**
+             * The decision on what to do in response to the authorization challenge.  Default means
+             * deferring to the default behavior of the net stack, which will likely either the Cancel
+             * authentication or display a popup dialog box. (AuthChallengeResponseResponse enum)
+             */
+            response: ('Default' | 'CancelAuth' | 'ProvideCredentials');
+            /**
+             * The username to provide, possibly empty. Should only be set if response is
+             * ProvideCredentials.
+             */
+            username?: string;
+            /**
+             * The password to provide, possibly empty. Should only be set if response is
+             * ProvideCredentials.
+             */
+            password?: string;
+        }
+
+        export interface EnableRequest {
+            /**
+             * If specified, only requests matching any of these patterns will produce
+             * fetchRequested event and will be paused until clients response. If not set,
+             * all requests will be affected.
+             */
+            patterns?: RequestPattern[];
+            /**
+             * If true, authRequired events will be issued and requests will be paused
+             * expecting a call to continueWithAuth.
+             */
+            handleAuthRequests?: boolean;
+        }
+
+        export interface FailRequestRequest {
+            /**
+             * An id the client received in requestPaused event.
+             */
+            requestId: RequestId;
+            /**
+             * Causes the request to fail with the given reason.
+             */
+            errorReason: Network.ErrorReason;
+        }
+
+        export interface FulfillRequestRequest {
+            /**
+             * An id the client received in requestPaused event.
+             */
+            requestId: RequestId;
+            /**
+             * An HTTP response code.
+             */
+            responseCode: integer;
+            /**
+             * Response headers.
+             */
+            responseHeaders?: HeaderEntry[];
+            /**
+             * Alternative way of specifying response headers as a \0-separated
+             * series of name: value pairs. Prefer the above method unless you
+             * need to represent some non-UTF8 values that can't be transmitted
+             * over the protocol as text. (Encoded as a base64 string when passed over JSON)
+             */
+            binaryResponseHeaders?: string;
+            /**
+             * A response body. (Encoded as a base64 string when passed over JSON)
+             */
+            body?: string;
+            /**
+             * A textual representation of responseCode.
+             * If absent, a standard phrase matching responseCode is used.
+             */
+            responsePhrase?: string;
+        }
+
+        export interface ContinueRequestRequest {
+            /**
+             * An id the client received in requestPaused event.
+             */
+            requestId: RequestId;
+            /**
+             * If set, the request url will be modified in a way that's not observable by page.
+             */
+            url?: string;
+            /**
+             * If set, the request method is overridden.
+             */
+            method?: string;
+            /**
+             * If set, overrides the post data in the request. (Encoded as a base64 string when passed over JSON)
+             */
+            postData?: string;
+            /**
+             * If set, overrides the request headers.
+             */
+            headers?: HeaderEntry[];
+        }
+
+        export interface ContinueWithAuthRequest {
+            /**
+             * An id the client received in authRequired event.
+             */
+            requestId: RequestId;
+            /**
+             * Response to  with an authChallenge.
+             */
+            authChallengeResponse: AuthChallengeResponse;
+        }
+
+        export interface GetResponseBodyRequest {
+            /**
+             * Identifier for the intercepted request to get body for.
+             */
+            requestId: RequestId;
+        }
+
+        export interface GetResponseBodyResponse {
+            /**
+             * Response body.
+             */
+            body: string;
+            /**
+             * True, if content was sent as base64.
+             */
+            base64Encoded: boolean;
+        }
+
+        export interface TakeResponseBodyAsStreamRequest {
+            requestId: RequestId;
+        }
+
+        export interface TakeResponseBodyAsStreamResponse {
+            stream: IO.StreamHandle;
+        }
+
+        /**
+         * Issued when the domain is enabled and the request URL matches the
+         * specified filter. The request is paused until the client responds
+         * with one of continueRequest, failRequest or fulfillRequest.
+         * The stage of the request can be determined by presence of responseErrorReason
+         * and responseStatusCode -- the request is at the response stage if either
+         * of these fields is present and in the request stage otherwise.
+         */
+        export interface RequestPausedEvent {
+            /**
+             * Each request the page makes will have a unique id.
+             */
+            requestId: RequestId;
+            /**
+             * The details of the request.
+             */
+            request: Network.Request;
+            /**
+             * The id of the frame that initiated the request.
+             */
+            frameId: Page.FrameId;
+            /**
+             * How the requested resource will be used.
+             */
+            resourceType: Network.ResourceType;
+            /**
+             * Response error if intercepted at response stage.
+             */
+            responseErrorReason?: Network.ErrorReason;
+            /**
+             * Response code if intercepted at response stage.
+             */
+            responseStatusCode?: integer;
+            /**
+             * Response headers if intercepted at the response stage.
+             */
+            responseHeaders?: HeaderEntry[];
+            /**
+             * If the intercepted request had a corresponding Network.requestWillBeSent event fired for it,
+             * then this networkId will be the same as the requestId present in the requestWillBeSent event.
+             */
+            networkId?: RequestId;
+        }
+
+        /**
+         * Issued when the domain is enabled with handleAuthRequests set to true.
+         * The request is paused until client responds with continueWithAuth.
+         */
+        export interface AuthRequiredEvent {
+            /**
+             * Each request the page makes will have a unique id.
+             */
+            requestId: RequestId;
+            /**
+             * The details of the request.
+             */
+            request: Network.Request;
+            /**
+             * The id of the frame that initiated the request.
+             */
+            frameId: Page.FrameId;
+            /**
+             * How the requested resource will be used.
+             */
+            resourceType: Network.ResourceType;
+            /**
+             * Details of the Authorization Challenge encountered.
+             * If this is set, client should respond with continueRequest that
+             * contains AuthChallengeResponse.
+             */
+            authChallenge: AuthChallenge;
+        }
+    }
+
+    /**
+     * This domain allows inspection of Web Audio API.
+     * https://webaudio.github.io/web-audio-api/
+     */
+    export namespace WebAudio {
+
+        /**
+         * An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API
+         */
+        export type GraphObjectId = string;
+
+        /**
+         * Enum of BaseAudioContext types
+         */
+        export type ContextType = ('realtime' | 'offline');
+
+        /**
+         * Enum of AudioContextState from the spec
+         */
+        export type ContextState = ('suspended' | 'running' | 'closed');
+
+        /**
+         * Enum of AudioNode types
+         */
+        export type NodeType = string;
+
+        /**
+         * Enum of AudioNode::ChannelCountMode from the spec
+         */
+        export type ChannelCountMode = ('clamped-max' | 'explicit' | 'max');
+
+        /**
+         * Enum of AudioNode::ChannelInterpretation from the spec
+         */
+        export type ChannelInterpretation = ('discrete' | 'speakers');
+
+        /**
+         * Enum of AudioParam types
+         */
+        export type ParamType = string;
+
+        /**
+         * Enum of AudioParam::AutomationRate from the spec
+         */
+        export type AutomationRate = ('a-rate' | 'k-rate');
+
+        /**
+         * Fields in AudioContext that change in real-time.
+         */
+        export interface ContextRealtimeData {
+            /**
+             * The current context time in second in BaseAudioContext.
+             */
+            currentTime: number;
+            /**
+             * The time spent on rendering graph divided by render quantum duration,
+             * and multiplied by 100. 100 means the audio renderer reached the full
+             * capacity and glitch may occur.
+             */
+            renderCapacity: number;
+            /**
+             * A running mean of callback interval.
+             */
+            callbackIntervalMean: number;
+            /**
+             * A running variance of callback interval.
+             */
+            callbackIntervalVariance: number;
+        }
+
+        /**
+         * Protocol object for BaseAudioContext
+         */
+        export interface BaseAudioContext {
+            contextId: GraphObjectId;
+            contextType: ContextType;
+            contextState: ContextState;
+            realtimeData?: ContextRealtimeData;
+            /**
+             * Platform-dependent callback buffer size.
+             */
+            callbackBufferSize: number;
+            /**
+             * Number of output channels supported by audio hardware in use.
+             */
+            maxOutputChannelCount: number;
+            /**
+             * Context sample rate.
+             */
+            sampleRate: number;
+        }
+
+        /**
+         * Protocol object for AudioListener
+         */
+        export interface AudioListener {
+            listenerId: GraphObjectId;
+            contextId: GraphObjectId;
+        }
+
+        /**
+         * Protocol object for AudioNode
+         */
+        export interface AudioNode {
+            nodeId: GraphObjectId;
+            contextId: GraphObjectId;
+            nodeType: NodeType;
+            numberOfInputs: number;
+            numberOfOutputs: number;
+            channelCount: number;
+            channelCountMode: ChannelCountMode;
+            channelInterpretation: ChannelInterpretation;
+        }
+
+        /**
+         * Protocol object for AudioParam
+         */
+        export interface AudioParam {
+            paramId: GraphObjectId;
+            nodeId: GraphObjectId;
+            contextId: GraphObjectId;
+            paramType: ParamType;
+            rate: AutomationRate;
+            defaultValue: number;
+            minValue: number;
+            maxValue: number;
+        }
+
+        export interface GetRealtimeDataRequest {
+            contextId: GraphObjectId;
+        }
+
+        export interface GetRealtimeDataResponse {
+            realtimeData: ContextRealtimeData;
+        }
+
+        /**
+         * Notifies that a new BaseAudioContext has been created.
+         */
+        export interface ContextCreatedEvent {
+            context: BaseAudioContext;
+        }
+
+        /**
+         * Notifies that an existing BaseAudioContext will be destroyed.
+         */
+        export interface ContextWillBeDestroyedEvent {
+            contextId: GraphObjectId;
+        }
+
+        /**
+         * Notifies that existing BaseAudioContext has changed some properties (id stays the same)..
+         */
+        export interface ContextChangedEvent {
+            context: BaseAudioContext;
+        }
+
+        /**
+         * Notifies that the construction of an AudioListener has finished.
+         */
+        export interface AudioListenerCreatedEvent {
+            listener: AudioListener;
+        }
+
+        /**
+         * Notifies that a new AudioListener has been created.
+         */
+        export interface AudioListenerWillBeDestroyedEvent {
+            contextId: GraphObjectId;
+            listenerId: GraphObjectId;
+        }
+
+        /**
+         * Notifies that a new AudioNode has been created.
+         */
+        export interface AudioNodeCreatedEvent {
+            node: AudioNode;
+        }
+
+        /**
+         * Notifies that an existing AudioNode has been destroyed.
+         */
+        export interface AudioNodeWillBeDestroyedEvent {
+            contextId: GraphObjectId;
+            nodeId: GraphObjectId;
+        }
+
+        /**
+         * Notifies that a new AudioParam has been created.
+         */
+        export interface AudioParamCreatedEvent {
+            param: AudioParam;
+        }
+
+        /**
+         * Notifies that an existing AudioParam has been destroyed.
+         */
+        export interface AudioParamWillBeDestroyedEvent {
+            contextId: GraphObjectId;
+            nodeId: GraphObjectId;
+            paramId: GraphObjectId;
+        }
+
+        /**
+         * Notifies that two AudioNodes are connected.
+         */
+        export interface NodesConnectedEvent {
+            contextId: GraphObjectId;
+            sourceId: GraphObjectId;
+            destinationId: GraphObjectId;
+            sourceOutputIndex?: number;
+            destinationInputIndex?: number;
+        }
+
+        /**
+         * Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected.
+         */
+        export interface NodesDisconnectedEvent {
+            contextId: GraphObjectId;
+            sourceId: GraphObjectId;
+            destinationId: GraphObjectId;
+            sourceOutputIndex?: number;
+            destinationInputIndex?: number;
+        }
+
+        /**
+         * Notifies that an AudioNode is connected to an AudioParam.
+         */
+        export interface NodeParamConnectedEvent {
+            contextId: GraphObjectId;
+            sourceId: GraphObjectId;
+            destinationId: GraphObjectId;
+            sourceOutputIndex?: number;
+        }
+
+        /**
+         * Notifies that an AudioNode is disconnected to an AudioParam.
+         */
+        export interface NodeParamDisconnectedEvent {
+            contextId: GraphObjectId;
+            sourceId: GraphObjectId;
+            destinationId: GraphObjectId;
+            sourceOutputIndex?: number;
+        }
+    }
+
+    /**
+     * This domain allows configuring virtual authenticators to test the WebAuthn
+     * API.
+     */
+    export namespace WebAuthn {
+
+        export type AuthenticatorId = string;
+
+        export type AuthenticatorProtocol = ('u2f' | 'ctap2');
+
+        export type Ctap2Version = ('ctap2_0' | 'ctap2_1');
+
+        export type AuthenticatorTransport = ('usb' | 'nfc' | 'ble' | 'cable' | 'internal');
+
+        export interface VirtualAuthenticatorOptions {
+            protocol: AuthenticatorProtocol;
+            /**
+             * Defaults to ctap2_0. Ignored if |protocol| == u2f.
+             */
+            ctap2Version?: Ctap2Version;
+            transport: AuthenticatorTransport;
+            /**
+             * Defaults to false.
+             */
+            hasResidentKey?: boolean;
+            /**
+             * Defaults to false.
+             */
+            hasUserVerification?: boolean;
+            /**
+             * If set to true, the authenticator will support the largeBlob extension.
+             * https://w3c.github.io/webauthn#largeBlob
+             * Defaults to false.
+             */
+            hasLargeBlob?: boolean;
+            /**
+             * If set to true, the authenticator will support the credBlob extension.
+             * https://fidoalliance.org/specs/fido-v2.1-rd-20201208/fido-client-to-authenticator-protocol-v2.1-rd-20201208.html#sctn-credBlob-extension
+             * Defaults to false.
+             */
+            hasCredBlob?: boolean;
+            /**
+             * If set to true, tests of user presence will succeed immediately.
+             * Otherwise, they will not be resolved. Defaults to true.
+             */
+            automaticPresenceSimulation?: boolean;
+            /**
+             * Sets whether User Verification succeeds or fails for an authenticator.
+             * Defaults to false.
+             */
+            isUserVerified?: boolean;
+        }
+
+        export interface Credential {
+            credentialId: string;
+            isResidentCredential: boolean;
+            /**
+             * Relying Party ID the credential is scoped to. Must be set when adding a
+             * credential.
+             */
+            rpId?: string;
+            /**
+             * The ECDSA P-256 private key in PKCS#8 format. (Encoded as a base64 string when passed over JSON)
+             */
+            privateKey: string;
+            /**
+             * An opaque byte sequence with a maximum size of 64 bytes mapping the
+             * credential to a specific user. (Encoded as a base64 string when passed over JSON)
+             */
+            userHandle?: string;
+            /**
+             * Signature counter. This is incremented by one for each successful
+             * assertion.
+             * See https://w3c.github.io/webauthn/#signature-counter
+             */
+            signCount: integer;
+            /**
+             * The large blob associated with the credential.
+             * See https://w3c.github.io/webauthn/#sctn-large-blob-extension (Encoded as a base64 string when passed over JSON)
+             */
+            largeBlob?: string;
+        }
+
+        export interface AddVirtualAuthenticatorRequest {
+            options: VirtualAuthenticatorOptions;
+        }
+
+        export interface AddVirtualAuthenticatorResponse {
+            authenticatorId: AuthenticatorId;
+        }
+
+        export interface RemoveVirtualAuthenticatorRequest {
+            authenticatorId: AuthenticatorId;
+        }
+
+        export interface AddCredentialRequest {
+            authenticatorId: AuthenticatorId;
+            credential: Credential;
+        }
+
+        export interface GetCredentialRequest {
+            authenticatorId: AuthenticatorId;
+            credentialId: string;
+        }
+
+        export interface GetCredentialResponse {
+            credential: Credential;
+        }
+
+        export interface GetCredentialsRequest {
+            authenticatorId: AuthenticatorId;
+        }
+
+        export interface GetCredentialsResponse {
+            credentials: Credential[];
+        }
+
+        export interface RemoveCredentialRequest {
+            authenticatorId: AuthenticatorId;
+            credentialId: string;
+        }
+
+        export interface ClearCredentialsRequest {
+            authenticatorId: AuthenticatorId;
+        }
+
+        export interface SetUserVerifiedRequest {
+            authenticatorId: AuthenticatorId;
+            isUserVerified: boolean;
+        }
+
+        export interface SetAutomaticPresenceSimulationRequest {
+            authenticatorId: AuthenticatorId;
+            enabled: boolean;
+        }
+    }
+
+    /**
+     * This domain allows detailed inspection of media elements
+     */
+    export namespace Media {
+
+        /**
+         * Players will get an ID that is unique within the agent context.
+         */
+        export type PlayerId = string;
+
+        export type Timestamp = number;
+
+        export const enum PlayerMessageLevel {
+            Error = 'error',
+            Warning = 'warning',
+            Info = 'info',
+            Debug = 'debug',
+        }
+
+        /**
+         * Have one type per entry in MediaLogRecord::Type
+         * Corresponds to kMessage
+         */
+        export interface PlayerMessage {
+            /**
+             * Keep in sync with MediaLogMessageLevel
+             * We are currently keeping the message level 'error' separate from the
+             * PlayerError type because right now they represent different things,
+             * this one being a DVLOG(ERROR) style log message that gets printed
+             * based on what log level is selected in the UI, and the other is a
+             * representation of a media::PipelineStatus object. Soon however we're
+             * going to be moving away from using PipelineStatus for errors and
+             * introducing a new error type which should hopefully let us integrate
+             * the error log level into the PlayerError type. (PlayerMessageLevel enum)
+             */
+            level: ('error' | 'warning' | 'info' | 'debug');
+            message: string;
+        }
+
+        /**
+         * Corresponds to kMediaPropertyChange
+         */
+        export interface PlayerProperty {
+            name: string;
+            value: string;
+        }
+
+        /**
+         * Corresponds to kMediaEventTriggered
+         */
+        export interface PlayerEvent {
+            timestamp: Timestamp;
+            value: string;
+        }
+
+        export const enum PlayerErrorType {
+            Pipeline_error = 'pipeline_error',
+            Media_error = 'media_error',
+        }
+
+        /**
+         * Corresponds to kMediaError
+         */
+        export interface PlayerError {
+            /**
+             *  (PlayerErrorType enum)
+             */
+            type: ('pipeline_error' | 'media_error');
+            /**
+             * When this switches to using media::Status instead of PipelineStatus
+             * we can remove "errorCode" and replace it with the fields from
+             * a Status instance. This also seems like a duplicate of the error
+             * level enum - there is a todo bug to have that level removed and
+             * use this instead. (crbug.com/1068454)
+             */
+            errorCode: string;
+        }
+
+        /**
+         * This can be called multiple times, and can be used to set / override /
+         * remove player properties. A null propValue indicates removal.
+         */
+        export interface PlayerPropertiesChangedEvent {
+            playerId: PlayerId;
+            properties: PlayerProperty[];
+        }
+
+        /**
+         * Send events as a list, allowing them to be batched on the browser for less
+         * congestion. If batched, events must ALWAYS be in chronological order.
+         */
+        export interface PlayerEventsAddedEvent {
+            playerId: PlayerId;
+            events: PlayerEvent[];
+        }
+
+        /**
+         * Send a list of any messages that need to be delivered.
+         */
+        export interface PlayerMessagesLoggedEvent {
+            playerId: PlayerId;
+            messages: PlayerMessage[];
+        }
+
+        /**
+         * Send a list of any errors that need to be delivered.
+         */
+        export interface PlayerErrorsRaisedEvent {
+            playerId: PlayerId;
+            errors: PlayerError[];
+        }
+
+        /**
+         * Called whenever a player is created, or when a new agent joins and receives
+         * a list of active players. If an agent is restored, it will receive the full
+         * list of player ids and all events again.
+         */
+        export interface PlayersCreatedEvent {
+            players: PlayerId[];
+        }
+    }
+}
+
+/**
+ * @public
+ */
+export declare type ProtocolLifeCycleEvent = 'load' | 'DOMContentLoaded' | 'networkIdle' | 'networkAlmostIdle';
+
+/**
+ * Mappings from protocol event and command names to the types required for them.
+ */
+export declare namespace ProtocolMapping {
+    export interface Events {
+        /**
+         * Issued when new console message is added.
+         */
+        'Console.messageAdded': [Protocol.Console.MessageAddedEvent];
+        /**
+         * Fired when breakpoint is resolved to an actual script and location.
+         */
+        'Debugger.breakpointResolved': [Protocol.Debugger.BreakpointResolvedEvent];
+        /**
+         * Fired when the virtual machine stopped on breakpoint or exception or any other stop criteria.
+         */
+        'Debugger.paused': [Protocol.Debugger.PausedEvent];
+        /**
+         * Fired when the virtual machine resumed execution.
+         */
+        'Debugger.resumed': [];
+        /**
+         * Fired when virtual machine fails to parse the script.
+         */
+        'Debugger.scriptFailedToParse': [Protocol.Debugger.ScriptFailedToParseEvent];
+        /**
+         * Fired when virtual machine parses script. This event is also fired for all known and uncollected
+         * scripts upon enabling debugger.
+         */
+        'Debugger.scriptParsed': [Protocol.Debugger.ScriptParsedEvent];
+        'HeapProfiler.addHeapSnapshotChunk': [Protocol.HeapProfiler.AddHeapSnapshotChunkEvent];
+        /**
+         * If heap objects tracking has been started then backend may send update for one or more fragments
+         */
+        'HeapProfiler.heapStatsUpdate': [Protocol.HeapProfiler.HeapStatsUpdateEvent];
+        /**
+         * If heap objects tracking has been started then backend regularly sends a current value for last
+         * seen object id and corresponding timestamp. If the were changes in the heap since last event
+         * then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.
+         */
+        'HeapProfiler.lastSeenObjectId': [Protocol.HeapProfiler.LastSeenObjectIdEvent];
+        'HeapProfiler.reportHeapSnapshotProgress': [Protocol.HeapProfiler.ReportHeapSnapshotProgressEvent];
+        'HeapProfiler.resetProfiles': [];
+        'Profiler.consoleProfileFinished': [Protocol.Profiler.ConsoleProfileFinishedEvent];
+        /**
+         * Sent when new profile recording is started using console.profile() call.
+         */
+        'Profiler.consoleProfileStarted': [Protocol.Profiler.ConsoleProfileStartedEvent];
+        /**
+         * Reports coverage delta since the last poll (either from an event like this, or from
+         * `takePreciseCoverage` for the current isolate. May only be sent if precise code
+         * coverage has been started. This event can be trigged by the embedder to, for example,
+         * trigger collection of coverage data immediatelly at a certain point in time.
+         */
+        'Profiler.preciseCoverageDeltaUpdate': [Protocol.Profiler.PreciseCoverageDeltaUpdateEvent];
+        /**
+         * Notification is issued every time when binding is called.
+         */
+        'Runtime.bindingCalled': [Protocol.Runtime.BindingCalledEvent];
+        /**
+         * Issued when console API was called.
+         */
+        'Runtime.consoleAPICalled': [Protocol.Runtime.ConsoleAPICalledEvent];
+        /**
+         * Issued when unhandled exception was revoked.
+         */
+        'Runtime.exceptionRevoked': [Protocol.Runtime.ExceptionRevokedEvent];
+        /**
+         * Issued when exception was thrown and unhandled.
+         */
+        'Runtime.exceptionThrown': [Protocol.Runtime.ExceptionThrownEvent];
+        /**
+         * Issued when new execution context is created.
+         */
+        'Runtime.executionContextCreated': [Protocol.Runtime.ExecutionContextCreatedEvent];
+        /**
+         * Issued when execution context is destroyed.
+         */
+        'Runtime.executionContextDestroyed': [Protocol.Runtime.ExecutionContextDestroyedEvent];
+        /**
+         * Issued when all executionContexts were cleared in browser
+         */
+        'Runtime.executionContextsCleared': [];
+        /**
+         * Issued when object should be inspected (for example, as a result of inspect() command line API
+         * call).
+         */
+        'Runtime.inspectRequested': [Protocol.Runtime.InspectRequestedEvent];
+        /**
+         * Event for when an animation has been cancelled.
+         */
+        'Animation.animationCanceled': [Protocol.Animation.AnimationCanceledEvent];
+        /**
+         * Event for each animation that has been created.
+         */
+        'Animation.animationCreated': [Protocol.Animation.AnimationCreatedEvent];
+        /**
+         * Event for animation that has been started.
+         */
+        'Animation.animationStarted': [Protocol.Animation.AnimationStartedEvent];
+        'ApplicationCache.applicationCacheStatusUpdated': [Protocol.ApplicationCache.ApplicationCacheStatusUpdatedEvent];
+        'ApplicationCache.networkStateUpdated': [Protocol.ApplicationCache.NetworkStateUpdatedEvent];
+        'Audits.issueAdded': [Protocol.Audits.IssueAddedEvent];
+        /**
+         * Called when the recording state for the service has been updated.
+         */
+        'BackgroundService.recordingStateChanged': [Protocol.BackgroundService.RecordingStateChangedEvent];
+        /**
+         * Called with all existing backgroundServiceEvents when enabled, and all new
+         * events afterwards if enabled and recording.
+         */
+        'BackgroundService.backgroundServiceEventReceived': [Protocol.BackgroundService.BackgroundServiceEventReceivedEvent];
+        /**
+         * Fired when page is about to start a download.
+         */
+        'Browser.downloadWillBegin': [Protocol.Browser.DownloadWillBeginEvent];
+        /**
+         * Fired when download makes progress. Last call has |done| == true.
+         */
+        'Browser.downloadProgress': [Protocol.Browser.DownloadProgressEvent];
+        /**
+         * Fires whenever a web font is updated.  A non-empty font parameter indicates a successfully loaded
+         * web font
+         */
+        'CSS.fontsUpdated': [Protocol.CSS.FontsUpdatedEvent];
+        /**
+         * Fires whenever a MediaQuery result changes (for example, after a browser window has been
+         * resized.) The current implementation considers only viewport-dependent media features.
+         */
+        'CSS.mediaQueryResultChanged': [];
+        /**
+         * Fired whenever an active document stylesheet is added.
+         */
+        'CSS.styleSheetAdded': [Protocol.CSS.StyleSheetAddedEvent];
+        /**
+         * Fired whenever a stylesheet is changed as a result of the client operation.
+         */
+        'CSS.styleSheetChanged': [Protocol.CSS.StyleSheetChangedEvent];
+        /**
+         * Fired whenever an active document stylesheet is removed.
+         */
+        'CSS.styleSheetRemoved': [Protocol.CSS.StyleSheetRemovedEvent];
+        /**
+         * This is fired whenever the list of available sinks changes. A sink is a
+         * device or a software surface that you can cast to.
+         */
+        'Cast.sinksUpdated': [Protocol.Cast.SinksUpdatedEvent];
+        /**
+         * This is fired whenever the outstanding issue/error message changes.
+         * |issueMessage| is empty if there is no issue.
+         */
+        'Cast.issueUpdated': [Protocol.Cast.IssueUpdatedEvent];
+        /**
+         * Fired when `Element`'s attribute is modified.
+         */
+        'DOM.attributeModified': [Protocol.DOM.AttributeModifiedEvent];
+        /**
+         * Fired when `Element`'s attribute is removed.
+         */
+        'DOM.attributeRemoved': [Protocol.DOM.AttributeRemovedEvent];
+        /**
+         * Mirrors `DOMCharacterDataModified` event.
+         */
+        'DOM.characterDataModified': [Protocol.DOM.CharacterDataModifiedEvent];
+        /**
+         * Fired when `Container`'s child node count has changed.
+         */
+        'DOM.childNodeCountUpdated': [Protocol.DOM.ChildNodeCountUpdatedEvent];
+        /**
+         * Mirrors `DOMNodeInserted` event.
+         */
+        'DOM.childNodeInserted': [Protocol.DOM.ChildNodeInsertedEvent];
+        /**
+         * Mirrors `DOMNodeRemoved` event.
+         */
+        'DOM.childNodeRemoved': [Protocol.DOM.ChildNodeRemovedEvent];
+        /**
+         * Called when distribution is changed.
+         */
+        'DOM.distributedNodesUpdated': [Protocol.DOM.DistributedNodesUpdatedEvent];
+        /**
+         * Fired when `Document` has been totally updated. Node ids are no longer valid.
+         */
+        'DOM.documentUpdated': [];
+        /**
+         * Fired when `Element`'s inline style is modified via a CSS property modification.
+         */
+        'DOM.inlineStyleInvalidated': [Protocol.DOM.InlineStyleInvalidatedEvent];
+        /**
+         * Called when a pseudo element is added to an element.
+         */
+        'DOM.pseudoElementAdded': [Protocol.DOM.PseudoElementAddedEvent];
+        /**
+         * Called when a pseudo element is removed from an element.
+         */
+        'DOM.pseudoElementRemoved': [Protocol.DOM.PseudoElementRemovedEvent];
+        /**
+         * Fired when backend wants to provide client with the missing DOM structure. This happens upon
+         * most of the calls requesting node ids.
+         */
+        'DOM.setChildNodes': [Protocol.DOM.SetChildNodesEvent];
+        /**
+         * Called when shadow root is popped from the element.
+         */
+        'DOM.shadowRootPopped': [Protocol.DOM.ShadowRootPoppedEvent];
+        /**
+         * Called when shadow root is pushed into the element.
+         */
+        'DOM.shadowRootPushed': [Protocol.DOM.ShadowRootPushedEvent];
+        'DOMStorage.domStorageItemAdded': [Protocol.DOMStorage.DomStorageItemAddedEvent];
+        'DOMStorage.domStorageItemRemoved': [Protocol.DOMStorage.DomStorageItemRemovedEvent];
+        'DOMStorage.domStorageItemUpdated': [Protocol.DOMStorage.DomStorageItemUpdatedEvent];
+        'DOMStorage.domStorageItemsCleared': [Protocol.DOMStorage.DomStorageItemsClearedEvent];
+        'Database.addDatabase': [Protocol.Database.AddDatabaseEvent];
+        /**
+         * Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.
+         */
+        'Emulation.virtualTimeBudgetExpired': [];
+        /**
+         * Issued when the target starts or stops needing BeginFrames.
+         * Deprecated. Issue beginFrame unconditionally instead and use result from
+         * beginFrame to detect whether the frames were suppressed.
+         */
+        'HeadlessExperimental.needsBeginFramesChanged': [Protocol.HeadlessExperimental.NeedsBeginFramesChangedEvent];
+        /**
+         * Emitted only when `Input.setInterceptDrags` is enabled. Use this data with `Input.dispatchDragEvent` to
+         * restore normal drag and drop behavior.
+         */
+        'Input.dragIntercepted': [Protocol.Input.DragInterceptedEvent];
+        /**
+         * Fired when remote debugging connection is about to be terminated. Contains detach reason.
+         */
+        'Inspector.detached': [Protocol.Inspector.DetachedEvent];
+        /**
+         * Fired when debugging target has crashed
+         */
+        'Inspector.targetCrashed': [];
+        /**
+         * Fired when debugging target has reloaded after crash
+         */
+        'Inspector.targetReloadedAfterCrash': [];
+        'LayerTree.layerPainted': [Protocol.LayerTree.LayerPaintedEvent];
+        'LayerTree.layerTreeDidChange': [Protocol.LayerTree.LayerTreeDidChangeEvent];
+        /**
+         * Issued when new message was logged.
+         */
+        'Log.entryAdded': [Protocol.Log.EntryAddedEvent];
+        /**
+         * Fired when data chunk was received over the network.
+         */
+        'Network.dataReceived': [Protocol.Network.DataReceivedEvent];
+        /**
+         * Fired when EventSource message is received.
+         */
+        'Network.eventSourceMessageReceived': [Protocol.Network.EventSourceMessageReceivedEvent];
+        /**
+         * Fired when HTTP request has failed to load.
+         */
+        'Network.loadingFailed': [Protocol.Network.LoadingFailedEvent];
+        /**
+         * Fired when HTTP request has finished loading.
+         */
+        'Network.loadingFinished': [Protocol.Network.LoadingFinishedEvent];
+        /**
+         * Details of an intercepted HTTP request, which must be either allowed, blocked, modified or
+         * mocked.
+         * Deprecated, use Fetch.requestPaused instead.
+         */
+        'Network.requestIntercepted': [Protocol.Network.RequestInterceptedEvent];
+        /**
+         * Fired if request ended up loading from cache.
+         */
+        'Network.requestServedFromCache': [Protocol.Network.RequestServedFromCacheEvent];
+        /**
+         * Fired when page is about to send HTTP request.
+         */
+        'Network.requestWillBeSent': [Protocol.Network.RequestWillBeSentEvent];
+        /**
+         * Fired when resource loading priority is changed
+         */
+        'Network.resourceChangedPriority': [Protocol.Network.ResourceChangedPriorityEvent];
+        /**
+         * Fired when a signed exchange was received over the network
+         */
+        'Network.signedExchangeReceived': [Protocol.Network.SignedExchangeReceivedEvent];
+        /**
+         * Fired when HTTP response is available.
+         */
+        'Network.responseReceived': [Protocol.Network.ResponseReceivedEvent];
+        /**
+         * Fired when WebSocket is closed.
+         */
+        'Network.webSocketClosed': [Protocol.Network.WebSocketClosedEvent];
+        /**
+         * Fired upon WebSocket creation.
+         */
+        'Network.webSocketCreated': [Protocol.Network.WebSocketCreatedEvent];
+        /**
+         * Fired when WebSocket message error occurs.
+         */
+        'Network.webSocketFrameError': [Protocol.Network.WebSocketFrameErrorEvent];
+        /**
+         * Fired when WebSocket message is received.
+         */
+        'Network.webSocketFrameReceived': [Protocol.Network.WebSocketFrameReceivedEvent];
+        /**
+         * Fired when WebSocket message is sent.
+         */
+        'Network.webSocketFrameSent': [Protocol.Network.WebSocketFrameSentEvent];
+        /**
+         * Fired when WebSocket handshake response becomes available.
+         */
+        'Network.webSocketHandshakeResponseReceived': [Protocol.Network.WebSocketHandshakeResponseReceivedEvent];
+        /**
+         * Fired when WebSocket is about to initiate handshake.
+         */
+        'Network.webSocketWillSendHandshakeRequest': [Protocol.Network.WebSocketWillSendHandshakeRequestEvent];
+        /**
+         * Fired upon WebTransport creation.
+         */
+        'Network.webTransportCreated': [Protocol.Network.WebTransportCreatedEvent];
+        /**
+         * Fired when WebTransport handshake is finished.
+         */
+        'Network.webTransportConnectionEstablished': [Protocol.Network.WebTransportConnectionEstablishedEvent];
+        /**
+         * Fired when WebTransport is disposed.
+         */
+        'Network.webTransportClosed': [Protocol.Network.WebTransportClosedEvent];
+        /**
+         * Fired when additional information about a requestWillBeSent event is available from the
+         * network stack. Not every requestWillBeSent event will have an additional
+         * requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent
+         * or requestWillBeSentExtraInfo will be fired first for the same request.
+         */
+        'Network.requestWillBeSentExtraInfo': [Protocol.Network.RequestWillBeSentExtraInfoEvent];
+        /**
+         * Fired when additional information about a responseReceived event is available from the network
+         * stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for
+         * it, and responseReceivedExtraInfo may be fired before or after responseReceived.
+         */
+        'Network.responseReceivedExtraInfo': [Protocol.Network.ResponseReceivedExtraInfoEvent];
+        /**
+         * Fired exactly once for each Trust Token operation. Depending on
+         * the type of the operation and whether the operation succeeded or
+         * failed, the event is fired before the corresponding request was sent
+         * or after the response was received.
+         */
+        'Network.trustTokenOperationDone': [Protocol.Network.TrustTokenOperationDoneEvent];
+        /**
+         * Fired when the node should be inspected. This happens after call to `setInspectMode` or when
+         * user manually inspects an element.
+         */
+        'Overlay.inspectNodeRequested': [Protocol.Overlay.InspectNodeRequestedEvent];
+        /**
+         * Fired when the node should be highlighted. This happens after call to `setInspectMode`.
+         */
+        'Overlay.nodeHighlightRequested': [Protocol.Overlay.NodeHighlightRequestedEvent];
+        /**
+         * Fired when user asks to capture screenshot of some area on the page.
+         */
+        'Overlay.screenshotRequested': [Protocol.Overlay.ScreenshotRequestedEvent];
+        /**
+         * Fired when user cancels the inspect mode.
+         */
+        'Overlay.inspectModeCanceled': [];
+        'Page.domContentEventFired': [Protocol.Page.DomContentEventFiredEvent];
+        /**
+         * Emitted only when `page.interceptFileChooser` is enabled.
+         */
+        'Page.fileChooserOpened': [Protocol.Page.FileChooserOpenedEvent];
+        /**
+         * Fired when frame has been attached to its parent.
+         */
+        'Page.frameAttached': [Protocol.Page.FrameAttachedEvent];
+        /**
+         * Fired when frame no longer has a scheduled navigation.
+         */
+        'Page.frameClearedScheduledNavigation': [Protocol.Page.FrameClearedScheduledNavigationEvent];
+        /**
+         * Fired when frame has been detached from its parent.
+         */
+        'Page.frameDetached': [Protocol.Page.FrameDetachedEvent];
+        /**
+         * Fired once navigation of the frame has completed. Frame is now associated with the new loader.
+         */
+        'Page.frameNavigated': [Protocol.Page.FrameNavigatedEvent];
+        /**
+         * Fired when opening document to write to.
+         */
+        'Page.documentOpened': [Protocol.Page.DocumentOpenedEvent];
+        'Page.frameResized': [];
+        /**
+         * Fired when a renderer-initiated navigation is requested.
+         * Navigation may still be cancelled after the event is issued.
+         */
+        'Page.frameRequestedNavigation': [Protocol.Page.FrameRequestedNavigationEvent];
+        /**
+         * Fired when frame schedules a potential navigation.
+         */
+        'Page.frameScheduledNavigation': [Protocol.Page.FrameScheduledNavigationEvent];
+        /**
+         * Fired when frame has started loading.
+         */
+        'Page.frameStartedLoading': [Protocol.Page.FrameStartedLoadingEvent];
+        /**
+         * Fired when frame has stopped loading.
+         */
+        'Page.frameStoppedLoading': [Protocol.Page.FrameStoppedLoadingEvent];
+        /**
+         * Fired when page is about to start a download.
+         * Deprecated. Use Browser.downloadWillBegin instead.
+         */
+        'Page.downloadWillBegin': [Protocol.Page.DownloadWillBeginEvent];
+        /**
+         * Fired when download makes progress. Last call has |done| == true.
+         * Deprecated. Use Browser.downloadProgress instead.
+         */
+        'Page.downloadProgress': [Protocol.Page.DownloadProgressEvent];
+        /**
+         * Fired when interstitial page was hidden
+         */
+        'Page.interstitialHidden': [];
+        /**
+         * Fired when interstitial page was shown
+         */
+        'Page.interstitialShown': [];
+        /**
+         * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been
+         * closed.
+         */
+        'Page.javascriptDialogClosed': [Protocol.Page.JavascriptDialogClosedEvent];
+        /**
+         * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to
+         * open.
+         */
+        'Page.javascriptDialogOpening': [Protocol.Page.JavascriptDialogOpeningEvent];
+        /**
+         * Fired for top level page lifecycle events such as navigation, load, paint, etc.
+         */
+        'Page.lifecycleEvent': [Protocol.Page.LifecycleEventEvent];
+        /**
+         * Fired for failed bfcache history navigations if BackForwardCache feature is enabled. Do
+         * not assume any ordering with the Page.frameNavigated event. This event is fired only for
+         * main-frame history navigation where the document changes (non-same-document navigations),
+         * when bfcache navigation fails.
+         */
+        'Page.backForwardCacheNotUsed': [Protocol.Page.BackForwardCacheNotUsedEvent];
+        'Page.loadEventFired': [Protocol.Page.LoadEventFiredEvent];
+        /**
+         * Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation.
+         */
+        'Page.navigatedWithinDocument': [Protocol.Page.NavigatedWithinDocumentEvent];
+        /**
+         * Compressed image data requested by the `startScreencast`.
+         */
+        'Page.screencastFrame': [Protocol.Page.ScreencastFrameEvent];
+        /**
+         * Fired when the page with currently enabled screencast was shown or hidden `.
+         */
+        'Page.screencastVisibilityChanged': [Protocol.Page.ScreencastVisibilityChangedEvent];
+        /**
+         * Fired when a new window is going to be opened, via window.open(), link click, form submission,
+         * etc.
+         */
+        'Page.windowOpen': [Protocol.Page.WindowOpenEvent];
+        /**
+         * Issued for every compilation cache generated. Is only available
+         * if Page.setGenerateCompilationCache is enabled.
+         */
+        'Page.compilationCacheProduced': [Protocol.Page.CompilationCacheProducedEvent];
+        /**
+         * Current values of the metrics.
+         */
+        'Performance.metrics': [Protocol.Performance.MetricsEvent];
+        /**
+         * Sent when a performance timeline event is added. See reportPerformanceTimeline method.
+         */
+        'PerformanceTimeline.timelineEventAdded': [Protocol.PerformanceTimeline.TimelineEventAddedEvent];
+        /**
+         * There is a certificate error. If overriding certificate errors is enabled, then it should be
+         * handled with the `handleCertificateError` command. Note: this event does not fire if the
+         * certificate error has been allowed internally. Only one client per target should override
+         * certificate errors at the same time.
+         */
+        'Security.certificateError': [Protocol.Security.CertificateErrorEvent];
+        /**
+         * The security state of the page changed.
+         */
+        'Security.visibleSecurityStateChanged': [Protocol.Security.VisibleSecurityStateChangedEvent];
+        /**
+         * The security state of the page changed.
+         */
+        'Security.securityStateChanged': [Protocol.Security.SecurityStateChangedEvent];
+        'ServiceWorker.workerErrorReported': [Protocol.ServiceWorker.WorkerErrorReportedEvent];
+        'ServiceWorker.workerRegistrationUpdated': [Protocol.ServiceWorker.WorkerRegistrationUpdatedEvent];
+        'ServiceWorker.workerVersionUpdated': [Protocol.ServiceWorker.WorkerVersionUpdatedEvent];
+        /**
+         * A cache's contents have been modified.
+         */
+        'Storage.cacheStorageContentUpdated': [Protocol.Storage.CacheStorageContentUpdatedEvent];
+        /**
+         * A cache has been added/deleted.
+         */
+        'Storage.cacheStorageListUpdated': [Protocol.Storage.CacheStorageListUpdatedEvent];
+        /**
+         * The origin's IndexedDB object store has been modified.
+         */
+        'Storage.indexedDBContentUpdated': [Protocol.Storage.IndexedDBContentUpdatedEvent];
+        /**
+         * The origin's IndexedDB database list has been modified.
+         */
+        'Storage.indexedDBListUpdated': [Protocol.Storage.IndexedDBListUpdatedEvent];
+        /**
+         * Issued when attached to target because of auto-attach or `attachToTarget` command.
+         */
+        'Target.attachedToTarget': [Protocol.Target.AttachedToTargetEvent];
+        /**
+         * Issued when detached from target for any reason (including `detachFromTarget` command). Can be
+         * issued multiple times per target if multiple sessions have been attached to it.
+         */
+        'Target.detachedFromTarget': [Protocol.Target.DetachedFromTargetEvent];
+        /**
+         * Notifies about a new protocol message received from the session (as reported in
+         * `attachedToTarget` event).
+         */
+        'Target.receivedMessageFromTarget': [Protocol.Target.ReceivedMessageFromTargetEvent];
+        /**
+         * Issued when a possible inspection target is created.
+         */
+        'Target.targetCreated': [Protocol.Target.TargetCreatedEvent];
+        /**
+         * Issued when a target is destroyed.
+         */
+        'Target.targetDestroyed': [Protocol.Target.TargetDestroyedEvent];
+        /**
+         * Issued when a target has crashed.
+         */
+        'Target.targetCrashed': [Protocol.Target.TargetCrashedEvent];
+        /**
+         * Issued when some information about a target has changed. This only happens between
+         * `targetCreated` and `targetDestroyed`.
+         */
+        'Target.targetInfoChanged': [Protocol.Target.TargetInfoChangedEvent];
+        /**
+         * Informs that port was successfully bound and got a specified connection id.
+         */
+        'Tethering.accepted': [Protocol.Tethering.AcceptedEvent];
+        'Tracing.bufferUsage': [Protocol.Tracing.BufferUsageEvent];
+        /**
+         * Contains an bucket of collected trace events. When tracing is stopped collected events will be
+         * send as a sequence of dataCollected events followed by tracingComplete event.
+         */
+        'Tracing.dataCollected': [Protocol.Tracing.DataCollectedEvent];
+        /**
+         * Signals that tracing is stopped and there is no trace buffers pending flush, all data were
+         * delivered via dataCollected events.
+         */
+        'Tracing.tracingComplete': [Protocol.Tracing.TracingCompleteEvent];
+        /**
+         * Issued when the domain is enabled and the request URL matches the
+         * specified filter. The request is paused until the client responds
+         * with one of continueRequest, failRequest or fulfillRequest.
+         * The stage of the request can be determined by presence of responseErrorReason
+         * and responseStatusCode -- the request is at the response stage if either
+         * of these fields is present and in the request stage otherwise.
+         */
+        'Fetch.requestPaused': [Protocol.Fetch.RequestPausedEvent];
+        /**
+         * Issued when the domain is enabled with handleAuthRequests set to true.
+         * The request is paused until client responds with continueWithAuth.
+         */
+        'Fetch.authRequired': [Protocol.Fetch.AuthRequiredEvent];
+        /**
+         * Notifies that a new BaseAudioContext has been created.
+         */
+        'WebAudio.contextCreated': [Protocol.WebAudio.ContextCreatedEvent];
+        /**
+         * Notifies that an existing BaseAudioContext will be destroyed.
+         */
+        'WebAudio.contextWillBeDestroyed': [Protocol.WebAudio.ContextWillBeDestroyedEvent];
+        /**
+         * Notifies that existing BaseAudioContext has changed some properties (id stays the same)..
+         */
+        'WebAudio.contextChanged': [Protocol.WebAudio.ContextChangedEvent];
+        /**
+         * Notifies that the construction of an AudioListener has finished.
+         */
+        'WebAudio.audioListenerCreated': [Protocol.WebAudio.AudioListenerCreatedEvent];
+        /**
+         * Notifies that a new AudioListener has been created.
+         */
+        'WebAudio.audioListenerWillBeDestroyed': [Protocol.WebAudio.AudioListenerWillBeDestroyedEvent];
+        /**
+         * Notifies that a new AudioNode has been created.
+         */
+        'WebAudio.audioNodeCreated': [Protocol.WebAudio.AudioNodeCreatedEvent];
+        /**
+         * Notifies that an existing AudioNode has been destroyed.
+         */
+        'WebAudio.audioNodeWillBeDestroyed': [Protocol.WebAudio.AudioNodeWillBeDestroyedEvent];
+        /**
+         * Notifies that a new AudioParam has been created.
+         */
+        'WebAudio.audioParamCreated': [Protocol.WebAudio.AudioParamCreatedEvent];
+        /**
+         * Notifies that an existing AudioParam has been destroyed.
+         */
+        'WebAudio.audioParamWillBeDestroyed': [Protocol.WebAudio.AudioParamWillBeDestroyedEvent];
+        /**
+         * Notifies that two AudioNodes are connected.
+         */
+        'WebAudio.nodesConnected': [Protocol.WebAudio.NodesConnectedEvent];
+        /**
+         * Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected.
+         */
+        'WebAudio.nodesDisconnected': [Protocol.WebAudio.NodesDisconnectedEvent];
+        /**
+         * Notifies that an AudioNode is connected to an AudioParam.
+         */
+        'WebAudio.nodeParamConnected': [Protocol.WebAudio.NodeParamConnectedEvent];
+        /**
+         * Notifies that an AudioNode is disconnected to an AudioParam.
+         */
+        'WebAudio.nodeParamDisconnected': [Protocol.WebAudio.NodeParamDisconnectedEvent];
+        /**
+         * This can be called multiple times, and can be used to set / override /
+         * remove player properties. A null propValue indicates removal.
+         */
+        'Media.playerPropertiesChanged': [Protocol.Media.PlayerPropertiesChangedEvent];
+        /**
+         * Send events as a list, allowing them to be batched on the browser for less
+         * congestion. If batched, events must ALWAYS be in chronological order.
+         */
+        'Media.playerEventsAdded': [Protocol.Media.PlayerEventsAddedEvent];
+        /**
+         * Send a list of any messages that need to be delivered.
+         */
+        'Media.playerMessagesLogged': [Protocol.Media.PlayerMessagesLoggedEvent];
+        /**
+         * Send a list of any errors that need to be delivered.
+         */
+        'Media.playerErrorsRaised': [Protocol.Media.PlayerErrorsRaisedEvent];
+        /**
+         * Called whenever a player is created, or when a new agent joins and receives
+         * a list of active players. If an agent is restored, it will receive the full
+         * list of player ids and all events again.
+         */
+        'Media.playersCreated': [Protocol.Media.PlayersCreatedEvent];
+    }
+
+    export interface Commands {
+        /**
+         * Does nothing.
+         */
+        'Console.clearMessages': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disables console domain, prevents further console messages from being reported to the client.
+         */
+        'Console.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables console domain, sends the messages collected so far to the client by means of the
+         * `messageAdded` notification.
+         */
+        'Console.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Continues execution until specific location is reached.
+         */
+        'Debugger.continueToLocation': {
+            paramsType: [Protocol.Debugger.ContinueToLocationRequest];
+            returnType: void;
+        };
+        /**
+         * Disables debugger for given page.
+         */
+        'Debugger.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables debugger for the given page. Clients should not assume that the debugging has been
+         * enabled until the result for this command is received.
+         */
+        'Debugger.enable': {
+            paramsType: [Protocol.Debugger.EnableRequest?];
+            returnType: Protocol.Debugger.EnableResponse;
+        };
+        /**
+         * Evaluates expression on a given call frame.
+         */
+        'Debugger.evaluateOnCallFrame': {
+            paramsType: [Protocol.Debugger.EvaluateOnCallFrameRequest];
+            returnType: Protocol.Debugger.EvaluateOnCallFrameResponse;
+        };
+        /**
+         * Returns possible locations for breakpoint. scriptId in start and end range locations should be
+         * the same.
+         */
+        'Debugger.getPossibleBreakpoints': {
+            paramsType: [Protocol.Debugger.GetPossibleBreakpointsRequest];
+            returnType: Protocol.Debugger.GetPossibleBreakpointsResponse;
+        };
+        /**
+         * Returns source for the script with given id.
+         */
+        'Debugger.getScriptSource': {
+            paramsType: [Protocol.Debugger.GetScriptSourceRequest];
+            returnType: Protocol.Debugger.GetScriptSourceResponse;
+        };
+        /**
+         * This command is deprecated. Use getScriptSource instead.
+         */
+        'Debugger.getWasmBytecode': {
+            paramsType: [Protocol.Debugger.GetWasmBytecodeRequest];
+            returnType: Protocol.Debugger.GetWasmBytecodeResponse;
+        };
+        /**
+         * Returns stack trace with given `stackTraceId`.
+         */
+        'Debugger.getStackTrace': {
+            paramsType: [Protocol.Debugger.GetStackTraceRequest];
+            returnType: Protocol.Debugger.GetStackTraceResponse;
+        };
+        /**
+         * Stops on the next JavaScript statement.
+         */
+        'Debugger.pause': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Debugger.pauseOnAsyncCall': {
+            paramsType: [Protocol.Debugger.PauseOnAsyncCallRequest];
+            returnType: void;
+        };
+        /**
+         * Removes JavaScript breakpoint.
+         */
+        'Debugger.removeBreakpoint': {
+            paramsType: [Protocol.Debugger.RemoveBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Restarts particular call frame from the beginning.
+         */
+        'Debugger.restartFrame': {
+            paramsType: [Protocol.Debugger.RestartFrameRequest];
+            returnType: Protocol.Debugger.RestartFrameResponse;
+        };
+        /**
+         * Resumes JavaScript execution.
+         */
+        'Debugger.resume': {
+            paramsType: [Protocol.Debugger.ResumeRequest?];
+            returnType: void;
+        };
+        /**
+         * Searches for given string in script content.
+         */
+        'Debugger.searchInContent': {
+            paramsType: [Protocol.Debugger.SearchInContentRequest];
+            returnType: Protocol.Debugger.SearchInContentResponse;
+        };
+        /**
+         * Enables or disables async call stacks tracking.
+         */
+        'Debugger.setAsyncCallStackDepth': {
+            paramsType: [Protocol.Debugger.SetAsyncCallStackDepthRequest];
+            returnType: void;
+        };
+        /**
+         * Replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in
+         * scripts with url matching one of the patterns. VM will try to leave blackboxed script by
+         * performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
+         */
+        'Debugger.setBlackboxPatterns': {
+            paramsType: [Protocol.Debugger.SetBlackboxPatternsRequest];
+            returnType: void;
+        };
+        /**
+         * Makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted
+         * scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
+         * Positions array contains positions where blackbox state is changed. First interval isn't
+         * blackboxed. Array should be sorted.
+         */
+        'Debugger.setBlackboxedRanges': {
+            paramsType: [Protocol.Debugger.SetBlackboxedRangesRequest];
+            returnType: void;
+        };
+        /**
+         * Sets JavaScript breakpoint at a given location.
+         */
+        'Debugger.setBreakpoint': {
+            paramsType: [Protocol.Debugger.SetBreakpointRequest];
+            returnType: Protocol.Debugger.SetBreakpointResponse;
+        };
+        /**
+         * Sets instrumentation breakpoint.
+         */
+        'Debugger.setInstrumentationBreakpoint': {
+            paramsType: [Protocol.Debugger.SetInstrumentationBreakpointRequest];
+            returnType: Protocol.Debugger.SetInstrumentationBreakpointResponse;
+        };
+        /**
+         * Sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this
+         * command is issued, all existing parsed scripts will have breakpoints resolved and returned in
+         * `locations` property. Further matching script parsing will result in subsequent
+         * `breakpointResolved` events issued. This logical breakpoint will survive page reloads.
+         */
+        'Debugger.setBreakpointByUrl': {
+            paramsType: [Protocol.Debugger.SetBreakpointByUrlRequest];
+            returnType: Protocol.Debugger.SetBreakpointByUrlResponse;
+        };
+        /**
+         * Sets JavaScript breakpoint before each call to the given function.
+         * If another function was created from the same source as a given one,
+         * calling it will also trigger the breakpoint.
+         */
+        'Debugger.setBreakpointOnFunctionCall': {
+            paramsType: [Protocol.Debugger.SetBreakpointOnFunctionCallRequest];
+            returnType: Protocol.Debugger.SetBreakpointOnFunctionCallResponse;
+        };
+        /**
+         * Activates / deactivates all breakpoints on the page.
+         */
+        'Debugger.setBreakpointsActive': {
+            paramsType: [Protocol.Debugger.SetBreakpointsActiveRequest];
+            returnType: void;
+        };
+        /**
+         * Defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or
+         * no exceptions. Initial pause on exceptions state is `none`.
+         */
+        'Debugger.setPauseOnExceptions': {
+            paramsType: [Protocol.Debugger.SetPauseOnExceptionsRequest];
+            returnType: void;
+        };
+        /**
+         * Changes return value in top frame. Available only at return break position.
+         */
+        'Debugger.setReturnValue': {
+            paramsType: [Protocol.Debugger.SetReturnValueRequest];
+            returnType: void;
+        };
+        /**
+         * Edits JavaScript source live.
+         */
+        'Debugger.setScriptSource': {
+            paramsType: [Protocol.Debugger.SetScriptSourceRequest];
+            returnType: Protocol.Debugger.SetScriptSourceResponse;
+        };
+        /**
+         * Makes page not interrupt on any pauses (breakpoint, exception, dom exception etc).
+         */
+        'Debugger.setSkipAllPauses': {
+            paramsType: [Protocol.Debugger.SetSkipAllPausesRequest];
+            returnType: void;
+        };
+        /**
+         * Changes value of variable in a callframe. Object-based scopes are not supported and must be
+         * mutated manually.
+         */
+        'Debugger.setVariableValue': {
+            paramsType: [Protocol.Debugger.SetVariableValueRequest];
+            returnType: void;
+        };
+        /**
+         * Steps into the function call.
+         */
+        'Debugger.stepInto': {
+            paramsType: [Protocol.Debugger.StepIntoRequest?];
+            returnType: void;
+        };
+        /**
+         * Steps out of the function call.
+         */
+        'Debugger.stepOut': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Steps over the statement.
+         */
+        'Debugger.stepOver': {
+            paramsType: [Protocol.Debugger.StepOverRequest?];
+            returnType: void;
+        };
+        /**
+         * Enables console to refer to the node with given id via $x (see Command Line API for more details
+         * $x functions).
+         */
+        'HeapProfiler.addInspectedHeapObject': {
+            paramsType: [Protocol.HeapProfiler.AddInspectedHeapObjectRequest];
+            returnType: void;
+        };
+        'HeapProfiler.collectGarbage': {
+            paramsType: [];
+            returnType: void;
+        };
+        'HeapProfiler.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'HeapProfiler.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'HeapProfiler.getHeapObjectId': {
+            paramsType: [Protocol.HeapProfiler.GetHeapObjectIdRequest];
+            returnType: Protocol.HeapProfiler.GetHeapObjectIdResponse;
+        };
+        'HeapProfiler.getObjectByHeapObjectId': {
+            paramsType: [Protocol.HeapProfiler.GetObjectByHeapObjectIdRequest];
+            returnType: Protocol.HeapProfiler.GetObjectByHeapObjectIdResponse;
+        };
+        'HeapProfiler.getSamplingProfile': {
+            paramsType: [];
+            returnType: Protocol.HeapProfiler.GetSamplingProfileResponse;
+        };
+        'HeapProfiler.startSampling': {
+            paramsType: [Protocol.HeapProfiler.StartSamplingRequest?];
+            returnType: void;
+        };
+        'HeapProfiler.startTrackingHeapObjects': {
+            paramsType: [Protocol.HeapProfiler.StartTrackingHeapObjectsRequest?];
+            returnType: void;
+        };
+        'HeapProfiler.stopSampling': {
+            paramsType: [];
+            returnType: Protocol.HeapProfiler.StopSamplingResponse;
+        };
+        'HeapProfiler.stopTrackingHeapObjects': {
+            paramsType: [Protocol.HeapProfiler.StopTrackingHeapObjectsRequest?];
+            returnType: void;
+        };
+        'HeapProfiler.takeHeapSnapshot': {
+            paramsType: [Protocol.HeapProfiler.TakeHeapSnapshotRequest?];
+            returnType: void;
+        };
+        'Profiler.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Profiler.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Collect coverage data for the current isolate. The coverage data may be incomplete due to
+         * garbage collection.
+         */
+        'Profiler.getBestEffortCoverage': {
+            paramsType: [];
+            returnType: Protocol.Profiler.GetBestEffortCoverageResponse;
+        };
+        /**
+         * Changes CPU profiler sampling interval. Must be called before CPU profiles recording started.
+         */
+        'Profiler.setSamplingInterval': {
+            paramsType: [Protocol.Profiler.SetSamplingIntervalRequest];
+            returnType: void;
+        };
+        'Profiler.start': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code
+         * coverage may be incomplete. Enabling prevents running optimized code and resets execution
+         * counters.
+         */
+        'Profiler.startPreciseCoverage': {
+            paramsType: [Protocol.Profiler.StartPreciseCoverageRequest?];
+            returnType: Protocol.Profiler.StartPreciseCoverageResponse;
+        };
+        /**
+         * Enable type profile.
+         */
+        'Profiler.startTypeProfile': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Profiler.stop': {
+            paramsType: [];
+            returnType: Protocol.Profiler.StopResponse;
+        };
+        /**
+         * Disable precise code coverage. Disabling releases unnecessary execution count records and allows
+         * executing optimized code.
+         */
+        'Profiler.stopPreciseCoverage': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable type profile. Disabling releases type profile data collected so far.
+         */
+        'Profiler.stopTypeProfile': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Collect coverage data for the current isolate, and resets execution counters. Precise code
+         * coverage needs to have started.
+         */
+        'Profiler.takePreciseCoverage': {
+            paramsType: [];
+            returnType: Protocol.Profiler.TakePreciseCoverageResponse;
+        };
+        /**
+         * Collect type profile.
+         */
+        'Profiler.takeTypeProfile': {
+            paramsType: [];
+            returnType: Protocol.Profiler.TakeTypeProfileResponse;
+        };
+        /**
+         * Enable counters collection.
+         */
+        'Profiler.enableCounters': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable counters collection.
+         */
+        'Profiler.disableCounters': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Retrieve counters.
+         */
+        'Profiler.getCounters': {
+            paramsType: [];
+            returnType: Protocol.Profiler.GetCountersResponse;
+        };
+        /**
+         * Enable run time call stats collection.
+         */
+        'Profiler.enableRuntimeCallStats': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable run time call stats collection.
+         */
+        'Profiler.disableRuntimeCallStats': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Retrieve run time call stats.
+         */
+        'Profiler.getRuntimeCallStats': {
+            paramsType: [];
+            returnType: Protocol.Profiler.GetRuntimeCallStatsResponse;
+        };
+        /**
+         * Add handler to promise with given promise object id.
+         */
+        'Runtime.awaitPromise': {
+            paramsType: [Protocol.Runtime.AwaitPromiseRequest];
+            returnType: Protocol.Runtime.AwaitPromiseResponse;
+        };
+        /**
+         * Calls function with given declaration on the given object. Object group of the result is
+         * inherited from the target object.
+         */
+        'Runtime.callFunctionOn': {
+            paramsType: [Protocol.Runtime.CallFunctionOnRequest];
+            returnType: Protocol.Runtime.CallFunctionOnResponse;
+        };
+        /**
+         * Compiles expression.
+         */
+        'Runtime.compileScript': {
+            paramsType: [Protocol.Runtime.CompileScriptRequest];
+            returnType: Protocol.Runtime.CompileScriptResponse;
+        };
+        /**
+         * Disables reporting of execution contexts creation.
+         */
+        'Runtime.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Discards collected exceptions and console API calls.
+         */
+        'Runtime.discardConsoleEntries': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables reporting of execution contexts creation by means of `executionContextCreated` event.
+         * When the reporting gets enabled the event will be sent immediately for each existing execution
+         * context.
+         */
+        'Runtime.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Evaluates expression on global object.
+         */
+        'Runtime.evaluate': {
+            paramsType: [Protocol.Runtime.EvaluateRequest];
+            returnType: Protocol.Runtime.EvaluateResponse;
+        };
+        /**
+         * Returns the isolate id.
+         */
+        'Runtime.getIsolateId': {
+            paramsType: [];
+            returnType: Protocol.Runtime.GetIsolateIdResponse;
+        };
+        /**
+         * Returns the JavaScript heap usage.
+         * It is the total usage of the corresponding isolate not scoped to a particular Runtime.
+         */
+        'Runtime.getHeapUsage': {
+            paramsType: [];
+            returnType: Protocol.Runtime.GetHeapUsageResponse;
+        };
+        /**
+         * Returns properties of a given object. Object group of the result is inherited from the target
+         * object.
+         */
+        'Runtime.getProperties': {
+            paramsType: [Protocol.Runtime.GetPropertiesRequest];
+            returnType: Protocol.Runtime.GetPropertiesResponse;
+        };
+        /**
+         * Returns all let, const and class variables from global scope.
+         */
+        'Runtime.globalLexicalScopeNames': {
+            paramsType: [Protocol.Runtime.GlobalLexicalScopeNamesRequest?];
+            returnType: Protocol.Runtime.GlobalLexicalScopeNamesResponse;
+        };
+        'Runtime.queryObjects': {
+            paramsType: [Protocol.Runtime.QueryObjectsRequest];
+            returnType: Protocol.Runtime.QueryObjectsResponse;
+        };
+        /**
+         * Releases remote object with given id.
+         */
+        'Runtime.releaseObject': {
+            paramsType: [Protocol.Runtime.ReleaseObjectRequest];
+            returnType: void;
+        };
+        /**
+         * Releases all remote objects that belong to a given group.
+         */
+        'Runtime.releaseObjectGroup': {
+            paramsType: [Protocol.Runtime.ReleaseObjectGroupRequest];
+            returnType: void;
+        };
+        /**
+         * Tells inspected instance to run if it was waiting for debugger to attach.
+         */
+        'Runtime.runIfWaitingForDebugger': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Runs script with given id in a given context.
+         */
+        'Runtime.runScript': {
+            paramsType: [Protocol.Runtime.RunScriptRequest];
+            returnType: Protocol.Runtime.RunScriptResponse;
+        };
+        /**
+         * Enables or disables async call stacks tracking.
+         */
+        'Runtime.setAsyncCallStackDepth': {
+            paramsType: [Protocol.Runtime.SetAsyncCallStackDepthRequest];
+            returnType: void;
+        };
+        'Runtime.setCustomObjectFormatterEnabled': {
+            paramsType: [Protocol.Runtime.SetCustomObjectFormatterEnabledRequest];
+            returnType: void;
+        };
+        'Runtime.setMaxCallStackSizeToCapture': {
+            paramsType: [Protocol.Runtime.SetMaxCallStackSizeToCaptureRequest];
+            returnType: void;
+        };
+        /**
+         * Terminate current or next JavaScript execution.
+         * Will cancel the termination when the outer-most script execution ends.
+         */
+        'Runtime.terminateExecution': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * If executionContextId is empty, adds binding with the given name on the
+         * global objects of all inspected contexts, including those created later,
+         * bindings survive reloads.
+         * Binding function takes exactly one argument, this argument should be string,
+         * in case of any other input, function throws an exception.
+         * Each binding function call produces Runtime.bindingCalled notification.
+         */
+        'Runtime.addBinding': {
+            paramsType: [Protocol.Runtime.AddBindingRequest];
+            returnType: void;
+        };
+        /**
+         * This method does not remove binding function from global object but
+         * unsubscribes current runtime agent from Runtime.bindingCalled notifications.
+         */
+        'Runtime.removeBinding': {
+            paramsType: [Protocol.Runtime.RemoveBindingRequest];
+            returnType: void;
+        };
+        /**
+         * Returns supported domains.
+         */
+        'Schema.getDomains': {
+            paramsType: [];
+            returnType: Protocol.Schema.GetDomainsResponse;
+        };
+        /**
+         * Disables the accessibility domain.
+         */
+        'Accessibility.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables the accessibility domain which causes `AXNodeId`s to remain consistent between method calls.
+         * This turns on accessibility for the page, which can impact performance until accessibility is disabled.
+         */
+        'Accessibility.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Fetches the accessibility node and partial accessibility tree for this DOM node, if it exists.
+         */
+        'Accessibility.getPartialAXTree': {
+            paramsType: [Protocol.Accessibility.GetPartialAXTreeRequest?];
+            returnType: Protocol.Accessibility.GetPartialAXTreeResponse;
+        };
+        /**
+         * Fetches the entire accessibility tree for the root Document
+         */
+        'Accessibility.getFullAXTree': {
+            paramsType: [Protocol.Accessibility.GetFullAXTreeRequest?];
+            returnType: Protocol.Accessibility.GetFullAXTreeResponse;
+        };
+        /**
+         * Fetches a particular accessibility node by AXNodeId.
+         * Requires `enable()` to have been called previously.
+         */
+        'Accessibility.getChildAXNodes': {
+            paramsType: [Protocol.Accessibility.GetChildAXNodesRequest];
+            returnType: Protocol.Accessibility.GetChildAXNodesResponse;
+        };
+        /**
+         * Query a DOM node's accessibility subtree for accessible name and role.
+         * This command computes the name and role for all nodes in the subtree, including those that are
+         * ignored for accessibility, and returns those that mactch the specified name and role. If no DOM
+         * node is specified, or the DOM node does not exist, the command returns an error. If neither
+         * `accessibleName` or `role` is specified, it returns all the accessibility nodes in the subtree.
+         */
+        'Accessibility.queryAXTree': {
+            paramsType: [Protocol.Accessibility.QueryAXTreeRequest?];
+            returnType: Protocol.Accessibility.QueryAXTreeResponse;
+        };
+        /**
+         * Disables animation domain notifications.
+         */
+        'Animation.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables animation domain notifications.
+         */
+        'Animation.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns the current time of the an animation.
+         */
+        'Animation.getCurrentTime': {
+            paramsType: [Protocol.Animation.GetCurrentTimeRequest];
+            returnType: Protocol.Animation.GetCurrentTimeResponse;
+        };
+        /**
+         * Gets the playback rate of the document timeline.
+         */
+        'Animation.getPlaybackRate': {
+            paramsType: [];
+            returnType: Protocol.Animation.GetPlaybackRateResponse;
+        };
+        /**
+         * Releases a set of animations to no longer be manipulated.
+         */
+        'Animation.releaseAnimations': {
+            paramsType: [Protocol.Animation.ReleaseAnimationsRequest];
+            returnType: void;
+        };
+        /**
+         * Gets the remote object of the Animation.
+         */
+        'Animation.resolveAnimation': {
+            paramsType: [Protocol.Animation.ResolveAnimationRequest];
+            returnType: Protocol.Animation.ResolveAnimationResponse;
+        };
+        /**
+         * Seek a set of animations to a particular time within each animation.
+         */
+        'Animation.seekAnimations': {
+            paramsType: [Protocol.Animation.SeekAnimationsRequest];
+            returnType: void;
+        };
+        /**
+         * Sets the paused state of a set of animations.
+         */
+        'Animation.setPaused': {
+            paramsType: [Protocol.Animation.SetPausedRequest];
+            returnType: void;
+        };
+        /**
+         * Sets the playback rate of the document timeline.
+         */
+        'Animation.setPlaybackRate': {
+            paramsType: [Protocol.Animation.SetPlaybackRateRequest];
+            returnType: void;
+        };
+        /**
+         * Sets the timing of an animation node.
+         */
+        'Animation.setTiming': {
+            paramsType: [Protocol.Animation.SetTimingRequest];
+            returnType: void;
+        };
+        /**
+         * Enables application cache domain notifications.
+         */
+        'ApplicationCache.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns relevant application cache data for the document in given frame.
+         */
+        'ApplicationCache.getApplicationCacheForFrame': {
+            paramsType: [Protocol.ApplicationCache.GetApplicationCacheForFrameRequest];
+            returnType: Protocol.ApplicationCache.GetApplicationCacheForFrameResponse;
+        };
+        /**
+         * Returns array of frame identifiers with manifest urls for each frame containing a document
+         * associated with some application cache.
+         */
+        'ApplicationCache.getFramesWithManifests': {
+            paramsType: [];
+            returnType: Protocol.ApplicationCache.GetFramesWithManifestsResponse;
+        };
+        /**
+         * Returns manifest URL for document in the given frame.
+         */
+        'ApplicationCache.getManifestForFrame': {
+            paramsType: [Protocol.ApplicationCache.GetManifestForFrameRequest];
+            returnType: Protocol.ApplicationCache.GetManifestForFrameResponse;
+        };
+        /**
+         * Returns the response body and size if it were re-encoded with the specified settings. Only
+         * applies to images.
+         */
+        'Audits.getEncodedResponse': {
+            paramsType: [Protocol.Audits.GetEncodedResponseRequest];
+            returnType: Protocol.Audits.GetEncodedResponseResponse;
+        };
+        /**
+         * Disables issues domain, prevents further issues from being reported to the client.
+         */
+        'Audits.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables issues domain, sends the issues collected so far to the client by means of the
+         * `issueAdded` event.
+         */
+        'Audits.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Runs the contrast check for the target page. Found issues are reported
+         * using Audits.issueAdded event.
+         */
+        'Audits.checkContrast': {
+            paramsType: [Protocol.Audits.CheckContrastRequest?];
+            returnType: void;
+        };
+        /**
+         * Enables event updates for the service.
+         */
+        'BackgroundService.startObserving': {
+            paramsType: [Protocol.BackgroundService.StartObservingRequest];
+            returnType: void;
+        };
+        /**
+         * Disables event updates for the service.
+         */
+        'BackgroundService.stopObserving': {
+            paramsType: [Protocol.BackgroundService.StopObservingRequest];
+            returnType: void;
+        };
+        /**
+         * Set the recording state for the service.
+         */
+        'BackgroundService.setRecording': {
+            paramsType: [Protocol.BackgroundService.SetRecordingRequest];
+            returnType: void;
+        };
+        /**
+         * Clears all stored data for the service.
+         */
+        'BackgroundService.clearEvents': {
+            paramsType: [Protocol.BackgroundService.ClearEventsRequest];
+            returnType: void;
+        };
+        /**
+         * Set permission settings for given origin.
+         */
+        'Browser.setPermission': {
+            paramsType: [Protocol.Browser.SetPermissionRequest];
+            returnType: void;
+        };
+        /**
+         * Grant specific permissions to the given origin and reject all others.
+         */
+        'Browser.grantPermissions': {
+            paramsType: [Protocol.Browser.GrantPermissionsRequest];
+            returnType: void;
+        };
+        /**
+         * Reset all permission management for all origins.
+         */
+        'Browser.resetPermissions': {
+            paramsType: [Protocol.Browser.ResetPermissionsRequest?];
+            returnType: void;
+        };
+        /**
+         * Set the behavior when downloading a file.
+         */
+        'Browser.setDownloadBehavior': {
+            paramsType: [Protocol.Browser.SetDownloadBehaviorRequest];
+            returnType: void;
+        };
+        /**
+         * Cancel a download if in progress
+         */
+        'Browser.cancelDownload': {
+            paramsType: [Protocol.Browser.CancelDownloadRequest];
+            returnType: void;
+        };
+        /**
+         * Close browser gracefully.
+         */
+        'Browser.close': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Crashes browser on the main thread.
+         */
+        'Browser.crash': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Crashes GPU process.
+         */
+        'Browser.crashGpuProcess': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns version information.
+         */
+        'Browser.getVersion': {
+            paramsType: [];
+            returnType: Protocol.Browser.GetVersionResponse;
+        };
+        /**
+         * Returns the command line switches for the browser process if, and only if
+         * --enable-automation is on the commandline.
+         */
+        'Browser.getBrowserCommandLine': {
+            paramsType: [];
+            returnType: Protocol.Browser.GetBrowserCommandLineResponse;
+        };
+        /**
+         * Get Chrome histograms.
+         */
+        'Browser.getHistograms': {
+            paramsType: [Protocol.Browser.GetHistogramsRequest?];
+            returnType: Protocol.Browser.GetHistogramsResponse;
+        };
+        /**
+         * Get a Chrome histogram by name.
+         */
+        'Browser.getHistogram': {
+            paramsType: [Protocol.Browser.GetHistogramRequest];
+            returnType: Protocol.Browser.GetHistogramResponse;
+        };
+        /**
+         * Get position and size of the browser window.
+         */
+        'Browser.getWindowBounds': {
+            paramsType: [Protocol.Browser.GetWindowBoundsRequest];
+            returnType: Protocol.Browser.GetWindowBoundsResponse;
+        };
+        /**
+         * Get the browser window that contains the devtools target.
+         */
+        'Browser.getWindowForTarget': {
+            paramsType: [Protocol.Browser.GetWindowForTargetRequest?];
+            returnType: Protocol.Browser.GetWindowForTargetResponse;
+        };
+        /**
+         * Set position and/or size of the browser window.
+         */
+        'Browser.setWindowBounds': {
+            paramsType: [Protocol.Browser.SetWindowBoundsRequest];
+            returnType: void;
+        };
+        /**
+         * Set dock tile details, platform-specific.
+         */
+        'Browser.setDockTile': {
+            paramsType: [Protocol.Browser.SetDockTileRequest?];
+            returnType: void;
+        };
+        /**
+         * Invoke custom browser commands used by telemetry.
+         */
+        'Browser.executeBrowserCommand': {
+            paramsType: [Protocol.Browser.ExecuteBrowserCommandRequest];
+            returnType: void;
+        };
+        /**
+         * Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the
+         * position specified by `location`.
+         */
+        'CSS.addRule': {
+            paramsType: [Protocol.CSS.AddRuleRequest];
+            returnType: Protocol.CSS.AddRuleResponse;
+        };
+        /**
+         * Returns all class names from specified stylesheet.
+         */
+        'CSS.collectClassNames': {
+            paramsType: [Protocol.CSS.CollectClassNamesRequest];
+            returnType: Protocol.CSS.CollectClassNamesResponse;
+        };
+        /**
+         * Creates a new special "via-inspector" stylesheet in the frame with given `frameId`.
+         */
+        'CSS.createStyleSheet': {
+            paramsType: [Protocol.CSS.CreateStyleSheetRequest];
+            returnType: Protocol.CSS.CreateStyleSheetResponse;
+        };
+        /**
+         * Disables the CSS agent for the given page.
+         */
+        'CSS.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables the CSS agent for the given page. Clients should not assume that the CSS agent has been
+         * enabled until the result of this command is received.
+         */
+        'CSS.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Ensures that the given node will have specified pseudo-classes whenever its style is computed by
+         * the browser.
+         */
+        'CSS.forcePseudoState': {
+            paramsType: [Protocol.CSS.ForcePseudoStateRequest];
+            returnType: void;
+        };
+        'CSS.getBackgroundColors': {
+            paramsType: [Protocol.CSS.GetBackgroundColorsRequest];
+            returnType: Protocol.CSS.GetBackgroundColorsResponse;
+        };
+        /**
+         * Returns the computed style for a DOM node identified by `nodeId`.
+         */
+        'CSS.getComputedStyleForNode': {
+            paramsType: [Protocol.CSS.GetComputedStyleForNodeRequest];
+            returnType: Protocol.CSS.GetComputedStyleForNodeResponse;
+        };
+        /**
+         * Returns the styles defined inline (explicitly in the "style" attribute and implicitly, using DOM
+         * attributes) for a DOM node identified by `nodeId`.
+         */
+        'CSS.getInlineStylesForNode': {
+            paramsType: [Protocol.CSS.GetInlineStylesForNodeRequest];
+            returnType: Protocol.CSS.GetInlineStylesForNodeResponse;
+        };
+        /**
+         * Returns requested styles for a DOM node identified by `nodeId`.
+         */
+        'CSS.getMatchedStylesForNode': {
+            paramsType: [Protocol.CSS.GetMatchedStylesForNodeRequest];
+            returnType: Protocol.CSS.GetMatchedStylesForNodeResponse;
+        };
+        /**
+         * Returns all media queries parsed by the rendering engine.
+         */
+        'CSS.getMediaQueries': {
+            paramsType: [];
+            returnType: Protocol.CSS.GetMediaQueriesResponse;
+        };
+        /**
+         * Requests information about platform fonts which we used to render child TextNodes in the given
+         * node.
+         */
+        'CSS.getPlatformFontsForNode': {
+            paramsType: [Protocol.CSS.GetPlatformFontsForNodeRequest];
+            returnType: Protocol.CSS.GetPlatformFontsForNodeResponse;
+        };
+        /**
+         * Returns the current textual content for a stylesheet.
+         */
+        'CSS.getStyleSheetText': {
+            paramsType: [Protocol.CSS.GetStyleSheetTextRequest];
+            returnType: Protocol.CSS.GetStyleSheetTextResponse;
+        };
+        /**
+         * Starts tracking the given computed styles for updates. The specified array of properties
+         * replaces the one previously specified. Pass empty array to disable tracking.
+         * Use takeComputedStyleUpdates to retrieve the list of nodes that had properties modified.
+         * The changes to computed style properties are only tracked for nodes pushed to the front-end
+         * by the DOM agent. If no changes to the tracked properties occur after the node has been pushed
+         * to the front-end, no updates will be issued for the node.
+         */
+        'CSS.trackComputedStyleUpdates': {
+            paramsType: [Protocol.CSS.TrackComputedStyleUpdatesRequest];
+            returnType: void;
+        };
+        /**
+         * Polls the next batch of computed style updates.
+         */
+        'CSS.takeComputedStyleUpdates': {
+            paramsType: [];
+            returnType: Protocol.CSS.TakeComputedStyleUpdatesResponse;
+        };
+        /**
+         * Find a rule with the given active property for the given node and set the new value for this
+         * property
+         */
+        'CSS.setEffectivePropertyValueForNode': {
+            paramsType: [Protocol.CSS.SetEffectivePropertyValueForNodeRequest];
+            returnType: void;
+        };
+        /**
+         * Modifies the keyframe rule key text.
+         */
+        'CSS.setKeyframeKey': {
+            paramsType: [Protocol.CSS.SetKeyframeKeyRequest];
+            returnType: Protocol.CSS.SetKeyframeKeyResponse;
+        };
+        /**
+         * Modifies the rule selector.
+         */
+        'CSS.setMediaText': {
+            paramsType: [Protocol.CSS.SetMediaTextRequest];
+            returnType: Protocol.CSS.SetMediaTextResponse;
+        };
+        /**
+         * Modifies the rule selector.
+         */
+        'CSS.setRuleSelector': {
+            paramsType: [Protocol.CSS.SetRuleSelectorRequest];
+            returnType: Protocol.CSS.SetRuleSelectorResponse;
+        };
+        /**
+         * Sets the new stylesheet text.
+         */
+        'CSS.setStyleSheetText': {
+            paramsType: [Protocol.CSS.SetStyleSheetTextRequest];
+            returnType: Protocol.CSS.SetStyleSheetTextResponse;
+        };
+        /**
+         * Applies specified style edits one after another in the given order.
+         */
+        'CSS.setStyleTexts': {
+            paramsType: [Protocol.CSS.SetStyleTextsRequest];
+            returnType: Protocol.CSS.SetStyleTextsResponse;
+        };
+        /**
+         * Enables the selector recording.
+         */
+        'CSS.startRuleUsageTracking': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Stop tracking rule usage and return the list of rules that were used since last call to
+         * `takeCoverageDelta` (or since start of coverage instrumentation)
+         */
+        'CSS.stopRuleUsageTracking': {
+            paramsType: [];
+            returnType: Protocol.CSS.StopRuleUsageTrackingResponse;
+        };
+        /**
+         * Obtain list of rules that became used since last call to this method (or since start of coverage
+         * instrumentation)
+         */
+        'CSS.takeCoverageDelta': {
+            paramsType: [];
+            returnType: Protocol.CSS.TakeCoverageDeltaResponse;
+        };
+        /**
+         * Enables/disables rendering of local CSS fonts (enabled by default).
+         */
+        'CSS.setLocalFontsEnabled': {
+            paramsType: [Protocol.CSS.SetLocalFontsEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Deletes a cache.
+         */
+        'CacheStorage.deleteCache': {
+            paramsType: [Protocol.CacheStorage.DeleteCacheRequest];
+            returnType: void;
+        };
+        /**
+         * Deletes a cache entry.
+         */
+        'CacheStorage.deleteEntry': {
+            paramsType: [Protocol.CacheStorage.DeleteEntryRequest];
+            returnType: void;
+        };
+        /**
+         * Requests cache names.
+         */
+        'CacheStorage.requestCacheNames': {
+            paramsType: [Protocol.CacheStorage.RequestCacheNamesRequest];
+            returnType: Protocol.CacheStorage.RequestCacheNamesResponse;
+        };
+        /**
+         * Fetches cache entry.
+         */
+        'CacheStorage.requestCachedResponse': {
+            paramsType: [Protocol.CacheStorage.RequestCachedResponseRequest];
+            returnType: Protocol.CacheStorage.RequestCachedResponseResponse;
+        };
+        /**
+         * Requests data from cache.
+         */
+        'CacheStorage.requestEntries': {
+            paramsType: [Protocol.CacheStorage.RequestEntriesRequest];
+            returnType: Protocol.CacheStorage.RequestEntriesResponse;
+        };
+        /**
+         * Starts observing for sinks that can be used for tab mirroring, and if set,
+         * sinks compatible with |presentationUrl| as well. When sinks are found, a
+         * |sinksUpdated| event is fired.
+         * Also starts observing for issue messages. When an issue is added or removed,
+         * an |issueUpdated| event is fired.
+         */
+        'Cast.enable': {
+            paramsType: [Protocol.Cast.EnableRequest?];
+            returnType: void;
+        };
+        /**
+         * Stops observing for sinks and issues.
+         */
+        'Cast.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Sets a sink to be used when the web page requests the browser to choose a
+         * sink via Presentation API, Remote Playback API, or Cast SDK.
+         */
+        'Cast.setSinkToUse': {
+            paramsType: [Protocol.Cast.SetSinkToUseRequest];
+            returnType: void;
+        };
+        /**
+         * Starts mirroring the tab to the sink.
+         */
+        'Cast.startTabMirroring': {
+            paramsType: [Protocol.Cast.StartTabMirroringRequest];
+            returnType: void;
+        };
+        /**
+         * Stops the active Cast session on the sink.
+         */
+        'Cast.stopCasting': {
+            paramsType: [Protocol.Cast.StopCastingRequest];
+            returnType: void;
+        };
+        /**
+         * Collects class names for the node with given id and all of it's child nodes.
+         */
+        'DOM.collectClassNamesFromSubtree': {
+            paramsType: [Protocol.DOM.CollectClassNamesFromSubtreeRequest];
+            returnType: Protocol.DOM.CollectClassNamesFromSubtreeResponse;
+        };
+        /**
+         * Creates a deep copy of the specified node and places it into the target container before the
+         * given anchor.
+         */
+        'DOM.copyTo': {
+            paramsType: [Protocol.DOM.CopyToRequest];
+            returnType: Protocol.DOM.CopyToResponse;
+        };
+        /**
+         * Describes node given its id, does not require domain to be enabled. Does not start tracking any
+         * objects, can be used for automation.
+         */
+        'DOM.describeNode': {
+            paramsType: [Protocol.DOM.DescribeNodeRequest?];
+            returnType: Protocol.DOM.DescribeNodeResponse;
+        };
+        /**
+         * Scrolls the specified rect of the given node into view if not already visible.
+         * Note: exactly one between nodeId, backendNodeId and objectId should be passed
+         * to identify the node.
+         */
+        'DOM.scrollIntoViewIfNeeded': {
+            paramsType: [Protocol.DOM.ScrollIntoViewIfNeededRequest?];
+            returnType: void;
+        };
+        /**
+         * Disables DOM agent for the given page.
+         */
+        'DOM.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Discards search results from the session with the given id. `getSearchResults` should no longer
+         * be called for that search.
+         */
+        'DOM.discardSearchResults': {
+            paramsType: [Protocol.DOM.DiscardSearchResultsRequest];
+            returnType: void;
+        };
+        /**
+         * Enables DOM agent for the given page.
+         */
+        'DOM.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Focuses the given element.
+         */
+        'DOM.focus': {
+            paramsType: [Protocol.DOM.FocusRequest?];
+            returnType: void;
+        };
+        /**
+         * Returns attributes for the specified node.
+         */
+        'DOM.getAttributes': {
+            paramsType: [Protocol.DOM.GetAttributesRequest];
+            returnType: Protocol.DOM.GetAttributesResponse;
+        };
+        /**
+         * Returns boxes for the given node.
+         */
+        'DOM.getBoxModel': {
+            paramsType: [Protocol.DOM.GetBoxModelRequest?];
+            returnType: Protocol.DOM.GetBoxModelResponse;
+        };
+        /**
+         * Returns quads that describe node position on the page. This method
+         * might return multiple quads for inline nodes.
+         */
+        'DOM.getContentQuads': {
+            paramsType: [Protocol.DOM.GetContentQuadsRequest?];
+            returnType: Protocol.DOM.GetContentQuadsResponse;
+        };
+        /**
+         * Returns the root DOM node (and optionally the subtree) to the caller.
+         */
+        'DOM.getDocument': {
+            paramsType: [Protocol.DOM.GetDocumentRequest?];
+            returnType: Protocol.DOM.GetDocumentResponse;
+        };
+        /**
+         * Returns the root DOM node (and optionally the subtree) to the caller.
+         * Deprecated, as it is not designed to work well with the rest of the DOM agent.
+         * Use DOMSnapshot.captureSnapshot instead.
+         */
+        'DOM.getFlattenedDocument': {
+            paramsType: [Protocol.DOM.GetFlattenedDocumentRequest?];
+            returnType: Protocol.DOM.GetFlattenedDocumentResponse;
+        };
+        /**
+         * Finds nodes with a given computed style in a subtree.
+         */
+        'DOM.getNodesForSubtreeByStyle': {
+            paramsType: [Protocol.DOM.GetNodesForSubtreeByStyleRequest];
+            returnType: Protocol.DOM.GetNodesForSubtreeByStyleResponse;
+        };
+        /**
+         * Returns node id at given location. Depending on whether DOM domain is enabled, nodeId is
+         * either returned or not.
+         */
+        'DOM.getNodeForLocation': {
+            paramsType: [Protocol.DOM.GetNodeForLocationRequest];
+            returnType: Protocol.DOM.GetNodeForLocationResponse;
+        };
+        /**
+         * Returns node's HTML markup.
+         */
+        'DOM.getOuterHTML': {
+            paramsType: [Protocol.DOM.GetOuterHTMLRequest?];
+            returnType: Protocol.DOM.GetOuterHTMLResponse;
+        };
+        /**
+         * Returns the id of the nearest ancestor that is a relayout boundary.
+         */
+        'DOM.getRelayoutBoundary': {
+            paramsType: [Protocol.DOM.GetRelayoutBoundaryRequest];
+            returnType: Protocol.DOM.GetRelayoutBoundaryResponse;
+        };
+        /**
+         * Returns search results from given `fromIndex` to given `toIndex` from the search with the given
+         * identifier.
+         */
+        'DOM.getSearchResults': {
+            paramsType: [Protocol.DOM.GetSearchResultsRequest];
+            returnType: Protocol.DOM.GetSearchResultsResponse;
+        };
+        /**
+         * Hides any highlight.
+         */
+        'DOM.hideHighlight': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Highlights DOM node.
+         */
+        'DOM.highlightNode': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Highlights given rectangle.
+         */
+        'DOM.highlightRect': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Marks last undoable state.
+         */
+        'DOM.markUndoableState': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Moves node into the new container, places it before the given anchor.
+         */
+        'DOM.moveTo': {
+            paramsType: [Protocol.DOM.MoveToRequest];
+            returnType: Protocol.DOM.MoveToResponse;
+        };
+        /**
+         * Searches for a given string in the DOM tree. Use `getSearchResults` to access search results or
+         * `cancelSearch` to end this search session.
+         */
+        'DOM.performSearch': {
+            paramsType: [Protocol.DOM.PerformSearchRequest];
+            returnType: Protocol.DOM.PerformSearchResponse;
+        };
+        /**
+         * Requests that the node is sent to the caller given its path. // FIXME, use XPath
+         */
+        'DOM.pushNodeByPathToFrontend': {
+            paramsType: [Protocol.DOM.PushNodeByPathToFrontendRequest];
+            returnType: Protocol.DOM.PushNodeByPathToFrontendResponse;
+        };
+        /**
+         * Requests that a batch of nodes is sent to the caller given their backend node ids.
+         */
+        'DOM.pushNodesByBackendIdsToFrontend': {
+            paramsType: [Protocol.DOM.PushNodesByBackendIdsToFrontendRequest];
+            returnType: Protocol.DOM.PushNodesByBackendIdsToFrontendResponse;
+        };
+        /**
+         * Executes `querySelector` on a given node.
+         */
+        'DOM.querySelector': {
+            paramsType: [Protocol.DOM.QuerySelectorRequest];
+            returnType: Protocol.DOM.QuerySelectorResponse;
+        };
+        /**
+         * Executes `querySelectorAll` on a given node.
+         */
+        'DOM.querySelectorAll': {
+            paramsType: [Protocol.DOM.QuerySelectorAllRequest];
+            returnType: Protocol.DOM.QuerySelectorAllResponse;
+        };
+        /**
+         * Re-does the last undone action.
+         */
+        'DOM.redo': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Removes attribute with given name from an element with given id.
+         */
+        'DOM.removeAttribute': {
+            paramsType: [Protocol.DOM.RemoveAttributeRequest];
+            returnType: void;
+        };
+        /**
+         * Removes node with given id.
+         */
+        'DOM.removeNode': {
+            paramsType: [Protocol.DOM.RemoveNodeRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that children of the node with given id are returned to the caller in form of
+         * `setChildNodes` events where not only immediate children are retrieved, but all children down to
+         * the specified depth.
+         */
+        'DOM.requestChildNodes': {
+            paramsType: [Protocol.DOM.RequestChildNodesRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that the node is sent to the caller given the JavaScript node object reference. All
+         * nodes that form the path from the node to the root are also sent to the client as a series of
+         * `setChildNodes` notifications.
+         */
+        'DOM.requestNode': {
+            paramsType: [Protocol.DOM.RequestNodeRequest];
+            returnType: Protocol.DOM.RequestNodeResponse;
+        };
+        /**
+         * Resolves the JavaScript node object for a given NodeId or BackendNodeId.
+         */
+        'DOM.resolveNode': {
+            paramsType: [Protocol.DOM.ResolveNodeRequest?];
+            returnType: Protocol.DOM.ResolveNodeResponse;
+        };
+        /**
+         * Sets attribute for an element with given id.
+         */
+        'DOM.setAttributeValue': {
+            paramsType: [Protocol.DOM.SetAttributeValueRequest];
+            returnType: void;
+        };
+        /**
+         * Sets attributes on element with given id. This method is useful when user edits some existing
+         * attribute value and types in several attribute name/value pairs.
+         */
+        'DOM.setAttributesAsText': {
+            paramsType: [Protocol.DOM.SetAttributesAsTextRequest];
+            returnType: void;
+        };
+        /**
+         * Sets files for the given file input element.
+         */
+        'DOM.setFileInputFiles': {
+            paramsType: [Protocol.DOM.SetFileInputFilesRequest];
+            returnType: void;
+        };
+        /**
+         * Sets if stack traces should be captured for Nodes. See `Node.getNodeStackTraces`. Default is disabled.
+         */
+        'DOM.setNodeStackTracesEnabled': {
+            paramsType: [Protocol.DOM.SetNodeStackTracesEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation.
+         */
+        'DOM.getNodeStackTraces': {
+            paramsType: [Protocol.DOM.GetNodeStackTracesRequest];
+            returnType: Protocol.DOM.GetNodeStackTracesResponse;
+        };
+        /**
+         * Returns file information for the given
+         * File wrapper.
+         */
+        'DOM.getFileInfo': {
+            paramsType: [Protocol.DOM.GetFileInfoRequest];
+            returnType: Protocol.DOM.GetFileInfoResponse;
+        };
+        /**
+         * Enables console to refer to the node with given id via $x (see Command Line API for more details
+         * $x functions).
+         */
+        'DOM.setInspectedNode': {
+            paramsType: [Protocol.DOM.SetInspectedNodeRequest];
+            returnType: void;
+        };
+        /**
+         * Sets node name for a node with given id.
+         */
+        'DOM.setNodeName': {
+            paramsType: [Protocol.DOM.SetNodeNameRequest];
+            returnType: Protocol.DOM.SetNodeNameResponse;
+        };
+        /**
+         * Sets node value for a node with given id.
+         */
+        'DOM.setNodeValue': {
+            paramsType: [Protocol.DOM.SetNodeValueRequest];
+            returnType: void;
+        };
+        /**
+         * Sets node HTML markup, returns new node id.
+         */
+        'DOM.setOuterHTML': {
+            paramsType: [Protocol.DOM.SetOuterHTMLRequest];
+            returnType: void;
+        };
+        /**
+         * Undoes the last performed action.
+         */
+        'DOM.undo': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns iframe node that owns iframe with the given domain.
+         */
+        'DOM.getFrameOwner': {
+            paramsType: [Protocol.DOM.GetFrameOwnerRequest];
+            returnType: Protocol.DOM.GetFrameOwnerResponse;
+        };
+        /**
+         * Returns event listeners of the given object.
+         */
+        'DOMDebugger.getEventListeners': {
+            paramsType: [Protocol.DOMDebugger.GetEventListenersRequest];
+            returnType: Protocol.DOMDebugger.GetEventListenersResponse;
+        };
+        /**
+         * Removes DOM breakpoint that was set using `setDOMBreakpoint`.
+         */
+        'DOMDebugger.removeDOMBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.RemoveDOMBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Removes breakpoint on particular DOM event.
+         */
+        'DOMDebugger.removeEventListenerBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.RemoveEventListenerBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Removes breakpoint on particular native event.
+         */
+        'DOMDebugger.removeInstrumentationBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.RemoveInstrumentationBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Removes breakpoint from XMLHttpRequest.
+         */
+        'DOMDebugger.removeXHRBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.RemoveXHRBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Sets breakpoint on particular CSP violations.
+         */
+        'DOMDebugger.setBreakOnCSPViolation': {
+            paramsType: [Protocol.DOMDebugger.SetBreakOnCSPViolationRequest];
+            returnType: void;
+        };
+        /**
+         * Sets breakpoint on particular operation with DOM.
+         */
+        'DOMDebugger.setDOMBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.SetDOMBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Sets breakpoint on particular DOM event.
+         */
+        'DOMDebugger.setEventListenerBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.SetEventListenerBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Sets breakpoint on particular native event.
+         */
+        'DOMDebugger.setInstrumentationBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.SetInstrumentationBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Sets breakpoint on XMLHttpRequest.
+         */
+        'DOMDebugger.setXHRBreakpoint': {
+            paramsType: [Protocol.DOMDebugger.SetXHRBreakpointRequest];
+            returnType: void;
+        };
+        /**
+         * Disables DOM snapshot agent for the given page.
+         */
+        'DOMSnapshot.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables DOM snapshot agent for the given page.
+         */
+        'DOMSnapshot.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns a document snapshot, including the full DOM tree of the root node (including iframes,
+         * template contents, and imported documents) in a flattened array, as well as layout and
+         * white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is
+         * flattened.
+         */
+        'DOMSnapshot.getSnapshot': {
+            paramsType: [Protocol.DOMSnapshot.GetSnapshotRequest];
+            returnType: Protocol.DOMSnapshot.GetSnapshotResponse;
+        };
+        /**
+         * Returns a document snapshot, including the full DOM tree of the root node (including iframes,
+         * template contents, and imported documents) in a flattened array, as well as layout and
+         * white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is
+         * flattened.
+         */
+        'DOMSnapshot.captureSnapshot': {
+            paramsType: [Protocol.DOMSnapshot.CaptureSnapshotRequest];
+            returnType: Protocol.DOMSnapshot.CaptureSnapshotResponse;
+        };
+        'DOMStorage.clear': {
+            paramsType: [Protocol.DOMStorage.ClearRequest];
+            returnType: void;
+        };
+        /**
+         * Disables storage tracking, prevents storage events from being sent to the client.
+         */
+        'DOMStorage.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables storage tracking, storage events will now be delivered to the client.
+         */
+        'DOMStorage.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'DOMStorage.getDOMStorageItems': {
+            paramsType: [Protocol.DOMStorage.GetDOMStorageItemsRequest];
+            returnType: Protocol.DOMStorage.GetDOMStorageItemsResponse;
+        };
+        'DOMStorage.removeDOMStorageItem': {
+            paramsType: [Protocol.DOMStorage.RemoveDOMStorageItemRequest];
+            returnType: void;
+        };
+        'DOMStorage.setDOMStorageItem': {
+            paramsType: [Protocol.DOMStorage.SetDOMStorageItemRequest];
+            returnType: void;
+        };
+        /**
+         * Disables database tracking, prevents database events from being sent to the client.
+         */
+        'Database.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables database tracking, database events will now be delivered to the client.
+         */
+        'Database.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Database.executeSQL': {
+            paramsType: [Protocol.Database.ExecuteSQLRequest];
+            returnType: Protocol.Database.ExecuteSQLResponse;
+        };
+        'Database.getDatabaseTableNames': {
+            paramsType: [Protocol.Database.GetDatabaseTableNamesRequest];
+            returnType: Protocol.Database.GetDatabaseTableNamesResponse;
+        };
+        /**
+         * Clears the overridden Device Orientation.
+         */
+        'DeviceOrientation.clearDeviceOrientationOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Overrides the Device Orientation.
+         */
+        'DeviceOrientation.setDeviceOrientationOverride': {
+            paramsType: [Protocol.DeviceOrientation.SetDeviceOrientationOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Tells whether emulation is supported.
+         */
+        'Emulation.canEmulate': {
+            paramsType: [];
+            returnType: Protocol.Emulation.CanEmulateResponse;
+        };
+        /**
+         * Clears the overridden device metrics.
+         */
+        'Emulation.clearDeviceMetricsOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Clears the overridden Geolocation Position and Error.
+         */
+        'Emulation.clearGeolocationOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Requests that page scale factor is reset to initial values.
+         */
+        'Emulation.resetPageScaleFactor': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables or disables simulating a focused and active page.
+         */
+        'Emulation.setFocusEmulationEnabled': {
+            paramsType: [Protocol.Emulation.SetFocusEmulationEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Enables CPU throttling to emulate slow CPUs.
+         */
+        'Emulation.setCPUThrottlingRate': {
+            paramsType: [Protocol.Emulation.SetCPUThrottlingRateRequest];
+            returnType: void;
+        };
+        /**
+         * Sets or clears an override of the default background color of the frame. This override is used
+         * if the content does not specify one.
+         */
+        'Emulation.setDefaultBackgroundColorOverride': {
+            paramsType: [Protocol.Emulation.SetDefaultBackgroundColorOverrideRequest?];
+            returnType: void;
+        };
+        /**
+         * Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
+         * window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
+         * query results).
+         */
+        'Emulation.setDeviceMetricsOverride': {
+            paramsType: [Protocol.Emulation.SetDeviceMetricsOverrideRequest];
+            returnType: void;
+        };
+        'Emulation.setScrollbarsHidden': {
+            paramsType: [Protocol.Emulation.SetScrollbarsHiddenRequest];
+            returnType: void;
+        };
+        'Emulation.setDocumentCookieDisabled': {
+            paramsType: [Protocol.Emulation.SetDocumentCookieDisabledRequest];
+            returnType: void;
+        };
+        'Emulation.setEmitTouchEventsForMouse': {
+            paramsType: [Protocol.Emulation.SetEmitTouchEventsForMouseRequest];
+            returnType: void;
+        };
+        /**
+         * Emulates the given media type or media feature for CSS media queries.
+         */
+        'Emulation.setEmulatedMedia': {
+            paramsType: [Protocol.Emulation.SetEmulatedMediaRequest?];
+            returnType: void;
+        };
+        /**
+         * Emulates the given vision deficiency.
+         */
+        'Emulation.setEmulatedVisionDeficiency': {
+            paramsType: [Protocol.Emulation.SetEmulatedVisionDeficiencyRequest];
+            returnType: void;
+        };
+        /**
+         * Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position
+         * unavailable.
+         */
+        'Emulation.setGeolocationOverride': {
+            paramsType: [Protocol.Emulation.SetGeolocationOverrideRequest?];
+            returnType: void;
+        };
+        /**
+         * Overrides the Idle state.
+         */
+        'Emulation.setIdleOverride': {
+            paramsType: [Protocol.Emulation.SetIdleOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Clears Idle state overrides.
+         */
+        'Emulation.clearIdleOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Overrides value returned by the javascript navigator object.
+         */
+        'Emulation.setNavigatorOverrides': {
+            paramsType: [Protocol.Emulation.SetNavigatorOverridesRequest];
+            returnType: void;
+        };
+        /**
+         * Sets a specified page scale factor.
+         */
+        'Emulation.setPageScaleFactor': {
+            paramsType: [Protocol.Emulation.SetPageScaleFactorRequest];
+            returnType: void;
+        };
+        /**
+         * Switches script execution in the page.
+         */
+        'Emulation.setScriptExecutionDisabled': {
+            paramsType: [Protocol.Emulation.SetScriptExecutionDisabledRequest];
+            returnType: void;
+        };
+        /**
+         * Enables touch on platforms which do not support them.
+         */
+        'Emulation.setTouchEmulationEnabled': {
+            paramsType: [Protocol.Emulation.SetTouchEmulationEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets
+         * the current virtual time policy.  Note this supersedes any previous time budget.
+         */
+        'Emulation.setVirtualTimePolicy': {
+            paramsType: [Protocol.Emulation.SetVirtualTimePolicyRequest];
+            returnType: Protocol.Emulation.SetVirtualTimePolicyResponse;
+        };
+        /**
+         * Overrides default host system locale with the specified one.
+         */
+        'Emulation.setLocaleOverride': {
+            paramsType: [Protocol.Emulation.SetLocaleOverrideRequest?];
+            returnType: void;
+        };
+        /**
+         * Overrides default host system timezone with the specified one.
+         */
+        'Emulation.setTimezoneOverride': {
+            paramsType: [Protocol.Emulation.SetTimezoneOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Resizes the frame/viewport of the page. Note that this does not affect the frame's container
+         * (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported
+         * on Android.
+         */
+        'Emulation.setVisibleSize': {
+            paramsType: [Protocol.Emulation.SetVisibleSizeRequest];
+            returnType: void;
+        };
+        'Emulation.setDisabledImageTypes': {
+            paramsType: [Protocol.Emulation.SetDisabledImageTypesRequest];
+            returnType: void;
+        };
+        /**
+         * Allows overriding user agent with the given string.
+         */
+        'Emulation.setUserAgentOverride': {
+            paramsType: [Protocol.Emulation.SetUserAgentOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a
+         * screenshot from the resulting frame. Requires that the target was created with enabled
+         * BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also
+         * https://goo.gl/3zHXhB for more background.
+         */
+        'HeadlessExperimental.beginFrame': {
+            paramsType: [Protocol.HeadlessExperimental.BeginFrameRequest?];
+            returnType: Protocol.HeadlessExperimental.BeginFrameResponse;
+        };
+        /**
+         * Disables headless events for the target.
+         */
+        'HeadlessExperimental.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables headless events for the target.
+         */
+        'HeadlessExperimental.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Close the stream, discard any temporary backing storage.
+         */
+        'IO.close': {
+            paramsType: [Protocol.IO.CloseRequest];
+            returnType: void;
+        };
+        /**
+         * Read a chunk of the stream
+         */
+        'IO.read': {
+            paramsType: [Protocol.IO.ReadRequest];
+            returnType: Protocol.IO.ReadResponse;
+        };
+        /**
+         * Return UUID of Blob object specified by a remote object id.
+         */
+        'IO.resolveBlob': {
+            paramsType: [Protocol.IO.ResolveBlobRequest];
+            returnType: Protocol.IO.ResolveBlobResponse;
+        };
+        /**
+         * Clears all entries from an object store.
+         */
+        'IndexedDB.clearObjectStore': {
+            paramsType: [Protocol.IndexedDB.ClearObjectStoreRequest];
+            returnType: void;
+        };
+        /**
+         * Deletes a database.
+         */
+        'IndexedDB.deleteDatabase': {
+            paramsType: [Protocol.IndexedDB.DeleteDatabaseRequest];
+            returnType: void;
+        };
+        /**
+         * Delete a range of entries from an object store
+         */
+        'IndexedDB.deleteObjectStoreEntries': {
+            paramsType: [Protocol.IndexedDB.DeleteObjectStoreEntriesRequest];
+            returnType: void;
+        };
+        /**
+         * Disables events from backend.
+         */
+        'IndexedDB.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables events from backend.
+         */
+        'IndexedDB.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Requests data from object store or index.
+         */
+        'IndexedDB.requestData': {
+            paramsType: [Protocol.IndexedDB.RequestDataRequest];
+            returnType: Protocol.IndexedDB.RequestDataResponse;
+        };
+        /**
+         * Gets metadata of an object store
+         */
+        'IndexedDB.getMetadata': {
+            paramsType: [Protocol.IndexedDB.GetMetadataRequest];
+            returnType: Protocol.IndexedDB.GetMetadataResponse;
+        };
+        /**
+         * Requests database with given name in given frame.
+         */
+        'IndexedDB.requestDatabase': {
+            paramsType: [Protocol.IndexedDB.RequestDatabaseRequest];
+            returnType: Protocol.IndexedDB.RequestDatabaseResponse;
+        };
+        /**
+         * Requests database names for given security origin.
+         */
+        'IndexedDB.requestDatabaseNames': {
+            paramsType: [Protocol.IndexedDB.RequestDatabaseNamesRequest];
+            returnType: Protocol.IndexedDB.RequestDatabaseNamesResponse;
+        };
+        /**
+         * Dispatches a drag event into the page.
+         */
+        'Input.dispatchDragEvent': {
+            paramsType: [Protocol.Input.DispatchDragEventRequest];
+            returnType: void;
+        };
+        /**
+         * Dispatches a key event to the page.
+         */
+        'Input.dispatchKeyEvent': {
+            paramsType: [Protocol.Input.DispatchKeyEventRequest];
+            returnType: void;
+        };
+        /**
+         * This method emulates inserting text that doesn't come from a key press,
+         * for example an emoji keyboard or an IME.
+         */
+        'Input.insertText': {
+            paramsType: [Protocol.Input.InsertTextRequest];
+            returnType: void;
+        };
+        /**
+         * Dispatches a mouse event to the page.
+         */
+        'Input.dispatchMouseEvent': {
+            paramsType: [Protocol.Input.DispatchMouseEventRequest];
+            returnType: void;
+        };
+        /**
+         * Dispatches a touch event to the page.
+         */
+        'Input.dispatchTouchEvent': {
+            paramsType: [Protocol.Input.DispatchTouchEventRequest];
+            returnType: void;
+        };
+        /**
+         * Emulates touch event from the mouse event parameters.
+         */
+        'Input.emulateTouchFromMouseEvent': {
+            paramsType: [Protocol.Input.EmulateTouchFromMouseEventRequest];
+            returnType: void;
+        };
+        /**
+         * Ignores input events (useful while auditing page).
+         */
+        'Input.setIgnoreInputEvents': {
+            paramsType: [Protocol.Input.SetIgnoreInputEventsRequest];
+            returnType: void;
+        };
+        /**
+         * Prevents default drag and drop behavior and instead emits `Input.dragIntercepted` events.
+         * Drag and drop behavior can be directly controlled via `Input.dispatchDragEvent`.
+         */
+        'Input.setInterceptDrags': {
+            paramsType: [Protocol.Input.SetInterceptDragsRequest];
+            returnType: void;
+        };
+        /**
+         * Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
+         */
+        'Input.synthesizePinchGesture': {
+            paramsType: [Protocol.Input.SynthesizePinchGestureRequest];
+            returnType: void;
+        };
+        /**
+         * Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
+         */
+        'Input.synthesizeScrollGesture': {
+            paramsType: [Protocol.Input.SynthesizeScrollGestureRequest];
+            returnType: void;
+        };
+        /**
+         * Synthesizes a tap gesture over a time period by issuing appropriate touch events.
+         */
+        'Input.synthesizeTapGesture': {
+            paramsType: [Protocol.Input.SynthesizeTapGestureRequest];
+            returnType: void;
+        };
+        /**
+         * Disables inspector domain notifications.
+         */
+        'Inspector.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables inspector domain notifications.
+         */
+        'Inspector.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Provides the reasons why the given layer was composited.
+         */
+        'LayerTree.compositingReasons': {
+            paramsType: [Protocol.LayerTree.CompositingReasonsRequest];
+            returnType: Protocol.LayerTree.CompositingReasonsResponse;
+        };
+        /**
+         * Disables compositing tree inspection.
+         */
+        'LayerTree.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables compositing tree inspection.
+         */
+        'LayerTree.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns the snapshot identifier.
+         */
+        'LayerTree.loadSnapshot': {
+            paramsType: [Protocol.LayerTree.LoadSnapshotRequest];
+            returnType: Protocol.LayerTree.LoadSnapshotResponse;
+        };
+        /**
+         * Returns the layer snapshot identifier.
+         */
+        'LayerTree.makeSnapshot': {
+            paramsType: [Protocol.LayerTree.MakeSnapshotRequest];
+            returnType: Protocol.LayerTree.MakeSnapshotResponse;
+        };
+        'LayerTree.profileSnapshot': {
+            paramsType: [Protocol.LayerTree.ProfileSnapshotRequest];
+            returnType: Protocol.LayerTree.ProfileSnapshotResponse;
+        };
+        /**
+         * Releases layer snapshot captured by the back-end.
+         */
+        'LayerTree.releaseSnapshot': {
+            paramsType: [Protocol.LayerTree.ReleaseSnapshotRequest];
+            returnType: void;
+        };
+        /**
+         * Replays the layer snapshot and returns the resulting bitmap.
+         */
+        'LayerTree.replaySnapshot': {
+            paramsType: [Protocol.LayerTree.ReplaySnapshotRequest];
+            returnType: Protocol.LayerTree.ReplaySnapshotResponse;
+        };
+        /**
+         * Replays the layer snapshot and returns canvas log.
+         */
+        'LayerTree.snapshotCommandLog': {
+            paramsType: [Protocol.LayerTree.SnapshotCommandLogRequest];
+            returnType: Protocol.LayerTree.SnapshotCommandLogResponse;
+        };
+        /**
+         * Clears the log.
+         */
+        'Log.clear': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disables log domain, prevents further log entries from being reported to the client.
+         */
+        'Log.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables log domain, sends the entries collected so far to the client by means of the
+         * `entryAdded` notification.
+         */
+        'Log.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * start violation reporting.
+         */
+        'Log.startViolationsReport': {
+            paramsType: [Protocol.Log.StartViolationsReportRequest];
+            returnType: void;
+        };
+        /**
+         * Stop violation reporting.
+         */
+        'Log.stopViolationsReport': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Memory.getDOMCounters': {
+            paramsType: [];
+            returnType: Protocol.Memory.GetDOMCountersResponse;
+        };
+        'Memory.prepareForLeakDetection': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Simulate OomIntervention by purging V8 memory.
+         */
+        'Memory.forciblyPurgeJavaScriptMemory': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enable/disable suppressing memory pressure notifications in all processes.
+         */
+        'Memory.setPressureNotificationsSuppressed': {
+            paramsType: [Protocol.Memory.SetPressureNotificationsSuppressedRequest];
+            returnType: void;
+        };
+        /**
+         * Simulate a memory pressure notification in all processes.
+         */
+        'Memory.simulatePressureNotification': {
+            paramsType: [Protocol.Memory.SimulatePressureNotificationRequest];
+            returnType: void;
+        };
+        /**
+         * Start collecting native memory profile.
+         */
+        'Memory.startSampling': {
+            paramsType: [Protocol.Memory.StartSamplingRequest?];
+            returnType: void;
+        };
+        /**
+         * Stop collecting native memory profile.
+         */
+        'Memory.stopSampling': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Retrieve native memory allocations profile
+         * collected since renderer process startup.
+         */
+        'Memory.getAllTimeSamplingProfile': {
+            paramsType: [];
+            returnType: Protocol.Memory.GetAllTimeSamplingProfileResponse;
+        };
+        /**
+         * Retrieve native memory allocations profile
+         * collected since browser process startup.
+         */
+        'Memory.getBrowserSamplingProfile': {
+            paramsType: [];
+            returnType: Protocol.Memory.GetBrowserSamplingProfileResponse;
+        };
+        /**
+         * Retrieve native memory allocations profile collected since last
+         * `startSampling` call.
+         */
+        'Memory.getSamplingProfile': {
+            paramsType: [];
+            returnType: Protocol.Memory.GetSamplingProfileResponse;
+        };
+        /**
+         * Sets a list of content encodings that will be accepted. Empty list means no encoding is accepted.
+         */
+        'Network.setAcceptedEncodings': {
+            paramsType: [Protocol.Network.SetAcceptedEncodingsRequest];
+            returnType: void;
+        };
+        /**
+         * Clears accepted encodings set by setAcceptedEncodings
+         */
+        'Network.clearAcceptedEncodingsOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Tells whether clearing browser cache is supported.
+         */
+        'Network.canClearBrowserCache': {
+            paramsType: [];
+            returnType: Protocol.Network.CanClearBrowserCacheResponse;
+        };
+        /**
+         * Tells whether clearing browser cookies is supported.
+         */
+        'Network.canClearBrowserCookies': {
+            paramsType: [];
+            returnType: Protocol.Network.CanClearBrowserCookiesResponse;
+        };
+        /**
+         * Tells whether emulation of network conditions is supported.
+         */
+        'Network.canEmulateNetworkConditions': {
+            paramsType: [];
+            returnType: Protocol.Network.CanEmulateNetworkConditionsResponse;
+        };
+        /**
+         * Clears browser cache.
+         */
+        'Network.clearBrowserCache': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Clears browser cookies.
+         */
+        'Network.clearBrowserCookies': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Response to Network.requestIntercepted which either modifies the request to continue with any
+         * modifications, or blocks it, or completes it with the provided response bytes. If a network
+         * fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted
+         * event will be sent with the same InterceptionId.
+         * Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead.
+         */
+        'Network.continueInterceptedRequest': {
+            paramsType: [Protocol.Network.ContinueInterceptedRequestRequest];
+            returnType: void;
+        };
+        /**
+         * Deletes browser cookies with matching name and url or domain/path pair.
+         */
+        'Network.deleteCookies': {
+            paramsType: [Protocol.Network.DeleteCookiesRequest];
+            returnType: void;
+        };
+        /**
+         * Disables network tracking, prevents network events from being sent to the client.
+         */
+        'Network.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Activates emulation of network conditions.
+         */
+        'Network.emulateNetworkConditions': {
+            paramsType: [Protocol.Network.EmulateNetworkConditionsRequest];
+            returnType: void;
+        };
+        /**
+         * Enables network tracking, network events will now be delivered to the client.
+         */
+        'Network.enable': {
+            paramsType: [Protocol.Network.EnableRequest?];
+            returnType: void;
+        };
+        /**
+         * Returns all browser cookies. Depending on the backend support, will return detailed cookie
+         * information in the `cookies` field.
+         */
+        'Network.getAllCookies': {
+            paramsType: [];
+            returnType: Protocol.Network.GetAllCookiesResponse;
+        };
+        /**
+         * Returns the DER-encoded certificate.
+         */
+        'Network.getCertificate': {
+            paramsType: [Protocol.Network.GetCertificateRequest];
+            returnType: Protocol.Network.GetCertificateResponse;
+        };
+        /**
+         * Returns all browser cookies for the current URL. Depending on the backend support, will return
+         * detailed cookie information in the `cookies` field.
+         */
+        'Network.getCookies': {
+            paramsType: [Protocol.Network.GetCookiesRequest?];
+            returnType: Protocol.Network.GetCookiesResponse;
+        };
+        /**
+         * Returns content served for the given request.
+         */
+        'Network.getResponseBody': {
+            paramsType: [Protocol.Network.GetResponseBodyRequest];
+            returnType: Protocol.Network.GetResponseBodyResponse;
+        };
+        /**
+         * Returns post data sent with the request. Returns an error when no data was sent with the request.
+         */
+        'Network.getRequestPostData': {
+            paramsType: [Protocol.Network.GetRequestPostDataRequest];
+            returnType: Protocol.Network.GetRequestPostDataResponse;
+        };
+        /**
+         * Returns content served for the given currently intercepted request.
+         */
+        'Network.getResponseBodyForInterception': {
+            paramsType: [Protocol.Network.GetResponseBodyForInterceptionRequest];
+            returnType: Protocol.Network.GetResponseBodyForInterceptionResponse;
+        };
+        /**
+         * Returns a handle to the stream representing the response body. Note that after this command,
+         * the intercepted request can't be continued as is -- you either need to cancel it or to provide
+         * the response body. The stream only supports sequential read, IO.read will fail if the position
+         * is specified.
+         */
+        'Network.takeResponseBodyForInterceptionAsStream': {
+            paramsType: [Protocol.Network.TakeResponseBodyForInterceptionAsStreamRequest];
+            returnType: Protocol.Network.TakeResponseBodyForInterceptionAsStreamResponse;
+        };
+        /**
+         * This method sends a new XMLHttpRequest which is identical to the original one. The following
+         * parameters should be identical: method, url, async, request body, extra headers, withCredentials
+         * attribute, user, password.
+         */
+        'Network.replayXHR': {
+            paramsType: [Protocol.Network.ReplayXHRRequest];
+            returnType: void;
+        };
+        /**
+         * Searches for given string in response content.
+         */
+        'Network.searchInResponseBody': {
+            paramsType: [Protocol.Network.SearchInResponseBodyRequest];
+            returnType: Protocol.Network.SearchInResponseBodyResponse;
+        };
+        /**
+         * Blocks URLs from loading.
+         */
+        'Network.setBlockedURLs': {
+            paramsType: [Protocol.Network.SetBlockedURLsRequest];
+            returnType: void;
+        };
+        /**
+         * Toggles ignoring of service worker for each request.
+         */
+        'Network.setBypassServiceWorker': {
+            paramsType: [Protocol.Network.SetBypassServiceWorkerRequest];
+            returnType: void;
+        };
+        /**
+         * Toggles ignoring cache for each request. If `true`, cache will not be used.
+         */
+        'Network.setCacheDisabled': {
+            paramsType: [Protocol.Network.SetCacheDisabledRequest];
+            returnType: void;
+        };
+        /**
+         * Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.
+         */
+        'Network.setCookie': {
+            paramsType: [Protocol.Network.SetCookieRequest];
+            returnType: Protocol.Network.SetCookieResponse;
+        };
+        /**
+         * Sets given cookies.
+         */
+        'Network.setCookies': {
+            paramsType: [Protocol.Network.SetCookiesRequest];
+            returnType: void;
+        };
+        /**
+         * For testing.
+         */
+        'Network.setDataSizeLimitsForTest': {
+            paramsType: [Protocol.Network.SetDataSizeLimitsForTestRequest];
+            returnType: void;
+        };
+        /**
+         * Specifies whether to always send extra HTTP headers with the requests from this page.
+         */
+        'Network.setExtraHTTPHeaders': {
+            paramsType: [Protocol.Network.SetExtraHTTPHeadersRequest];
+            returnType: void;
+        };
+        /**
+         * Specifies whether to attach a page script stack id in requests
+         */
+        'Network.setAttachDebugStack': {
+            paramsType: [Protocol.Network.SetAttachDebugStackRequest];
+            returnType: void;
+        };
+        /**
+         * Sets the requests to intercept that match the provided patterns and optionally resource types.
+         * Deprecated, please use Fetch.enable instead.
+         */
+        'Network.setRequestInterception': {
+            paramsType: [Protocol.Network.SetRequestInterceptionRequest];
+            returnType: void;
+        };
+        /**
+         * Allows overriding user agent with the given string.
+         */
+        'Network.setUserAgentOverride': {
+            paramsType: [Protocol.Network.SetUserAgentOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Returns information about the COEP/COOP isolation status.
+         */
+        'Network.getSecurityIsolationStatus': {
+            paramsType: [Protocol.Network.GetSecurityIsolationStatusRequest?];
+            returnType: Protocol.Network.GetSecurityIsolationStatusResponse;
+        };
+        /**
+         * Fetches the resource and returns the content.
+         */
+        'Network.loadNetworkResource': {
+            paramsType: [Protocol.Network.LoadNetworkResourceRequest];
+            returnType: Protocol.Network.LoadNetworkResourceResponse;
+        };
+        /**
+         * Disables domain notifications.
+         */
+        'Overlay.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables domain notifications.
+         */
+        'Overlay.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * For testing.
+         */
+        'Overlay.getHighlightObjectForTest': {
+            paramsType: [Protocol.Overlay.GetHighlightObjectForTestRequest];
+            returnType: Protocol.Overlay.GetHighlightObjectForTestResponse;
+        };
+        /**
+         * For Persistent Grid testing.
+         */
+        'Overlay.getGridHighlightObjectsForTest': {
+            paramsType: [Protocol.Overlay.GetGridHighlightObjectsForTestRequest];
+            returnType: Protocol.Overlay.GetGridHighlightObjectsForTestResponse;
+        };
+        /**
+         * For Source Order Viewer testing.
+         */
+        'Overlay.getSourceOrderHighlightObjectForTest': {
+            paramsType: [Protocol.Overlay.GetSourceOrderHighlightObjectForTestRequest];
+            returnType: Protocol.Overlay.GetSourceOrderHighlightObjectForTestResponse;
+        };
+        /**
+         * Hides any highlight.
+         */
+        'Overlay.hideHighlight': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Highlights owner element of the frame with given id.
+         */
+        'Overlay.highlightFrame': {
+            paramsType: [Protocol.Overlay.HighlightFrameRequest];
+            returnType: void;
+        };
+        /**
+         * Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or
+         * objectId must be specified.
+         */
+        'Overlay.highlightNode': {
+            paramsType: [Protocol.Overlay.HighlightNodeRequest];
+            returnType: void;
+        };
+        /**
+         * Highlights given quad. Coordinates are absolute with respect to the main frame viewport.
+         */
+        'Overlay.highlightQuad': {
+            paramsType: [Protocol.Overlay.HighlightQuadRequest];
+            returnType: void;
+        };
+        /**
+         * Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport.
+         */
+        'Overlay.highlightRect': {
+            paramsType: [Protocol.Overlay.HighlightRectRequest];
+            returnType: void;
+        };
+        /**
+         * Highlights the source order of the children of the DOM node with given id or with the given
+         * JavaScript object wrapper. Either nodeId or objectId must be specified.
+         */
+        'Overlay.highlightSourceOrder': {
+            paramsType: [Protocol.Overlay.HighlightSourceOrderRequest];
+            returnType: void;
+        };
+        /**
+         * Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted.
+         * Backend then generates 'inspectNodeRequested' event upon element selection.
+         */
+        'Overlay.setInspectMode': {
+            paramsType: [Protocol.Overlay.SetInspectModeRequest];
+            returnType: void;
+        };
+        /**
+         * Highlights owner element of all frames detected to be ads.
+         */
+        'Overlay.setShowAdHighlights': {
+            paramsType: [Protocol.Overlay.SetShowAdHighlightsRequest];
+            returnType: void;
+        };
+        'Overlay.setPausedInDebuggerMessage': {
+            paramsType: [Protocol.Overlay.SetPausedInDebuggerMessageRequest?];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows debug borders on layers
+         */
+        'Overlay.setShowDebugBorders': {
+            paramsType: [Protocol.Overlay.SetShowDebugBordersRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows the FPS counter
+         */
+        'Overlay.setShowFPSCounter': {
+            paramsType: [Protocol.Overlay.SetShowFPSCounterRequest];
+            returnType: void;
+        };
+        /**
+         * Highlight multiple elements with the CSS Grid overlay.
+         */
+        'Overlay.setShowGridOverlays': {
+            paramsType: [Protocol.Overlay.SetShowGridOverlaysRequest];
+            returnType: void;
+        };
+        'Overlay.setShowFlexOverlays': {
+            paramsType: [Protocol.Overlay.SetShowFlexOverlaysRequest];
+            returnType: void;
+        };
+        'Overlay.setShowScrollSnapOverlays': {
+            paramsType: [Protocol.Overlay.SetShowScrollSnapOverlaysRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows paint rectangles
+         */
+        'Overlay.setShowPaintRects': {
+            paramsType: [Protocol.Overlay.SetShowPaintRectsRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows layout shift regions
+         */
+        'Overlay.setShowLayoutShiftRegions': {
+            paramsType: [Protocol.Overlay.SetShowLayoutShiftRegionsRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows scroll bottleneck rects
+         */
+        'Overlay.setShowScrollBottleneckRects': {
+            paramsType: [Protocol.Overlay.SetShowScrollBottleneckRectsRequest];
+            returnType: void;
+        };
+        /**
+         * Requests that backend shows hit-test borders on layers
+         */
+        'Overlay.setShowHitTestBorders': {
+            paramsType: [Protocol.Overlay.SetShowHitTestBordersRequest];
+            returnType: void;
+        };
+        /**
+         * Request that backend shows an overlay with web vital metrics.
+         */
+        'Overlay.setShowWebVitals': {
+            paramsType: [Protocol.Overlay.SetShowWebVitalsRequest];
+            returnType: void;
+        };
+        /**
+         * Paints viewport size upon main frame resize.
+         */
+        'Overlay.setShowViewportSizeOnResize': {
+            paramsType: [Protocol.Overlay.SetShowViewportSizeOnResizeRequest];
+            returnType: void;
+        };
+        /**
+         * Add a dual screen device hinge
+         */
+        'Overlay.setShowHinge': {
+            paramsType: [Protocol.Overlay.SetShowHingeRequest?];
+            returnType: void;
+        };
+        /**
+         * Deprecated, please use addScriptToEvaluateOnNewDocument instead.
+         */
+        'Page.addScriptToEvaluateOnLoad': {
+            paramsType: [Protocol.Page.AddScriptToEvaluateOnLoadRequest];
+            returnType: Protocol.Page.AddScriptToEvaluateOnLoadResponse;
+        };
+        /**
+         * Evaluates given script in every frame upon creation (before loading frame's scripts).
+         */
+        'Page.addScriptToEvaluateOnNewDocument': {
+            paramsType: [Protocol.Page.AddScriptToEvaluateOnNewDocumentRequest];
+            returnType: Protocol.Page.AddScriptToEvaluateOnNewDocumentResponse;
+        };
         /**
          * Brings page to front (activates tab).
          */
-        bringToFront(): Promise<void>;
-        /**
-         * Emulates given device metrics and user agent. This method is a shortcut for
-         * calling two methods: {@link Page.setUserAgent} and {@link Page.setViewport}
-         * To aid emulation, Puppeteer provides a list of device descriptors that can
-         * be obtained via the {@link Puppeteer.devices} `page.emulate` will resize
-         * the page. A lot of websites don't expect phones to change size, so you
-         * should emulate before navigating to the page.
-         * @example
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const iPhone = puppeteer.devices['iPhone 6'];
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * await page.emulate(iPhone);
-         * await page.goto('https://www.google.com');
-         * // other actions...
-         * await browser.close();
-         * })();
-         * ```
-         * @remarks List of all available devices is available in the source code:
-         * {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-         */
-        emulate(options: {
-            viewport: Viewport;
-            userAgent: string;
-        }): Promise<void>;
-        /**
-         * @param enabled - Whether or not to enable JavaScript on the page.
-         * @returns
-         * @remarks
-         * NOTE: changing this value won't affect scripts that have already been run.
-         * It will take full effect on the next navigation.
-         */
-        setJavaScriptEnabled(enabled: boolean): Promise<void>;
-        /**
-         * Toggles bypassing page's Content-Security-Policy.
-         * @param enabled - sets bypassing of page's Content-Security-Policy.
-         * @remarks
-         * NOTE: CSP bypassing happens at the moment of CSP initialization rather than
-         * evaluation. Usually, this means that `page.setBypassCSP` should be called
-         * before navigating to the domain.
-         */
-        setBypassCSP(enabled: boolean): Promise<void>;
-        /**
-         * @param type - Changes the CSS media type of the page. The only allowed
-         * values are `screen`, `print` and `null`. Passing `null` disables CSS media
-         * emulation.
-         * @example
-         * ```
-         * await page.evaluate(() => matchMedia('screen').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('print').matches);
-         * // → false
-         *
-         * await page.emulateMediaType('print');
-         * await page.evaluate(() => matchMedia('screen').matches);
-         * // → false
-         * await page.evaluate(() => matchMedia('print').matches);
-         * // → true
-         *
-         * await page.emulateMediaType(null);
-         * await page.evaluate(() => matchMedia('screen').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('print').matches);
-         * // → false
-         * ```
-         */
-        emulateMediaType(type?: string): Promise<void>;
-        /**
-         * Enables CPU throttling to emulate slow CPUs.
-         * @param factor - slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
-         */
-        emulateCPUThrottling(factor: number | null): Promise<void>;
-        /**
-         * @param features - `<?Array<Object>>` Given an array of media feature
-         * objects, emulates CSS media features on the page. Each media feature object
-         * must have the following properties:
-         * @example
-         * ```js
-         * await page.emulateMediaFeatures([
-         * { name: 'prefers-color-scheme', value: 'dark' },
-         * ]);
-         * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-         * // → false
-         *
-         * await page.emulateMediaFeatures([
-         * { name: 'prefers-reduced-motion', value: 'reduce' },
-         * ]);
-         * await page.evaluate(
-         * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-         * );
-         * // → true
-         * await page.evaluate(
-         * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-         * );
-         * // → false
-         *
-         * await page.emulateMediaFeatures([
-         * { name: 'prefers-color-scheme', value: 'dark' },
-         * { name: 'prefers-reduced-motion', value: 'reduce' },
-         * ]);
-         * await page.evaluate(() => matchMedia('(prefers-color-scheme: dark)').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('(prefers-color-scheme: light)').matches);
-         * // → false
-         * await page.evaluate(
-         * () => matchMedia('(prefers-reduced-motion: reduce)').matches
-         * );
-         * // → true
-         * await page.evaluate(
-         * () => matchMedia('(prefers-reduced-motion: no-preference)').matches
-         * );
-         * // → false
-         *
-         * await page.emulateMediaFeatures([{ name: 'color-gamut', value: 'p3' }]);
-         * await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
-         * // → true
-         * await page.evaluate(() => matchMedia('(color-gamut: rec2020)').matches);
-         * // → false
-         * ```
-         */
-        emulateMediaFeatures(features?: MediaFeature[]): Promise<void>;
-        /**
-         * @param timezoneId - Changes the timezone of the page. See
-         * {@link https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt | ICU’s metaZones.txt}
-         * for a list of supported timezone IDs. Passing
-         * `null` disables timezone emulation.
-         */
-        emulateTimezone(timezoneId?: string): Promise<void>;
-        /**
-         * Emulates the idle state.
-         * If no arguments set, clears idle state emulation.
-         *
-         * @example
-         * ```js
-         * // set idle emulation
-         * await page.emulateIdleState({isUserActive: true, isScreenUnlocked: false});
-         *
-         * // do some checks here
-         * ...
-         *
-         * // clear idle emulation
-         * await page.emulateIdleState();
-         * ```
-         *
-         * @param overrides - Mock idle state. If not set, clears idle overrides
-         */
-        emulateIdleState(overrides?: {
-            isUserActive: boolean;
-            isScreenUnlocked: boolean;
-        }): Promise<void>;
-        /**
-         * Simulates the given vision deficiency on the page.
-         *
-         * @example
-         * ```js
-         * const puppeteer = require('puppeteer');
-         *
-         * (async () => {
-         *   const browser = await puppeteer.launch();
-         *   const page = await browser.newPage();
-         *   await page.goto('https://v8.dev/blog/10-years');
-         *
-         *   await page.emulateVisionDeficiency('achromatopsia');
-         *   await page.screenshot({ path: 'achromatopsia.png' });
-         *
-         *   await page.emulateVisionDeficiency('deuteranopia');
-         *   await page.screenshot({ path: 'deuteranopia.png' });
-         *
-         *   await page.emulateVisionDeficiency('blurredVision');
-         *   await page.screenshot({ path: 'blurred-vision.png' });
-         *
-         *   await browser.close();
-         * })();
-         * ```
-         *
-         * @param type - the type of deficiency to simulate, or `'none'` to reset.
-         */
-        emulateVisionDeficiency(type?: Protocol.Emulation.SetEmulatedVisionDeficiencyRequest['type']): Promise<void>;
-        /**
-         * `page.setViewport` will resize the page. A lot of websites don't expect
-         * phones to change size, so you should set the viewport before navigating to
-         * the page.
-         *
-         * In the case of multiple pages in a single browser, each page can have its
-         * own viewport size.
-         * @example
-         * ```js
-         * const page = await browser.newPage();
-         * await page.setViewport({
-         * width: 640,
-         * height: 480,
-         * deviceScaleFactor: 1,
-         * });
-         * await page.goto('https://example.com');
-         * ```
-         *
-         * @param viewport -
-         * @remarks
-         * Argument viewport have following properties:
-         *
-         * - `width`: page width in pixels. required
-         *
-         * - `height`: page height in pixels. required
-         *
-         * - `deviceScaleFactor`: Specify device scale factor (can be thought of as
-         *   DPR). Defaults to `1`.
-         *
-         * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-         *   to `false`.
-         *
-         * - `hasTouch`: Specifies if viewport supports touch events. Defaults to `false`
-         *
-         * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to false.
-         *
-         * NOTE: in certain cases, setting viewport will reload the page in order to
-         * set the isMobile or hasTouch properties.
-         */
-        setViewport(viewport: Viewport): Promise<void>;
-        /**
-         * @returns
-         *
-         * - `width`: page's width in pixels
-         *
-         * - `height`: page's height in pixels
-         *
-         * - `deviceScalarFactor`: Specify device scale factor (can be though of as
-         *   dpr). Defaults to `1`.
-         *
-         * - `isMobile`: Whether the meta viewport tag is taken into account. Defaults
-         *   to `false`.
-         *
-         * - `hasTouch`: Specifies if viewport supports touch events. Defaults to
-         *   `false`.
-         *
-         * - `isLandScape`: Specifies if viewport is in landscape mode. Defaults to
-         *   `false`.
-         */
-        viewport(): Viewport | null;
-        /**
-         * @remarks
-         *
-         * Evaluates a function in the page's context and returns the result.
-         *
-         * If the function passed to `page.evaluteHandle` returns a Promise, the
-         * function will wait for the promise to resolve and return its value.
-         *
-         * @example
-         *
-         * ```js
-         * const result = await frame.evaluate(() => {
-         *   return Promise.resolve(8 * 7);
-         * });
-         * console.log(result); // prints "56"
-         * ```
-         *
-         * You can pass a string instead of a function (although functions are
-         * recommended as they are easier to debug and use with TypeScript):
-         *
-         * @example
-         * ```
-         * const aHandle = await page.evaluate('1 + 2');
-         * ```
-         *
-         * To get the best TypeScript experience, you should pass in as the
-         * generic the type of `pageFunction`:
-         *
-         * ```
-         * const aHandle = await page.evaluate<() => number>(() => 2);
-         * ```
-         *
-         * @example
-         *
-         * {@link ElementHandle} instances (including {@link JSHandle}s) can be passed
-         * as arguments to the `pageFunction`:
-         *
-         * ```
-         * const bodyHandle = await page.$('body');
-         * const html = await page.evaluate(body => body.innerHTML, bodyHandle);
-         * await bodyHandle.dispose();
-         * ```
-         *
-         * @param pageFunction - a function that is run within the page
-         * @param args - arguments to be passed to the pageFunction
-         *
-         * @returns the return value of `pageFunction`.
-         */
-        evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
-        /**
-         * Adds a function which would be invoked in one of the following scenarios:
-         *
-         * - whenever the page is navigated
-         *
-         * - whenever the child frame is attached or navigated. In this case, the
-         * function is invoked in the context of the newly attached frame.
-         *
-         * The function is invoked after the document was created but before any of
-         * its scripts were run. This is useful to amend the JavaScript environment,
-         * e.g. to seed `Math.random`.
-         * @param pageFunction - Function to be evaluated in browser context
-         * @param args - Arguments to pass to `pageFunction`
-         * @example
-         * An example of overriding the navigator.languages property before the page loads:
-         * ```js
-         * // preload.js
-         *
-         * // overwrite the `languages` property to use a custom getter
-         * Object.defineProperty(navigator, 'languages', {
-         * get: function () {
-         * return ['en-US', 'en', 'bn'];
-         * },
-         * });
-         *
-         * // In your puppeteer script, assuming the preload.js file is
-         * in same folder of our script
-         * const preloadFile = fs.readFileSync('./preload.js', 'utf8');
-         * await page.evaluateOnNewDocument(preloadFile);
-         * ```
-         */
-        evaluateOnNewDocument(pageFunction: Function | string, ...args: unknown[]): Promise<void>;
-        /**
-         * Toggles ignoring cache for each request based on the enabled state. By
-         * default, caching is enabled.
-         * @param enabled - sets the `enabled` state of cache
-         */
-        setCacheEnabled(enabled?: boolean): Promise<void>;
-        /**
-         * @remarks
-         * Options object which might have the following properties:
-         *
-         * - `path` : The file path to save the image to. The screenshot type
-         *   will be inferred from file extension. If `path` is a relative path, then
-         *   it is resolved relative to
-         *   {@link https://nodejs.org/api/process.html#process_process_cwd
-         *   | current working directory}.
-         *   If no path is provided, the image won't be saved to the disk.
-         *
-         * - `type` : Specify screenshot type, can be either `jpeg` or `png`.
-         *   Defaults to 'png'.
-         *
-         * - `quality` : The quality of the image, between 0-100. Not
-         *   applicable to `png` images.
-         *
-         * - `fullPage` : When true, takes a screenshot of the full
-         *   scrollable page. Defaults to `false`
-         *
-         * - `clip` : An object which specifies clipping region of the page.
-         *   Should have the following fields:<br/>
-         *  - `x` : x-coordinate of top-left corner of clip area.<br/>
-         *  - `y` :  y-coordinate of top-left corner of clip area.<br/>
-         *  - `width` : width of clipping area.<br/>
-         *  - `height` : height of clipping area.
-         *
-         * - `omitBackground` : Hides default white background and allows
-         *   capturing screenshots with transparency. Defaults to `false`
-         *
-         * - `encoding` : The encoding of the image, can be either base64 or
-         *   binary. Defaults to `binary`.
-         *
-         *
-         * NOTE: Screenshots take at least 1/6 second on OS X. See
-         * {@link https://crbug.com/741689} for discussion.
-         * @returns Promise which resolves to buffer or a base64 string (depending on
-         * the value of `encoding`) with captured screenshot.
-         */
-        screenshot(options?: ScreenshotOptions): Promise<Buffer | string>;
-        private _screenshotTask;
-        /**
-         * Generatees a PDF of the page with the `print` CSS media type.
-         * @remarks
-         *
-         * NOTE: PDF generation is only supported in Chrome headless mode.
-         *
-         * To generate a PDF with the `screen` media type, call
-         * {@link Page.emulateMediaType | `page.emulateMediaType('screen')`} before
-         * calling `page.pdf()`.
-         *
-         * By default, `page.pdf()` generates a pdf with modified colors for printing.
-         * Use the
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-print-color-adjust | `-webkit-print-color-adjust`}
-         * property to force rendering of exact colors.
-         *
-         *
-         * @param options - options for generating the PDF.
-         */
-        createPDFStream(options?: PDFOptions): Promise<Readable>;
-        /**
-         * @param options -
-         * @returns
-         */
-        pdf(options?: PDFOptions): Promise<Buffer>;
-        /**
-         * @returns The page's title
-         * @remarks
-         * Shortcut for {@link Frame.title | page.mainFrame().title()}.
-         */
-        title(): Promise<string>;
-        close(options?: {
-            runBeforeUnload?: boolean;
-        }): Promise<void>;
-        /**
-         * Indicates that the page has been closed.
-         * @returns
-         */
-        isClosed(): boolean;
-        get mouse(): Mouse;
-        /**
-         * This method fetches an element with `selector`, scrolls it into view if
-         * needed, and then uses {@link Page.mouse} to click in the center of the
-         * element. If there's no element matching `selector`, the method throws an
-         * error.
-         * @remarks Bear in mind that if `click()` triggers a navigation event and
-         * there's a separate `page.waitForNavigation()` promise to be resolved, you
-         * may end up with a race condition that yields unexpected results. The
-         * correct pattern for click and wait for navigation is the following:
-         * ```js
-         * const [response] = await Promise.all([
-         * page.waitForNavigation(waitOptions),
-         * page.click(selector, clickOptions),
-         * ]);
-         * ```
-         * Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
-         * @param selector - A `selector` to search for element to click. If there are
-         * multiple elements satisfying the `selector`, the first will be clicked
-         * @param options - `Object`
-         * @returns Promise which resolves when the element matching `selector` is
-         * successfully clicked. The Promise will be rejected if there is no element
-         * matching `selector`.
-         */
-        click(selector: string, options?: {
-            delay?: number;
-            button?: MouseButton;
-            clickCount?: number;
-        }): Promise<void>;
-        /**
-         * This method fetches an element with `selector` and focuses it. If there's no
-         * element matching `selector`, the method throws an error.
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
-         * of an element to focus. If there are multiple elements satisfying the
-         * selector, the first will be focused.
-         * @returns  Promise which resolves when the element matching selector is
-         * successfully focused. The promise will be rejected if there is no element
-         * matching selector.
-         * @remarks
-         * Shortcut for {@link Frame.focus | page.mainFrame().focus(selector)}.
-         */
-        focus(selector: string): Promise<void>;
-        /**
-         * This method fetches an element with `selector`, scrolls it into view if
-         * needed, and then uses {@link Page.mouse} to hover over the center of the element.
-         * If there's no element matching `selector`, the method throws an error.
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * to search for element to hover. If there are multiple elements satisfying
-         * the selector, the first will be hovered.
-         * @returns Promise which resolves when the element matching `selector` is
-         * successfully hovered. Promise gets rejected if there's no element matching
-         * `selector`.
-         * @remarks
-         * Shortcut for {@link Page.hover | page.mainFrame().hover(selector)}.
-         */
-        hover(selector: string): Promise<void>;
-        /**
-         * Triggers a `change` and `input` event once all the provided options have been
-         * selected. If there's no `<select>` element matching `selector`, the method
-         * throws an error.
-         *
-         * @example
-         * ```js
-         * page.select('select#colors', 'blue'); // single selection
-         * page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
-         * ```
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-         * to query the page for
-         * @param values - Values of options to select. If the `<select>` has the
-         * `multiple` attribute, all values are considered, otherwise only the first one
-         * is taken into account.
-         * @returns
-         *
-         * @remarks
-         * Shortcut for {@link Frame.select | page.mainFrame().select()}
-         */
-        select(selector: string, ...values: string[]): Promise<string[]>;
-        /**
-         * This method fetches an element with `selector`, scrolls it into view if
-         * needed, and then uses {@link Page.touchscreen} to tap in the center of the element.
-         * If there's no element matching `selector`, the method throws an error.
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
-         * to search for element to tap. If there are multiple elements satisfying the
-         * selector, the first will be tapped.
-         * @returns
-         * @remarks
-         * Shortcut for {@link Frame.tap | page.mainFrame().tap(selector)}.
-         */
-        tap(selector: string): Promise<void>;
-        /**
-         * Sends a `keydown`, `keypress/input`, and `keyup` event for each character
-         * in the text.
-         *
-         * To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
-         * @example
-         * ```
-         * await page.type('#mytextarea', 'Hello');
-         * // Types instantly
-         * await page.type('#mytextarea', 'World', { delay: 100 });
-         * // Types slower, like a user
-         * ```
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * of an element to type into. If there are multiple elements satisfying the
-         * selector, the first will be used.
-         * @param text - A text to type into a focused element.
-         * @param options - have property `delay` which is the Time to wait between
-         * key presses in milliseconds. Defaults to `0`.
-         * @returns
-         * @remarks
-         */
-        type(selector: string, text: string, options?: {
-            delay: number;
-        }): Promise<void>;
-        /**
-         * @remarks
-         *
-         * This method behaves differently depending on the first parameter. If it's a
-         * `string`, it will be treated as a `selector` or `xpath` (if the string
-         * starts with `//`). This method then is a shortcut for
-         * {@link Page.waitForSelector} or {@link Page.waitForXPath}.
-         *
-         * If the first argument is a function this method is a shortcut for
-         * {@link Page.waitForFunction}.
-         *
-         * If the first argument is a `number`, it's treated as a timeout in
-         * milliseconds and the method returns a promise which resolves after the
-         * timeout.
-         *
-         * @param selectorOrFunctionOrTimeout - a selector, predicate or timeout to
-         * wait for.
-         * @param options - optional waiting parameters.
-         * @param args - arguments to pass to `pageFunction`.
-         *
-         * @deprecated Don't use this method directly. Instead use the more explicit
-         * methods available: {@link Page.waitForSelector},
-         * {@link Page.waitForXPath}, {@link Page.waitForFunction} or
-         * {@link Page.waitForTimeout}.
-         */
-        waitFor(selectorOrFunctionOrTimeout: string | number | Function, options?: {
-            visible?: boolean;
-            hidden?: boolean;
-            timeout?: number;
-            polling?: string | number;
-        }, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
-        /**
-         * Causes your script to wait for the given number of milliseconds.
-         *
-         * @remarks
-         *
-         * It's generally recommended to not wait for a number of seconds, but instead
-         * use {@link Page.waitForSelector}, {@link Page.waitForXPath} or
-         * {@link Page.waitForFunction} to wait for exactly the conditions you want.
-         *
-         * @example
-         *
-         * Wait for 1 second:
-         *
-         * ```
-         * await page.waitForTimeout(1000);
-         * ```
-         *
-         * @param milliseconds - the number of milliseconds to wait.
-         */
-        waitForTimeout(milliseconds: number): Promise<void>;
-        /**
-         * Wait for the `selector` to appear in page. If at the moment of calling the
-         * method the `selector` already exists, the method will return immediately. If
-         * the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
-         * function will throw.
-         *
-         * This method works across navigations:
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * let currentURL;
-         * page
-         * .waitForSelector('img')
-         * .then(() => console.log('First URL with image: ' + currentURL));
-         * for (currentURL of [
-         * 'https://example.com',
-         * 'https://google.com',
-         * 'https://bbc.com',
-         * ]) {
-         * await page.goto(currentURL);
-         * }
-         * await browser.close();
-         * })();
-         * ```
-         * @param selector - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
-         * of an element to wait for
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves when element specified by selector string
-         * is added to DOM. Resolves to `null` if waiting for hidden: `true` and
-         * selector is not found in DOM.
-         * @remarks
-         * The optional Parameter in Arguments `options` are :
-         *
-         * - `Visible`: A boolean wait for element to be present in DOM and to be
-         * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-         * properties. Defaults to `false`.
-         *
-         * - `hidden`: ait for element to not be found in the DOM or to be hidden,
-         * i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
-         * `false`.
-         *
-         * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-         * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-         * by using the {@link Page.setDefaultTimeout} method.
-         */
-        waitForSelector(selector: string, options?: {
-            visible?: boolean;
-            hidden?: boolean;
-            timeout?: number;
-        }): Promise<ElementHandle | null>;
-        /**
-         * Wait for the `xpath` to appear in page. If at the moment of calling the
-         * method the `xpath` already exists, the method will return immediately. If
-         * the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
-         * function will throw.
-         *
-         * This method works across navigation
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * let currentURL;
-         * page
-         * .waitForXPath('//img')
-         * .then(() => console.log('First URL with image: ' + currentURL));
-         * for (currentURL of [
-         * 'https://example.com',
-         * 'https://google.com',
-         * 'https://bbc.com',
-         * ]) {
-         * await page.goto(currentURL);
-         * }
-         * await browser.close();
-         * })();
-         * ```
-         * @param xpath - A
-         * {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
-         * element to wait for
-         * @param options - Optional waiting parameters
-         * @returns Promise which resolves when element specified by xpath string is
-         * added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
-         * not found in DOM.
-         * @remarks
-         * The optional Argument `options` have properties:
-         *
-         * - `visible`: A boolean to wait for element to be present in DOM and to be
-         * visible, i.e. to not have `display: none` or `visibility: hidden` CSS
-         * properties. Defaults to `false`.
-         *
-         * - `hidden`: A boolean wait for element to not be found in the DOM or to be
-         * hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
-         * Defaults to `false`.
-         *
-         * - `timeout`: A number which is maximum time to wait for in milliseconds.
-         * Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
-         * value can be changed by using the {@link Page.setDefaultTimeout} method.
-         */
-        waitForXPath(xpath: string, options?: {
-            visible?: boolean;
-            hidden?: boolean;
-            timeout?: number;
-        }): Promise<ElementHandle | null>;
-        /**
-         * The `waitForFunction` can be used to observe viewport size change:
-         *
-         * ```
-         * const puppeteer = require('puppeteer');
-         * (async () => {
-         * const browser = await puppeteer.launch();
-         * const page = await browser.newPage();
-         * const watchDog = page.waitForFunction('window.innerWidth < 100');
-         * await page.setViewport({ width: 50, height: 50 });
-         * await watchDog;
-         * await browser.close();
-         * })();
-         * ```
-         * To pass arguments from node.js to the predicate of `page.waitForFunction` function:
-         * ```
-         * const selector = '.foo';
-         * await page.waitForFunction(
-         * (selector) => !!document.querySelector(selector),
-         * {},
-         * selector
-         * );
-         * ```
-         * The predicate of `page.waitForFunction` can be asynchronous too:
-         * ```
-         * const username = 'github-username';
-         * await page.waitForFunction(
-         * async (username) => {
-         * const githubResponse = await fetch(
-         *  `https://api.github.com/users/${username}`
-         * );
-         * const githubUser = await githubResponse.json();
-         * // show the avatar
-         * const img = document.createElement('img');
-         * img.src = githubUser.avatar_url;
-         * // wait 3 seconds
-         * await new Promise((resolve, reject) => setTimeout(resolve, 3000));
-         * img.remove();
-         * },
-         * {},
-         * username
-         * );
-         * ```
-         * @param pageFunction - Function to be evaluated in browser context
-         * @param options - Optional waiting parameters
-         * @param args -  Arguments to pass to `pageFunction`
-         * @returns Promise which resolves when the `pageFunction` returns a truthy
-         * value. It resolves to a JSHandle of the truthy value.
-         *
-         * The optional waiting parameter can be:
-         *
-         * - `Polling`: An interval at which the `pageFunction` is executed, defaults to
-         *   `raf`. If `polling` is a number, then it is treated as an interval in
-         *   milliseconds at which the function would be executed. If polling is a
-         *   string, then it can be one of the following values:<br/>
-         *    - `raf`: to constantly execute `pageFunction` in `requestAnimationFrame`
-         *      callback. This is the tightest polling mode which is suitable to
-         *      observe styling changes.<br/>
-         *    - `mutation`: to execute pageFunction on every DOM mutation.
-         *
-         * - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
-         * (30 seconds). Pass `0` to disable timeout. The default value can be changed
-         * by using the
-         * {@link Page.setDefaultTimeout | page.setDefaultTimeout(timeout)} method.
-         *
-         */
-        waitForFunction(pageFunction: Function | string, options?: {
-            timeout?: number;
-            polling?: string | number;
-        }, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
-    }
-
-    /**
-     * @internal
-     */
-    export declare interface PageBinding {
-        name: string;
-        pptrFunction: Function;
-    }
-
-    /**
-     * All the events that a page instance may emit.
-     *
-     * @public
-     */
-    export declare const enum PageEmittedEvents {
-        /** Emitted when the page closes.
-         * @eventProperty
-         */
-        Close = "close",
-        /**
-         * Emitted when JavaScript within the page calls one of console API methods,
-         * e.g. `console.log` or `console.dir`. Also emitted if the page throws an
-         * error or a warning.
-         *
-         * @remarks
-         *
-         * A `console` event provides a {@link ConsoleMessage} representing the
-         * console message that was logged.
-         *
-         * @example
-         * An example of handling `console` event:
-         * ```js
-         * page.on('console', msg => {
-         *   for (let i = 0; i < msg.args().length; ++i)
-         *    console.log(`${i}: ${msg.args()[i]}`);
-         *  });
-         *  page.evaluate(() => console.log('hello', 5, {foo: 'bar'}));
-         * ```
-         */
-        Console = "console",
-        /**
-         * Emitted when a JavaScript dialog appears, such as `alert`, `prompt`,
-         * `confirm` or `beforeunload`. Puppeteer can respond to the dialog via
-         * {@link Dialog.accept} or {@link Dialog.dismiss}.
-         */
-        Dialog = "dialog",
-        /**
-         * Emitted when the JavaScript
-         * {@link https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded | DOMContentLoaded } event is dispatched.
-         */
-        DOMContentLoaded = "domcontentloaded",
-        /**
-         * Emitted when the page crashes. Will contain an `Error`.
-         */
-        Error = "error",
-        /** Emitted when a frame is attached. Will contain a {@link Frame}. */
-        FrameAttached = "frameattached",
-        /** Emitted when a frame is detached. Will contain a {@link Frame}. */
-        FrameDetached = "framedetached",
-        /** Emitted when a frame is navigated to a new URL. Will contain a {@link Frame}. */
-        FrameNavigated = "framenavigated",
-        /**
-         * Emitted when the JavaScript
-         * {@link https://developer.mozilla.org/en-US/docs/Web/Events/load | load}
-         * event is dispatched.
-         */
-        Load = "load",
-        /**
-         * Emitted when the JavaScript code makes a call to `console.timeStamp`. For
-         * the list of metrics see {@link Page.metrics | page.metrics}.
-         *
-         * @remarks
-         * Contains an object with two properties:
-         * - `title`: the title passed to `console.timeStamp`
-         * - `metrics`: objec containing metrics as key/value pairs. The values will
-         *   be `number`s.
-         */
-        Metrics = "metrics",
-        /**
-         * Emitted when an uncaught exception happens within the page.
-         * Contains an `Error`.
-         */
-        PageError = "pageerror",
-        /**
-         * Emitted when the page opens a new tab or window.
-         *
-         * Contains a {@link Page} corresponding to the popup window.
-         *
-         * @example
-         *
-         * ```js
-         * const [popup] = await Promise.all([
-         *   new Promise(resolve => page.once('popup', resolve)),
-         *   page.click('a[target=_blank]'),
-         * ]);
-         * ```
-         *
-         * ```js
-         * const [popup] = await Promise.all([
-         *   new Promise(resolve => page.once('popup', resolve)),
-         *   page.evaluate(() => window.open('https://example.com')),
-         * ]);
-         * ```
-         */
-        Popup = "popup",
-        /**
-         * Emitted when a page issues a request and contains a {@link HTTPRequest}.
-         *
-         * @remarks
-         * The object is readonly. See {@link Page.setRequestInterception} for intercepting
-         * and mutating requests.
-         */
-        Request = "request",
-        /**
-         * Emitted when a request ended up loading from cache. Contains a {@link HTTPRequest}.
-         *
-         * @remarks
-         * For certain requests, might contain undefined.
-         * {@link https://crbug.com/750469}
-         */
-        RequestServedFromCache = "requestservedfromcache",
-        /**
-         * Emitted when a request fails, for example by timing out.
-         *
-         * Contains a {@link HTTPRequest}.
-         *
-         * @remarks
-         *
-         * NOTE: HTTP Error responses, such as 404 or 503, are still successful
-         * responses from HTTP standpoint, so request will complete with
-         * `requestfinished` event and not with `requestfailed`.
-         */
-        RequestFailed = "requestfailed",
-        /**
-         * Emitted when a request finishes successfully. Contains a {@link HTTPRequest}.
-         */
-        RequestFinished = "requestfinished",
-        /**
-         * Emitted when a response is received. Contains a {@link HTTPResponse}.
-         */
-        Response = "response",
-        /**
-         * Emitted when a dedicated
-         * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}
-         * is spawned by the page.
-         */
-        WorkerCreated = "workercreated",
-        /**
-         * Emitted when a dedicated
-         * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}
-         * is destroyed by the page.
-         */
-        WorkerDestroyed = "workerdestroyed"
-    }
-
-    /**
-     * Denotes the objects received by callback functions for page events.
-     *
-     * See {@link PageEmittedEvents} for more detail on the events and when they are
-     * emitted.
-     * @public
-     */
-    export declare interface PageEventObject {
-        close: never;
-        console: ConsoleMessage;
-        dialog: Dialog;
-        domcontentloaded: never;
-        error: Error;
-        frameattached: Frame;
-        framedetached: Frame;
-        framenavigated: Frame;
-        load: never;
-        metrics: {
-            title: string;
-            metrics: Metrics;
+        'Page.bringToFront': {
+            paramsType: [];
+            returnType: void;
         };
-        pageerror: Error;
-        popup: Page;
-        request: HTTPRequest;
-        response: HTTPResponse;
-        requestfailed: HTTPRequest;
-        requestfinished: HTTPRequest;
-        requestservedfromcache: HTTPRequest;
-        workercreated: WebWorker;
-        workerdestroyed: WebWorker;
+        /**
+         * Capture page screenshot.
+         */
+        'Page.captureScreenshot': {
+            paramsType: [Protocol.Page.CaptureScreenshotRequest?];
+            returnType: Protocol.Page.CaptureScreenshotResponse;
+        };
+        /**
+         * Returns a snapshot of the page as a string. For MHTML format, the serialization includes
+         * iframes, shadow DOM, external resources, and element-inline styles.
+         */
+        'Page.captureSnapshot': {
+            paramsType: [Protocol.Page.CaptureSnapshotRequest?];
+            returnType: Protocol.Page.CaptureSnapshotResponse;
+        };
+        /**
+         * Clears the overridden device metrics.
+         */
+        'Page.clearDeviceMetricsOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Clears the overridden Device Orientation.
+         */
+        'Page.clearDeviceOrientationOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Clears the overridden Geolocation Position and Error.
+         */
+        'Page.clearGeolocationOverride': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Creates an isolated world for the given frame.
+         */
+        'Page.createIsolatedWorld': {
+            paramsType: [Protocol.Page.CreateIsolatedWorldRequest];
+            returnType: Protocol.Page.CreateIsolatedWorldResponse;
+        };
+        /**
+         * Deletes browser cookie with given name, domain and path.
+         */
+        'Page.deleteCookie': {
+            paramsType: [Protocol.Page.DeleteCookieRequest];
+            returnType: void;
+        };
+        /**
+         * Disables page domain notifications.
+         */
+        'Page.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables page domain notifications.
+         */
+        'Page.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'Page.getAppManifest': {
+            paramsType: [];
+            returnType: Protocol.Page.GetAppManifestResponse;
+        };
+        'Page.getInstallabilityErrors': {
+            paramsType: [];
+            returnType: Protocol.Page.GetInstallabilityErrorsResponse;
+        };
+        'Page.getManifestIcons': {
+            paramsType: [];
+            returnType: Protocol.Page.GetManifestIconsResponse;
+        };
+        /**
+         * Returns all browser cookies. Depending on the backend support, will return detailed cookie
+         * information in the `cookies` field.
+         */
+        'Page.getCookies': {
+            paramsType: [];
+            returnType: Protocol.Page.GetCookiesResponse;
+        };
+        /**
+         * Returns present frame tree structure.
+         */
+        'Page.getFrameTree': {
+            paramsType: [];
+            returnType: Protocol.Page.GetFrameTreeResponse;
+        };
+        /**
+         * Returns metrics relating to the layouting of the page, such as viewport bounds/scale.
+         */
+        'Page.getLayoutMetrics': {
+            paramsType: [];
+            returnType: Protocol.Page.GetLayoutMetricsResponse;
+        };
+        /**
+         * Returns navigation history for the current page.
+         */
+        'Page.getNavigationHistory': {
+            paramsType: [];
+            returnType: Protocol.Page.GetNavigationHistoryResponse;
+        };
+        /**
+         * Resets navigation history for the current page.
+         */
+        'Page.resetNavigationHistory': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Returns content of the given resource.
+         */
+        'Page.getResourceContent': {
+            paramsType: [Protocol.Page.GetResourceContentRequest];
+            returnType: Protocol.Page.GetResourceContentResponse;
+        };
+        /**
+         * Returns present frame / resource tree structure.
+         */
+        'Page.getResourceTree': {
+            paramsType: [];
+            returnType: Protocol.Page.GetResourceTreeResponse;
+        };
+        /**
+         * Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload).
+         */
+        'Page.handleJavaScriptDialog': {
+            paramsType: [Protocol.Page.HandleJavaScriptDialogRequest];
+            returnType: void;
+        };
+        /**
+         * Navigates current page to the given URL.
+         */
+        'Page.navigate': {
+            paramsType: [Protocol.Page.NavigateRequest];
+            returnType: Protocol.Page.NavigateResponse;
+        };
+        /**
+         * Navigates current page to the given history entry.
+         */
+        'Page.navigateToHistoryEntry': {
+            paramsType: [Protocol.Page.NavigateToHistoryEntryRequest];
+            returnType: void;
+        };
+        /**
+         * Print page as PDF.
+         */
+        'Page.printToPDF': {
+            paramsType: [Protocol.Page.PrintToPDFRequest?];
+            returnType: Protocol.Page.PrintToPDFResponse;
+        };
+        /**
+         * Reloads given page optionally ignoring the cache.
+         */
+        'Page.reload': {
+            paramsType: [Protocol.Page.ReloadRequest?];
+            returnType: void;
+        };
+        /**
+         * Deprecated, please use removeScriptToEvaluateOnNewDocument instead.
+         */
+        'Page.removeScriptToEvaluateOnLoad': {
+            paramsType: [Protocol.Page.RemoveScriptToEvaluateOnLoadRequest];
+            returnType: void;
+        };
+        /**
+         * Removes given script from the list.
+         */
+        'Page.removeScriptToEvaluateOnNewDocument': {
+            paramsType: [Protocol.Page.RemoveScriptToEvaluateOnNewDocumentRequest];
+            returnType: void;
+        };
+        /**
+         * Acknowledges that a screencast frame has been received by the frontend.
+         */
+        'Page.screencastFrameAck': {
+            paramsType: [Protocol.Page.ScreencastFrameAckRequest];
+            returnType: void;
+        };
+        /**
+         * Searches for given string in resource content.
+         */
+        'Page.searchInResource': {
+            paramsType: [Protocol.Page.SearchInResourceRequest];
+            returnType: Protocol.Page.SearchInResourceResponse;
+        };
+        /**
+         * Enable Chrome's experimental ad filter on all sites.
+         */
+        'Page.setAdBlockingEnabled': {
+            paramsType: [Protocol.Page.SetAdBlockingEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Enable page Content Security Policy by-passing.
+         */
+        'Page.setBypassCSP': {
+            paramsType: [Protocol.Page.SetBypassCSPRequest];
+            returnType: void;
+        };
+        /**
+         * Get Permissions Policy state on given frame.
+         */
+        'Page.getPermissionsPolicyState': {
+            paramsType: [Protocol.Page.GetPermissionsPolicyStateRequest];
+            returnType: Protocol.Page.GetPermissionsPolicyStateResponse;
+        };
+        /**
+         * Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
+         * window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
+         * query results).
+         */
+        'Page.setDeviceMetricsOverride': {
+            paramsType: [Protocol.Page.SetDeviceMetricsOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Overrides the Device Orientation.
+         */
+        'Page.setDeviceOrientationOverride': {
+            paramsType: [Protocol.Page.SetDeviceOrientationOverrideRequest];
+            returnType: void;
+        };
+        /**
+         * Set generic font families.
+         */
+        'Page.setFontFamilies': {
+            paramsType: [Protocol.Page.SetFontFamiliesRequest];
+            returnType: void;
+        };
+        /**
+         * Set default font sizes.
+         */
+        'Page.setFontSizes': {
+            paramsType: [Protocol.Page.SetFontSizesRequest];
+            returnType: void;
+        };
+        /**
+         * Sets given markup as the document's HTML.
+         */
+        'Page.setDocumentContent': {
+            paramsType: [Protocol.Page.SetDocumentContentRequest];
+            returnType: void;
+        };
+        /**
+         * Set the behavior when downloading a file.
+         */
+        'Page.setDownloadBehavior': {
+            paramsType: [Protocol.Page.SetDownloadBehaviorRequest];
+            returnType: void;
+        };
+        /**
+         * Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position
+         * unavailable.
+         */
+        'Page.setGeolocationOverride': {
+            paramsType: [Protocol.Page.SetGeolocationOverrideRequest?];
+            returnType: void;
+        };
+        /**
+         * Controls whether page will emit lifecycle events.
+         */
+        'Page.setLifecycleEventsEnabled': {
+            paramsType: [Protocol.Page.SetLifecycleEventsEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Toggles mouse event-based touch event emulation.
+         */
+        'Page.setTouchEmulationEnabled': {
+            paramsType: [Protocol.Page.SetTouchEmulationEnabledRequest];
+            returnType: void;
+        };
+        /**
+         * Starts sending each frame using the `screencastFrame` event.
+         */
+        'Page.startScreencast': {
+            paramsType: [Protocol.Page.StartScreencastRequest?];
+            returnType: void;
+        };
+        /**
+         * Force the page stop all navigations and pending resource fetches.
+         */
+        'Page.stopLoading': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Crashes renderer on the IO thread, generates minidumps.
+         */
+        'Page.crash': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Tries to close page, running its beforeunload hooks, if any.
+         */
+        'Page.close': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Tries to update the web lifecycle state of the page.
+         * It will transition the page to the given state according to:
+         * https://github.com/WICG/web-lifecycle/
+         */
+        'Page.setWebLifecycleState': {
+            paramsType: [Protocol.Page.SetWebLifecycleStateRequest];
+            returnType: void;
+        };
+        /**
+         * Stops sending each frame in the `screencastFrame`.
+         */
+        'Page.stopScreencast': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Forces compilation cache to be generated for every subresource script.
+         * See also: `Page.produceCompilationCache`.
+         */
+        'Page.setProduceCompilationCache': {
+            paramsType: [Protocol.Page.SetProduceCompilationCacheRequest];
+            returnType: void;
+        };
+        /**
+         * Requests backend to produce compilation cache for the specified scripts.
+         * Unlike setProduceCompilationCache, this allows client to only produce cache
+         * for specific scripts. `scripts` are appeneded to the list of scripts
+         * for which the cache for would produced. Disabling compilation cache with
+         * `setProduceCompilationCache` would reset all pending cache requests.
+         * The list may also be reset during page navigation.
+         * When script with a matching URL is encountered, the cache is optionally
+         * produced upon backend discretion, based on internal heuristics.
+         * See also: `Page.compilationCacheProduced`.
+         */
+        'Page.produceCompilationCache': {
+            paramsType: [Protocol.Page.ProduceCompilationCacheRequest];
+            returnType: void;
+        };
+        /**
+         * Seeds compilation cache for given url. Compilation cache does not survive
+         * cross-process navigation.
+         */
+        'Page.addCompilationCache': {
+            paramsType: [Protocol.Page.AddCompilationCacheRequest];
+            returnType: void;
+        };
+        /**
+         * Clears seeded compilation cache.
+         */
+        'Page.clearCompilationCache': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Generates a report for testing.
+         */
+        'Page.generateTestReport': {
+            paramsType: [Protocol.Page.GenerateTestReportRequest];
+            returnType: void;
+        };
+        /**
+         * Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger.
+         */
+        'Page.waitForDebugger': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Intercept file chooser requests and transfer control to protocol clients.
+         * When file chooser interception is enabled, native file chooser dialog is not shown.
+         * Instead, a protocol event `Page.fileChooserOpened` is emitted.
+         */
+        'Page.setInterceptFileChooserDialog': {
+            paramsType: [Protocol.Page.SetInterceptFileChooserDialogRequest];
+            returnType: void;
+        };
+        /**
+         * Disable collecting and reporting metrics.
+         */
+        'Performance.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enable collecting and reporting metrics.
+         */
+        'Performance.enable': {
+            paramsType: [Protocol.Performance.EnableRequest?];
+            returnType: void;
+        };
+        /**
+         * Sets time domain to use for collecting and reporting duration metrics.
+         * Note that this must be called before enabling metrics collection. Calling
+         * this method while metrics collection is enabled returns an error.
+         */
+        'Performance.setTimeDomain': {
+            paramsType: [Protocol.Performance.SetTimeDomainRequest];
+            returnType: void;
+        };
+        /**
+         * Retrieve current values of run-time metrics.
+         */
+        'Performance.getMetrics': {
+            paramsType: [];
+            returnType: Protocol.Performance.GetMetricsResponse;
+        };
+        /**
+         * Previously buffered events would be reported before method returns.
+         * See also: timelineEventAdded
+         */
+        'PerformanceTimeline.enable': {
+            paramsType: [Protocol.PerformanceTimeline.EnableRequest];
+            returnType: void;
+        };
+        /**
+         * Disables tracking security state changes.
+         */
+        'Security.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables tracking security state changes.
+         */
+        'Security.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enable/disable whether all certificate errors should be ignored.
+         */
+        'Security.setIgnoreCertificateErrors': {
+            paramsType: [Protocol.Security.SetIgnoreCertificateErrorsRequest];
+            returnType: void;
+        };
+        /**
+         * Handles a certificate error that fired a certificateError event.
+         */
+        'Security.handleCertificateError': {
+            paramsType: [Protocol.Security.HandleCertificateErrorRequest];
+            returnType: void;
+        };
+        /**
+         * Enable/disable overriding certificate errors. If enabled, all certificate error events need to
+         * be handled by the DevTools client and should be answered with `handleCertificateError` commands.
+         */
+        'Security.setOverrideCertificateErrors': {
+            paramsType: [Protocol.Security.SetOverrideCertificateErrorsRequest];
+            returnType: void;
+        };
+        'ServiceWorker.deliverPushMessage': {
+            paramsType: [Protocol.ServiceWorker.DeliverPushMessageRequest];
+            returnType: void;
+        };
+        'ServiceWorker.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'ServiceWorker.dispatchSyncEvent': {
+            paramsType: [Protocol.ServiceWorker.DispatchSyncEventRequest];
+            returnType: void;
+        };
+        'ServiceWorker.dispatchPeriodicSyncEvent': {
+            paramsType: [Protocol.ServiceWorker.DispatchPeriodicSyncEventRequest];
+            returnType: void;
+        };
+        'ServiceWorker.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        'ServiceWorker.inspectWorker': {
+            paramsType: [Protocol.ServiceWorker.InspectWorkerRequest];
+            returnType: void;
+        };
+        'ServiceWorker.setForceUpdateOnPageLoad': {
+            paramsType: [Protocol.ServiceWorker.SetForceUpdateOnPageLoadRequest];
+            returnType: void;
+        };
+        'ServiceWorker.skipWaiting': {
+            paramsType: [Protocol.ServiceWorker.SkipWaitingRequest];
+            returnType: void;
+        };
+        'ServiceWorker.startWorker': {
+            paramsType: [Protocol.ServiceWorker.StartWorkerRequest];
+            returnType: void;
+        };
+        'ServiceWorker.stopAllWorkers': {
+            paramsType: [];
+            returnType: void;
+        };
+        'ServiceWorker.stopWorker': {
+            paramsType: [Protocol.ServiceWorker.StopWorkerRequest];
+            returnType: void;
+        };
+        'ServiceWorker.unregister': {
+            paramsType: [Protocol.ServiceWorker.UnregisterRequest];
+            returnType: void;
+        };
+        'ServiceWorker.updateRegistration': {
+            paramsType: [Protocol.ServiceWorker.UpdateRegistrationRequest];
+            returnType: void;
+        };
+        /**
+         * Clears storage for origin.
+         */
+        'Storage.clearDataForOrigin': {
+            paramsType: [Protocol.Storage.ClearDataForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Returns all browser cookies.
+         */
+        'Storage.getCookies': {
+            paramsType: [Protocol.Storage.GetCookiesRequest?];
+            returnType: Protocol.Storage.GetCookiesResponse;
+        };
+        /**
+         * Sets given cookies.
+         */
+        'Storage.setCookies': {
+            paramsType: [Protocol.Storage.SetCookiesRequest];
+            returnType: void;
+        };
+        /**
+         * Clears cookies.
+         */
+        'Storage.clearCookies': {
+            paramsType: [Protocol.Storage.ClearCookiesRequest?];
+            returnType: void;
+        };
+        /**
+         * Returns usage and quota in bytes.
+         */
+        'Storage.getUsageAndQuota': {
+            paramsType: [Protocol.Storage.GetUsageAndQuotaRequest];
+            returnType: Protocol.Storage.GetUsageAndQuotaResponse;
+        };
+        /**
+         * Override quota for the specified origin
+         */
+        'Storage.overrideQuotaForOrigin': {
+            paramsType: [Protocol.Storage.OverrideQuotaForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Registers origin to be notified when an update occurs to its cache storage list.
+         */
+        'Storage.trackCacheStorageForOrigin': {
+            paramsType: [Protocol.Storage.TrackCacheStorageForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Registers origin to be notified when an update occurs to its IndexedDB.
+         */
+        'Storage.trackIndexedDBForOrigin': {
+            paramsType: [Protocol.Storage.TrackIndexedDBForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Unregisters origin from receiving notifications for cache storage.
+         */
+        'Storage.untrackCacheStorageForOrigin': {
+            paramsType: [Protocol.Storage.UntrackCacheStorageForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Unregisters origin from receiving notifications for IndexedDB.
+         */
+        'Storage.untrackIndexedDBForOrigin': {
+            paramsType: [Protocol.Storage.UntrackIndexedDBForOriginRequest];
+            returnType: void;
+        };
+        /**
+         * Returns the number of stored Trust Tokens per issuer for the
+         * current browsing context.
+         */
+        'Storage.getTrustTokens': {
+            paramsType: [];
+            returnType: Protocol.Storage.GetTrustTokensResponse;
+        };
+        /**
+         * Removes all Trust Tokens issued by the provided issuerOrigin.
+         * Leaves other stored data, including the issuer's Redemption Records, intact.
+         */
+        'Storage.clearTrustTokens': {
+            paramsType: [Protocol.Storage.ClearTrustTokensRequest];
+            returnType: Protocol.Storage.ClearTrustTokensResponse;
+        };
+        /**
+         * Returns information about the system.
+         */
+        'SystemInfo.getInfo': {
+            paramsType: [];
+            returnType: Protocol.SystemInfo.GetInfoResponse;
+        };
+        /**
+         * Returns information about all running processes.
+         */
+        'SystemInfo.getProcessInfo': {
+            paramsType: [];
+            returnType: Protocol.SystemInfo.GetProcessInfoResponse;
+        };
+        /**
+         * Activates (focuses) the target.
+         */
+        'Target.activateTarget': {
+            paramsType: [Protocol.Target.ActivateTargetRequest];
+            returnType: void;
+        };
+        /**
+         * Attaches to the target with given id.
+         */
+        'Target.attachToTarget': {
+            paramsType: [Protocol.Target.AttachToTargetRequest];
+            returnType: Protocol.Target.AttachToTargetResponse;
+        };
+        /**
+         * Attaches to the browser target, only uses flat sessionId mode.
+         */
+        'Target.attachToBrowserTarget': {
+            paramsType: [];
+            returnType: Protocol.Target.AttachToBrowserTargetResponse;
+        };
+        /**
+         * Closes the target. If the target is a page that gets closed too.
+         */
+        'Target.closeTarget': {
+            paramsType: [Protocol.Target.CloseTargetRequest];
+            returnType: Protocol.Target.CloseTargetResponse;
+        };
+        /**
+         * Inject object to the target's main frame that provides a communication
+         * channel with browser target.
+         * 
+         * Injected object will be available as `window[bindingName]`.
+         * 
+         * The object has the follwing API:
+         * - `binding.send(json)` - a method to send messages over the remote debugging protocol
+         * - `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses.
+         */
+        'Target.exposeDevToolsProtocol': {
+            paramsType: [Protocol.Target.ExposeDevToolsProtocolRequest];
+            returnType: void;
+        };
+        /**
+         * Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than
+         * one.
+         */
+        'Target.createBrowserContext': {
+            paramsType: [Protocol.Target.CreateBrowserContextRequest?];
+            returnType: Protocol.Target.CreateBrowserContextResponse;
+        };
+        /**
+         * Returns all browser contexts created with `Target.createBrowserContext` method.
+         */
+        'Target.getBrowserContexts': {
+            paramsType: [];
+            returnType: Protocol.Target.GetBrowserContextsResponse;
+        };
+        /**
+         * Creates a new page.
+         */
+        'Target.createTarget': {
+            paramsType: [Protocol.Target.CreateTargetRequest];
+            returnType: Protocol.Target.CreateTargetResponse;
+        };
+        /**
+         * Detaches session with given id.
+         */
+        'Target.detachFromTarget': {
+            paramsType: [Protocol.Target.DetachFromTargetRequest?];
+            returnType: void;
+        };
+        /**
+         * Deletes a BrowserContext. All the belonging pages will be closed without calling their
+         * beforeunload hooks.
+         */
+        'Target.disposeBrowserContext': {
+            paramsType: [Protocol.Target.DisposeBrowserContextRequest];
+            returnType: void;
+        };
+        /**
+         * Returns information about a target.
+         */
+        'Target.getTargetInfo': {
+            paramsType: [Protocol.Target.GetTargetInfoRequest?];
+            returnType: Protocol.Target.GetTargetInfoResponse;
+        };
+        /**
+         * Retrieves a list of available targets.
+         */
+        'Target.getTargets': {
+            paramsType: [];
+            returnType: Protocol.Target.GetTargetsResponse;
+        };
+        /**
+         * Sends protocol message over session with given id.
+         * Consider using flat mode instead; see commands attachToTarget, setAutoAttach,
+         * and crbug.com/991325.
+         */
+        'Target.sendMessageToTarget': {
+            paramsType: [Protocol.Target.SendMessageToTargetRequest];
+            returnType: void;
+        };
+        /**
+         * Controls whether to automatically attach to new targets which are considered to be related to
+         * this one. When turned on, attaches to all existing related targets as well. When turned off,
+         * automatically detaches from all currently attached targets.
+         */
+        'Target.setAutoAttach': {
+            paramsType: [Protocol.Target.SetAutoAttachRequest];
+            returnType: void;
+        };
+        /**
+         * Controls whether to discover available targets and notify via
+         * `targetCreated/targetInfoChanged/targetDestroyed` events.
+         */
+        'Target.setDiscoverTargets': {
+            paramsType: [Protocol.Target.SetDiscoverTargetsRequest];
+            returnType: void;
+        };
+        /**
+         * Enables target discovery for the specified locations, when `setDiscoverTargets` was set to
+         * `true`.
+         */
+        'Target.setRemoteLocations': {
+            paramsType: [Protocol.Target.SetRemoteLocationsRequest];
+            returnType: void;
+        };
+        /**
+         * Request browser port binding.
+         */
+        'Tethering.bind': {
+            paramsType: [Protocol.Tethering.BindRequest];
+            returnType: void;
+        };
+        /**
+         * Request browser port unbinding.
+         */
+        'Tethering.unbind': {
+            paramsType: [Protocol.Tethering.UnbindRequest];
+            returnType: void;
+        };
+        /**
+         * Stop trace events collection.
+         */
+        'Tracing.end': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Gets supported tracing categories.
+         */
+        'Tracing.getCategories': {
+            paramsType: [];
+            returnType: Protocol.Tracing.GetCategoriesResponse;
+        };
+        /**
+         * Record a clock sync marker in the trace.
+         */
+        'Tracing.recordClockSyncMarker': {
+            paramsType: [Protocol.Tracing.RecordClockSyncMarkerRequest];
+            returnType: void;
+        };
+        /**
+         * Request a global memory dump.
+         */
+        'Tracing.requestMemoryDump': {
+            paramsType: [Protocol.Tracing.RequestMemoryDumpRequest?];
+            returnType: Protocol.Tracing.RequestMemoryDumpResponse;
+        };
+        /**
+         * Start trace events collection.
+         */
+        'Tracing.start': {
+            paramsType: [Protocol.Tracing.StartRequest?];
+            returnType: void;
+        };
+        /**
+         * Disables the fetch domain.
+         */
+        'Fetch.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Enables issuing of requestPaused events. A request will be paused until client
+         * calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth.
+         */
+        'Fetch.enable': {
+            paramsType: [Protocol.Fetch.EnableRequest?];
+            returnType: void;
+        };
+        /**
+         * Causes the request to fail with specified reason.
+         */
+        'Fetch.failRequest': {
+            paramsType: [Protocol.Fetch.FailRequestRequest];
+            returnType: void;
+        };
+        /**
+         * Provides response to the request.
+         */
+        'Fetch.fulfillRequest': {
+            paramsType: [Protocol.Fetch.FulfillRequestRequest];
+            returnType: void;
+        };
+        /**
+         * Continues the request, optionally modifying some of its parameters.
+         */
+        'Fetch.continueRequest': {
+            paramsType: [Protocol.Fetch.ContinueRequestRequest];
+            returnType: void;
+        };
+        /**
+         * Continues a request supplying authChallengeResponse following authRequired event.
+         */
+        'Fetch.continueWithAuth': {
+            paramsType: [Protocol.Fetch.ContinueWithAuthRequest];
+            returnType: void;
+        };
+        /**
+         * Causes the body of the response to be received from the server and
+         * returned as a single string. May only be issued for a request that
+         * is paused in the Response stage and is mutually exclusive with
+         * takeResponseBodyForInterceptionAsStream. Calling other methods that
+         * affect the request or disabling fetch domain before body is received
+         * results in an undefined behavior.
+         */
+        'Fetch.getResponseBody': {
+            paramsType: [Protocol.Fetch.GetResponseBodyRequest];
+            returnType: Protocol.Fetch.GetResponseBodyResponse;
+        };
+        /**
+         * Returns a handle to the stream representing the response body.
+         * The request must be paused in the HeadersReceived stage.
+         * Note that after this command the request can't be continued
+         * as is -- client either needs to cancel it or to provide the
+         * response body.
+         * The stream only supports sequential read, IO.read will fail if the position
+         * is specified.
+         * This method is mutually exclusive with getResponseBody.
+         * Calling other methods that affect the request or disabling fetch
+         * domain before body is received results in an undefined behavior.
+         */
+        'Fetch.takeResponseBodyAsStream': {
+            paramsType: [Protocol.Fetch.TakeResponseBodyAsStreamRequest];
+            returnType: Protocol.Fetch.TakeResponseBodyAsStreamResponse;
+        };
+        /**
+         * Enables the WebAudio domain and starts sending context lifetime events.
+         */
+        'WebAudio.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disables the WebAudio domain.
+         */
+        'WebAudio.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Fetch the realtime data from the registered contexts.
+         */
+        'WebAudio.getRealtimeData': {
+            paramsType: [Protocol.WebAudio.GetRealtimeDataRequest];
+            returnType: Protocol.WebAudio.GetRealtimeDataResponse;
+        };
+        /**
+         * Enable the WebAuthn domain and start intercepting credential storage and
+         * retrieval with a virtual authenticator.
+         */
+        'WebAuthn.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disable the WebAuthn domain.
+         */
+        'WebAuthn.disable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Creates and adds a virtual authenticator.
+         */
+        'WebAuthn.addVirtualAuthenticator': {
+            paramsType: [Protocol.WebAuthn.AddVirtualAuthenticatorRequest];
+            returnType: Protocol.WebAuthn.AddVirtualAuthenticatorResponse;
+        };
+        /**
+         * Removes the given authenticator.
+         */
+        'WebAuthn.removeVirtualAuthenticator': {
+            paramsType: [Protocol.WebAuthn.RemoveVirtualAuthenticatorRequest];
+            returnType: void;
+        };
+        /**
+         * Adds the credential to the specified authenticator.
+         */
+        'WebAuthn.addCredential': {
+            paramsType: [Protocol.WebAuthn.AddCredentialRequest];
+            returnType: void;
+        };
+        /**
+         * Returns a single credential stored in the given virtual authenticator that
+         * matches the credential ID.
+         */
+        'WebAuthn.getCredential': {
+            paramsType: [Protocol.WebAuthn.GetCredentialRequest];
+            returnType: Protocol.WebAuthn.GetCredentialResponse;
+        };
+        /**
+         * Returns all the credentials stored in the given virtual authenticator.
+         */
+        'WebAuthn.getCredentials': {
+            paramsType: [Protocol.WebAuthn.GetCredentialsRequest];
+            returnType: Protocol.WebAuthn.GetCredentialsResponse;
+        };
+        /**
+         * Removes a credential from the authenticator.
+         */
+        'WebAuthn.removeCredential': {
+            paramsType: [Protocol.WebAuthn.RemoveCredentialRequest];
+            returnType: void;
+        };
+        /**
+         * Clears all the credentials from the specified device.
+         */
+        'WebAuthn.clearCredentials': {
+            paramsType: [Protocol.WebAuthn.ClearCredentialsRequest];
+            returnType: void;
+        };
+        /**
+         * Sets whether User Verification succeeds or fails for an authenticator.
+         * The default is true.
+         */
+        'WebAuthn.setUserVerified': {
+            paramsType: [Protocol.WebAuthn.SetUserVerifiedRequest];
+            returnType: void;
+        };
+        /**
+         * Sets whether tests of user presence will succeed immediately (if true) or fail to resolve (if false) for an authenticator.
+         * The default is true.
+         */
+        'WebAuthn.setAutomaticPresenceSimulation': {
+            paramsType: [Protocol.WebAuthn.SetAutomaticPresenceSimulationRequest];
+            returnType: void;
+        };
+        /**
+         * Enables the Media domain
+         */
+        'Media.enable': {
+            paramsType: [];
+            returnType: void;
+        };
+        /**
+         * Disables the Media domain.
+         */
+        'Media.disable': {
+            paramsType: [];
+            returnType: void;
+        };
     }
+}
 
-    /**
-     * All the valid paper format types when printing a PDF.
-     *
-     * @remarks
-     *
-     * The sizes of each format are as follows:
-     * - `Letter`: 8.5in x 11in
-     *
-     * - `Legal`: 8.5in x 14in
-     *
-     * - `Tabloid`: 11in x 17in
-     *
-     * - `Ledger`: 17in x 11in
-     *
-     * - `A0`: 33.1in x 46.8in
-     *
-     * - `A1`: 23.4in x 33.1in
-     *
-     * - `A2`: 16.54in x 23.4in
-     *
-     * - `A3`: 11.7in x 16.54in
-     *
-     * - `A4`: 8.27in x 11.7in
-     *
-     * - `A5`: 5.83in x 8.27in
-     *
-     * - `A6`: 4.13in x 5.83in
-     *
-     * @public
-     */
-    export declare type PaperFormat = 'letter' | 'legal' | 'tabloid' | 'ledger' | 'a0' | 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6';
-
+/**
+ * The main Puppeteer class.
+ *
+ * IMPORTANT: if you are using Puppeteer in a Node environment, you will get an
+ * instance of {@link PuppeteerNode} when you import or require `puppeteer`.
+ * That class extends `Puppeteer`, so has all the methods documented below as
+ * well as all that are defined on {@link PuppeteerNode}.
+ * @public
+ */
+export declare class Puppeteer {
+    protected _isPuppeteerCore: boolean;
+    protected _changedProduct: boolean;
     /**
      * @internal
      */
-    export declare interface PaperFormatDimensions {
-        width: number;
-        height: number;
-    }
-
+    constructor(settings: CommonPuppeteerSettings);
     /**
-     * @internal
-     */
-    export declare const paperFormats: Record<PaperFormat, PaperFormatDimensions>;
-
-    /**
-     * Copyright 2020 Google Inc. All rights reserved.
-     *
-     * Licensed under the Apache License, Version 2.0 (the "License");
-     * you may not use this file except in compliance with the License.
-     * You may obtain a copy of the License at
-     *
-     *     http://www.apache.org/licenses/LICENSE-2.0
-     *
-     * Unless required by applicable law or agreed to in writing, software
-     * distributed under the License is distributed on an "AS IS" BASIS,
-     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     * See the License for the specific language governing permissions and
-     * limitations under the License.
-     */
-    /**
-     * @public
-     */
-    export declare interface PDFMargin {
-        top?: string | number;
-        bottom?: string | number;
-        left?: string | number;
-        right?: string | number;
-    }
-
-    /**
-     * Valid options to configure PDF generation via {@link Page.pdf}.
-     * @public
-     */
-    export declare interface PDFOptions {
-        /**
-         * Scales the rendering of the web page. Amount must be between `0.1` and `2`.
-         * @defaultValue 1
-         */
-        scale?: number;
-        /**
-         * Whether to show the header and footer.
-         * @defaultValue false
-         */
-        displayHeaderFooter?: boolean;
-        /**
-         * HTML template for the print header. Should be valid HTML with the following
-         * classes used to inject values into them:
-         * - `date` formatted print date
-         *
-         * - `title` document title
-         *
-         * - `url` document location
-         *
-         * - `pageNumber` current page number
-         *
-         * - `totalPages` total pages in the document
-         */
-        headerTemplate?: string;
-        /**
-         * HTML template for the print footer. Has the same constraints and support
-         * for special classes as {@link PDFOptions.headerTemplate}.
-         */
-        footerTemplate?: string;
-        /**
-         * Set to `true` to print background graphics.
-         * @defaultValue false
-         */
-        printBackground?: boolean;
-        /**
-         * Whether to print in landscape orientation.
-         * @defaultValue = false
-         */
-        landscape?: boolean;
-        /**
-         * Paper ranges to print, e.g. `1-5, 8, 11-13`.
-         * @defaultValue The empty string, which means all pages are printed.
-         */
-        pageRanges?: string;
-        /**
-         * @remarks
-         * If set, this takes priority over the `width` and `height` options.
-         * @defaultValue `letter`.
-         */
-        format?: PaperFormat;
-        /**
-         * Sets the width of paper. You can pass in a number or a string with a unit.
-         */
-        width?: string | number;
-        /**
-         * Sets the height of paper. You can pass in a number or a string with a unit.
-         */
-        height?: string | number;
-        /**
-         * Give any CSS `@page` size declared in the page priority over what is
-         * declared in the `width` or `height` or `format` option.
-         * @defaultValue `false`, which will scale the content to fit the paper size.
-         */
-        preferCSSPageSize?: boolean;
-        /**
-         * Set the PDF margins.
-         * @defaultValue no margins are set.
-         */
-        margin?: PDFMargin;
-        /**
-         * The path to save the file to.
-         *
-         * @remarks
-         *
-         * If the path is relative, it's resolved relative to the current working directory.
-         *
-         * @defaultValue the empty string, which means the PDF will not be written to disk.
-         */
-        path?: string;
-        /**
-         * Hides default white background and allows generating pdfs with transparency.
-         * @defaultValue false
-         */
-        omitBackground?: boolean;
-        /**
-         * Timeout in milliseconds
-         * @defaultValue 30000
-         */
-        timeout?: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare type Permission = 'geolocation' | 'midi' | 'notifications' | 'camera' | 'microphone' | 'background-sync' | 'ambient-light-sensor' | 'accelerometer' | 'gyroscope' | 'magnetometer' | 'accessibility-events' | 'clipboard-read' | 'clipboard-write' | 'payment-handler' | 'persistent-storage' | 'idle-detection' | 'midi-sysex';
-
-    /**
-     * Supported platforms.
-     * @public
-     */
-    export declare type Platform = 'linux' | 'mac' | 'win32' | 'win64';
-
-    /**
-     * @public
-     */
-    export declare interface Point {
-        x: number;
-        y: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare type PredefinedNetworkConditions = {
-        [name: string]: NetworkConditions;
-    };
-
-    /**
-     * @public
-     */
-    export declare interface PressOptions {
-        /**
-         * Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
-         */
-        delay?: number;
-        /**
-         * If specified, generates an input event with this text.
-         */
-        text?: string;
-    }
-
-    /**
-     * Copyright 2020 Google Inc. All rights reserved.
-     *
-     * Licensed under the Apache License, Version 2.0 (the "License");
-     * you may not use this file except in compliance with the License.
-     * You may obtain a copy of the License at
-     *
-     *     http://www.apache.org/licenses/LICENSE-2.0
-     *
-     * Unless required by applicable law or agreed to in writing, software
-     * distributed under the License is distributed on an "AS IS" BASIS,
-     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     * See the License for the specific language governing permissions and
-     * limitations under the License.
-     */
-    /**
-     * Supported products.
-     * @public
-     */
-    export declare type Product = 'chrome' | 'firefox';
-
-    /**
-     * Describes a launcher - a class that is able to create and launch a browser instance.
-     * @public
-     */
-    export declare interface ProductLauncher {
-        launch(object: PuppeteerNodeLaunchOptions): any;
-        executablePath: (string?: any) => string;
-        defaultArgs(object: BrowserLaunchArgumentOptions): any;
-        product: Product;
-    }
-
-    /**
-     * ProtocolError is emitted whenever there is an error from the protocol.
-     *
-     * @public
-     */
-    export declare class ProtocolError extends CustomError {
-        code?: number;
-        originalMessage: string;
-    }
-
-    /**
-     * @public
-     */
-    export declare type ProtocolLifeCycleEvent = 'load' | 'DOMContentLoaded' | 'networkIdle' | 'networkAlmostIdle';
-
-    export { ProtocolMapping }
-
-    /**
-     * The main Puppeteer class.
-     *
-     * IMPORTANT: if you are using Puppeteer in a Node environment, you will get an
-     * instance of {@link PuppeteerNode} when you import or require `puppeteer`.
-     * That class extends `Puppeteer`, so has all the methods documented below as
-     * well as all that are defined on {@link PuppeteerNode}.
-     * @public
-     */
-    export declare class Puppeteer {
-        protected _isPuppeteerCore: boolean;
-        protected _changedProduct: boolean;
-        /**
-         * @internal
-         */
-        constructor(settings: CommonPuppeteerSettings);
-        /**
-         * This method attaches Puppeteer to an existing browser instance.
-         *
-         * @remarks
-         *
-         * @param options - Set of configurable options to set on the browser.
-         * @returns Promise which resolves to browser instance.
-         */
-        connect(options: ConnectOptions): Promise<Browser>;
-        /**
-         * @remarks
-         * A list of devices to be used with `page.emulate(options)`. Actual list of devices can be found in {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
-         *
-         * @example
-         *
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const iPhone = puppeteer.devices['iPhone 6'];
-         *
-         * (async () => {
-         *   const browser = await puppeteer.launch();
-         *   const page = await browser.newPage();
-         *   await page.emulate(iPhone);
-         *   await page.goto('https://www.google.com');
-         *   // other actions...
-         *   await browser.close();
-         * })();
-         * ```
-         *
-         */
-        get devices(): DevicesMap;
-        /**
-         * @remarks
-         *
-         * Puppeteer methods might throw errors if they are unable to fulfill a request.
-         * For example, `page.waitForSelector(selector[, options])` might fail if
-         * the selector doesn't match any nodes during the given timeframe.
-         *
-         * For certain types of errors Puppeteer uses specific error classes.
-         * These classes are available via `puppeteer.errors`.
-         *
-         * @example
-         * An example of handling a timeout error:
-         * ```js
-         * try {
-         *   await page.waitForSelector('.foo');
-         * } catch (e) {
-         *   if (e instanceof puppeteer.errors.TimeoutError) {
-         *     // Do something if this is a timeout.
-         *   }
-         * }
-         * ```
-         */
-        get errors(): PuppeteerErrors;
-        /**
-         * @remarks
-         * Returns a list of network conditions to be used with `page.emulateNetworkConditions(networkConditions)`. Actual list of predefined conditions can be found in {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/NetworkConditions.ts | src/common/NetworkConditions.ts}.
-         *
-         * @example
-         *
-         * ```js
-         * const puppeteer = require('puppeteer');
-         * const slow3G = puppeteer.networkConditions['Slow 3G'];
-         *
-         * (async () => {
-         *   const browser = await puppeteer.launch();
-         *   const page = await browser.newPage();
-         *   await page.emulateNetworkConditions(slow3G);
-         *   await page.goto('https://www.google.com');
-         *   // other actions...
-         *   await browser.close();
-         * })();
-         * ```
-         *
-         */
-        get networkConditions(): PredefinedNetworkConditions;
-        /**
-         * Registers a {@link CustomQueryHandler | custom query handler}. After
-         * registration, the handler can be used everywhere where a selector is
-         * expected by prepending the selection string with `<name>/`. The name is
-         * only allowed to consist of lower- and upper case latin letters.
-         * @example
-         * ```
-         * puppeteer.registerCustomQueryHandler('text', { … });
-         * const aHandle = await page.$('text/…');
-         * ```
-         * @param name - The name that the custom query handler will be registered under.
-         * @param queryHandler - The {@link CustomQueryHandler | custom query handler} to
-         * register.
-         */
-        registerCustomQueryHandler(name: string, queryHandler: CustomQueryHandler): void;
-        /**
-         * @param name - The name of the query handler to unregistered.
-         */
-        unregisterCustomQueryHandler(name: string): void;
-        /**
-         * @returns a list with the names of all registered custom query handlers.
-         */
-        customQueryHandlerNames(): string[];
-        /**
-         * Clears all registered handlers.
-         */
-        clearCustomQueryHandlers(): void;
-    }
-
-    /**
-     * @public
-     */
-    export declare type PuppeteerErrors = Record<string, typeof CustomError>;
-
-    /**
-     * @public
-     */
-    export declare const puppeteerErrors: PuppeteerErrors;
-
-    /**
-     * @public
-     */
-    export declare interface PuppeteerEventListener {
-        emitter: CommonEventEmitter;
-        eventName: string | symbol;
-        handler: (...args: any[]) => void;
-    }
-
-    /**
-     * @public
-     */
-    export declare type PuppeteerLifeCycleEvent = 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2';
-
-    /**
-     * Extends the main {@link Puppeteer} class with Node specific behaviour for fetching and
-     * downloading browsers.
-     *
-     * If you're using Puppeteer in a Node environment, this is the class you'll get
-     * when you run `require('puppeteer')` (or the equivalent ES `import`).
+     * This method attaches Puppeteer to an existing browser instance.
      *
      * @remarks
      *
-     * The most common method to use is {@link PuppeteerNode.launch | launch}, which
-     * is used to launch and connect to a new browser instance.
-     *
-     * See {@link Puppeteer | the main Puppeteer class} for methods common to all
-     * environments, such as {@link Puppeteer.connect}.
+     * @param options - Set of configurable options to set on the browser.
+     * @returns Promise which resolves to browser instance.
+     */
+    connect(options: ConnectOptions): Promise<Browser>;
+    /**
+     * @remarks
+     * A list of devices to be used with `page.emulate(options)`. Actual list of devices can be found in {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
      *
      * @example
-     * The following is a typical example of using Puppeteer to drive automation:
+     *
      * ```js
      * const puppeteer = require('puppeteer');
+     * const iPhone = puppeteer.devices['iPhone 6'];
      *
      * (async () => {
      *   const browser = await puppeteer.launch();
      *   const page = await browser.newPage();
+     *   await page.emulate(iPhone);
      *   await page.goto('https://www.google.com');
      *   // other actions...
      *   await browser.close();
      * })();
      * ```
      *
-     * Once you have created a `page` you have access to a large API to interact
-     * with the page, navigate, or find certain elements in that page.
-     * The {@link Page | `page` documentation} lists all the available methods.
+     */
+    get devices(): DevicesMap;
+    /**
+     * @remarks
      *
-     * @public
-     */
-    export declare class PuppeteerNode extends Puppeteer {
-        private _lazyLauncher;
-        private _projectRoot;
-        private __productName?;
-        /**
-         * @internal
-         */
-        _preferredRevision: string;
-        /**
-         * @internal
-         */
-        constructor(settings: {
-            projectRoot: string;
-            preferredRevision: string;
-            productName?: Product;
-        } & CommonPuppeteerSettings);
-        /**
-         * This method attaches Puppeteer to an existing browser instance.
-         *
-         * @remarks
-         *
-         * @param options - Set of configurable options to set on the browser.
-         * @returns Promise which resolves to browser instance.
-         */
-        connect(options: ConnectOptions): Promise<Browser>;
-        /**
-         * @internal
-         */
-        get _productName(): Product;
-        set _productName(name: Product);
-        /**
-         * Launches puppeteer and launches a browser instance with given arguments
-         * and options when specified.
-         *
-         * @remarks
-         *
-         * @example
-         * You can use `ignoreDefaultArgs` to filter out `--mute-audio` from default arguments:
-         * ```js
-         * const browser = await puppeteer.launch({
-         *   ignoreDefaultArgs: ['--mute-audio']
-         * });
-         * ```
-         *
-         * **NOTE** Puppeteer can also be used to control the Chrome browser,
-         * but it works best with the version of Chromium it is bundled with.
-         * There is no guarantee it will work with any other version.
-         * Use `executablePath` option with extreme caution.
-         * If Google Chrome (rather than Chromium) is preferred, a {@link https://www.google.com/chrome/browser/canary.html | Chrome Canary} or {@link https://www.chromium.org/getting-involved/dev-channel | Dev Channel} build is suggested.
-         * In `puppeteer.launch([options])`, any mention of Chromium also applies to Chrome.
-         * See {@link https://www.howtogeek.com/202825/what%E2%80%99s-the-difference-between-chromium-and-chrome/ | this article} for a description of the differences between Chromium and Chrome. {@link https://chromium.googlesource.com/chromium/src/+/lkgr/docs/chromium_browser_vs_google_chrome.md | This article} describes some differences for Linux users.
-         *
-         * @param options - Set of configurable options to set on the browser.
-         * @returns Promise which resolves to browser instance.
-         */
-        launch(options?: LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions & {
-            product?: Product;
-            extraPrefsFirefox?: Record<string, unknown>;
-        }): Promise<Browser>;
-        /**
-         * @remarks
-         *
-         * **NOTE** `puppeteer.executablePath()` is affected by the `PUPPETEER_EXECUTABLE_PATH`
-         * and `PUPPETEER_CHROMIUM_REVISION` environment variables.
-         *
-         * @returns A path where Puppeteer expects to find the bundled browser.
-         * The browser binary might not be there if the download was skipped with
-         * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
-         */
-        executablePath(channel?: string): string;
-        /**
-         * @internal
-         */
-        get _launcher(): ProductLauncher;
-        /**
-         * The name of the browser that is under automation (`"chrome"` or `"firefox"`)
-         *
-         * @remarks
-         * The product is set by the `PUPPETEER_PRODUCT` environment variable or the `product`
-         * option in `puppeteer.launch([options])` and defaults to `chrome`.
-         * Firefox support is experimental.
-         */
-        get product(): string;
-        /**
-         *
-         * @param options - Set of configurable options to set on the browser.
-         * @returns The default flags that Chromium will be launched with.
-         */
-        defaultArgs(options?: BrowserLaunchArgumentOptions): string[];
-        /**
-         * @param options - Set of configurable options to specify the settings
-         * of the BrowserFetcher.
-         * @returns A new BrowserFetcher instance.
-         */
-        createBrowserFetcher(options: BrowserFetcherOptions): BrowserFetcher;
-    }
-
-    /**
-     * Utility type exposed to enable users to define options that can be passed to
-     * `puppeteer.launch` without having to list the set of all types.
-     * @public
-     */
-    export declare type PuppeteerNodeLaunchOptions = BrowserLaunchArgumentOptions & LaunchOptions & BrowserConnectOptions;
-
-    /**
-     * @public
-     * {@inheritDoc Puppeteer.registerCustomQueryHandler}
-     */
-    export declare function registerCustomQueryHandler(name: string, queryHandler: CustomQueryHandler): void;
-
-    /**
-     * @public
-     */
-    export declare interface RemoteAddress {
-        ip: string;
-        port: number;
-    }
-
-    /**
-     * Resource types for HTTPRequests as perceived by the rendering engine.
+     * Puppeteer methods might throw errors if they are unable to fulfill a request.
+     * For example, `page.waitForSelector(selector[, options])` might fail if
+     * the selector doesn't match any nodes during the given timeframe.
      *
-     * @public
-     */
-    export declare type ResourceType = Lowercase<Protocol.Network.ResourceType>;
-
-    /**
-     * Required response data to fulfill a request with.
+     * For certain types of errors Puppeteer uses specific error classes.
+     * These classes are available via `puppeteer.errors`.
      *
-     * @public
+     * @example
+     * An example of handling a timeout error:
+     * ```js
+     * try {
+     *   await page.waitForSelector('.foo');
+     * } catch (e) {
+     *   if (e instanceof puppeteer.errors.TimeoutError) {
+     *     // Do something if this is a timeout.
+     *   }
+     * }
+     * ```
      */
-    export declare interface ResponseForRequest {
-        status: number;
-        /**
-         * Optional response headers. All values are converted to strings.
-         */
-        headers: Record<string, unknown>;
-        contentType: string;
-        body: string | Buffer;
-    }
-
+    get errors(): PuppeteerErrors;
     /**
-     * @public
-     */
-    export declare interface ScreenshotClip {
-        x: number;
-        y: number;
-        width: number;
-        height: number;
-    }
-
-    /**
-     * @public
-     */
-    export declare interface ScreenshotOptions {
-        /**
-         * @defaultValue 'png'
-         */
-        type?: 'png' | 'jpeg' | 'webp';
-        /**
-         * The file path to save the image to. The screenshot type will be inferred
-         * from file extension. If path is a relative path, then it is resolved
-         * relative to current working directory. If no path is provided, the image
-         * won't be saved to the disk.
-         */
-        path?: string;
-        /**
-         * When true, takes a screenshot of the full page.
-         * @defaultValue false
-         */
-        fullPage?: boolean;
-        /**
-         * An object which specifies the clipping region of the page.
-         */
-        clip?: ScreenshotClip;
-        /**
-         * Quality of the image, between 0-100. Not applicable to `png` images.
-         */
-        quality?: number;
-        /**
-         * Hides default white background and allows capturing screenshots with transparency.
-         * @defaultValue false
-         */
-        omitBackground?: boolean;
-        /**
-         * Encoding of the image.
-         * @defaultValue 'binary'
-         */
-        encoding?: 'base64' | 'binary';
-        /**
-         * If you need a screenshot bigger than the Viewport
-         * @defaultValue true
-         */
-        captureBeyondViewport?: boolean;
-    }
-
-    /**
-     * The SecurityDetails class represents the security details of a
-     * response that was received over a secure connection.
+     * @remarks
+     * Returns a list of network conditions to be used with `page.emulateNetworkConditions(networkConditions)`. Actual list of predefined conditions can be found in {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/NetworkConditions.ts | src/common/NetworkConditions.ts}.
      *
-     * @public
+     * @example
+     *
+     * ```js
+     * const puppeteer = require('puppeteer');
+     * const slow3G = puppeteer.networkConditions['Slow 3G'];
+     *
+     * (async () => {
+     *   const browser = await puppeteer.launch();
+     *   const page = await browser.newPage();
+     *   await page.emulateNetworkConditions(slow3G);
+     *   await page.goto('https://www.google.com');
+     *   // other actions...
+     *   await browser.close();
+     * })();
+     * ```
+     *
      */
-    export declare class SecurityDetails {
-        private _subjectName;
-        private _issuer;
-        private _validFrom;
-        private _validTo;
-        private _protocol;
-        private _sanList;
-        /**
-         * @internal
-         */
-        constructor(securityPayload: Protocol.Network.SecurityDetails);
-        /**
-         * @returns The name of the issuer of the certificate.
-         */
-        issuer(): string;
-        /**
-         * @returns {@link https://en.wikipedia.org/wiki/Unix_time | Unix timestamp}
-             * marking the start of the certificate's validity.
-             */
-         validFrom(): number;
-         /**
-          * @returns {@link https://en.wikipedia.org/wiki/Unix_time | Unix timestamp}
-              * marking the end of the certificate's validity.
-              */
-          validTo(): number;
-          /**
-           * @returns The security protocol being used, e.g. "TLS 1.2".
-           */
-          protocol(): string;
-          /**
-           * @returns The name of the subject to which the certificate was issued.
-           */
-          subjectName(): string;
-          /**
-           * @returns The list of {@link https://en.wikipedia.org/wiki/Subject_Alternative_Name | subject alternative names (SANs)} of the certificate.
-           */
-          subjectAlternativeNames(): string[];
-         }
+    get networkConditions(): PredefinedNetworkConditions;
+    /**
+     * Registers a {@link CustomQueryHandler | custom query handler}. After
+     * registration, the handler can be used everywhere where a selector is
+     * expected by prepending the selection string with `<name>/`. The name is
+     * only allowed to consist of lower- and upper case latin letters.
+     * @example
+     * ```
+     * puppeteer.registerCustomQueryHandler('text', { … });
+     * const aHandle = await page.$('text/…');
+     * ```
+     * @param name - The name that the custom query handler will be registered under.
+     * @param queryHandler - The {@link CustomQueryHandler | custom query handler} to
+     * register.
+     */
+    registerCustomQueryHandler(name: string, queryHandler: CustomQueryHandler): void;
+    /**
+     * @param name - The name of the query handler to unregistered.
+     */
+    unregisterCustomQueryHandler(name: string): void;
+    /**
+     * @returns a list with the names of all registered custom query handlers.
+     */
+    customQueryHandlerNames(): string[];
+    /**
+     * Clears all registered handlers.
+     */
+    clearCustomQueryHandlers(): void;
+}
 
-         /**
-          * @public
-          */
-         export declare type Serializable = number | string | boolean | null | BigInt | JSONArray | JSONObject;
+/**
+ * @public
+ */
+export declare type PuppeteerErrors = Record<string, typeof CustomError>;
 
-         /**
-          * @public
-          */
-         export declare type SerializableOrJSHandle = Serializable | JSHandle;
+/**
+ * @public
+ */
+export declare const puppeteerErrors: PuppeteerErrors;
 
-         /**
-          * Represents a Node and the properties of it that are relevant to Accessibility.
-          * @public
-          */
-         export declare interface SerializedAXNode {
-             /**
-              * The {@link https://www.w3.org/TR/wai-aria/#usage_intro | role} of the node.
-              */
-             role: string;
-             /**
-              * A human readable name for the node.
-              */
-             name?: string;
-             /**
-              * The current value of the node.
-              */
-             value?: string | number;
-             /**
-              * An additional human readable description of the node.
-              */
-             description?: string;
-             /**
-              * Any keyboard shortcuts associated with this node.
-              */
-             keyshortcuts?: string;
-             /**
-              * A human readable alternative to the role.
-              */
-             roledescription?: string;
-             /**
-              * A description of the current value.
-              */
-             valuetext?: string;
-             disabled?: boolean;
-             expanded?: boolean;
-             focused?: boolean;
-             modal?: boolean;
-             multiline?: boolean;
-             /**
-              * Whether more than one child can be selected.
-              */
-             multiselectable?: boolean;
-             readonly?: boolean;
-             required?: boolean;
-             selected?: boolean;
-             /**
-              * Whether the checkbox is checked, or in a
-              * {@link https://www.w3.org/TR/wai-aria-practices/examples/checkbox/checkbox-2/checkbox-2.html | mixed state}.
-              */
-             checked?: boolean | 'mixed';
-             /**
-              * Whether the node is checked or in a mixed state.
-              */
-             pressed?: boolean | 'mixed';
-             /**
-              * The level of a heading.
-              */
-             level?: number;
-             valuemin?: number;
-             valuemax?: number;
-             autocomplete?: string;
-             haspopup?: string;
-             /**
-              * Whether and in what way this node's value is invalid.
-              */
-             invalid?: string;
-             orientation?: string;
-             /**
-              * Children of this node, if there are any.
-              */
-             children?: SerializedAXNode[];
-         }
+/**
+ * @public
+ */
+export declare interface PuppeteerEventListener {
+    emitter: CommonEventEmitter;
+    eventName: string | symbol;
+    handler: (...args: any[]) => void;
+}
 
-         /**
-          * @public
-          */
-         export declare interface SnapshotOptions {
-             /**
-              * Prune uninteresting nodes from the tree.
-              * @defaultValue true
-              */
-             interestingOnly?: boolean;
-             /**
-              * Root node to get the accessibility tree for
-              * @defaultValue The root node of the entire page.
-              */
-             root?: ElementHandle;
-         }
+/**
+ * @public
+ */
+export declare type PuppeteerLifeCycleEvent = 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2';
 
-         /**
-          * @public
-          */
-         export declare class Target {
-             private _targetInfo;
-             private _browserContext;
-             private _sessionFactory;
-             private _ignoreHTTPSErrors;
-             private _defaultViewport?;
-             private _pagePromise?;
-             private _workerPromise?;
-             private _screenshotTaskQueue;
-             /**
-              * @internal
-              */
-             _initializedPromise: Promise<boolean>;
-             /**
-              * @internal
-              */
-             _initializedCallback: (x: boolean) => void;
-             /**
-              * @internal
-              */
-             _isClosedPromise: Promise<void>;
-             /**
-              * @internal
-              */
-             _closedCallback: () => void;
-             /**
-              * @internal
-              */
-             _isInitialized: boolean;
-             /**
-              * @internal
-              */
-             _targetId: string;
-             /**
-              * @internal
-              */
-             constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null, screenshotTaskQueue: TaskQueue);
-             /**
-              * Creates a Chrome Devtools Protocol session attached to the target.
-              */
-             createCDPSession(): Promise<CDPSession>;
-             /**
-              * If the target is not of type `"page"` or `"background_page"`, returns `null`.
-              */
-             page(): Promise<Page | null>;
-             /**
-              * If the target is not of type `"service_worker"` or `"shared_worker"`, returns `null`.
-              */
-             worker(): Promise<WebWorker | null>;
-             url(): string;
-             /**
-              * Identifies what kind of target this is.
-              *
-              * @remarks
-              *
-              * See {@link https://developer.chrome.com/extensions/background_pages | docs} for more info about background pages.
-              */
-             type(): 'page' | 'background_page' | 'service_worker' | 'shared_worker' | 'other' | 'browser' | 'webview';
-             /**
-              * Get the browser the target belongs to.
-              */
-             browser(): Browser;
-             /**
-              * Get the browser context the target belongs to.
-              */
-             browserContext(): BrowserContext;
-             /**
-              * Get the target that opened this target. Top-level targets return `null`.
-              */
-             opener(): Target | null;
-             /**
-              * @internal
-              */
-             _targetInfoChanged(targetInfo: Protocol.Target.TargetInfo): void;
-         }
+/**
+ * Extends the main {@link Puppeteer} class with Node specific behaviour for fetching and
+ * downloading browsers.
+ *
+ * If you're using Puppeteer in a Node environment, this is the class you'll get
+ * when you run `require('puppeteer')` (or the equivalent ES `import`).
+ *
+ * @remarks
+ *
+ * The most common method to use is {@link PuppeteerNode.launch | launch}, which
+ * is used to launch and connect to a new browser instance.
+ *
+ * See {@link Puppeteer | the main Puppeteer class} for methods common to all
+ * environments, such as {@link Puppeteer.connect}.
+ *
+ * @example
+ * The following is a typical example of using Puppeteer to drive automation:
+ * ```js
+ * const puppeteer = require('puppeteer');
+ *
+ * (async () => {
+ *   const browser = await puppeteer.launch();
+ *   const page = await browser.newPage();
+ *   await page.goto('https://www.google.com');
+ *   // other actions...
+ *   await browser.close();
+ * })();
+ * ```
+ *
+ * Once you have created a `page` you have access to a large API to interact
+ * with the page, navigate, or find certain elements in that page.
+ * The {@link Page | `page` documentation} lists all the available methods.
+ *
+ * @public
+ */
+export declare class PuppeteerNode extends Puppeteer {
+    private _lazyLauncher;
+    private _projectRoot;
+    private __productName?;
+    /**
+     * @internal
+     */
+    _preferredRevision: string;
+    /**
+     * @internal
+     */
+    constructor(settings: {
+        projectRoot: string;
+        preferredRevision: string;
+        productName?: Product;
+    } & CommonPuppeteerSettings);
+    /**
+     * This method attaches Puppeteer to an existing browser instance.
+     *
+     * @remarks
+     *
+     * @param options - Set of configurable options to set on the browser.
+     * @returns Promise which resolves to browser instance.
+     */
+    connect(options: ConnectOptions): Promise<Browser>;
+    /**
+     * @internal
+     */
+    get _productName(): Product;
+    set _productName(name: Product);
+    /**
+     * Launches puppeteer and launches a browser instance with given arguments
+     * and options when specified.
+     *
+     * @remarks
+     *
+     * @example
+     * You can use `ignoreDefaultArgs` to filter out `--mute-audio` from default arguments:
+     * ```js
+     * const browser = await puppeteer.launch({
+     *   ignoreDefaultArgs: ['--mute-audio']
+     * });
+     * ```
+     *
+     * **NOTE** Puppeteer can also be used to control the Chrome browser,
+     * but it works best with the version of Chromium it is bundled with.
+     * There is no guarantee it will work with any other version.
+     * Use `executablePath` option with extreme caution.
+     * If Google Chrome (rather than Chromium) is preferred, a {@link https://www.google.com/chrome/browser/canary.html | Chrome Canary} or {@link https://www.chromium.org/getting-involved/dev-channel | Dev Channel} build is suggested.
+     * In `puppeteer.launch([options])`, any mention of Chromium also applies to Chrome.
+     * See {@link https://www.howtogeek.com/202825/what%E2%80%99s-the-difference-between-chromium-and-chrome/ | this article} for a description of the differences between Chromium and Chrome. {@link https://chromium.googlesource.com/chromium/src/+/lkgr/docs/chromium_browser_vs_google_chrome.md | This article} describes some differences for Linux users.
+     *
+     * @param options - Set of configurable options to set on the browser.
+     * @returns Promise which resolves to browser instance.
+     */
+    launch(options?: LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions & {
+        product?: Product;
+        extraPrefsFirefox?: Record<string, unknown>;
+    }): Promise<Browser>;
+    /**
+     * @remarks
+     *
+     * **NOTE** `puppeteer.executablePath()` is affected by the `PUPPETEER_EXECUTABLE_PATH`
+     * and `PUPPETEER_CHROMIUM_REVISION` environment variables.
+     *
+     * @returns A path where Puppeteer expects to find the bundled browser.
+     * The browser binary might not be there if the download was skipped with
+     * the `PUPPETEER_SKIP_DOWNLOAD` environment variable.
+     */
+    executablePath(): string;
+    /**
+     * @internal
+     */
+    get _launcher(): ProductLauncher;
+    /**
+     * The name of the browser that is under automation (`"chrome"` or `"firefox"`)
+     *
+     * @remarks
+     * The product is set by the `PUPPETEER_PRODUCT` environment variable or the `product`
+     * option in `puppeteer.launch([options])` and defaults to `chrome`.
+     * Firefox support is experimental.
+     */
+    get product(): string;
+    /**
+     *
+     * @param options - Set of configurable options to set on the browser.
+     * @returns The default flags that Chromium will be launched with.
+     */
+    defaultArgs(options?: BrowserLaunchArgumentOptions): string[];
+    /**
+     * @param options - Set of configurable options to specify the settings
+     * of the BrowserFetcher.
+     * @returns A new BrowserFetcher instance.
+     */
+    createBrowserFetcher(options: BrowserFetcherOptions): BrowserFetcher;
+}
 
-         /**
-          * @public
-          */
-         export declare type TargetFilterCallback = (target: Protocol.Target.TargetInfo) => boolean;
+/**
+ * Utility type exposed to enable users to define options that can be passed to
+ * `puppeteer.launch` without having to list the set of all types.
+ * @public
+ */
+export declare type PuppeteerNodeLaunchOptions = BrowserLaunchArgumentOptions & LaunchOptions & BrowserConnectOptions;
 
-         /**
-          * Copyright 2020 Google Inc. All rights reserved.
-          *
-          * Licensed under the Apache License, Version 2.0 (the "License");
-          * you may not use this file except in compliance with the License.
-          * You may obtain a copy of the License at
-          *
-          *     http://www.apache.org/licenses/LICENSE-2.0
-          *
-          * Unless required by applicable law or agreed to in writing, software
-          * distributed under the License is distributed on an "AS IS" BASIS,
-          * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-          * See the License for the specific language governing permissions and
-          * limitations under the License.
-          */
-         declare class TaskQueue {
-             private _chain;
-             constructor();
-             postTask<T>(task: () => Promise<T>): Promise<T>;
-         }
+/**
+ * @public
+ * {@inheritDoc Puppeteer.registerCustomQueryHandler}
+ */
+export declare function registerCustomQueryHandler(name: string, queryHandler: CustomQueryHandler): void;
 
-         /**
-          * TimeoutError is emitted whenever certain operations are terminated due to timeout.
-          *
-          * @remarks
-          *
-          * Example operations are {@link Page.waitForSelector | page.waitForSelector}
-          * or {@link PuppeteerNode.launch | puppeteer.launch}.
-          *
-          * @public
-          */
-         export declare class TimeoutError extends CustomError {
-         }
+/**
+ * @public
+ */
+export declare interface RemoteAddress {
+    ip: string;
+    port: number;
+}
 
-         /**
-          * Copyright 2019 Google Inc. All rights reserved.
-          *
-          * Licensed under the Apache License, Version 2.0 (the "License");
-          * you may not use this file except in compliance with the License.
-          * You may obtain a copy of the License at
-          *
-          *     http://www.apache.org/licenses/LICENSE-2.0
-          *
-          * Unless required by applicable law or agreed to in writing, software
-          * distributed under the License is distributed on an "AS IS" BASIS,
-          * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-          * See the License for the specific language governing permissions and
-          * limitations under the License.
-          */
-         /**
-          * @internal
-          */
-         export declare class TimeoutSettings {
-             _defaultTimeout: number | null;
-             _defaultNavigationTimeout: number | null;
-             constructor();
-             setDefaultTimeout(timeout: number): void;
-             setDefaultNavigationTimeout(timeout: number): void;
-             navigationTimeout(): number;
-             timeout(): number;
-         }
+/**
+ * Resource types for HTTPRequests as perceived by the rendering engine.
+ *
+ * @public
+ */
+export declare type ResourceType = Lowercase<Protocol.Network.ResourceType>;
 
-         /**
-          * The Touchscreen class exposes touchscreen events.
-          * @public
-          */
-         export declare class Touchscreen {
-             private _client;
-             private _keyboard;
-             /**
-              * @internal
-              */
-             constructor(client: CDPSession, keyboard: Keyboard);
-             /**
-              * Dispatches a `touchstart` and `touchend` event.
-              * @param x - Horizontal position of the tap.
-              * @param y - Vertical position of the tap.
-              */
-             tap(x: number, y: number): Promise<void>;
-         }
+/**
+ * Required response data to fulfill a request with.
+ *
+ * @public
+ */
+export declare interface ResponseForRequest {
+    status: number;
+    /**
+     * Optional response headers. All values are converted to strings.
+     */
+    headers: Record<string, unknown>;
+    contentType: string;
+    body: string | Buffer;
+}
 
-         /**
-          * The Tracing class exposes the tracing audit interface.
-          * @remarks
-          * You can use `tracing.start` and `tracing.stop` to create a trace file
-          * which can be opened in Chrome DevTools or {@link https://chromedevtools.github.io/timeline-viewer/ | timeline viewer}.
-          *
-          * @example
-          * ```js
-          * await page.tracing.start({path: 'trace.json'});
-          * await page.goto('https://www.google.com');
-          * await page.tracing.stop();
-          * ```
-          *
-          * @public
-          */
-         export declare class Tracing {
-             _client: CDPSession;
-             _recording: boolean;
-             _path: string;
-             /**
-              * @internal
-              */
-             constructor(client: CDPSession);
-             /**
-              * Starts a trace for the current page.
-              * @remarks
-              * Only one trace can be active at a time per browser.
-              * @param options - Optional `TracingOptions`.
-              */
-             start(options?: TracingOptions): Promise<void>;
-             /**
-              * Stops a trace started with the `start` method.
-              * @returns Promise which resolves to buffer with trace data.
-              */
-             stop(): Promise<Buffer>;
-         }
+/**
+ * @public
+ */
+export declare interface ScreenshotClip {
+    x: number;
+    y: number;
+    width: number;
+    height: number;
+}
 
-         /**
-          * @public
-          */
-         export declare interface TracingOptions {
-             path?: string;
-             screenshots?: boolean;
-             categories?: string[];
-         }
+/**
+ * @public
+ */
+export declare interface ScreenshotOptions {
+    /**
+     * @defaultValue 'png'
+     */
+    type?: 'png' | 'jpeg';
+    /**
+     * The file path to save the image to. The screenshot type will be inferred
+     * from file extension. If path is a relative path, then it is resolved
+     * relative to current working directory. If no path is provided, the image
+     * won't be saved to the disk.
+     */
+    path?: string;
+    /**
+     * When true, takes a screenshot of the full page.
+     * @defaultValue false
+     */
+    fullPage?: boolean;
+    /**
+     * An object which specifies the clipping region of the page.
+     */
+    clip?: ScreenshotClip;
+    /**
+     * Quality of the image, between 0-100. Not applicable to `png` images.
+     */
+    quality?: number;
+    /**
+     * Hides default white background and allows capturing screenshots with transparency.
+     * @defaultValue false
+     */
+    omitBackground?: boolean;
+    /**
+     * Encoding of the image.
+     * @defaultValue 'binary'
+     */
+    encoding?: 'base64' | 'binary';
+    /**
+     * If you need a screenshot bigger than the Viewport
+     * @defaultValue true
+     */
+    captureBeyondViewport?: boolean;
+}
 
-         /**
-          * @public
-          * {@inheritDoc Puppeteer.unregisterCustomQueryHandler}
-          */
-         export declare function unregisterCustomQueryHandler(name: string): void;
+/**
+ * The SecurityDetails class represents the security details of a
+ * response that was received over a secure connection.
+ *
+ * @public
+ */
+export declare class SecurityDetails {
+    private _subjectName;
+    private _issuer;
+    private _validFrom;
+    private _validTo;
+    private _protocol;
+    private _sanList;
+    /**
+     * @internal
+     */
+    constructor(securityPayload: Protocol.Network.SecurityDetails);
+    /**
+     * @returns The name of the issuer of the certificate.
+     */
+    issuer(): string;
+    /**
+     * @returns {@link https://en.wikipedia.org/wiki/Unix_time | Unix timestamp}
+     * marking the start of the certificate's validity.
+     */
+    validFrom(): number;
+    /**
+     * @returns {@link https://en.wikipedia.org/wiki/Unix_time | Unix timestamp}
+     * marking the end of the certificate's validity.
+     */
+    validTo(): number;
+    /**
+     * @returns The security protocol being used, e.g. "TLS 1.2".
+     */
+    protocol(): string;
+    /**
+     * @returns The name of the subject to which the certificate was issued.
+     */
+    subjectName(): string;
+    /**
+     * @returns The list of {@link https://en.wikipedia.org/wiki/Subject_Alternative_Name | subject alternative names (SANs)} of the certificate.
+     */
+    subjectAlternativeNames(): string[];
+}
 
-         /**
-          *  Unwraps a DOM element out of an ElementHandle instance
-          * @public
-          **/
-         export declare type UnwrapElementHandle<X> = X extends ElementHandle<infer E> ? E : X;
+/**
+ * @public
+ */
+export declare type Serializable = number | string | boolean | null | BigInt | JSONArray | JSONObject;
 
-         /**
-          * @public
-          */
-         export declare type UnwrapPromiseLike<T> = T extends PromiseLike<infer U> ? U : T;
+/**
+ * @public
+ */
+export declare type SerializableOrJSHandle = Serializable | JSHandle;
 
-         /**
-          * Copyright 2020 Google Inc. All rights reserved.
-          *
-          * Licensed under the Apache License, Version 2.0 (the "License");
-          * you may not use this file except in compliance with the License.
-          * You may obtain a copy of the License at
-          *
-          *     http://www.apache.org/licenses/LICENSE-2.0
-          *
-          * Unless required by applicable law or agreed to in writing, software
-          * distributed under the License is distributed on an "AS IS" BASIS,
-          * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-          * See the License for the specific language governing permissions and
-          * limitations under the License.
-          */
-         /**
-          *
-          * Sets the viewport of the page.
-          * @public
-          */
-         export declare interface Viewport {
-             /**
-              * The page width in pixels.
-              */
-             width: number;
-             /**
-              * The page height in pixels.
-              */
-             height: number;
-             /**
-              * Specify device scale factor.
-              * See {@link https://developer.mozilla.org/en-US/docs/Web/API/Window/devicePixelRatio | devicePixelRatio} for more info.
-              * @defaultValue 1
-              */
-             deviceScaleFactor?: number;
-             /**
-              * Whether the `meta viewport` tag is taken into account.
-              * @defaultValue false
-              */
-             isMobile?: boolean;
-             /**
-              * Specifies if the viewport is in landscape mode.
-              * @defaultValue false
-              */
-             isLandscape?: boolean;
-             /**
-              * Specify if the viewport supports touch events.
-              * @defaultValue false
-              */
-             hasTouch?: boolean;
-         }
+/**
+ * Represents a Node and the properties of it that are relevant to Accessibility.
+ * @public
+ */
+export declare interface SerializedAXNode {
+    /**
+     * The {@link https://www.w3.org/TR/wai-aria/#usage_intro | role} of the node.
+     */
+    role: string;
+    /**
+     * A human readable name for the node.
+     */
+    name?: string;
+    /**
+     * The current value of the node.
+     */
+    value?: string | number;
+    /**
+     * An additional human readable description of the node.
+     */
+    description?: string;
+    /**
+     * Any keyboard shortcuts associated with this node.
+     */
+    keyshortcuts?: string;
+    /**
+     * A human readable alternative to the role.
+     */
+    roledescription?: string;
+    /**
+     * A description of the current value.
+     */
+    valuetext?: string;
+    disabled?: boolean;
+    expanded?: boolean;
+    focused?: boolean;
+    modal?: boolean;
+    multiline?: boolean;
+    /**
+     * Whether more than one child can be selected.
+     */
+    multiselectable?: boolean;
+    readonly?: boolean;
+    required?: boolean;
+    selected?: boolean;
+    /**
+     * Whether the checkbox is checked, or in a
+     * {@link https://www.w3.org/TR/wai-aria-practices/examples/checkbox/checkbox-2/checkbox-2.html | mixed state}.
+     */
+    checked?: boolean | 'mixed';
+    /**
+     * Whether the node is checked or in a mixed state.
+     */
+    pressed?: boolean | 'mixed';
+    /**
+     * The level of a heading.
+     */
+    level?: number;
+    valuemin?: number;
+    valuemax?: number;
+    autocomplete?: string;
+    haspopup?: string;
+    /**
+     * Whether and in what way this node's value is invalid.
+     */
+    invalid?: string;
+    orientation?: string;
+    /**
+     * Children of this node, if there are any.
+     */
+    children?: SerializedAXNode[];
+}
 
-         /**
-          * @public
-          */
-         export declare interface WaitForOptions {
-             /**
-              * Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to
-              * disable the timeout.
-              *
-              * @remarks
-              * The default value can be changed by using the
-              * {@link Page.setDefaultTimeout} or {@link Page.setDefaultNavigationTimeout}
-              * methods.
-              */
-             timeout?: number;
-             waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
-         }
+/**
+ * @public
+ */
+export declare interface SnapshotOptions {
+    /**
+     * Prune uninteresting nodes from the tree.
+     * @defaultValue true
+     */
+    interestingOnly?: boolean;
+    /**
+     * Root node to get the accessibility tree for
+     * @defaultValue The root node of the entire page.
+     */
+    root?: ElementHandle;
+}
 
-         /**
-          * @public
-          */
-         export declare interface WaitForSelectorOptions {
-             visible?: boolean;
-             hidden?: boolean;
-             timeout?: number;
-         }
+/**
+ * @public
+ */
+export declare class Target {
+    private _targetInfo;
+    private _browserContext;
+    private _sessionFactory;
+    private _ignoreHTTPSErrors;
+    private _defaultViewport?;
+    private _pagePromise?;
+    private _workerPromise?;
+    /**
+     * @internal
+     */
+    _initializedPromise: Promise<boolean>;
+    /**
+     * @internal
+     */
+    _initializedCallback: (x: boolean) => void;
+    /**
+     * @internal
+     */
+    _isClosedPromise: Promise<void>;
+    /**
+     * @internal
+     */
+    _closedCallback: () => void;
+    /**
+     * @internal
+     */
+    _isInitialized: boolean;
+    /**
+     * @internal
+     */
+    _targetId: string;
+    /**
+     * @internal
+     */
+    constructor(targetInfo: Protocol.Target.TargetInfo, browserContext: BrowserContext, sessionFactory: () => Promise<CDPSession>, ignoreHTTPSErrors: boolean, defaultViewport: Viewport | null);
+    /**
+     * Creates a Chrome Devtools Protocol session attached to the target.
+     */
+    createCDPSession(): Promise<CDPSession>;
+    /**
+     * If the target is not of type `"page"` or `"background_page"`, returns `null`.
+     */
+    page(): Promise<Page | null>;
+    /**
+     * If the target is not of type `"service_worker"` or `"shared_worker"`, returns `null`.
+     */
+    worker(): Promise<WebWorker | null>;
+    url(): string;
+    /**
+     * Identifies what kind of target this is.
+     *
+     * @remarks
+     *
+     * See {@link https://developer.chrome.com/extensions/background_pages | docs} for more info about background pages.
+     */
+    type(): 'page' | 'background_page' | 'service_worker' | 'shared_worker' | 'other' | 'browser' | 'webview';
+    /**
+     * Get the browser the target belongs to.
+     */
+    browser(): Browser;
+    /**
+     * Get the browser context the target belongs to.
+     */
+    browserContext(): BrowserContext;
+    /**
+     * Get the target that opened this target. Top-level targets return `null`.
+     */
+    opener(): Target | null;
+    /**
+     * @internal
+     */
+    _targetInfoChanged(targetInfo: Protocol.Target.TargetInfo): void;
+}
 
-         /**
-          * @public
-          */
-         export declare interface WaitForTargetOptions {
-             /**
-              * Maximum wait time in milliseconds. Pass `0` to disable the timeout.
-              * @defaultValue 30 seconds.
-              */
-             timeout?: number;
-         }
+/**
+ * @public
+ */
+export declare type TargetFilterCallback = (target: Protocol.Target.TargetInfo) => boolean;
 
-         /**
-          * @internal
-          */
-         export declare class WaitTask {
-             _domWorld: DOMWorld;
-             _polling: string | number;
-             _timeout: number;
-             _predicateBody: string;
-             _args: SerializableOrJSHandle[];
-             _binding: PageBinding;
-             _runCount: number;
-             promise: Promise<JSHandle>;
-             _resolve: (x: JSHandle) => void;
-             _reject: (x: Error) => void;
-             _timeoutTimer?: NodeJS.Timeout;
-             _terminated: boolean;
-             constructor(options: WaitTaskOptions);
-             terminate(error: Error): void;
-             rerun(): Promise<void>;
-             _cleanup(): void;
-         }
+/**
+ * TimeoutError is emitted whenever certain operations are terminated due to timeout.
+ *
+ * @remarks
+ *
+ * Example operations are {@link Page.waitForSelector | page.waitForSelector}
+ * or {@link PuppeteerNode.launch | puppeteer.launch}.
+ *
+ * @public
+ */
+export declare class TimeoutError extends CustomError {
+}
 
-         /**
-          * @internal
-          */
-         export declare interface WaitTaskOptions {
-             domWorld: DOMWorld;
-             predicateBody: Function | string;
-             title: string;
-             polling: string | number;
-             timeout: number;
-             binding?: PageBinding;
-             args: SerializableOrJSHandle[];
-         }
+/**
+ * Copyright 2019 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * @internal
+ */
+export declare class TimeoutSettings {
+    _defaultTimeout: number | null;
+    _defaultNavigationTimeout: number | null;
+    constructor();
+    setDefaultTimeout(timeout: number): void;
+    setDefaultNavigationTimeout(timeout: number): void;
+    navigationTimeout(): number;
+    timeout(): number;
+}
 
-         /**
-          * @public
-          */
-         export declare interface WaitTimeoutOptions {
-             /**
-              * Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to
-              * disable the timeout.
-              *
-              * @remarks
-              * The default value can be changed by using the
-              * {@link Page.setDefaultTimeout} method.
-              */
-             timeout?: number;
-         }
+/**
+ * The Touchscreen class exposes touchscreen events.
+ * @public
+ */
+export declare class Touchscreen {
+    private _client;
+    private _keyboard;
+    /**
+     * @internal
+     */
+    constructor(client: CDPSession, keyboard: Keyboard);
+    /**
+     * Dispatches a `touchstart` and `touchend` event.
+     * @param x - Horizontal position of the tap.
+     * @param y - Vertical position of the tap.
+     */
+    tap(x: number, y: number): Promise<void>;
+}
 
-         /**
-          * The WebWorker class represents a
-          * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}.
-          *
-          * @remarks
-          * The events `workercreated` and `workerdestroyed` are emitted on the page
-          * object to signal the worker lifecycle.
-          *
-          * @example
-          * ```js
-          * page.on('workercreated', worker => console.log('Worker created: ' + worker.url()));
-          * page.on('workerdestroyed', worker => console.log('Worker destroyed: ' + worker.url()));
-          *
-          * console.log('Current workers:');
-          * for (const worker of page.workers()) {
-          *   console.log('  ' + worker.url());
-          * }
-          * ```
-          *
-          * @public
-          */
-         export declare class WebWorker extends EventEmitter {
-             _client: CDPSession;
-             _url: string;
-             _executionContextPromise: Promise<ExecutionContext>;
-             _executionContextCallback: (value: ExecutionContext) => void;
-             /**
-              *
-              * @internal
-              */
-             constructor(client: CDPSession, url: string, consoleAPICalled: ConsoleAPICalledCallback, exceptionThrown: ExceptionThrownCallback);
-             /**
-              * @returns The URL of this web worker.
-              */
-             url(): string;
-             /**
-              * Returns the ExecutionContext the WebWorker runs in
-              * @returns The ExecutionContext the web worker runs in.
-              */
-             executionContext(): Promise<ExecutionContext>;
-             /**
-              * If the function passed to the `worker.evaluate` returns a Promise, then
-              * `worker.evaluate` would wait for the promise to resolve and return its
-              * value. If the function passed to the `worker.evaluate` returns a
-              * non-serializable value, then `worker.evaluate` resolves to `undefined`.
-              * DevTools Protocol also supports transferring some additional values that
-              * are not serializable by `JSON`: `-0`, `NaN`, `Infinity`, `-Infinity`, and
-              * bigint literals.
-              * Shortcut for `await worker.executionContext()).evaluate(pageFunction, ...args)`.
-              *
-              * @param pageFunction - Function to be evaluated in the worker context.
-              * @param args - Arguments to pass to `pageFunction`.
-              * @returns Promise which resolves to the return value of `pageFunction`.
-              */
-             evaluate<ReturnType extends any>(pageFunction: Function | string, ...args: any[]): Promise<ReturnType>;
-             /**
-              * The only difference between `worker.evaluate` and `worker.evaluateHandle`
-              * is that `worker.evaluateHandle` returns in-page object (JSHandle). If the
-              * function passed to the `worker.evaluateHandle` returns a `Promise`, then
-              * `worker.evaluateHandle` would wait for the promise to resolve and return
-              * its value. Shortcut for
-              * `await worker.executionContext()).evaluateHandle(pageFunction, ...args)`
-              *
-              * @param pageFunction - Function to be evaluated in the page context.
-              * @param args - Arguments to pass to `pageFunction`.
-              * @returns Promise which resolves to the return value of `pageFunction`.
-              */
-             evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
-         }
+/**
+ * The Tracing class exposes the tracing audit interface.
+ * @remarks
+ * You can use `tracing.start` and `tracing.stop` to create a trace file
+ * which can be opened in Chrome DevTools or {@link https://chromedevtools.github.io/timeline-viewer/ | timeline viewer}.
+ *
+ * @example
+ * ```js
+ * await page.tracing.start({path: 'trace.json'});
+ * await page.goto('https://www.google.com');
+ * await page.tracing.stop();
+ * ```
+ *
+ * @public
+ */
+export declare class Tracing {
+    _client: CDPSession;
+    _recording: boolean;
+    _path: string;
+    /**
+     * @internal
+     */
+    constructor(client: CDPSession);
+    /**
+     * Starts a trace for the current page.
+     * @remarks
+     * Only one trace can be active at a time per browser.
+     * @param options - Optional `TracingOptions`.
+     */
+    start(options?: TracingOptions): Promise<void>;
+    /**
+     * Stops a trace started with the `start` method.
+     * @returns Promise which resolves to buffer with trace data.
+     */
+    stop(): Promise<Buffer>;
+}
 
-         /**
-          *  Wraps a DOM element into an ElementHandle instance
-          * @public
-          **/
-         export declare type WrapElementHandle<X> = X extends Element ? ElementHandle<X> : X;
+/**
+ * @public
+ */
+export declare interface TracingOptions {
+    path?: string;
+    screenshots?: boolean;
+    categories?: string[];
+}
 
+/**
+ * @public
+ * {@inheritDoc Puppeteer.unregisterCustomQueryHandler}
+ */
+export declare function unregisterCustomQueryHandler(name: string): void;
 
-         export * from "devtools-protocol/types/protocol";
+/**
+ *  Unwraps a DOM element out of an ElementHandle instance
+ * @public
+ **/
+export declare type UnwrapElementHandle<X> = X extends ElementHandle<infer E> ? E : X;
 
-         export { }
+/**
+ * @public
+ */
+export declare type UnwrapPromiseLike<T> = T extends PromiseLike<infer U> ? U : T;
+
+/**
+ * Copyright 2020 Google Inc. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ *
+ * Sets the viewport of the page.
+ * @public
+ */
+export declare interface Viewport {
+    /**
+     * The page width in pixels.
+     */
+    width: number;
+    /**
+     * The page height in pixels.
+     */
+    height: number;
+    /**
+     * Specify device scale factor.
+     * See {@link https://developer.mozilla.org/en-US/docs/Web/API/Window/devicePixelRatio | devicePixelRatio} for more info.
+     * @defaultValue 1
+     */
+    deviceScaleFactor?: number;
+    /**
+     * Whether the `meta viewport` tag is taken into account.
+     * @defaultValue false
+     */
+    isMobile?: boolean;
+    /**
+     * Specifies if the viewport is in landscape mode.
+     * @defaultValue false
+     */
+    isLandscape?: boolean;
+    /**
+     * Specify if the viewport supports touch events.
+     * @defaultValue false
+     */
+    hasTouch?: boolean;
+}
+
+/**
+ * @public
+ */
+export declare interface WaitForOptions {
+    /**
+     * Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to
+     * disable the timeout.
+     *
+     * @remarks
+     * The default value can be changed by using the
+     * {@link Page.setDefaultTimeout} or {@link Page.setDefaultNavigationTimeout}
+     * methods.
+     */
+    timeout?: number;
+    waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
+}
+
+/**
+ * @public
+ */
+export declare interface WaitForSelectorOptions {
+    visible?: boolean;
+    hidden?: boolean;
+    timeout?: number;
+}
+
+/**
+ * @public
+ */
+export declare interface WaitForTargetOptions {
+    /**
+     * Maximum wait time in milliseconds. Pass `0` to disable the timeout.
+     * @defaultValue 30 seconds.
+     */
+    timeout?: number;
+}
+
+/**
+ * @internal
+ */
+export declare class WaitTask {
+    _domWorld: DOMWorld;
+    _polling: string | number;
+    _timeout: number;
+    _predicateBody: string;
+    _args: SerializableOrJSHandle[];
+    _binding: PageBinding;
+    _runCount: number;
+    promise: Promise<JSHandle>;
+    _resolve: (x: JSHandle) => void;
+    _reject: (x: Error) => void;
+    _timeoutTimer?: NodeJS.Timeout;
+    _terminated: boolean;
+    constructor(options: WaitTaskOptions);
+    terminate(error: Error): void;
+    rerun(): Promise<void>;
+    _cleanup(): void;
+}
+
+/**
+ * @internal
+ */
+export declare interface WaitTaskOptions {
+    domWorld: DOMWorld;
+    predicateBody: Function | string;
+    title: string;
+    polling: string | number;
+    timeout: number;
+    binding?: PageBinding;
+    args: SerializableOrJSHandle[];
+}
+
+/**
+ * @public
+ */
+export declare interface WaitTimeoutOptions {
+    /**
+     * Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to
+     * disable the timeout.
+     *
+     * @remarks
+     * The default value can be changed by using the
+     * {@link Page.setDefaultTimeout} method.
+     */
+    timeout?: number;
+}
+
+/**
+ * The WebWorker class represents a
+ * {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API | WebWorker}.
+ *
+ * @remarks
+ * The events `workercreated` and `workerdestroyed` are emitted on the page
+ * object to signal the worker lifecycle.
+ *
+ * @example
+ * ```js
+ * page.on('workercreated', worker => console.log('Worker created: ' + worker.url()));
+ * page.on('workerdestroyed', worker => console.log('Worker destroyed: ' + worker.url()));
+ *
+ * console.log('Current workers:');
+ * for (const worker of page.workers()) {
+ *   console.log('  ' + worker.url());
+ * }
+ * ```
+ *
+ * @public
+ */
+export declare class WebWorker extends EventEmitter {
+    _client: CDPSession;
+    _url: string;
+    _executionContextPromise: Promise<ExecutionContext>;
+    _executionContextCallback: (value: ExecutionContext) => void;
+    /**
+     *
+     * @internal
+     */
+    constructor(client: CDPSession, url: string, consoleAPICalled: ConsoleAPICalledCallback, exceptionThrown: ExceptionThrownCallback);
+    /**
+     * @returns The URL of this web worker.
+     */
+    url(): string;
+    /**
+     * Returns the ExecutionContext the WebWorker runs in
+     * @returns The ExecutionContext the web worker runs in.
+     */
+    executionContext(): Promise<ExecutionContext>;
+    /**
+     * If the function passed to the `worker.evaluate` returns a Promise, then
+     * `worker.evaluate` would wait for the promise to resolve and return its
+     * value. If the function passed to the `worker.evaluate` returns a
+     * non-serializable value, then `worker.evaluate` resolves to `undefined`.
+     * DevTools Protocol also supports transferring some additional values that
+     * are not serializable by `JSON`: `-0`, `NaN`, `Infinity`, `-Infinity`, and
+     * bigint literals.
+     * Shortcut for `await worker.executionContext()).evaluate(pageFunction, ...args)`.
+     *
+     * @param pageFunction - Function to be evaluated in the worker context.
+     * @param args - Arguments to pass to `pageFunction`.
+     * @returns Promise which resolves to the return value of `pageFunction`.
+     */
+    evaluate<ReturnType extends any>(pageFunction: Function | string, ...args: any[]): Promise<ReturnType>;
+    /**
+     * The only difference between `worker.evaluate` and `worker.evaluateHandle`
+     * is that `worker.evaluateHandle` returns in-page object (JSHandle). If the
+     * function passed to the `worker.evaluateHandle` returns a `Promise`, then
+     * `worker.evaluateHandle` would wait for the promise to resolve and return
+     * its value. Shortcut for
+     * `await worker.executionContext()).evaluateHandle(pageFunction, ...args)`
+     *
+     * @param pageFunction - Function to be evaluated in the page context.
+     * @param args - Arguments to pass to `pageFunction`.
+     * @returns Promise which resolves to the return value of `pageFunction`.
+     */
+    evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
+}
+
+/**
+ *  Wraps a DOM element into an ElementHandle instance
+ * @public
+ **/
+export declare type WrapElementHandle<X> = X extends Element ? ElementHandle<X> : X;
+
+export { }
diff --git a/node_modules/puppeteer/node_modules/debug/LICENSE b/node_modules/puppeteer/node_modules/debug/LICENSE
deleted file mode 100644
index 658c933..0000000
--- a/node_modules/puppeteer/node_modules/debug/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014 TJ Holowaychuk <[email protected]>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
-and associated documentation files (the 'Software'), to deal in the Software without restriction, 
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial 
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/node_modules/puppeteer/node_modules/debug/README.md b/node_modules/puppeteer/node_modules/debug/README.md
deleted file mode 100644
index 88dae35..0000000
--- a/node_modules/puppeteer/node_modules/debug/README.md
+++ /dev/null
@@ -1,455 +0,0 @@
-# debug
-[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
-[![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
-
-<img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
-
-A tiny JavaScript debugging utility modelled after Node.js core's debugging
-technique. Works in Node.js and web browsers.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
-`debug` exposes a function; simply pass this function the name of your module, and it will return a decorated version of `console.error` for you to pass debug statements to. This will allow you to toggle the debug output for different parts of your module as well as the module as a whole.
-
-Example [_app.js_](./examples/node/app.js):
-
-```js
-var debug = require('debug')('http')
-  , http = require('http')
-  , name = 'My App';
-
-// fake app
-
-debug('booting %o', name);
-
-http.createServer(function(req, res){
-  debug(req.method + ' ' + req.url);
-  res.end('hello\n');
-}).listen(3000, function(){
-  debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example [_worker.js_](./examples/node/worker.js):
-
-```js
-var a = require('debug')('worker:a')
-  , b = require('debug')('worker:b');
-
-function work() {
-  a('doing lots of uninteresting work');
-  setTimeout(work, Math.random() * 1000);
-}
-
-work();
-
-function workb() {
-  b('doing some work');
-  setTimeout(workb, Math.random() * 2000);
-}
-
-workb();
-```
-
-The `DEBUG` environment variable is then used to enable these based on space or
-comma-delimited names.
-
-Here are some examples:
-
-<img width="647" alt="screen shot 2017-08-08 at 12 53 04 pm" src="https://user-images.githubusercontent.com/71256/29091703-a6302cdc-7c38-11e7-8304-7c0b3bc600cd.png">
-<img width="647" alt="screen shot 2017-08-08 at 12 53 38 pm" src="https://user-images.githubusercontent.com/71256/29091700-a62a6888-7c38-11e7-800b-db911291ca2b.png">
-<img width="647" alt="screen shot 2017-08-08 at 12 53 25 pm" src="https://user-images.githubusercontent.com/71256/29091701-a62ea114-7c38-11e7-826a-2692bedca740.png">
-
-#### Windows command prompt notes
-
-##### CMD
-
-On Windows the environment variable is set using the `set` command.
-
-```cmd
-set DEBUG=*,-not_this
-```
-
-Example:
-
-```cmd
-set DEBUG=* & node app.js
-```
-
-##### PowerShell (VS Code default)
-
-PowerShell uses different syntax to set environment variables.
-
-```cmd
-$env:DEBUG = "*,-not_this"
-```
-
-Example:
-
-```cmd
-$env:DEBUG='app';node app.js
-```
-
-Then, run the program to be debugged as usual.
-
-npm script example:
-```js
-  "windowsDebug": "@powershell -Command $env:DEBUG='*';node app.js",
-```
-
-## Namespace Colors
-
-Every debug instance has a color generated for it based on its namespace name.
-This helps when visually parsing the debug output to identify which debug instance
-a debug line belongs to.
-
-#### Node.js
-
-In Node.js, colors are enabled when stderr is a TTY. You also _should_ install
-the [`supports-color`](https://npmjs.org/supports-color) module alongside debug,
-otherwise debug will only use a small handful of basic colors.
-
-<img width="521" src="https://user-images.githubusercontent.com/71256/29092181-47f6a9e6-7c3a-11e7-9a14-1928d8a711cd.png">
-
-#### Web Browser
-
-Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-option. These are WebKit web inspectors, Firefox ([since version
-31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-and the Firebug plugin for Firefox (any version).
-
-<img width="524" src="https://user-images.githubusercontent.com/71256/29092033-b65f9f2e-7c39-11e7-8e32-f6f0d8e865c1.png">
-
-
-## Millisecond diff
-
-When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-<img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
-
-When stdout is not a TTY, `Date#toISOString()` is used, making it more useful for logging the debug information as shown below:
-
-<img width="647" src="https://user-images.githubusercontent.com/71256/29091956-6bd78372-7c39-11e7-8c55-c948396d6edd.png">
-
-
-## Conventions
-
-If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser".  If you append a "*" to the end of your name, it will always be enabled regardless of the setting of the DEBUG environment variable.  You can then use it for normal output as well as debug output.
-
-## Wildcards
-
-The `*` character may be used as a wildcard. Suppose for example your library has
-debuggers named "connect:bodyParser", "connect:compress", "connect:session",
-instead of listing all three with
-`DEBUG=connect:bodyParser,connect:compress,connect:session`, you may simply do
-`DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-You can also exclude specific debuggers by prefixing them with a "-" character.
-For example, `DEBUG=*,-connect:*` would include all debuggers except those
-starting with "connect:".
-
-## Environment Variables
-
-When running through Node.js, you can set a few environment variables that will
-change the behavior of the debug logging:
-
-| Name      | Purpose                                         |
-|-----------|-------------------------------------------------|
-| `DEBUG`   | Enables/disables specific debugging namespaces. |
-| `DEBUG_HIDE_DATE` | Hide date from debug output (non-TTY).  |
-| `DEBUG_COLORS`| Whether or not to use colors in the debug output. |
-| `DEBUG_DEPTH` | Object inspection depth.                    |
-| `DEBUG_SHOW_HIDDEN` | Shows hidden properties on inspected objects. |
-
-
-__Note:__ The environment variables beginning with `DEBUG_` end up being
-converted into an Options object that gets used with `%o`/`%O` formatters.
-See the Node.js documentation for
-[`util.inspect()`](https://nodejs.org/api/util.html#util_util_inspect_object_options)
-for the complete list.
-
-## Formatters
-
-Debug uses [printf-style](https://wikipedia.org/wiki/Printf_format_string) formatting.
-Below are the officially supported formatters:
-
-| Formatter | Representation |
-|-----------|----------------|
-| `%O`      | Pretty-print an Object on multiple lines. |
-| `%o`      | Pretty-print an Object all on a single line. |
-| `%s`      | String. |
-| `%d`      | Number (both integer and float). |
-| `%j`      | JSON. Replaced with the string '[Circular]' if the argument contains circular references. |
-| `%%`      | Single percent sign ('%'). This does not consume an argument. |
-
-
-### Custom formatters
-
-You can add custom formatters by extending the `debug.formatters` object.
-For example, if you wanted to add support for rendering a Buffer as hex with
-`%h`, you could do something like:
-
-```js
-const createDebug = require('debug')
-createDebug.formatters.h = (v) => {
-  return v.toString('hex')
-}
-
-// …elsewhere
-const debug = createDebug('foo')
-debug('this is hex: %h', new Buffer('hello world'))
-//   foo this is hex: 68656c6c6f20776f726c6421 +0ms
-```
-
-
-## Browser Support
-
-You can build a browser-ready script using [browserify](https://github.com/substack/node-browserify),
-or just use the [browserify-as-a-service](https://wzrd.in/) [build](https://wzrd.in/standalone/debug@latest),
-if you don't want to build it yourself.
-
-Debug's enable state is currently persisted by `localStorage`.
-Consider the situation shown below where you have `worker:a` and `worker:b`,
-and wish to debug both. You can enable this using `localStorage.debug`:
-
-```js
-localStorage.debug = 'worker:*'
-```
-
-And then refresh the page.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
-  a('doing some work');
-}, 1000);
-
-setInterval(function(){
-  b('doing some work');
-}, 1200);
-```
-
-
-## Output streams
-
-  By default `debug` will log to stderr, however this can be configured per-namespace by overriding the `log` method:
-
-Example [_stdout.js_](./examples/node/stdout.js):
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Extend
-You can simply extend debugger 
-```js
-const log = require('debug')('auth');
-
-//creates new debug instance with extended namespace
-const logSign = log.extend('sign');
-const logLogin = log.extend('login');
-
-log('hello'); // auth hello
-logSign('hello'); //auth:sign hello
-logLogin('hello'); //auth:login hello
-```
-
-## Set dynamically
-
-You can also enable debug dynamically by calling the `enable()` method :
-
-```js
-let debug = require('debug');
-
-console.log(1, debug.enabled('test'));
-
-debug.enable('test');
-console.log(2, debug.enabled('test'));
-
-debug.disable();
-console.log(3, debug.enabled('test'));
-
-```
-
-print :   
-```
-1 false
-2 true
-3 false
-```
-
-Usage :  
-`enable(namespaces)`  
-`namespaces` can include modes separated by a colon and wildcards.
-   
-Note that calling `enable()` completely overrides previously set DEBUG variable : 
-
-```
-$ DEBUG=foo node -e 'var dbg = require("debug"); dbg.enable("bar"); console.log(dbg.enabled("foo"))'
-=> false
-```
-
-`disable()`
-
-Will disable all namespaces. The functions returns the namespaces currently
-enabled (and skipped). This can be useful if you want to disable debugging
-temporarily without knowing what was enabled to begin with.
-
-For example:
-
-```js
-let debug = require('debug');
-debug.enable('foo:*,-foo:bar');
-let namespaces = debug.disable();
-debug.enable(namespaces);
-```
-
-Note: There is no guarantee that the string will be identical to the initial
-enable string, but semantically they will be identical.
-
-## Checking whether a debug target is enabled
-
-After you've created a debug instance, you can determine whether or not it is
-enabled by checking the `enabled` property:
-
-```javascript
-const debug = require('debug')('http');
-
-if (debug.enabled) {
-  // do stuff...
-}
-```
-
-You can also manually toggle this property to force the debug instance to be
-enabled or disabled.
-
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
- - Andrew Rhyne
-
-## Backers
-
-Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/debug#backer)]
-
-<a href="https://opencollective.com/debug/backer/0/website" target="_blank"><img src="https://opencollective.com/debug/backer/0/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/1/website" target="_blank"><img src="https://opencollective.com/debug/backer/1/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/2/website" target="_blank"><img src="https://opencollective.com/debug/backer/2/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/3/website" target="_blank"><img src="https://opencollective.com/debug/backer/3/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/4/website" target="_blank"><img src="https://opencollective.com/debug/backer/4/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/5/website" target="_blank"><img src="https://opencollective.com/debug/backer/5/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/6/website" target="_blank"><img src="https://opencollective.com/debug/backer/6/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/7/website" target="_blank"><img src="https://opencollective.com/debug/backer/7/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/8/website" target="_blank"><img src="https://opencollective.com/debug/backer/8/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/9/website" target="_blank"><img src="https://opencollective.com/debug/backer/9/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/10/website" target="_blank"><img src="https://opencollective.com/debug/backer/10/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/11/website" target="_blank"><img src="https://opencollective.com/debug/backer/11/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/12/website" target="_blank"><img src="https://opencollective.com/debug/backer/12/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/13/website" target="_blank"><img src="https://opencollective.com/debug/backer/13/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/14/website" target="_blank"><img src="https://opencollective.com/debug/backer/14/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/15/website" target="_blank"><img src="https://opencollective.com/debug/backer/15/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/16/website" target="_blank"><img src="https://opencollective.com/debug/backer/16/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/17/website" target="_blank"><img src="https://opencollective.com/debug/backer/17/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/18/website" target="_blank"><img src="https://opencollective.com/debug/backer/18/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/19/website" target="_blank"><img src="https://opencollective.com/debug/backer/19/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/20/website" target="_blank"><img src="https://opencollective.com/debug/backer/20/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/21/website" target="_blank"><img src="https://opencollective.com/debug/backer/21/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/22/website" target="_blank"><img src="https://opencollective.com/debug/backer/22/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/23/website" target="_blank"><img src="https://opencollective.com/debug/backer/23/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/24/website" target="_blank"><img src="https://opencollective.com/debug/backer/24/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/25/website" target="_blank"><img src="https://opencollective.com/debug/backer/25/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/26/website" target="_blank"><img src="https://opencollective.com/debug/backer/26/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/27/website" target="_blank"><img src="https://opencollective.com/debug/backer/27/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/28/website" target="_blank"><img src="https://opencollective.com/debug/backer/28/avatar.svg"></a>
-<a href="https://opencollective.com/debug/backer/29/website" target="_blank"><img src="https://opencollective.com/debug/backer/29/avatar.svg"></a>
-
-
-## Sponsors
-
-Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/debug#sponsor)]
-
-<a href="https://opencollective.com/debug/sponsor/0/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/0/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/1/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/1/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/2/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/2/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/3/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/3/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/4/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/4/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/5/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/5/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/6/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/6/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/7/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/7/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/8/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/8/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/9/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/9/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/10/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/10/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/11/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/11/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/12/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/12/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/13/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/13/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/14/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/14/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/15/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/15/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/16/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/16/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/17/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/17/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/18/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/18/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/19/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/19/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/20/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/20/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/21/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/21/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/22/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/22/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/23/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/23/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/24/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/24/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/25/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/25/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/26/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/26/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/27/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/27/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/28/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/28/avatar.svg"></a>
-<a href="https://opencollective.com/debug/sponsor/29/website" target="_blank"><img src="https://opencollective.com/debug/sponsor/29/avatar.svg"></a>
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/puppeteer/node_modules/debug/package.json b/node_modules/puppeteer/node_modules/debug/package.json
deleted file mode 100644
index b7d70ac..0000000
--- a/node_modules/puppeteer/node_modules/debug/package.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
-  "name": "debug",
-  "version": "4.3.2",
-  "repository": {
-    "type": "git",
-    "url": "git://github.com/visionmedia/debug.git"
-  },
-  "description": "small debugging utility",
-  "keywords": [
-    "debug",
-    "log",
-    "debugger"
-  ],
-  "files": [
-    "src",
-    "LICENSE",
-    "README.md"
-  ],
-  "author": "TJ Holowaychuk <[email protected]>",
-  "contributors": [
-    "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>",
-    "Josh Junon <[email protected]>"
-  ],
-  "license": "MIT",
-  "scripts": {
-    "lint": "xo",
-    "test": "npm run test:node && npm run test:browser && npm run lint",
-    "test:node": "istanbul cover _mocha -- test.js",
-    "test:browser": "karma start --single-run",
-    "test:coverage": "cat ./coverage/lcov.info | coveralls"
-  },
-  "dependencies": {
-    "ms": "2.1.2"
-  },
-  "devDependencies": {
-    "brfs": "^2.0.1",
-    "browserify": "^16.2.3",
-    "coveralls": "^3.0.2",
-    "istanbul": "^0.4.5",
-    "karma": "^3.1.4",
-    "karma-browserify": "^6.0.0",
-    "karma-chrome-launcher": "^2.2.0",
-    "karma-mocha": "^1.3.0",
-    "mocha": "^5.2.0",
-    "mocha-lcov-reporter": "^1.2.0",
-    "xo": "^0.23.0"
-  },
-  "peerDependenciesMeta": {
-    "supports-color": {
-      "optional": true
-    }
-  },
-  "main": "./src/index.js",
-  "browser": "./src/browser.js",
-  "engines": {
-    "node": ">=6.0"
-  }
-}
diff --git a/node_modules/puppeteer/node_modules/debug/src/browser.js b/node_modules/puppeteer/node_modules/debug/src/browser.js
deleted file mode 100644
index cd0fc35..0000000
--- a/node_modules/puppeteer/node_modules/debug/src/browser.js
+++ /dev/null
@@ -1,269 +0,0 @@
-/* eslint-env browser */
-
-/**
- * This is the web browser implementation of `debug()`.
- */
-
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-exports.storage = localstorage();
-exports.destroy = (() => {
-	let warned = false;
-
-	return () => {
-		if (!warned) {
-			warned = true;
-			console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
-		}
-	};
-})();
-
-/**
- * Colors.
- */
-
-exports.colors = [
-	'#0000CC',
-	'#0000FF',
-	'#0033CC',
-	'#0033FF',
-	'#0066CC',
-	'#0066FF',
-	'#0099CC',
-	'#0099FF',
-	'#00CC00',
-	'#00CC33',
-	'#00CC66',
-	'#00CC99',
-	'#00CCCC',
-	'#00CCFF',
-	'#3300CC',
-	'#3300FF',
-	'#3333CC',
-	'#3333FF',
-	'#3366CC',
-	'#3366FF',
-	'#3399CC',
-	'#3399FF',
-	'#33CC00',
-	'#33CC33',
-	'#33CC66',
-	'#33CC99',
-	'#33CCCC',
-	'#33CCFF',
-	'#6600CC',
-	'#6600FF',
-	'#6633CC',
-	'#6633FF',
-	'#66CC00',
-	'#66CC33',
-	'#9900CC',
-	'#9900FF',
-	'#9933CC',
-	'#9933FF',
-	'#99CC00',
-	'#99CC33',
-	'#CC0000',
-	'#CC0033',
-	'#CC0066',
-	'#CC0099',
-	'#CC00CC',
-	'#CC00FF',
-	'#CC3300',
-	'#CC3333',
-	'#CC3366',
-	'#CC3399',
-	'#CC33CC',
-	'#CC33FF',
-	'#CC6600',
-	'#CC6633',
-	'#CC9900',
-	'#CC9933',
-	'#CCCC00',
-	'#CCCC33',
-	'#FF0000',
-	'#FF0033',
-	'#FF0066',
-	'#FF0099',
-	'#FF00CC',
-	'#FF00FF',
-	'#FF3300',
-	'#FF3333',
-	'#FF3366',
-	'#FF3399',
-	'#FF33CC',
-	'#FF33FF',
-	'#FF6600',
-	'#FF6633',
-	'#FF9900',
-	'#FF9933',
-	'#FFCC00',
-	'#FFCC33'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-// eslint-disable-next-line complexity
-function useColors() {
-	// NB: In an Electron preload script, document will be defined but not fully
-	// initialized. Since we know we're in Chrome, we'll just detect this case
-	// explicitly
-	if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
-		return true;
-	}
-
-	// Internet Explorer and Edge do not support colors.
-	if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
-		return false;
-	}
-
-	// Is webkit? http://stackoverflow.com/a/16459606/376773
-	// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
-	return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
-		// Is firebug? http://stackoverflow.com/a/398120/376773
-		(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
-		// Is firefox >= v31?
-		// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
-		(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
-		// Double check webkit in userAgent just in case we are in a worker
-		(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
-}
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs(args) {
-	args[0] = (this.useColors ? '%c' : '') +
-		this.namespace +
-		(this.useColors ? ' %c' : ' ') +
-		args[0] +
-		(this.useColors ? '%c ' : ' ') +
-		'+' + module.exports.humanize(this.diff);
-
-	if (!this.useColors) {
-		return;
-	}
-
-	const c = 'color: ' + this.color;
-	args.splice(1, 0, c, 'color: inherit');
-
-	// The final "%c" is somewhat tricky, because there could be other
-	// arguments passed either before or after the %c, so we need to
-	// figure out the correct index to insert the CSS into
-	let index = 0;
-	let lastC = 0;
-	args[0].replace(/%[a-zA-Z%]/g, match => {
-		if (match === '%%') {
-			return;
-		}
-		index++;
-		if (match === '%c') {
-			// We only are interested in the *last* %c
-			// (the user may have provided their own)
-			lastC = index;
-		}
-	});
-
-	args.splice(lastC, 0, c);
-}
-
-/**
- * Invokes `console.debug()` when available.
- * No-op when `console.debug` is not a "function".
- * If `console.debug` is not available, falls back
- * to `console.log`.
- *
- * @api public
- */
-exports.log = console.debug || console.log || (() => {});
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-function save(namespaces) {
-	try {
-		if (namespaces) {
-			exports.storage.setItem('debug', namespaces);
-		} else {
-			exports.storage.removeItem('debug');
-		}
-	} catch (error) {
-		// Swallow
-		// XXX (@Qix-) should we be logging these?
-	}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-function load() {
-	let r;
-	try {
-		r = exports.storage.getItem('debug');
-	} catch (error) {
-		// Swallow
-		// XXX (@Qix-) should we be logging these?
-	}
-
-	// If debug isn't set in LS, and we're in Electron, try to load $DEBUG
-	if (!r && typeof process !== 'undefined' && 'env' in process) {
-		r = process.env.DEBUG;
-	}
-
-	return r;
-}
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage() {
-	try {
-		// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
-		// The Browser also has localStorage in the global context.
-		return localStorage;
-	} catch (error) {
-		// Swallow
-		// XXX (@Qix-) should we be logging these?
-	}
-}
-
-module.exports = require('./common')(exports);
-
-const {formatters} = module.exports;
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-formatters.j = function (v) {
-	try {
-		return JSON.stringify(v);
-	} catch (error) {
-		return '[UnexpectedJSONParseError]: ' + error.message;
-	}
-};
diff --git a/node_modules/puppeteer/node_modules/debug/src/common.js b/node_modules/puppeteer/node_modules/debug/src/common.js
deleted file mode 100644
index 50ce292..0000000
--- a/node_modules/puppeteer/node_modules/debug/src/common.js
+++ /dev/null
@@ -1,274 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- */
-
-function setup(env) {
-	createDebug.debug = createDebug;
-	createDebug.default = createDebug;
-	createDebug.coerce = coerce;
-	createDebug.disable = disable;
-	createDebug.enable = enable;
-	createDebug.enabled = enabled;
-	createDebug.humanize = require('ms');
-	createDebug.destroy = destroy;
-
-	Object.keys(env).forEach(key => {
-		createDebug[key] = env[key];
-	});
-
-	/**
-	* The currently active debug mode names, and names to skip.
-	*/
-
-	createDebug.names = [];
-	createDebug.skips = [];
-
-	/**
-	* Map of special "%n" handling functions, for the debug "format" argument.
-	*
-	* Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
-	*/
-	createDebug.formatters = {};
-
-	/**
-	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the for the debug instance to be colored
-	* @return {Number|String} An ANSI color code for the given namespace
-	* @api private
-	*/
-	function selectColor(namespace) {
-		let hash = 0;
-
-		for (let i = 0; i < namespace.length; i++) {
-			hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
-			hash |= 0; // Convert to 32bit integer
-		}
-
-		return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
-	}
-	createDebug.selectColor = selectColor;
-
-	/**
-	* Create a debugger with the given `namespace`.
-	*
-	* @param {String} namespace
-	* @return {Function}
-	* @api public
-	*/
-	function createDebug(namespace) {
-		let prevTime;
-		let enableOverride = null;
-		let namespacesCache;
-		let enabledCache;
-
-		function debug(...args) {
-			// Disabled?
-			if (!debug.enabled) {
-				return;
-			}
-
-			const self = debug;
-
-			// Set `diff` timestamp
-			const curr = Number(new Date());
-			const ms = curr - (prevTime || curr);
-			self.diff = ms;
-			self.prev = prevTime;
-			self.curr = curr;
-			prevTime = curr;
-
-			args[0] = createDebug.coerce(args[0]);
-
-			if (typeof args[0] !== 'string') {
-				// Anything else let's inspect with %O
-				args.unshift('%O');
-			}
-
-			// Apply any `formatters` transformations
-			let index = 0;
-			args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
-				// If we encounter an escaped % then don't increase the array index
-				if (match === '%%') {
-					return '%';
-				}
-				index++;
-				const formatter = createDebug.formatters[format];
-				if (typeof formatter === 'function') {
-					const val = args[index];
-					match = formatter.call(self, val);
-
-					// Now we need to remove `args[index]` since it's inlined in the `format`
-					args.splice(index, 1);
-					index--;
-				}
-				return match;
-			});
-
-			// Apply env-specific formatting (colors, etc.)
-			createDebug.formatArgs.call(self, args);
-
-			const logFn = self.log || createDebug.log;
-			logFn.apply(self, args);
-		}
-
-		debug.namespace = namespace;
-		debug.useColors = createDebug.useColors();
-		debug.color = createDebug.selectColor(namespace);
-		debug.extend = extend;
-		debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.
-
-		Object.defineProperty(debug, 'enabled', {
-			enumerable: true,
-			configurable: false,
-			get: () => {
-				if (enableOverride !== null) {
-					return enableOverride;
-				}
-				if (namespacesCache !== createDebug.namespaces) {
-					namespacesCache = createDebug.namespaces;
-					enabledCache = createDebug.enabled(namespace);
-				}
-
-				return enabledCache;
-			},
-			set: v => {
-				enableOverride = v;
-			}
-		});
-
-		// Env-specific initialization logic for debug instances
-		if (typeof createDebug.init === 'function') {
-			createDebug.init(debug);
-		}
-
-		return debug;
-	}
-
-	function extend(namespace, delimiter) {
-		const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
-		newDebug.log = this.log;
-		return newDebug;
-	}
-
-	/**
-	* Enables a debug mode by namespaces. This can include modes
-	* separated by a colon and wildcards.
-	*
-	* @param {String} namespaces
-	* @api public
-	*/
-	function enable(namespaces) {
-		createDebug.save(namespaces);
-		createDebug.namespaces = namespaces;
-
-		createDebug.names = [];
-		createDebug.skips = [];
-
-		let i;
-		const split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
-		const len = split.length;
-
-		for (i = 0; i < len; i++) {
-			if (!split[i]) {
-				// ignore empty strings
-				continue;
-			}
-
-			namespaces = split[i].replace(/\*/g, '.*?');
-
-			if (namespaces[0] === '-') {
-				createDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
-			} else {
-				createDebug.names.push(new RegExp('^' + namespaces + '$'));
-			}
-		}
-	}
-
-	/**
-	* Disable debug output.
-	*
-	* @return {String} namespaces
-	* @api public
-	*/
-	function disable() {
-		const namespaces = [
-			...createDebug.names.map(toNamespace),
-			...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)
-		].join(',');
-		createDebug.enable('');
-		return namespaces;
-	}
-
-	/**
-	* Returns true if the given mode name is enabled, false otherwise.
-	*
-	* @param {String} name
-	* @return {Boolean}
-	* @api public
-	*/
-	function enabled(name) {
-		if (name[name.length - 1] === '*') {
-			return true;
-		}
-
-		let i;
-		let len;
-
-		for (i = 0, len = createDebug.skips.length; i < len; i++) {
-			if (createDebug.skips[i].test(name)) {
-				return false;
-			}
-		}
-
-		for (i = 0, len = createDebug.names.length; i < len; i++) {
-			if (createDebug.names[i].test(name)) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	* Convert regexp to namespace
-	*
-	* @param {RegExp} regxep
-	* @return {String} namespace
-	* @api private
-	*/
-	function toNamespace(regexp) {
-		return regexp.toString()
-			.substring(2, regexp.toString().length - 2)
-			.replace(/\.\*\?$/, '*');
-	}
-
-	/**
-	* Coerce `val`.
-	*
-	* @param {Mixed} val
-	* @return {Mixed}
-	* @api private
-	*/
-	function coerce(val) {
-		if (val instanceof Error) {
-			return val.stack || val.message;
-		}
-		return val;
-	}
-
-	/**
-	* XXX DO NOT USE. This is a temporary stub function.
-	* XXX It WILL be removed in the next major release.
-	*/
-	function destroy() {
-		console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
-	}
-
-	createDebug.enable(createDebug.load());
-
-	return createDebug;
-}
-
-module.exports = setup;
diff --git a/node_modules/puppeteer/node_modules/debug/src/index.js b/node_modules/puppeteer/node_modules/debug/src/index.js
deleted file mode 100644
index bf4c57f..0000000
--- a/node_modules/puppeteer/node_modules/debug/src/index.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * Detect Electron renderer / nwjs process, which is node, but we should
- * treat as a browser.
- */
-
-if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
-	module.exports = require('./browser.js');
-} else {
-	module.exports = require('./node.js');
-}
diff --git a/node_modules/puppeteer/node_modules/debug/src/node.js b/node_modules/puppeteer/node_modules/debug/src/node.js
deleted file mode 100644
index 79bc085..0000000
--- a/node_modules/puppeteer/node_modules/debug/src/node.js
+++ /dev/null
@@ -1,263 +0,0 @@
-/**
- * Module dependencies.
- */
-
-const tty = require('tty');
-const util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- */
-
-exports.init = init;
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-exports.destroy = util.deprecate(
-	() => {},
-	'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'
-);
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-try {
-	// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
-	// eslint-disable-next-line import/no-extraneous-dependencies
-	const supportsColor = require('supports-color');
-
-	if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
-		exports.colors = [
-			20,
-			21,
-			26,
-			27,
-			32,
-			33,
-			38,
-			39,
-			40,
-			41,
-			42,
-			43,
-			44,
-			45,
-			56,
-			57,
-			62,
-			63,
-			68,
-			69,
-			74,
-			75,
-			76,
-			77,
-			78,
-			79,
-			80,
-			81,
-			92,
-			93,
-			98,
-			99,
-			112,
-			113,
-			128,
-			129,
-			134,
-			135,
-			148,
-			149,
-			160,
-			161,
-			162,
-			163,
-			164,
-			165,
-			166,
-			167,
-			168,
-			169,
-			170,
-			171,
-			172,
-			173,
-			178,
-			179,
-			184,
-			185,
-			196,
-			197,
-			198,
-			199,
-			200,
-			201,
-			202,
-			203,
-			204,
-			205,
-			206,
-			207,
-			208,
-			209,
-			214,
-			215,
-			220,
-			221
-		];
-	}
-} catch (error) {
-	// Swallow - we only care if `supports-color` is available; it doesn't have to be.
-}
-
-/**
- * Build up the default `inspectOpts` object from the environment variables.
- *
- *   $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
- */
-
-exports.inspectOpts = Object.keys(process.env).filter(key => {
-	return /^debug_/i.test(key);
-}).reduce((obj, key) => {
-	// Camel-case
-	const prop = key
-		.substring(6)
-		.toLowerCase()
-		.replace(/_([a-z])/g, (_, k) => {
-			return k.toUpperCase();
-		});
-
-	// Coerce string value into JS value
-	let val = process.env[key];
-	if (/^(yes|on|true|enabled)$/i.test(val)) {
-		val = true;
-	} else if (/^(no|off|false|disabled)$/i.test(val)) {
-		val = false;
-	} else if (val === 'null') {
-		val = null;
-	} else {
-		val = Number(val);
-	}
-
-	obj[prop] = val;
-	return obj;
-}, {});
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
-	return 'colors' in exports.inspectOpts ?
-		Boolean(exports.inspectOpts.colors) :
-		tty.isatty(process.stderr.fd);
-}
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs(args) {
-	const {namespace: name, useColors} = this;
-
-	if (useColors) {
-		const c = this.color;
-		const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c);
-		const prefix = `  ${colorCode};1m${name} \u001B[0m`;
-
-		args[0] = prefix + args[0].split('\n').join('\n' + prefix);
-		args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\u001B[0m');
-	} else {
-		args[0] = getDate() + name + ' ' + args[0];
-	}
-}
-
-function getDate() {
-	if (exports.inspectOpts.hideDate) {
-		return '';
-	}
-	return new Date().toISOString() + ' ';
-}
-
-/**
- * Invokes `util.format()` with the specified arguments and writes to stderr.
- */
-
-function log(...args) {
-	return process.stderr.write(util.format(...args) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-function save(namespaces) {
-	if (namespaces) {
-		process.env.DEBUG = namespaces;
-	} else {
-		// If you set a process.env field to null or undefined, it gets cast to the
-		// string 'null' or 'undefined'. Just delete instead.
-		delete process.env.DEBUG;
-	}
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
-	return process.env.DEBUG;
-}
-
-/**
- * Init logic for `debug` instances.
- *
- * Create a new `inspectOpts` object in case `useColors` is set
- * differently for a particular `debug` instance.
- */
-
-function init(debug) {
-	debug.inspectOpts = {};
-
-	const keys = Object.keys(exports.inspectOpts);
-	for (let i = 0; i < keys.length; i++) {
-		debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
-	}
-}
-
-module.exports = require('./common')(exports);
-
-const {formatters} = module.exports;
-
-/**
- * Map %o to `util.inspect()`, all on a single line.
- */
-
-formatters.o = function (v) {
-	this.inspectOpts.colors = this.useColors;
-	return util.inspect(v, this.inspectOpts)
-		.split('\n')
-		.map(str => str.trim())
-		.join(' ');
-};
-
-/**
- * Map %O to `util.inspect()`, allowing multiple lines if needed.
- */
-
-formatters.O = function (v) {
-	this.inspectOpts.colors = this.useColors;
-	return util.inspect(v, this.inspectOpts);
-};
diff --git a/node_modules/puppeteer/node_modules/ws/LICENSE b/node_modules/puppeteer/node_modules/ws/LICENSE
index 65ff176..a145cd1 100644
--- a/node_modules/puppeteer/node_modules/ws/LICENSE
+++ b/node_modules/puppeteer/node_modules/ws/LICENSE
@@ -1,3 +1,5 @@
+The MIT License (MIT)
+
 Copyright (c) 2011 Einar Otto Stangvik <[email protected]>
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
diff --git a/node_modules/puppeteer/node_modules/ws/README.md b/node_modules/puppeteer/node_modules/ws/README.md
index b78b1f6..9c6e528 100644
--- a/node_modules/puppeteer/node_modules/ws/README.md
+++ b/node_modules/puppeteer/node_modules/ws/README.md
@@ -1,8 +1,9 @@
 # ws: a Node.js WebSocket library
 
 [![Version npm](https://img.shields.io/npm/v/ws.svg?logo=npm)](https://www.npmjs.com/package/ws)
-[![CI](https://img.shields.io/github/workflow/status/websockets/ws/CI/master?label=CI&logo=github)](https://github.com/websockets/ws/actions?query=workflow%3ACI+branch%3Amaster)
-[![Coverage Status](https://img.shields.io/coveralls/websockets/ws/master.svg?logo=coveralls)](https://coveralls.io/github/websockets/ws)
+[![Build](https://img.shields.io/github/workflow/status/websockets/ws/CI/master?label=build&logo=github)](https://github.com/websockets/ws/actions?query=workflow%3ACI+branch%3Amaster)
+[![Windows x86 Build](https://img.shields.io/appveyor/ci/lpinca/ws/master.svg?logo=appveyor)](https://ci.appveyor.com/project/lpinca/ws)
+[![Coverage Status](https://img.shields.io/coveralls/websockets/ws/master.svg)](https://coveralls.io/github/websockets/ws)
 
 ws is a simple to use, blazing fast, and thoroughly tested WebSocket client and
 server implementation.
@@ -22,7 +23,7 @@
 
 - [Protocol support](#protocol-support)
 - [Installing](#installing)
-  - [Opt-in for performance](#opt-in-for-performance)
+  - [Opt-in for performance and spec compliance](#opt-in-for-performance-and-spec-compliance)
 - [API docs](#api-docs)
 - [WebSocket compression](#websocket-compression)
 - [Usage examples](#usage-examples)
@@ -97,9 +98,9 @@
 See [the docs][ws-server-options] for more options.
 
 ```js
-import WebSocket, { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
 
-const wss = new WebSocketServer({
+const wss = new WebSocket.Server({
   port: 8080,
   perMessageDeflate: {
     zlibDeflateOptions: {
@@ -118,7 +119,7 @@
     // Below options specified as default values.
     concurrencyLimit: 10, // Limits zlib concurrency for perf.
     threshold: 1024 // Size (in bytes) below which messages
-    // should not be compressed if context takeover is disabled.
+    // should not be compressed.
   }
 });
 ```
@@ -128,7 +129,7 @@
 `perMessageDeflate` option to `false`.
 
 ```js
-import WebSocket from 'ws';
+const WebSocket = require('ws');
 
 const ws = new WebSocket('ws://www.host.com/path', {
   perMessageDeflate: false
@@ -140,7 +141,7 @@
 ### Sending and receiving text data
 
 ```js
-import WebSocket from 'ws';
+const WebSocket = require('ws');
 
 const ws = new WebSocket('ws://www.host.com/path');
 
@@ -148,15 +149,15 @@
   ws.send('something');
 });
 
-ws.on('message', function incoming(message) {
-  console.log('received: %s', message);
+ws.on('message', function incoming(data) {
+  console.log(data);
 });
 ```
 
 ### Sending binary data
 
 ```js
-import WebSocket from 'ws';
+const WebSocket = require('ws');
 
 const ws = new WebSocket('ws://www.host.com/path');
 
@@ -174,9 +175,9 @@
 ### Simple server
 
 ```js
-import { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
 
-const wss = new WebSocketServer({ port: 8080 });
+const wss = new WebSocket.Server({ port: 8080 });
 
 wss.on('connection', function connection(ws) {
   ws.on('message', function incoming(message) {
@@ -190,15 +191,15 @@
 ### External HTTP/S server
 
 ```js
-import { createServer } from 'https';
-import { readFileSync } from 'fs';
-import { WebSocketServer } from 'ws';
+const fs = require('fs');
+const https = require('https');
+const WebSocket = require('ws');
 
-const server = createServer({
-  cert: readFileSync('/path/to/cert.pem'),
-  key: readFileSync('/path/to/key.pem')
+const server = https.createServer({
+  cert: fs.readFileSync('/path/to/cert.pem'),
+  key: fs.readFileSync('/path/to/key.pem')
 });
-const wss = new WebSocketServer({ server });
+const wss = new WebSocket.Server({ server });
 
 wss.on('connection', function connection(ws) {
   ws.on('message', function incoming(message) {
@@ -214,13 +215,13 @@
 ### Multiple servers sharing a single HTTP/S server
 
 ```js
-import { createServer } from 'http';
-import { parse } from 'url';
-import { WebSocketServer } from 'ws';
+const http = require('http');
+const WebSocket = require('ws');
+const url = require('url');
 
-const server = createServer();
-const wss1 = new WebSocketServer({ noServer: true });
-const wss2 = new WebSocketServer({ noServer: true });
+const server = http.createServer();
+const wss1 = new WebSocket.Server({ noServer: true });
+const wss2 = new WebSocket.Server({ noServer: true });
 
 wss1.on('connection', function connection(ws) {
   // ...
@@ -231,7 +232,7 @@
 });
 
 server.on('upgrade', function upgrade(request, socket, head) {
-  const { pathname } = parse(request.url);
+  const pathname = url.parse(request.url).pathname;
 
   if (pathname === '/foo') {
     wss1.handleUpgrade(request, socket, head, function done(ws) {
@@ -252,11 +253,11 @@
 ### Client authentication
 
 ```js
-import WebSocket from 'ws';
-import { createServer } from 'http';
+const http = require('http');
+const WebSocket = require('ws');
 
-const server = createServer();
-const wss = new WebSocketServer({ noServer: true });
+const server = http.createServer();
+const wss = new WebSocket.Server({ noServer: true });
 
 wss.on('connection', function connection(ws, request, client) {
   ws.on('message', function message(msg) {
@@ -290,15 +291,15 @@
 itself.
 
 ```js
-import WebSocket, { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
 
-const wss = new WebSocketServer({ port: 8080 });
+const wss = new WebSocket.Server({ port: 8080 });
 
 wss.on('connection', function connection(ws) {
-  ws.on('message', function incoming(data, isBinary) {
+  ws.on('message', function incoming(data) {
     wss.clients.forEach(function each(client) {
       if (client.readyState === WebSocket.OPEN) {
-        client.send(data, { binary: isBinary });
+        client.send(data);
       }
     });
   });
@@ -309,15 +310,15 @@
 excluding itself.
 
 ```js
-import WebSocket, { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
 
-const wss = new WebSocketServer({ port: 8080 });
+const wss = new WebSocket.Server({ port: 8080 });
 
 wss.on('connection', function connection(ws) {
-  ws.on('message', function incoming(data, isBinary) {
+  ws.on('message', function incoming(data) {
     wss.clients.forEach(function each(client) {
       if (client !== ws && client.readyState === WebSocket.OPEN) {
-        client.send(data, { binary: isBinary });
+        client.send(data);
       }
     });
   });
@@ -327,7 +328,7 @@
 ### echo.websocket.org demo
 
 ```js
-import WebSocket from 'ws';
+const WebSocket = require('ws');
 
 const ws = new WebSocket('wss://echo.websocket.org/', {
   origin: 'https://websocket.org'
@@ -354,13 +355,13 @@
 ### Use the Node.js streams API
 
 ```js
-import WebSocket, { createWebSocketStream } from 'ws';
+const WebSocket = require('ws');
 
 const ws = new WebSocket('wss://echo.websocket.org/', {
   origin: 'https://websocket.org'
 });
 
-const duplex = createWebSocketStream(ws, { encoding: 'utf8' });
+const duplex = WebSocket.createWebSocketStream(ws, { encoding: 'utf8' });
 
 duplex.pipe(process.stdout);
 process.stdin.pipe(duplex);
@@ -380,9 +381,9 @@
 The remote IP address can be obtained from the raw socket.
 
 ```js
-import { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
 
-const wss = new WebSocketServer({ port: 8080 });
+const wss = new WebSocket.Server({ port: 8080 });
 
 wss.on('connection', function connection(ws, req) {
   const ip = req.socket.remoteAddress;
@@ -394,7 +395,7 @@
 
 ```js
 wss.on('connection', function connection(ws, req) {
-  const ip = req.headers['x-forwarded-for'].split(',')[0].trim();
+  const ip = req.headers['x-forwarded-for'].split(/\s*,\s*/)[0];
 });
 ```
 
@@ -408,13 +409,15 @@
 endpoint is still responsive.
 
 ```js
-import { WebSocketServer } from 'ws';
+const WebSocket = require('ws');
+
+function noop() {}
 
 function heartbeat() {
   this.isAlive = true;
 }
 
-const wss = new WebSocketServer({ port: 8080 });
+const wss = new WebSocket.Server({ port: 8080 });
 
 wss.on('connection', function connection(ws) {
   ws.isAlive = true;
@@ -426,7 +429,7 @@
     if (ws.isAlive === false) return ws.terminate();
 
     ws.isAlive = false;
-    ws.ping();
+    ws.ping(noop);
   });
 }, 30000);
 
@@ -443,7 +446,7 @@
 prevent that. A simple implementation would be:
 
 ```js
-import WebSocket from 'ws';
+const WebSocket = require('ws');
 
 function heartbeat() {
   clearTimeout(this.pingTimeout);
diff --git a/node_modules/puppeteer/node_modules/ws/index.js b/node_modules/puppeteer/node_modules/ws/index.js
index 41edb3b..722c786 100644
--- a/node_modules/puppeteer/node_modules/ws/index.js
+++ b/node_modules/puppeteer/node_modules/ws/index.js
@@ -7,7 +7,4 @@
 WebSocket.Receiver = require('./lib/receiver');
 WebSocket.Sender = require('./lib/sender');
 
-WebSocket.WebSocket = WebSocket;
-WebSocket.WebSocketServer = WebSocket.Server;
-
 module.exports = WebSocket;
diff --git a/node_modules/puppeteer/node_modules/ws/lib/buffer-util.js b/node_modules/puppeteer/node_modules/ws/lib/buffer-util.js
index 1ba1d1b..6fd84c3 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/buffer-util.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/buffer-util.js
@@ -52,7 +52,9 @@
  * @public
  */
 function _unmask(buffer, mask) {
-  for (let i = 0; i < buffer.length; i++) {
+  // Required until https://github.com/nodejs/node/issues/9006 is resolved.
+  const length = buffer.length;
+  for (let i = 0; i < length; i++) {
     buffer[i] ^= mask[i & 3];
   }
 }
@@ -101,18 +103,19 @@
 
 try {
   const bufferUtil = require('bufferutil');
+  const bu = bufferUtil.BufferUtil || bufferUtil;
 
   module.exports = {
     concat,
     mask(source, mask, output, offset, length) {
       if (length < 48) _mask(source, mask, output, offset, length);
-      else bufferUtil.mask(source, mask, output, offset, length);
+      else bu.mask(source, mask, output, offset, length);
     },
     toArrayBuffer,
     toBuffer,
     unmask(buffer, mask) {
       if (buffer.length < 32) _unmask(buffer, mask);
-      else bufferUtil.unmask(buffer, mask);
+      else bu.unmask(buffer, mask);
     }
   };
 } catch (e) /* istanbul ignore next */ {
diff --git a/node_modules/puppeteer/node_modules/ws/lib/constants.js b/node_modules/puppeteer/node_modules/ws/lib/constants.js
index d691b30..4082981 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/constants.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/constants.js
@@ -2,11 +2,9 @@
 
 module.exports = {
   BINARY_TYPES: ['nodebuffer', 'arraybuffer', 'fragments'],
-  EMPTY_BUFFER: Buffer.alloc(0),
   GUID: '258EAFA5-E914-47DA-95CA-C5AB0DC85B11',
-  kForOnEventAttribute: Symbol('kIsForOnEventAttribute'),
-  kListener: Symbol('kListener'),
   kStatusCode: Symbol('status-code'),
   kWebSocket: Symbol('websocket'),
+  EMPTY_BUFFER: Buffer.alloc(0),
   NOOP: () => {}
 };
diff --git a/node_modules/puppeteer/node_modules/ws/lib/event-target.js b/node_modules/puppeteer/node_modules/ws/lib/event-target.js
index d5abd83..a6fbe72 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/event-target.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/event-target.js
@@ -1,171 +1,110 @@
 'use strict';
 
-const { kForOnEventAttribute, kListener } = require('./constants');
-
-const kCode = Symbol('kCode');
-const kData = Symbol('kData');
-const kError = Symbol('kError');
-const kMessage = Symbol('kMessage');
-const kReason = Symbol('kReason');
-const kTarget = Symbol('kTarget');
-const kType = Symbol('kType');
-const kWasClean = Symbol('kWasClean');
-
 /**
  * Class representing an event.
+ *
+ * @private
  */
 class Event {
   /**
    * Create a new `Event`.
    *
    * @param {String} type The name of the event
-   * @throws {TypeError} If the `type` argument is not specified
+   * @param {Object} target A reference to the target to which the event was
+   *     dispatched
    */
-  constructor(type) {
-    this[kTarget] = null;
-    this[kType] = type;
-  }
-
-  /**
-   * @type {*}
-   */
-  get target() {
-    return this[kTarget];
-  }
-
-  /**
-   * @type {String}
-   */
-  get type() {
-    return this[kType];
+  constructor(type, target) {
+    this.target = target;
+    this.type = type;
   }
 }
 
-Object.defineProperty(Event.prototype, 'target', { enumerable: true });
-Object.defineProperty(Event.prototype, 'type', { enumerable: true });
-
-/**
- * Class representing a close event.
- *
- * @extends Event
- */
-class CloseEvent extends Event {
-  /**
-   * Create a new `CloseEvent`.
-   *
-   * @param {String} type The name of the event
-   * @param {Object} [options] A dictionary object that allows for setting
-   *     attributes via object members of the same name
-   * @param {Number} [options.code=0] The status code explaining why the
-   *     connection was closed
-   * @param {String} [options.reason=''] A human-readable string explaining why
-   *     the connection was closed
-   * @param {Boolean} [options.wasClean=false] Indicates whether or not the
-   *     connection was cleanly closed
-   */
-  constructor(type, options = {}) {
-    super(type);
-
-    this[kCode] = options.code === undefined ? 0 : options.code;
-    this[kReason] = options.reason === undefined ? '' : options.reason;
-    this[kWasClean] = options.wasClean === undefined ? false : options.wasClean;
-  }
-
-  /**
-   * @type {Number}
-   */
-  get code() {
-    return this[kCode];
-  }
-
-  /**
-   * @type {String}
-   */
-  get reason() {
-    return this[kReason];
-  }
-
-  /**
-   * @type {Boolean}
-   */
-  get wasClean() {
-    return this[kWasClean];
-  }
-}
-
-Object.defineProperty(CloseEvent.prototype, 'code', { enumerable: true });
-Object.defineProperty(CloseEvent.prototype, 'reason', { enumerable: true });
-Object.defineProperty(CloseEvent.prototype, 'wasClean', { enumerable: true });
-
-/**
- * Class representing an error event.
- *
- * @extends Event
- */
-class ErrorEvent extends Event {
-  /**
-   * Create a new `ErrorEvent`.
-   *
-   * @param {String} type The name of the event
-   * @param {Object} [options] A dictionary object that allows for setting
-   *     attributes via object members of the same name
-   * @param {*} [options.error=null] The error that generated this event
-   * @param {String} [options.message=''] The error message
-   */
-  constructor(type, options = {}) {
-    super(type);
-
-    this[kError] = options.error === undefined ? null : options.error;
-    this[kMessage] = options.message === undefined ? '' : options.message;
-  }
-
-  /**
-   * @type {*}
-   */
-  get error() {
-    return this[kError];
-  }
-
-  /**
-   * @type {String}
-   */
-  get message() {
-    return this[kMessage];
-  }
-}
-
-Object.defineProperty(ErrorEvent.prototype, 'error', { enumerable: true });
-Object.defineProperty(ErrorEvent.prototype, 'message', { enumerable: true });
-
 /**
  * Class representing a message event.
  *
  * @extends Event
+ * @private
  */
 class MessageEvent extends Event {
   /**
    * Create a new `MessageEvent`.
    *
-   * @param {String} type The name of the event
-   * @param {Object} [options] A dictionary object that allows for setting
-   *     attributes via object members of the same name
-   * @param {*} [options.data=null] The message content
+   * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The received data
+   * @param {WebSocket} target A reference to the target to which the event was
+   *     dispatched
    */
-  constructor(type, options = {}) {
-    super(type);
+  constructor(data, target) {
+    super('message', target);
 
-    this[kData] = options.data === undefined ? null : options.data;
-  }
-
-  /**
-   * @type {*}
-   */
-  get data() {
-    return this[kData];
+    this.data = data;
   }
 }
 
-Object.defineProperty(MessageEvent.prototype, 'data', { enumerable: true });
+/**
+ * Class representing a close event.
+ *
+ * @extends Event
+ * @private
+ */
+class CloseEvent extends Event {
+  /**
+   * Create a new `CloseEvent`.
+   *
+   * @param {Number} code The status code explaining why the connection is being
+   *     closed
+   * @param {String} reason A human-readable string explaining why the
+   *     connection is closing
+   * @param {WebSocket} target A reference to the target to which the event was
+   *     dispatched
+   */
+  constructor(code, reason, target) {
+    super('close', target);
+
+    this.wasClean = target._closeFrameReceived && target._closeFrameSent;
+    this.reason = reason;
+    this.code = code;
+  }
+}
+
+/**
+ * Class representing an open event.
+ *
+ * @extends Event
+ * @private
+ */
+class OpenEvent extends Event {
+  /**
+   * Create a new `OpenEvent`.
+   *
+   * @param {WebSocket} target A reference to the target to which the event was
+   *     dispatched
+   */
+  constructor(target) {
+    super('open', target);
+  }
+}
+
+/**
+ * Class representing an error event.
+ *
+ * @extends Event
+ * @private
+ */
+class ErrorEvent extends Event {
+  /**
+   * Create a new `ErrorEvent`.
+   *
+   * @param {Object} error The error that generated this event
+   * @param {WebSocket} target A reference to the target to which the event was
+   *     dispatched
+   */
+  constructor(error, target) {
+    super('error', target);
+
+    this.message = error.message;
+    this.error = error;
+  }
+}
 
 /**
  * This provides methods for emulating the `EventTarget` interface. It's not
@@ -181,62 +120,46 @@
    * @param {Function} listener The listener to add
    * @param {Object} [options] An options object specifies characteristics about
    *     the event listener
-   * @param {Boolean} [options.once=false] A `Boolean` indicating that the
+   * @param {Boolean} [options.once=false] A `Boolean`` indicating that the
    *     listener should be invoked at most once after being added. If `true`,
    *     the listener would be automatically removed when invoked.
    * @public
    */
-  addEventListener(type, listener, options = {}) {
-    let wrapper;
+  addEventListener(type, listener, options) {
+    if (typeof listener !== 'function') return;
 
-    if (type === 'message') {
-      wrapper = function onMessage(data, isBinary) {
-        const event = new MessageEvent('message', {
-          data: isBinary ? data : data.toString()
-        });
-
-        event[kTarget] = this;
-        listener.call(this, event);
-      };
-    } else if (type === 'close') {
-      wrapper = function onClose(code, message) {
-        const event = new CloseEvent('close', {
-          code,
-          reason: message.toString(),
-          wasClean: this._closeFrameReceived && this._closeFrameSent
-        });
-
-        event[kTarget] = this;
-        listener.call(this, event);
-      };
-    } else if (type === 'error') {
-      wrapper = function onError(error) {
-        const event = new ErrorEvent('error', {
-          error,
-          message: error.message
-        });
-
-        event[kTarget] = this;
-        listener.call(this, event);
-      };
-    } else if (type === 'open') {
-      wrapper = function onOpen() {
-        const event = new Event('open');
-
-        event[kTarget] = this;
-        listener.call(this, event);
-      };
-    } else {
-      return;
+    function onMessage(data) {
+      listener.call(this, new MessageEvent(data, this));
     }
 
-    wrapper[kForOnEventAttribute] = !!options[kForOnEventAttribute];
-    wrapper[kListener] = listener;
+    function onClose(code, message) {
+      listener.call(this, new CloseEvent(code, message, this));
+    }
 
-    if (options.once) {
-      this.once(type, wrapper);
+    function onError(error) {
+      listener.call(this, new ErrorEvent(error, this));
+    }
+
+    function onOpen() {
+      listener.call(this, new OpenEvent(this));
+    }
+
+    const method = options && options.once ? 'once' : 'on';
+
+    if (type === 'message') {
+      onMessage._listener = listener;
+      this[method](type, onMessage);
+    } else if (type === 'close') {
+      onClose._listener = listener;
+      this[method](type, onClose);
+    } else if (type === 'error') {
+      onError._listener = listener;
+      this[method](type, onError);
+    } else if (type === 'open') {
+      onOpen._listener = listener;
+      this[method](type, onOpen);
     } else {
-      this.on(type, wrapper);
+      this[method](type, listener);
     }
   },
 
@@ -244,23 +167,18 @@
    * Remove an event listener.
    *
    * @param {String} type A string representing the event type to remove
-   * @param {Function} handler The listener to remove
+   * @param {Function} listener The listener to remove
    * @public
    */
-  removeEventListener(type, handler) {
-    for (const listener of this.listeners(type)) {
-      if (listener[kListener] === handler && !listener[kForOnEventAttribute]) {
-        this.removeListener(type, listener);
-        break;
+  removeEventListener(type, listener) {
+    const listeners = this.listeners(type);
+
+    for (let i = 0; i < listeners.length; i++) {
+      if (listeners[i] === listener || listeners[i]._listener === listener) {
+        this.removeListener(type, listeners[i]);
       }
     }
   }
 };
 
-module.exports = {
-  CloseEvent,
-  ErrorEvent,
-  Event,
-  EventTarget,
-  MessageEvent
-};
+module.exports = EventTarget;
diff --git a/node_modules/puppeteer/node_modules/ws/lib/extension.js b/node_modules/puppeteer/node_modules/ws/lib/extension.js
index 3d7895c..87a4213 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/extension.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/extension.js
@@ -1,6 +1,27 @@
 'use strict';
 
-const { tokenChars } = require('./validation');
+//
+// Allowed token characters:
+//
+// '!', '#', '$', '%', '&', ''', '*', '+', '-',
+// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~'
+//
+// tokenChars[32] === 0 // ' '
+// tokenChars[33] === 1 // '!'
+// tokenChars[34] === 0 // '"'
+// ...
+//
+// prettier-ignore
+const tokenChars = [
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 15
+  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 31
+  0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, // 32 - 47
+  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // 48 - 63
+  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 64 - 79
+  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, // 80 - 95
+  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 96 - 111
+  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0 // 112 - 127
+];
 
 /**
  * Adds an offer to the map of extension offers or a parameter to the map of
@@ -26,6 +47,9 @@
  */
 function parse(header) {
   const offers = Object.create(null);
+
+  if (header === undefined || header === '') return offers;
+
   let params = Object.create(null);
   let mustUnescape = false;
   let isEscaping = false;
@@ -33,20 +57,16 @@
   let extensionName;
   let paramName;
   let start = -1;
-  let code = -1;
   let end = -1;
   let i = 0;
 
   for (; i < header.length; i++) {
-    code = header.charCodeAt(i);
+    const code = header.charCodeAt(i);
 
     if (extensionName === undefined) {
       if (end === -1 && tokenChars[code] === 1) {
         if (start === -1) start = i;
-      } else if (
-        i !== 0 &&
-        (code === 0x20 /* ' ' */ || code === 0x09) /* '\t' */
-      ) {
+      } else if (code === 0x20 /* ' ' */ || code === 0x09 /* '\t' */) {
         if (end === -1 && start !== -1) end = i;
       } else if (code === 0x3b /* ';' */ || code === 0x2c /* ',' */) {
         if (start === -1) {
@@ -147,7 +167,7 @@
     }
   }
 
-  if (start === -1 || inQuotes || code === 0x20 || code === 0x09) {
+  if (start === -1 || inQuotes) {
     throw new SyntaxError('Unexpected end of input');
   }
 
diff --git a/node_modules/puppeteer/node_modules/ws/lib/permessage-deflate.js b/node_modules/puppeteer/node_modules/ws/lib/permessage-deflate.js
index 5040697..a8974b9 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/permessage-deflate.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/permessage-deflate.js
@@ -4,7 +4,7 @@
 
 const bufferUtil = require('./buffer-util');
 const Limiter = require('./limiter');
-const { kStatusCode } = require('./constants');
+const { kStatusCode, NOOP } = require('./constants');
 
 const TRAILER = Buffer.from([0x00, 0x00, 0xff, 0xff]);
 const kPerMessageDeflate = Symbol('permessage-deflate');
@@ -30,22 +30,22 @@
    * Creates a PerMessageDeflate instance.
    *
    * @param {Object} [options] Configuration options
-   * @param {(Boolean|Number)} [options.clientMaxWindowBits] Advertise support
-   *     for, or request, a custom client window size
-   * @param {Boolean} [options.clientNoContextTakeover=false] Advertise/
-   *     acknowledge disabling of client context takeover
-   * @param {Number} [options.concurrencyLimit=10] The number of concurrent
-   *     calls to zlib
-   * @param {(Boolean|Number)} [options.serverMaxWindowBits] Request/confirm the
-   *     use of a custom server window size
    * @param {Boolean} [options.serverNoContextTakeover=false] Request/accept
    *     disabling of server context takeover
-   * @param {Number} [options.threshold=1024] Size (in bytes) below which
-   *     messages should not be compressed if context takeover is disabled
+   * @param {Boolean} [options.clientNoContextTakeover=false] Advertise/
+   *     acknowledge disabling of client context takeover
+   * @param {(Boolean|Number)} [options.serverMaxWindowBits] Request/confirm the
+   *     use of a custom server window size
+   * @param {(Boolean|Number)} [options.clientMaxWindowBits] Advertise support
+   *     for, or request, a custom client window size
    * @param {Object} [options.zlibDeflateOptions] Options to pass to zlib on
    *     deflate
    * @param {Object} [options.zlibInflateOptions] Options to pass to zlib on
    *     inflate
+   * @param {Number} [options.threshold=1024] Size (in bytes) below which
+   *     messages should not be compressed
+   * @param {Number} [options.concurrencyLimit=10] The number of concurrent
+   *     calls to zlib
    * @param {Boolean} [isServer=false] Create the instance in either server or
    *     client mode
    * @param {Number} [maxPayload=0] The maximum allowed message length
@@ -418,6 +418,13 @@
       this._deflate[kTotalLength] = 0;
       this._deflate[kBuffers] = [];
 
+      //
+      // An `'error'` event is emitted, only on Node.js < 10.0.0, if the
+      // `zlib.DeflateRaw` instance is closed while data is being processed.
+      // This can happen if `PerMessageDeflate#cleanup()` is called at the wrong
+      // time due to an abnormal WebSocket closure.
+      //
+      this._deflate.on('error', NOOP);
       this._deflate.on('data', deflateOnData);
     }
 
@@ -488,7 +495,6 @@
   }
 
   this[kError] = new RangeError('Max payload size exceeded');
-  this[kError].code = 'WS_ERR_UNSUPPORTED_MESSAGE_LENGTH';
   this[kError][kStatusCode] = 1009;
   this.removeListener('data', inflateOnData);
   this.reset();
diff --git a/node_modules/puppeteer/node_modules/ws/lib/receiver.js b/node_modules/puppeteer/node_modules/ws/lib/receiver.js
index e11e266..65a5ab4 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/receiver.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/receiver.js
@@ -22,31 +22,26 @@
 /**
  * HyBi Receiver implementation.
  *
- * @extends Writable
+ * @extends stream.Writable
  */
 class Receiver extends Writable {
   /**
    * Creates a Receiver instance.
    *
-   * @param {Object} [options] Options object
-   * @param {String} [options.binaryType=nodebuffer] The type for binary data
-   * @param {Object} [options.extensions] An object containing the negotiated
-   *     extensions
-   * @param {Boolean} [options.isServer=false] Specifies whether to operate in
-   *     client or server mode
-   * @param {Number} [options.maxPayload=0] The maximum allowed message length
-   * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
-   *     not to skip UTF-8 validation for text and close messages
+   * @param {String} [binaryType=nodebuffer] The type for binary data
+   * @param {Object} [extensions] An object containing the negotiated extensions
+   * @param {Boolean} [isServer=false] Specifies whether to operate in client or
+   *     server mode
+   * @param {Number} [maxPayload=0] The maximum allowed message length
    */
-  constructor(options = {}) {
+  constructor(binaryType, extensions, isServer, maxPayload) {
     super();
 
-    this._binaryType = options.binaryType || BINARY_TYPES[0];
-    this._extensions = options.extensions || {};
-    this._isServer = !!options.isServer;
-    this._maxPayload = options.maxPayload | 0;
-    this._skipUTF8Validation = !!options.skipUTF8Validation;
+    this._binaryType = binaryType || BINARY_TYPES[0];
     this[kWebSocket] = undefined;
+    this._extensions = extensions || {};
+    this._isServer = !!isServer;
+    this._maxPayload = maxPayload | 0;
 
     this._bufferedBytes = 0;
     this._buffers = [];
@@ -173,26 +168,14 @@
 
     if ((buf[0] & 0x30) !== 0x00) {
       this._loop = false;
-      return error(
-        RangeError,
-        'RSV2 and RSV3 must be clear',
-        true,
-        1002,
-        'WS_ERR_UNEXPECTED_RSV_2_3'
-      );
+      return error(RangeError, 'RSV2 and RSV3 must be clear', true, 1002);
     }
 
     const compressed = (buf[0] & 0x40) === 0x40;
 
     if (compressed && !this._extensions[PerMessageDeflate.extensionName]) {
       this._loop = false;
-      return error(
-        RangeError,
-        'RSV1 must be clear',
-        true,
-        1002,
-        'WS_ERR_UNEXPECTED_RSV_1'
-      );
+      return error(RangeError, 'RSV1 must be clear', true, 1002);
     }
 
     this._fin = (buf[0] & 0x80) === 0x80;
@@ -202,61 +185,31 @@
     if (this._opcode === 0x00) {
       if (compressed) {
         this._loop = false;
-        return error(
-          RangeError,
-          'RSV1 must be clear',
-          true,
-          1002,
-          'WS_ERR_UNEXPECTED_RSV_1'
-        );
+        return error(RangeError, 'RSV1 must be clear', true, 1002);
       }
 
       if (!this._fragmented) {
         this._loop = false;
-        return error(
-          RangeError,
-          'invalid opcode 0',
-          true,
-          1002,
-          'WS_ERR_INVALID_OPCODE'
-        );
+        return error(RangeError, 'invalid opcode 0', true, 1002);
       }
 
       this._opcode = this._fragmented;
     } else if (this._opcode === 0x01 || this._opcode === 0x02) {
       if (this._fragmented) {
         this._loop = false;
-        return error(
-          RangeError,
-          `invalid opcode ${this._opcode}`,
-          true,
-          1002,
-          'WS_ERR_INVALID_OPCODE'
-        );
+        return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
       }
 
       this._compressed = compressed;
     } else if (this._opcode > 0x07 && this._opcode < 0x0b) {
       if (!this._fin) {
         this._loop = false;
-        return error(
-          RangeError,
-          'FIN must be set',
-          true,
-          1002,
-          'WS_ERR_EXPECTED_FIN'
-        );
+        return error(RangeError, 'FIN must be set', true, 1002);
       }
 
       if (compressed) {
         this._loop = false;
-        return error(
-          RangeError,
-          'RSV1 must be clear',
-          true,
-          1002,
-          'WS_ERR_UNEXPECTED_RSV_1'
-        );
+        return error(RangeError, 'RSV1 must be clear', true, 1002);
       }
 
       if (this._payloadLength > 0x7d) {
@@ -265,19 +218,12 @@
           RangeError,
           `invalid payload length ${this._payloadLength}`,
           true,
-          1002,
-          'WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH'
+          1002
         );
       }
     } else {
       this._loop = false;
-      return error(
-        RangeError,
-        `invalid opcode ${this._opcode}`,
-        true,
-        1002,
-        'WS_ERR_INVALID_OPCODE'
-      );
+      return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
     }
 
     if (!this._fin && !this._fragmented) this._fragmented = this._opcode;
@@ -286,23 +232,11 @@
     if (this._isServer) {
       if (!this._masked) {
         this._loop = false;
-        return error(
-          RangeError,
-          'MASK must be set',
-          true,
-          1002,
-          'WS_ERR_EXPECTED_MASK'
-        );
+        return error(RangeError, 'MASK must be set', true, 1002);
       }
     } else if (this._masked) {
       this._loop = false;
-      return error(
-        RangeError,
-        'MASK must be clear',
-        true,
-        1002,
-        'WS_ERR_UNEXPECTED_MASK'
-      );
+      return error(RangeError, 'MASK must be clear', true, 1002);
     }
 
     if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16;
@@ -351,8 +285,7 @@
         RangeError,
         'Unsupported WebSocket frame: payload length > 2^53 - 1',
         false,
-        1009,
-        'WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH'
+        1009
       );
     }
 
@@ -371,13 +304,7 @@
       this._totalPayloadLength += this._payloadLength;
       if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) {
         this._loop = false;
-        return error(
-          RangeError,
-          'Max payload size exceeded',
-          false,
-          1009,
-          'WS_ERR_UNSUPPORTED_MESSAGE_LENGTH'
-        );
+        return error(RangeError, 'Max payload size exceeded', false, 1009);
       }
     }
 
@@ -430,7 +357,7 @@
 
     if (data.length) {
       //
-      // This message is not compressed so its length is the sum of the payload
+      // This message is not compressed so its lenght is the sum of the payload
       // length of all fragments.
       //
       this._messageLength = this._totalPayloadLength;
@@ -457,13 +384,7 @@
         this._messageLength += buf.length;
         if (this._messageLength > this._maxPayload && this._maxPayload > 0) {
           return cb(
-            error(
-              RangeError,
-              'Max payload size exceeded',
-              false,
-              1009,
-              'WS_ERR_UNSUPPORTED_MESSAGE_LENGTH'
-            )
+            error(RangeError, 'Max payload size exceeded', false, 1009)
           );
         }
 
@@ -504,22 +425,16 @@
           data = fragments;
         }
 
-        this.emit('message', data, true);
+        this.emit('message', data);
       } else {
         const buf = concat(fragments, messageLength);
 
-        if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
+        if (!isValidUTF8(buf)) {
           this._loop = false;
-          return error(
-            Error,
-            'invalid UTF-8 sequence',
-            true,
-            1007,
-            'WS_ERR_INVALID_UTF8'
-          );
+          return error(Error, 'invalid UTF-8 sequence', true, 1007);
         }
 
-        this.emit('message', buf, false);
+        this.emit('message', buf.toString());
       }
     }
 
@@ -538,42 +453,24 @@
       this._loop = false;
 
       if (data.length === 0) {
-        this.emit('conclude', 1005, EMPTY_BUFFER);
+        this.emit('conclude', 1005, '');
         this.end();
       } else if (data.length === 1) {
-        return error(
-          RangeError,
-          'invalid payload length 1',
-          true,
-          1002,
-          'WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH'
-        );
+        return error(RangeError, 'invalid payload length 1', true, 1002);
       } else {
         const code = data.readUInt16BE(0);
 
         if (!isValidStatusCode(code)) {
-          return error(
-            RangeError,
-            `invalid status code ${code}`,
-            true,
-            1002,
-            'WS_ERR_INVALID_CLOSE_CODE'
-          );
+          return error(RangeError, `invalid status code ${code}`, true, 1002);
         }
 
         const buf = data.slice(2);
 
-        if (!this._skipUTF8Validation && !isValidUTF8(buf)) {
-          return error(
-            Error,
-            'invalid UTF-8 sequence',
-            true,
-            1007,
-            'WS_ERR_INVALID_UTF8'
-          );
+        if (!isValidUTF8(buf)) {
+          return error(Error, 'invalid UTF-8 sequence', true, 1007);
         }
 
-        this.emit('conclude', code, buf);
+        this.emit('conclude', code, buf.toString());
         this.end();
       }
     } else if (this._opcode === 0x09) {
@@ -591,22 +488,20 @@
 /**
  * Builds an error object.
  *
- * @param {function(new:Error|RangeError)} ErrorCtor The error constructor
+ * @param {(Error|RangeError)} ErrorCtor The error constructor
  * @param {String} message The error message
  * @param {Boolean} prefix Specifies whether or not to add a default prefix to
  *     `message`
  * @param {Number} statusCode The status code
- * @param {String} errorCode The exposed error code
  * @return {(Error|RangeError)} The error
  * @private
  */
-function error(ErrorCtor, message, prefix, statusCode, errorCode) {
+function error(ErrorCtor, message, prefix, statusCode) {
   const err = new ErrorCtor(
     prefix ? `Invalid WebSocket frame: ${message}` : message
   );
 
   Error.captureStackTrace(err, error);
-  err.code = errorCode;
   err[kStatusCode] = statusCode;
   return err;
 }
diff --git a/node_modules/puppeteer/node_modules/ws/lib/sender.js b/node_modules/puppeteer/node_modules/ws/lib/sender.js
index c1e357c..ad71e19 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/sender.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/sender.js
@@ -1,9 +1,5 @@
-/* eslint no-unused-vars: ["error", { "varsIgnorePattern": "^net|tls$" }] */
-
 'use strict';
 
-const net = require('net');
-const tls = require('tls');
 const { randomFillSync } = require('crypto');
 
 const PerMessageDeflate = require('./permessage-deflate');
@@ -20,7 +16,7 @@
   /**
    * Creates a Sender instance.
    *
-   * @param {(net.Socket|tls.Socket)} socket The connection socket
+   * @param {net.Socket} socket The connection socket
    * @param {Object} [extensions] An object containing the negotiated extensions
    */
   constructor(socket, extensions) {
@@ -40,13 +36,13 @@
    *
    * @param {Buffer} data The data to frame
    * @param {Object} options Options object
+   * @param {Number} options.opcode The opcode
+   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
+   *     modified
    * @param {Boolean} [options.fin=false] Specifies whether or not to set the
    *     FIN bit
    * @param {Boolean} [options.mask=false] Specifies whether or not to mask
    *     `data`
-   * @param {Number} options.opcode The opcode
-   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
-   *     modified
    * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
    *     RSV1 bit
    * @return {Buffer[]} The framed data as a list of `Buffer` instances
@@ -102,7 +98,7 @@
    * Sends a close message to the other peer.
    *
    * @param {Number} [code] The status code component of the body
-   * @param {(String|Buffer)} [data] The message component of the body
+   * @param {String} [data] The message component of the body
    * @param {Boolean} [mask=false] Specifies whether or not to mask the message
    * @param {Function} [cb] Callback
    * @public
@@ -114,7 +110,7 @@
       buf = EMPTY_BUFFER;
     } else if (typeof code !== 'number' || !isValidStatusCode(code)) {
       throw new TypeError('First argument must be a valid error code number');
-    } else if (data === undefined || !data.length) {
+    } else if (data === undefined || data === '') {
       buf = Buffer.allocUnsafe(2);
       buf.writeUInt16BE(code, 0);
     } else {
@@ -126,12 +122,7 @@
 
       buf = Buffer.allocUnsafe(2 + length);
       buf.writeUInt16BE(code, 0);
-
-      if (typeof data === 'string') {
-        buf.write(data, 2);
-      } else {
-        buf.set(data, 2);
-      }
+      buf.write(data, 2);
     }
 
     if (this._deflating) {
@@ -255,10 +246,10 @@
    *
    * @param {*} data The message to send
    * @param {Object} options Options object
-   * @param {Boolean} [options.binary=false] Specifies whether `data` is binary
-   *     or text
    * @param {Boolean} [options.compress=false] Specifies whether or not to
    *     compress `data`
+   * @param {Boolean} [options.binary=false] Specifies whether `data` is binary
+   *     or text
    * @param {Boolean} [options.fin=false] Specifies whether the fragment is the
    *     last one
    * @param {Boolean} [options.mask=false] Specifies whether or not to mask
@@ -274,15 +265,7 @@
 
     if (this._firstFragment) {
       this._firstFragment = false;
-      if (
-        rsv1 &&
-        perMessageDeflate &&
-        perMessageDeflate.params[
-          perMessageDeflate._isServer
-            ? 'server_no_context_takeover'
-            : 'client_no_context_takeover'
-        ]
-      ) {
+      if (rsv1 && perMessageDeflate) {
         rsv1 = buf.length >= perMessageDeflate._threshold;
       }
       this._compress = rsv1;
@@ -329,12 +312,12 @@
    *     `data`
    * @param {Object} options Options object
    * @param {Number} options.opcode The opcode
+   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
+   *     modified
    * @param {Boolean} [options.fin=false] Specifies whether or not to set the
    *     FIN bit
    * @param {Boolean} [options.mask=false] Specifies whether or not to mask
    *     `data`
-   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
-   *     modified
    * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
    *     RSV1 bit
    * @param {Function} [cb] Callback
diff --git a/node_modules/puppeteer/node_modules/ws/lib/stream.js b/node_modules/puppeteer/node_modules/ws/lib/stream.js
index 0f85ba5..604cf36 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/stream.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/stream.js
@@ -5,7 +5,7 @@
 /**
  * Emits the `'close'` event on a stream.
  *
- * @param {Duplex} stream The stream.
+ * @param {stream.Duplex} The stream.
  * @private
  */
 function emitClose(stream) {
@@ -43,12 +43,11 @@
  *
  * @param {WebSocket} ws The `WebSocket` to wrap
  * @param {Object} [options] The options for the `Duplex` constructor
- * @return {Duplex} The duplex stream
+ * @return {stream.Duplex} The duplex stream
  * @public
  */
 function createWebSocketStream(ws, options) {
   let resumeOnReceiverDrain = true;
-  let terminateOnDestroy = true;
 
   function receiverOnDrain() {
     if (resumeOnReceiverDrain) ws._socket.resume();
@@ -72,11 +71,8 @@
     writableObjectMode: false
   });
 
-  ws.on('message', function message(msg, isBinary) {
-    const data =
-      !isBinary && duplex._readableState.objectMode ? msg.toString() : msg;
-
-    if (!duplex.push(data)) {
+  ws.on('message', function message(msg) {
+    if (!duplex.push(msg)) {
       resumeOnReceiverDrain = false;
       ws._socket.pause();
     }
@@ -85,16 +81,6 @@
   ws.once('error', function error(err) {
     if (duplex.destroyed) return;
 
-    // Prevent `ws.terminate()` from being called by `duplex._destroy()`.
-    //
-    // - If the `'error'` event is emitted before the `'open'` event, then
-    //   `ws.terminate()` is a noop as no socket is assigned.
-    // - Otherwise, the error is re-emitted by the listener of the `'error'`
-    //   event of the `Receiver` object. The listener already closes the
-    //   connection by calling `ws.close()`. This allows a close frame to be
-    //   sent to the other peer. If `ws.terminate()` is called right after this,
-    //   then the close frame might not be sent.
-    terminateOnDestroy = false;
     duplex.destroy(err);
   });
 
@@ -122,8 +108,7 @@
       if (!called) callback(err);
       process.nextTick(emitClose, duplex);
     });
-
-    if (terminateOnDestroy) ws.terminate();
+    ws.terminate();
   };
 
   duplex._final = function (callback) {
diff --git a/node_modules/puppeteer/node_modules/ws/lib/subprotocol.js b/node_modules/puppeteer/node_modules/ws/lib/subprotocol.js
deleted file mode 100644
index d4381e8..0000000
--- a/node_modules/puppeteer/node_modules/ws/lib/subprotocol.js
+++ /dev/null
@@ -1,62 +0,0 @@
-'use strict';
-
-const { tokenChars } = require('./validation');
-
-/**
- * Parses the `Sec-WebSocket-Protocol` header into a set of subprotocol names.
- *
- * @param {String} header The field value of the header
- * @return {Set} The subprotocol names
- * @public
- */
-function parse(header) {
-  const protocols = new Set();
-  let start = -1;
-  let end = -1;
-  let i = 0;
-
-  for (i; i < header.length; i++) {
-    const code = header.charCodeAt(i);
-
-    if (end === -1 && tokenChars[code] === 1) {
-      if (start === -1) start = i;
-    } else if (
-      i !== 0 &&
-      (code === 0x20 /* ' ' */ || code === 0x09) /* '\t' */
-    ) {
-      if (end === -1 && start !== -1) end = i;
-    } else if (code === 0x2c /* ',' */) {
-      if (start === -1) {
-        throw new SyntaxError(`Unexpected character at index ${i}`);
-      }
-
-      if (end === -1) end = i;
-
-      const protocol = header.slice(start, end);
-
-      if (protocols.has(protocol)) {
-        throw new SyntaxError(`The "${protocol}" subprotocol is duplicated`);
-      }
-
-      protocols.add(protocol);
-      start = end = -1;
-    } else {
-      throw new SyntaxError(`Unexpected character at index ${i}`);
-    }
-  }
-
-  if (start === -1 || end !== -1) {
-    throw new SyntaxError('Unexpected end of input');
-  }
-
-  const protocol = header.slice(start, i);
-
-  if (protocols.has(protocol)) {
-    throw new SyntaxError(`The "${protocol}" subprotocol is duplicated`);
-  }
-
-  protocols.add(protocol);
-  return protocols;
-}
-
-module.exports = { parse };
diff --git a/node_modules/puppeteer/node_modules/ws/lib/validation.js b/node_modules/puppeteer/node_modules/ws/lib/validation.js
index ed98c75..169ac6f 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/validation.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/validation.js
@@ -1,28 +1,5 @@
 'use strict';
 
-//
-// Allowed token characters:
-//
-// '!', '#', '$', '%', '&', ''', '*', '+', '-',
-// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~'
-//
-// tokenChars[32] === 0 // ' '
-// tokenChars[33] === 1 // '!'
-// tokenChars[34] === 0 // '"'
-// ...
-//
-// prettier-ignore
-const tokenChars = [
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 15
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 31
-  0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, // 32 - 47
-  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // 48 - 63
-  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 64 - 79
-  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, // 80 - 95
-  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 96 - 111
-  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0 // 112 - 127
-];
-
 /**
  * Checks if a status code is allowed in a close frame.
  *
@@ -106,19 +83,22 @@
 }
 
 try {
-  const isValidUTF8 = require('utf-8-validate');
+  let isValidUTF8 = require('utf-8-validate');
+
+  /* istanbul ignore if */
+  if (typeof isValidUTF8 === 'object') {
+    isValidUTF8 = isValidUTF8.Validation.isValidUTF8; // utf-8-validate@<3.0.0
+  }
 
   module.exports = {
     isValidStatusCode,
     isValidUTF8(buf) {
       return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf);
-    },
-    tokenChars
+    }
   };
 } catch (e) /* istanbul ignore next */ {
   module.exports = {
     isValidStatusCode,
-    isValidUTF8: _isValidUTF8,
-    tokenChars
+    isValidUTF8: _isValidUTF8
   };
 }
diff --git a/node_modules/puppeteer/node_modules/ws/lib/websocket-server.js b/node_modules/puppeteer/node_modules/ws/lib/websocket-server.js
index 3c7939f..3c3bbe0 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/websocket-server.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/websocket-server.js
@@ -1,26 +1,16 @@
-/* eslint no-unused-vars: ["error", { "varsIgnorePattern": "^net|tls|https$" }] */
-
 'use strict';
 
 const EventEmitter = require('events');
-const http = require('http');
-const https = require('https');
-const net = require('net');
-const tls = require('tls');
 const { createHash } = require('crypto');
+const { createServer, STATUS_CODES } = require('http');
 
-const extension = require('./extension');
 const PerMessageDeflate = require('./permessage-deflate');
-const subprotocol = require('./subprotocol');
 const WebSocket = require('./websocket');
+const { format, parse } = require('./extension');
 const { GUID, kWebSocket } = require('./constants');
 
 const keyRegex = /^[+/0-9A-Za-z]{22}==$/;
 
-const RUNNING = 0;
-const CLOSING = 1;
-const CLOSED = 2;
-
 /**
  * Class representing a WebSocket server.
  *
@@ -44,10 +34,7 @@
    * @param {(Boolean|Object)} [options.perMessageDeflate=false] Enable/disable
    *     permessage-deflate
    * @param {Number} [options.port] The port where to bind the server
-   * @param {(http.Server|https.Server)} [options.server] A pre-created HTTP/S
-   *     server to use
-   * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
-   *     not to skip UTF-8 validation for text and close messages
+   * @param {http.Server} [options.server] A pre-created HTTP/S server to use
    * @param {Function} [options.verifyClient] A hook to reject connections
    * @param {Function} [callback] A listener for the `listening` event
    */
@@ -56,7 +43,6 @@
 
     options = {
       maxPayload: 100 * 1024 * 1024,
-      skipUTF8Validation: false,
       perMessageDeflate: false,
       handleProtocols: null,
       clientTracking: true,
@@ -70,20 +56,15 @@
       ...options
     };
 
-    if (
-      (options.port == null && !options.server && !options.noServer) ||
-      (options.port != null && (options.server || options.noServer)) ||
-      (options.server && options.noServer)
-    ) {
+    if (options.port == null && !options.server && !options.noServer) {
       throw new TypeError(
-        'One and only one of the "port", "server", or "noServer" options ' +
-          'must be specified'
+        'One of the "port", "server", or "noServer" options must be specified'
       );
     }
 
     if (options.port != null) {
-      this._server = http.createServer((req, res) => {
-        const body = http.STATUS_CODES[426];
+      this._server = createServer((req, res) => {
+        const body = STATUS_CODES[426];
 
         res.writeHead(426, {
           'Content-Length': body.length,
@@ -114,13 +95,8 @@
     }
 
     if (options.perMessageDeflate === true) options.perMessageDeflate = {};
-    if (options.clientTracking) {
-      this.clients = new Set();
-      this._shouldEmitClose = false;
-    }
-
+    if (options.clientTracking) this.clients = new Set();
     this.options = options;
-    this._state = RUNNING;
   }
 
   /**
@@ -142,58 +118,37 @@
   }
 
   /**
-   * Stop the server from accepting new connections and emit the `'close'` event
-   * when all existing connections are closed.
+   * Close the server.
    *
-   * @param {Function} [cb] A one-time listener for the `'close'` event
+   * @param {Function} [cb] Callback
    * @public
    */
   close(cb) {
-    if (this._state === CLOSED) {
-      if (cb) {
-        this.once('close', () => {
-          cb(new Error('The server is not running'));
-        });
-      }
-
-      process.nextTick(emitClose, this);
-      return;
-    }
-
     if (cb) this.once('close', cb);
 
-    if (this._state === CLOSING) return;
-    this._state = CLOSING;
+    //
+    // Terminate all associated clients.
+    //
+    if (this.clients) {
+      for (const client of this.clients) client.terminate();
+    }
 
-    if (this.options.noServer || this.options.server) {
-      if (this._server) {
-        this._removeListeners();
-        this._removeListeners = this._server = null;
-      }
+    const server = this._server;
 
-      if (this.clients) {
-        if (!this.clients.size) {
-          process.nextTick(emitClose, this);
-        } else {
-          this._shouldEmitClose = true;
-        }
-      } else {
-        process.nextTick(emitClose, this);
-      }
-    } else {
-      const server = this._server;
-
+    if (server) {
       this._removeListeners();
       this._removeListeners = this._server = null;
 
       //
-      // The HTTP/S server was created internally. Close it, and rely on its
-      // `'close'` event.
+      // Close the http server if it was internally created.
       //
-      server.close(() => {
-        emitClose(this);
-      });
+      if (this.options.port != null) {
+        server.close(() => this.emit('close'));
+        return;
+      }
     }
+
+    process.nextTick(emitClose, this);
   }
 
   /**
@@ -218,8 +173,7 @@
    * Handle a HTTP Upgrade request.
    *
    * @param {http.IncomingMessage} req The request object
-   * @param {(net.Socket|tls.Socket)} socket The network socket between the
-   *     server and client
+   * @param {net.Socket} socket The network socket between the server and client
    * @param {Buffer} head The first packet of the upgraded stream
    * @param {Function} cb Callback
    * @public
@@ -229,9 +183,10 @@
 
     const key =
       req.headers['sec-websocket-key'] !== undefined
-        ? req.headers['sec-websocket-key']
+        ? req.headers['sec-websocket-key'].trim()
         : false;
     const version = +req.headers['sec-websocket-version'];
+    const extensions = {};
 
     if (
       req.method !== 'GET' ||
@@ -244,24 +199,7 @@
       return abortHandshake(socket, 400);
     }
 
-    const secWebSocketProtocol = req.headers['sec-websocket-protocol'];
-    let protocols = new Set();
-
-    if (secWebSocketProtocol !== undefined) {
-      try {
-        protocols = subprotocol.parse(secWebSocketProtocol);
-      } catch (err) {
-        return abortHandshake(socket, 400);
-      }
-    }
-
-    const secWebSocketExtensions = req.headers['sec-websocket-extensions'];
-    const extensions = {};
-
-    if (
-      this.options.perMessageDeflate &&
-      secWebSocketExtensions !== undefined
-    ) {
+    if (this.options.perMessageDeflate) {
       const perMessageDeflate = new PerMessageDeflate(
         this.options.perMessageDeflate,
         true,
@@ -269,7 +207,7 @@
       );
 
       try {
-        const offers = extension.parse(secWebSocketExtensions);
+        const offers = parse(req.headers['sec-websocket-extensions']);
 
         if (offers[PerMessageDeflate.extensionName]) {
           perMessageDeflate.accept(offers[PerMessageDeflate.extensionName]);
@@ -297,15 +235,7 @@
             return abortHandshake(socket, code || 401, message, headers);
           }
 
-          this.completeUpgrade(
-            extensions,
-            key,
-            protocols,
-            req,
-            socket,
-            head,
-            cb
-          );
+          this.completeUpgrade(key, extensions, req, socket, head, cb);
         });
         return;
       }
@@ -313,24 +243,22 @@
       if (!this.options.verifyClient(info)) return abortHandshake(socket, 401);
     }
 
-    this.completeUpgrade(extensions, key, protocols, req, socket, head, cb);
+    this.completeUpgrade(key, extensions, req, socket, head, cb);
   }
 
   /**
    * Upgrade the connection to WebSocket.
    *
-   * @param {Object} extensions The accepted extensions
    * @param {String} key The value of the `Sec-WebSocket-Key` header
-   * @param {Set} protocols The subprotocols
+   * @param {Object} extensions The accepted extensions
    * @param {http.IncomingMessage} req The request object
-   * @param {(net.Socket|tls.Socket)} socket The network socket between the
-   *     server and client
+   * @param {net.Socket} socket The network socket between the server and client
    * @param {Buffer} head The first packet of the upgraded stream
    * @param {Function} cb Callback
    * @throws {Error} If called more than once with the same socket
    * @private
    */
-  completeUpgrade(extensions, key, protocols, req, socket, head, cb) {
+  completeUpgrade(key, extensions, req, socket, head, cb) {
     //
     // Destroy the socket if the client has already sent a FIN packet.
     //
@@ -343,8 +271,6 @@
       );
     }
 
-    if (this._state > RUNNING) return abortHandshake(socket, 503);
-
     const digest = createHash('sha1')
       .update(key + GUID)
       .digest('base64');
@@ -357,14 +283,19 @@
     ];
 
     const ws = new WebSocket(null);
+    let protocol = req.headers['sec-websocket-protocol'];
 
-    if (protocols.size) {
+    if (protocol) {
+      protocol = protocol.split(',').map(trim);
+
       //
       // Optionally call external protocol selection handler.
       //
-      const protocol = this.options.handleProtocols
-        ? this.options.handleProtocols(protocols, req)
-        : protocols.values().next().value;
+      if (this.options.handleProtocols) {
+        protocol = this.options.handleProtocols(protocol, req);
+      } else {
+        protocol = protocol[0];
+      }
 
       if (protocol) {
         headers.push(`Sec-WebSocket-Protocol: ${protocol}`);
@@ -374,7 +305,7 @@
 
     if (extensions[PerMessageDeflate.extensionName]) {
       const params = extensions[PerMessageDeflate.extensionName].params;
-      const value = extension.format({
+      const value = format({
         [PerMessageDeflate.extensionName]: [params]
       });
       headers.push(`Sec-WebSocket-Extensions: ${value}`);
@@ -389,20 +320,11 @@
     socket.write(headers.concat('\r\n').join('\r\n'));
     socket.removeListener('error', socketOnError);
 
-    ws.setSocket(socket, head, {
-      maxPayload: this.options.maxPayload,
-      skipUTF8Validation: this.options.skipUTF8Validation
-    });
+    ws.setSocket(socket, head, this.options.maxPayload);
 
     if (this.clients) {
       this.clients.add(ws);
-      ws.on('close', () => {
-        this.clients.delete(ws);
-
-        if (this._shouldEmitClose && !this.clients.size) {
-          process.nextTick(emitClose, this);
-        }
-      });
+      ws.on('close', () => this.clients.delete(ws));
     }
 
     cb(ws, req);
@@ -438,7 +360,6 @@
  * @private
  */
 function emitClose(server) {
-  server._state = CLOSED;
   server.emit('close');
 }
 
@@ -454,7 +375,7 @@
 /**
  * Close the connection when preconditions are not fulfilled.
  *
- * @param {(net.Socket|tls.Socket)} socket The socket of the upgrade request
+ * @param {net.Socket} socket The socket of the upgrade request
  * @param {Number} code The HTTP response status code
  * @param {String} [message] The HTTP response body
  * @param {Object} [headers] Additional HTTP response headers
@@ -462,7 +383,7 @@
  */
 function abortHandshake(socket, code, message, headers) {
   if (socket.writable) {
-    message = message || http.STATUS_CODES[code];
+    message = message || STATUS_CODES[code];
     headers = {
       Connection: 'close',
       'Content-Type': 'text/html',
@@ -471,7 +392,7 @@
     };
 
     socket.write(
-      `HTTP/1.1 ${code} ${http.STATUS_CODES[code]}\r\n` +
+      `HTTP/1.1 ${code} ${STATUS_CODES[code]}\r\n` +
         Object.keys(headers)
           .map((h) => `${h}: ${headers[h]}`)
           .join('\r\n') +
@@ -483,3 +404,15 @@
   socket.removeListener('error', socketOnError);
   socket.destroy();
 }
+
+/**
+ * Remove whitespace characters from both ends of a string.
+ *
+ * @param {String} str The string
+ * @return {String} A new string representing `str` stripped of whitespace
+ *     characters from both its beginning and end
+ * @private
+ */
+function trim(str) {
+  return str.trim();
+}
diff --git a/node_modules/puppeteer/node_modules/ws/lib/websocket.js b/node_modules/puppeteer/node_modules/ws/lib/websocket.js
index 818f269..83b471d 100644
--- a/node_modules/puppeteer/node_modules/ws/lib/websocket.js
+++ b/node_modules/puppeteer/node_modules/ws/lib/websocket.js
@@ -1,5 +1,3 @@
-/* eslint no-unused-vars: ["error", { "varsIgnorePattern": "^Readable$" }] */
-
 'use strict';
 
 const EventEmitter = require('events');
@@ -8,7 +6,6 @@
 const net = require('net');
 const tls = require('tls');
 const { randomBytes, createHash } = require('crypto');
-const { Readable } = require('stream');
 const { URL } = require('url');
 
 const PerMessageDeflate = require('./permessage-deflate');
@@ -18,20 +15,15 @@
   BINARY_TYPES,
   EMPTY_BUFFER,
   GUID,
-  kForOnEventAttribute,
-  kListener,
   kStatusCode,
   kWebSocket,
   NOOP
 } = require('./constants');
-const {
-  EventTarget: { addEventListener, removeEventListener }
-} = require('./event-target');
+const { addEventListener, removeEventListener } = require('./event-target');
 const { format, parse } = require('./extension');
 const { toBuffer } = require('./buffer-util');
 
 const readyStates = ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'];
-const subprotocolRegex = /^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;
 const protocolVersions = [8, 13];
 const closeTimeout = 30 * 1000;
 
@@ -44,7 +36,7 @@
   /**
    * Create a new `WebSocket`.
    *
-   * @param {(String|URL)} address The URL to which to connect
+   * @param {(String|url.URL)} address The URL to which to connect
    * @param {(String|String[])} [protocols] The subprotocols
    * @param {Object} [options] Connection options
    */
@@ -55,7 +47,7 @@
     this._closeCode = 1006;
     this._closeFrameReceived = false;
     this._closeFrameSent = false;
-    this._closeMessage = EMPTY_BUFFER;
+    this._closeMessage = '';
     this._closeTimer = null;
     this._extensions = {};
     this._protocol = '';
@@ -69,15 +61,11 @@
       this._isServer = false;
       this._redirects = 0;
 
-      if (protocols === undefined) {
-        protocols = [];
-      } else if (!Array.isArray(protocols)) {
-        if (typeof protocols === 'object' && protocols !== null) {
-          options = protocols;
-          protocols = [];
-        } else {
-          protocols = [protocols];
-        }
+      if (Array.isArray(protocols)) {
+        protocols = protocols.join(', ');
+      } else if (typeof protocols === 'object' && protocols !== null) {
+        options = protocols;
+        protocols = undefined;
       }
 
       initAsClient(this, address, protocols, options);
@@ -125,38 +113,6 @@
   }
 
   /**
-   * @type {Function}
-   */
-  /* istanbul ignore next */
-  get onclose() {
-    return null;
-  }
-
-  /**
-   * @type {Function}
-   */
-  /* istanbul ignore next */
-  get onerror() {
-    return null;
-  }
-
-  /**
-   * @type {Function}
-   */
-  /* istanbul ignore next */
-  get onopen() {
-    return null;
-  }
-
-  /**
-   * @type {Function}
-   */
-  /* istanbul ignore next */
-  get onmessage() {
-    return null;
-  }
-
-  /**
    * @type {String}
    */
   get protocol() {
@@ -180,23 +136,18 @@
   /**
    * Set up the socket and the internal resources.
    *
-   * @param {(net.Socket|tls.Socket)} socket The network socket between the
-   *     server and client
+   * @param {net.Socket} socket The network socket between the server and client
    * @param {Buffer} head The first packet of the upgraded stream
-   * @param {Object} options Options object
-   * @param {Number} [options.maxPayload=0] The maximum allowed message size
-   * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
-   *     not to skip UTF-8 validation for text and close messages
+   * @param {Number} [maxPayload=0] The maximum allowed message size
    * @private
    */
-  setSocket(socket, head, options) {
-    const receiver = new Receiver({
-      binaryType: this.binaryType,
-      extensions: this._extensions,
-      isServer: this._isServer,
-      maxPayload: options.maxPayload,
-      skipUTF8Validation: options.skipUTF8Validation
-    });
+  setSocket(socket, head, maxPayload) {
+    const receiver = new Receiver(
+      this.binaryType,
+      this._extensions,
+      this._isServer,
+      maxPayload
+    );
 
     this._sender = new Sender(socket, this._extensions);
     this._receiver = receiver;
@@ -263,8 +214,7 @@
    *              +---+
    *
    * @param {Number} [code] Status code explaining why the connection is closing
-   * @param {(String|Buffer)} [data] The reason why the connection is
-   *     closing
+   * @param {String} [data] A string explaining why the connection is closing
    * @public
    */
   close(code, data) {
@@ -275,13 +225,7 @@
     }
 
     if (this.readyState === WebSocket.CLOSING) {
-      if (
-        this._closeFrameSent &&
-        (this._closeFrameReceived || this._receiver._writableState.errorEmitted)
-      ) {
-        this._socket.end();
-      }
-
+      if (this._closeFrameSent && this._closeFrameReceived) this._socket.end();
       return;
     }
 
@@ -294,13 +238,7 @@
       if (err) return;
 
       this._closeFrameSent = true;
-
-      if (
-        this._closeFrameReceived ||
-        this._receiver._writableState.errorEmitted
-      ) {
-        this._socket.end();
-      }
+      if (this._closeFrameReceived) this._socket.end();
     });
 
     //
@@ -381,10 +319,10 @@
    *
    * @param {*} data The message to send
    * @param {Object} [options] Options object
-   * @param {Boolean} [options.binary] Specifies whether `data` is binary or
-   *     text
    * @param {Boolean} [options.compress] Specifies whether or not to compress
    *     `data`
+   * @param {Boolean} [options.binary] Specifies whether `data` is binary or
+   *     text
    * @param {Boolean} [options.fin=true] Specifies whether the fragment is the
    *     last one
    * @param {Boolean} [options.mask] Specifies whether or not to mask `data`
@@ -442,76 +380,11 @@
   }
 }
 
-/**
- * @constant {Number} CONNECTING
- * @memberof WebSocket
- */
-Object.defineProperty(WebSocket, 'CONNECTING', {
-  enumerable: true,
-  value: readyStates.indexOf('CONNECTING')
-});
+readyStates.forEach((readyState, i) => {
+  const descriptor = { enumerable: true, value: i };
 
-/**
- * @constant {Number} CONNECTING
- * @memberof WebSocket.prototype
- */
-Object.defineProperty(WebSocket.prototype, 'CONNECTING', {
-  enumerable: true,
-  value: readyStates.indexOf('CONNECTING')
-});
-
-/**
- * @constant {Number} OPEN
- * @memberof WebSocket
- */
-Object.defineProperty(WebSocket, 'OPEN', {
-  enumerable: true,
-  value: readyStates.indexOf('OPEN')
-});
-
-/**
- * @constant {Number} OPEN
- * @memberof WebSocket.prototype
- */
-Object.defineProperty(WebSocket.prototype, 'OPEN', {
-  enumerable: true,
-  value: readyStates.indexOf('OPEN')
-});
-
-/**
- * @constant {Number} CLOSING
- * @memberof WebSocket
- */
-Object.defineProperty(WebSocket, 'CLOSING', {
-  enumerable: true,
-  value: readyStates.indexOf('CLOSING')
-});
-
-/**
- * @constant {Number} CLOSING
- * @memberof WebSocket.prototype
- */
-Object.defineProperty(WebSocket.prototype, 'CLOSING', {
-  enumerable: true,
-  value: readyStates.indexOf('CLOSING')
-});
-
-/**
- * @constant {Number} CLOSED
- * @memberof WebSocket
- */
-Object.defineProperty(WebSocket, 'CLOSED', {
-  enumerable: true,
-  value: readyStates.indexOf('CLOSED')
-});
-
-/**
- * @constant {Number} CLOSED
- * @memberof WebSocket.prototype
- */
-Object.defineProperty(WebSocket.prototype, 'CLOSED', {
-  enumerable: true,
-  value: readyStates.indexOf('CLOSED')
+  Object.defineProperty(WebSocket.prototype, readyState, descriptor);
+  Object.defineProperty(WebSocket, readyState, descriptor);
 });
 
 [
@@ -531,27 +404,37 @@
 //
 ['open', 'error', 'close', 'message'].forEach((method) => {
   Object.defineProperty(WebSocket.prototype, `on${method}`, {
+    configurable: true,
     enumerable: true,
+    /**
+     * Return the listener of the event.
+     *
+     * @return {(Function|undefined)} The event listener or `undefined`
+     * @public
+     */
     get() {
-      for (const listener of this.listeners(method)) {
-        if (listener[kForOnEventAttribute]) return listener[kListener];
+      const listeners = this.listeners(method);
+      for (let i = 0; i < listeners.length; i++) {
+        if (listeners[i]._listener) return listeners[i]._listener;
       }
 
-      return null;
+      return undefined;
     },
-    set(handler) {
-      for (const listener of this.listeners(method)) {
-        if (listener[kForOnEventAttribute]) {
-          this.removeListener(method, listener);
-          break;
-        }
+    /**
+     * Add a listener for the event.
+     *
+     * @param {Function} listener The listener to add
+     * @public
+     */
+    set(listener) {
+      const listeners = this.listeners(method);
+      for (let i = 0; i < listeners.length; i++) {
+        //
+        // Remove only the listeners added via `addEventListener`.
+        //
+        if (listeners[i]._listener) this.removeListener(method, listeners[i]);
       }
-
-      if (typeof handler !== 'function') return;
-
-      this.addEventListener(method, handler, {
-        [kForOnEventAttribute]: true
-      });
+      this.addEventListener(method, listener);
     }
   });
 });
@@ -565,32 +448,29 @@
  * Initialize a WebSocket client.
  *
  * @param {WebSocket} websocket The client to initialize
- * @param {(String|URL)} address The URL to which to connect
- * @param {Array} protocols The subprotocols
+ * @param {(String|url.URL)} address The URL to which to connect
+ * @param {String} [protocols] The subprotocols
  * @param {Object} [options] Connection options
- * @param {Boolean} [options.followRedirects=false] Whether or not to follow
- *     redirects
- * @param {Number} [options.handshakeTimeout] Timeout in milliseconds for the
- *     handshake request
- * @param {Number} [options.maxPayload=104857600] The maximum allowed message
- *     size
- * @param {Number} [options.maxRedirects=10] The maximum number of redirects
- *     allowed
- * @param {String} [options.origin] Value of the `Origin` or
- *     `Sec-WebSocket-Origin` header
  * @param {(Boolean|Object)} [options.perMessageDeflate=true] Enable/disable
  *     permessage-deflate
+ * @param {Number} [options.handshakeTimeout] Timeout in milliseconds for the
+ *     handshake request
  * @param {Number} [options.protocolVersion=13] Value of the
  *     `Sec-WebSocket-Version` header
- * @param {Boolean} [options.skipUTF8Validation=false] Specifies whether or
- *     not to skip UTF-8 validation for text and close messages
+ * @param {String} [options.origin] Value of the `Origin` or
+ *     `Sec-WebSocket-Origin` header
+ * @param {Number} [options.maxPayload=104857600] The maximum allowed message
+ *     size
+ * @param {Boolean} [options.followRedirects=false] Whether or not to follow
+ *     redirects
+ * @param {Number} [options.maxRedirects=10] The maximum number of redirects
+ *     allowed
  * @private
  */
 function initAsClient(websocket, address, protocols, options) {
   const opts = {
     protocolVersion: protocolVersions[1],
     maxPayload: 100 * 1024 * 1024,
-    skipUTF8Validation: false,
     perMessageDeflate: true,
     followRedirects: false,
     maxRedirects: 10,
@@ -619,36 +499,21 @@
     parsedUrl = address;
     websocket._url = address.href;
   } else {
-    try {
-      parsedUrl = new URL(address);
-    } catch (e) {
-      throw new SyntaxError(`Invalid URL: ${address}`);
-    }
-
+    parsedUrl = new URL(address);
     websocket._url = address;
   }
 
-  const isSecure = parsedUrl.protocol === 'wss:';
   const isUnixSocket = parsedUrl.protocol === 'ws+unix:';
 
-  if (parsedUrl.protocol !== 'ws:' && !isSecure && !isUnixSocket) {
-    throw new SyntaxError(
-      'The URL\'s protocol must be one of "ws:", "wss:", or "ws+unix:"'
-    );
+  if (!parsedUrl.host && (!isUnixSocket || !parsedUrl.pathname)) {
+    throw new Error(`Invalid URL: ${websocket.url}`);
   }
 
-  if (isUnixSocket && !parsedUrl.pathname) {
-    throw new SyntaxError("The URL's pathname is empty");
-  }
-
-  if (parsedUrl.hash) {
-    throw new SyntaxError('The URL contains a fragment identifier');
-  }
-
+  const isSecure =
+    parsedUrl.protocol === 'wss:' || parsedUrl.protocol === 'https:';
   const defaultPort = isSecure ? 443 : 80;
   const key = randomBytes(16).toString('base64');
   const get = isSecure ? https.get : http.get;
-  const protocolSet = new Set();
   let perMessageDeflate;
 
   opts.createConnection = isSecure ? tlsConnect : netConnect;
@@ -677,22 +542,8 @@
       [PerMessageDeflate.extensionName]: perMessageDeflate.offer()
     });
   }
-  if (protocols.length) {
-    for (const protocol of protocols) {
-      if (
-        typeof protocol !== 'string' ||
-        !subprotocolRegex.test(protocol) ||
-        protocolSet.has(protocol)
-      ) {
-        throw new SyntaxError(
-          'An invalid or duplicated subprotocol was specified'
-        );
-      }
-
-      protocolSet.add(protocol);
-    }
-
-    opts.headers['Sec-WebSocket-Protocol'] = protocols.join(',');
+  if (protocols) {
+    opts.headers['Sec-WebSocket-Protocol'] = protocols;
   }
   if (opts.origin) {
     if (opts.protocolVersion < 13) {
@@ -779,16 +630,15 @@
     }
 
     const serverProt = res.headers['sec-websocket-protocol'];
+    const protList = (protocols || '').split(/, */);
     let protError;
 
-    if (serverProt !== undefined) {
-      if (!protocolSet.size) {
-        protError = 'Server sent a subprotocol but none was requested';
-      } else if (!protocolSet.has(serverProt)) {
-        protError = 'Server sent an invalid subprotocol';
-      }
-    } else if (protocolSet.size) {
+    if (!protocols && serverProt) {
+      protError = 'Server sent a subprotocol but none was requested';
+    } else if (protocols && !serverProt) {
       protError = 'Server sent no subprotocol';
+    } else if (serverProt && !protList.includes(serverProt)) {
+      protError = 'Server sent an invalid subprotocol';
     }
 
     if (protError) {
@@ -798,54 +648,26 @@
 
     if (serverProt) websocket._protocol = serverProt;
 
-    const secWebSocketExtensions = res.headers['sec-websocket-extensions'];
-
-    if (secWebSocketExtensions !== undefined) {
-      if (!perMessageDeflate) {
-        const message =
-          'Server sent a Sec-WebSocket-Extensions header but no extension ' +
-          'was requested';
-        abortHandshake(websocket, socket, message);
-        return;
-      }
-
-      let extensions;
-
+    if (perMessageDeflate) {
       try {
-        extensions = parse(secWebSocketExtensions);
+        const extensions = parse(res.headers['sec-websocket-extensions']);
+
+        if (extensions[PerMessageDeflate.extensionName]) {
+          perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]);
+          websocket._extensions[PerMessageDeflate.extensionName] =
+            perMessageDeflate;
+        }
       } catch (err) {
-        const message = 'Invalid Sec-WebSocket-Extensions header';
-        abortHandshake(websocket, socket, message);
+        abortHandshake(
+          websocket,
+          socket,
+          'Invalid Sec-WebSocket-Extensions header'
+        );
         return;
       }
-
-      const extensionNames = Object.keys(extensions);
-
-      if (
-        extensionNames.length !== 1 ||
-        extensionNames[0] !== PerMessageDeflate.extensionName
-      ) {
-        const message = 'Server indicated an extension that was not requested';
-        abortHandshake(websocket, socket, message);
-        return;
-      }
-
-      try {
-        perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]);
-      } catch (err) {
-        const message = 'Invalid Sec-WebSocket-Extensions header';
-        abortHandshake(websocket, socket, message);
-        return;
-      }
-
-      websocket._extensions[PerMessageDeflate.extensionName] =
-        perMessageDeflate;
     }
 
-    websocket.setSocket(socket, head, {
-      maxPayload: opts.maxPayload,
-      skipUTF8Validation: opts.skipUTF8Validation
-    });
+    websocket.setSocket(socket, head, opts.maxPayload);
   });
 }
 
@@ -882,8 +704,8 @@
  * Abort the handshake and emit an error.
  *
  * @param {WebSocket} websocket The WebSocket instance
- * @param {(http.ClientRequest|net.Socket|tls.Socket)} stream The request to
- *     abort or the socket to destroy
+ * @param {(http.ClientRequest|net.Socket)} stream The request to abort or the
+ *     socket to destroy
  * @param {String} message The error message
  * @private
  */
@@ -950,21 +772,19 @@
  * The listener of the `Receiver` `'conclude'` event.
  *
  * @param {Number} code The status code
- * @param {Buffer} reason The reason for closing
+ * @param {String} reason The reason for closing
  * @private
  */
 function receiverOnConclude(code, reason) {
   const websocket = this[kWebSocket];
 
+  websocket._socket.removeListener('data', socketOnData);
+  websocket._socket.resume();
+
   websocket._closeFrameReceived = true;
   websocket._closeMessage = reason;
   websocket._closeCode = code;
 
-  if (websocket._socket[kWebSocket] === undefined) return;
-
-  websocket._socket.removeListener('data', socketOnData);
-  process.nextTick(resume, websocket._socket);
-
   if (code === 1005) websocket.close();
   else websocket.close(code, reason);
 }
@@ -987,19 +807,12 @@
 function receiverOnError(err) {
   const websocket = this[kWebSocket];
 
-  if (websocket._socket[kWebSocket] !== undefined) {
-    websocket._socket.removeListener('data', socketOnData);
+  websocket._socket.removeListener('data', socketOnData);
 
-    //
-    // On Node.js < 14.0.0 the `'error'` event is emitted synchronously. See
-    // https://github.com/websockets/ws/issues/1940.
-    //
-    process.nextTick(resume, websocket._socket);
-
-    websocket.close(err[kStatusCode]);
-  }
-
+  websocket._readyState = WebSocket.CLOSING;
+  websocket._closeCode = err[kStatusCode];
   websocket.emit('error', err);
+  websocket._socket.destroy();
 }
 
 /**
@@ -1014,12 +827,11 @@
 /**
  * The listener of the `Receiver` `'message'` event.
  *
- * @param {Buffer|ArrayBuffer|Buffer[])} data The message
- * @param {Boolean} isBinary Specifies whether the message is binary or not
+ * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The message
  * @private
  */
-function receiverOnMessage(data, isBinary) {
-  this[kWebSocket].emit('message', data, isBinary);
+function receiverOnMessage(data) {
+  this[kWebSocket].emit('message', data);
 }
 
 /**
@@ -1046,16 +858,6 @@
 }
 
 /**
- * Resume a readable stream
- *
- * @param {Readable} stream The readable stream
- * @private
- */
-function resume(stream) {
-  stream.resume();
-}
-
-/**
  * The listener of the `net.Socket` `'close'` event.
  *
  * @private
@@ -1064,13 +866,10 @@
   const websocket = this[kWebSocket];
 
   this.removeListener('close', socketOnClose);
-  this.removeListener('data', socketOnData);
   this.removeListener('end', socketOnEnd);
 
   websocket._readyState = WebSocket.CLOSING;
 
-  let chunk;
-
   //
   // The close frame might not have been received or the `'end'` event emitted,
   // for example, if the socket was destroyed due to an error. Ensure that the
@@ -1078,19 +877,13 @@
   // it. If the readable side of the socket is in flowing mode then there is no
   // buffered data as everything has been already written and `readable.read()`
   // will return `null`. If instead, the socket is paused, any possible buffered
-  // data will be read as a single chunk.
+  // data will be read as a single chunk and emitted synchronously in a single
+  // `'data'` event.
   //
-  if (
-    !this._readableState.endEmitted &&
-    !websocket._closeFrameReceived &&
-    !websocket._receiver._writableState.errorEmitted &&
-    (chunk = websocket._socket.read()) !== null
-  ) {
-    websocket._receiver.write(chunk);
-  }
-
+  websocket._socket.read();
   websocket._receiver.end();
 
+  this.removeListener('data', socketOnData);
   this[kWebSocket] = undefined;
 
   clearTimeout(websocket._closeTimer);
diff --git a/node_modules/puppeteer/node_modules/ws/package.json b/node_modules/puppeteer/node_modules/ws/package.json
index 8afdd2e..2ab6e37 100644
--- a/node_modules/puppeteer/node_modules/ws/package.json
+++ b/node_modules/puppeteer/node_modules/ws/package.json
@@ -1,6 +1,6 @@
 {
   "name": "ws",
-  "version": "8.2.3",
+  "version": "7.4.6",
   "description": "Simple to use, blazing fast and thoroughly tested websocket client and server for Node.js",
   "keywords": [
     "HyBi",
@@ -16,19 +16,14 @@
   "author": "Einar Otto Stangvik <[email protected]> (http://2x.io)",
   "license": "MIT",
   "main": "index.js",
-  "exports": {
-    "import": "./wrapper.mjs",
-    "require": "./index.js"
-  },
   "browser": "browser.js",
   "engines": {
-    "node": ">=10.0.0"
+    "node": ">=8.3.0"
   },
   "files": [
     "browser.js",
     "index.js",
-    "lib/*.js",
-    "wrapper.mjs"
+    "lib/*.js"
   ],
   "scripts": {
     "test": "nyc --reporter=lcov --reporter=text mocha --throw-deprecation test/*.test.js",
@@ -52,8 +47,8 @@
     "bufferutil": "^4.0.1",
     "eslint": "^7.2.0",
     "eslint-config-prettier": "^8.1.0",
-    "eslint-plugin-prettier": "^4.0.0",
-    "mocha": "^8.4.0",
+    "eslint-plugin-prettier": "^3.0.1",
+    "mocha": "^7.0.0",
     "nyc": "^15.0.0",
     "prettier": "^2.0.5",
     "utf-8-validate": "^5.0.2"
diff --git a/node_modules/puppeteer/node_modules/ws/wrapper.mjs b/node_modules/puppeteer/node_modules/ws/wrapper.mjs
deleted file mode 100644
index 7245ad1..0000000
--- a/node_modules/puppeteer/node_modules/ws/wrapper.mjs
+++ /dev/null
@@ -1,8 +0,0 @@
-import createWebSocketStream from './lib/stream.js';
-import Receiver from './lib/receiver.js';
-import Sender from './lib/sender.js';
-import WebSocket from './lib/websocket.js';
-import WebSocketServer from './lib/websocket-server.js';
-
-export { createWebSocketStream, Receiver, Sender, WebSocket, WebSocketServer };
-export default WebSocket;
diff --git a/node_modules/puppeteer/package.json b/node_modules/puppeteer/package.json
index bf790a1..7222bbc 100644
--- a/node_modules/puppeteer/package.json
+++ b/node_modules/puppeteer/package.json
@@ -1,6 +1,6 @@
 {
   "name": "puppeteer",
-  "version": "12.0.1",
+  "version": "10.0.0",
   "description": "A high-level API to control headless Chrome over the DevTools Protocol",
   "main": "./cjs-entry.js",
   "types": "lib/types.d.ts",
@@ -17,7 +17,7 @@
     "assert-unit-coverage": "cross-env COVERAGE=1 mocha --config mocha-config/coverage-tests.js",
     "funit": "cross-env PUPPETEER_PRODUCT=firefox npm run unit",
     "test": "npm run tsc && npm run lint --silent && npm run unit-with-coverage && npm run test-browser",
-    "prepare": "node typescript-if-required.js && husky install",
+    "prepare": "node typescript-if-required.js",
     "prepublishOnly": "npm run build",
     "dev-install": "npm run tsc && node install.js",
     "install": "node install.js",
@@ -35,14 +35,12 @@
     "tsc-esm": "tsc -b src/tsconfig.esm.json",
     "apply-next-version": "node utils/apply_next_version.js",
     "test-install": "scripts/test-install.sh",
-    "clean-docs": "rimraf website/docs && rimraf docs-api-json",
-    "generate-d-ts": "npm run clean-docs && api-extractor run --local --verbose && node inject-global-type-stubs.js",
-    "generate-docs": "npm run generate-d-ts && api-documenter markdown -i docs-api-json -o website/docs && node utils/remove-tag.js",
+    "generate-d-ts": "api-extractor run --local --verbose",
+    "generate-docs": "npm run generate-d-ts && api-documenter markdown -i temp -o new-docs",
     "ensure-correct-devtools-protocol-revision": "ts-node -s scripts/ensure-correct-devtools-protocol-package",
     "ensure-pinned-deps": "ts-node -s scripts/ensure-pinned-deps",
     "test-types-file": "ts-node -s scripts/test-ts-definition-files.ts",
-    "release": "node utils/remove_version_suffix.js && standard-version --commit-all",
-    "build-docs-production": "cd website && npm install && npm run build"
+    "release": "node utils/remove_version_suffix.js && standard-version --commit-all"
   },
   "files": [
     "lib/types.d.ts",
@@ -58,60 +56,66 @@
   "author": "The Chromium Authors",
   "license": "Apache-2.0",
   "dependencies": {
-    "debug": "4.3.2",
-    "devtools-protocol": "0.0.937139",
+    "debug": "4.3.1",
+    "devtools-protocol": "0.0.883894",
     "extract-zip": "2.0.1",
     "https-proxy-agent": "5.0.0",
-    "node-fetch": "2.6.5",
+    "node-fetch": "2.6.1",
     "pkg-dir": "4.2.0",
-    "progress": "2.0.3",
+    "progress": "2.0.1",
     "proxy-from-env": "1.1.0",
     "rimraf": "3.0.2",
-    "tar-fs": "2.1.1",
-    "unbzip2-stream": "1.4.3",
-    "ws": "8.2.3"
+    "tar-fs": "2.0.0",
+    "unbzip2-stream": "1.3.3",
+    "ws": "7.4.6"
   },
   "devDependencies": {
-    "@commitlint/cli": "13.2.0",
-    "@commitlint/config-conventional": "13.2.0",
-    "@microsoft/api-documenter": "7.13.65",
-    "@microsoft/api-extractor": "7.18.15",
-    "@types/debug": "4.1.7",
+    "@commitlint/cli": "11.0.0",
+    "@commitlint/config-conventional": "11.0.0",
+    "@microsoft/api-documenter": "7.13.8",
+    "@microsoft/api-extractor": "7.15.1",
+    "@types/debug": "0.0.31",
     "@types/mime": "2.0.3",
-    "@types/mocha": "9.0.0",
-    "@types/node": "16.10.9",
+    "@types/mocha": "7.0.2",
+    "@types/node": "14.14.45",
     "@types/proxy-from-env": "1.0.1",
-    "@types/rimraf": "3.0.2",
-    "@types/sinon": "10.0.4",
-    "@types/tar-fs": "2.0.1",
-    "@types/ws": "8.2.0",
+    "@types/rimraf": "2.0.2",
+    "@types/sinon": "9.0.11",
+    "@types/tar-fs": "1.16.2",
+    "@types/ws": "7.4.4",
     "@typescript-eslint/eslint-plugin": "4.23.0",
-    "@typescript-eslint/parser": "4.33.0",
-    "@web/test-runner": "0.13.18",
+    "@typescript-eslint/parser": "4.23.0",
+    "@web/test-runner": "0.12.20",
     "commonmark": "0.29.3",
     "cross-env": "7.0.3",
-    "eslint": "7.32.0",
+    "eslint": "7.26.0",
     "eslint-config-prettier": "8.3.0",
     "eslint-plugin-import": "2.22.1",
-    "eslint-plugin-mocha": "9.0.0",
-    "eslint-plugin-prettier": "4.0.0",
-    "eslint-plugin-unicorn": "37.0.1",
-    "esprima": "4.0.1",
+    "eslint-plugin-mocha": "8.1.0",
+    "eslint-plugin-prettier": "3.4.0",
+    "eslint-plugin-unicorn": "22.0.0",
+    "esprima": "4.0.0",
     "expect": "25.2.7",
-    "husky": "7.0.2",
+    "husky": "4.3.8",
     "jpeg-js": "0.3.7",
     "mime": "2.5.2",
     "minimist": "1.2.0",
-    "mocha": "9.1.3",
+    "mocha": "8.4.0",
     "ncp": "2.0.0",
-    "pixelmatch": "5.2.1",
-    "pngjs": "6.0.0",
+    "pixelmatch": "4.0.2",
+    "pngjs": "5.0.0",
     "prettier": "2.3.0",
     "sinon": "9.2.4",
     "source-map-support": "0.5.19",
-    "standard-version": "9.3.2",
+    "standard-version": "9.3.0",
     "text-diff": "1.0.1",
-    "ts-node": "10.4.0",
-    "typescript": "4.4.4"
+    "ts-node": "9.1.1",
+    "typescript": "4.2.4"
+  },
+  "husky": {
+    "hooks": {
+      "commit-msg": "commitlint --env HUSKY_GIT_PARAMS",
+      "pre-push": "npm run ensure-pinned-deps"
+    }
   }
 }
diff --git a/node_modules/socket.io/node_modules/@types/node/README.md b/node_modules/socket.io/node_modules/@types/node/README.md
index d619433..5633585 100755
--- a/node_modules/socket.io/node_modules/@types/node/README.md
+++ b/node_modules/socket.io/node_modules/@types/node/README.md
@@ -8,9 +8,9 @@
 Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node/v14.
 
 ### Additional Details
- * Last updated: Fri, 03 Dec 2021 12:31:02 GMT
+ * Last updated: Thu, 18 Nov 2021 19:01:40 GMT
  * Dependencies: none
  * Global values: `Buffer`, `__dirname`, `__filename`, `clearImmediate`, `clearInterval`, `clearTimeout`, `console`, `exports`, `global`, `module`, `process`, `queueMicrotask`, `require`, `setImmediate`, `setInterval`, `setTimeout`
 
 # Credits
-These definitions were written by [Microsoft TypeScript](https://github.com/Microsoft), [DefinitelyTyped](https://github.com/DefinitelyTyped), [Alberto Schiabel](https://github.com/jkomyno), [Alvis HT Tang](https://github.com/alvis), [Andrew Makarov](https://github.com/r3nya), [Benjamin Toueg](https://github.com/btoueg), [Chigozirim C.](https://github.com/smac89), [David Junger](https://github.com/touffy), [Deividas Bakanas](https://github.com/DeividasBakanas), [Eugene Y. Q. Shen](https://github.com/eyqs), [Hannes Magnusson](https://github.com/Hannes-Magnusson-CK), [Hoàng Văn Khải](https://github.com/KSXGitHub), [Huw](https://github.com/hoo29), [Kelvin Jin](https://github.com/kjin), [Klaus Meinhardt](https://github.com/ajafff), [Lishude](https://github.com/islishude), [Mariusz Wiktorczyk](https://github.com/mwiktorczyk), [Mohsen Azimi](https://github.com/mohsen1), [Nicolas Even](https://github.com/n-e), [Nikita Galkin](https://github.com/galkin), [Parambir Singh](https://github.com/parambirs), [Sebastian Silbermann](https://github.com/eps1lon), [Seth Westphal](https://github.com/westy92), [Simon Schick](https://github.com/SimonSchick), [Thomas den Hollander](https://github.com/ThomasdenH), [Wilco Bakker](https://github.com/WilcoBakker), [wwwy3y3](https://github.com/wwwy3y3), [Samuel Ainsworth](https://github.com/samuela), [Kyle Uehlein](https://github.com/kuehlein), [Thanik Bhongbhibhat](https://github.com/bhongy), [Marcin Kopacz](https://github.com/chyzwar), [Trivikram Kamat](https://github.com/trivikr), [Junxiao Shi](https://github.com/yoursunny), [Ilia Baryshnikov](https://github.com/qwelias), [ExE Boss](https://github.com/ExE-Boss), [Surasak Chaisurin](https://github.com/Ryan-Willpower), [Piotr BÅ‚ażejewicz](https://github.com/peterblazejewicz), [Anna Henningsen](https://github.com/addaleax), [Victor Perin](https://github.com/victorperin), [Yongsheng Zhang](https://github.com/ZYSzys), [Bond](https://github.com/bondz), and [Linus Unnebäck](https://github.com/LinusU).
+These definitions were written by [Microsoft TypeScript](https://github.com/Microsoft), [DefinitelyTyped](https://github.com/DefinitelyTyped), [Alberto Schiabel](https://github.com/jkomyno), [Alvis HT Tang](https://github.com/alvis), [Andrew Makarov](https://github.com/r3nya), [Benjamin Toueg](https://github.com/btoueg), [Chigozirim C.](https://github.com/smac89), [David Junger](https://github.com/touffy), [Deividas Bakanas](https://github.com/DeividasBakanas), [Eugene Y. Q. Shen](https://github.com/eyqs), [Hannes Magnusson](https://github.com/Hannes-Magnusson-CK), [Hoàng Văn Khải](https://github.com/KSXGitHub), [Huw](https://github.com/hoo29), [Kelvin Jin](https://github.com/kjin), [Klaus Meinhardt](https://github.com/ajafff), [Lishude](https://github.com/islishude), [Mariusz Wiktorczyk](https://github.com/mwiktorczyk), [Mohsen Azimi](https://github.com/mohsen1), [Nicolas Even](https://github.com/n-e), [Nikita Galkin](https://github.com/galkin), [Parambir Singh](https://github.com/parambirs), [Sebastian Silbermann](https://github.com/eps1lon), [Seth Westphal](https://github.com/westy92), [Simon Schick](https://github.com/SimonSchick), [Thomas den Hollander](https://github.com/ThomasdenH), [Wilco Bakker](https://github.com/WilcoBakker), [wwwy3y3](https://github.com/wwwy3y3), [Samuel Ainsworth](https://github.com/samuela), [Kyle Uehlein](https://github.com/kuehlein), [Thanik Bhongbhibhat](https://github.com/bhongy), [Marcin Kopacz](https://github.com/chyzwar), [Trivikram Kamat](https://github.com/trivikr), [Junxiao Shi](https://github.com/yoursunny), [Ilia Baryshnikov](https://github.com/qwelias), [ExE Boss](https://github.com/ExE-Boss), [Surasak Chaisurin](https://github.com/Ryan-Willpower), [Piotr BÅ‚ażejewicz](https://github.com/peterblazejewicz), [Anna Henningsen](https://github.com/addaleax), [Victor Perin](https://github.com/victorperin), [Yongsheng Zhang](https://github.com/ZYSzys), and [Bond](https://github.com/bondz).
diff --git a/node_modules/socket.io/node_modules/@types/node/assert.d.ts b/node_modules/socket.io/node_modules/@types/node/assert.d.ts
index 90e413d..fd35f63 100755
--- a/node_modules/socket.io/node_modules/@types/node/assert.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/assert.d.ts
@@ -122,7 +122,3 @@
 
     export = assert;
 }
-declare module 'node:assert' {
-    import assert = require('assert');
-    export = assert;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/async_hooks.d.ts b/node_modules/socket.io/node_modules/@types/node/async_hooks.d.ts
index 4067d61..a9fd8f7 100755
--- a/node_modules/socket.io/node_modules/@types/node/async_hooks.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/async_hooks.d.ts
@@ -224,6 +224,3 @@
         enterWith(store: T): void;
     }
 }
-declare module 'node:async_hooks' {
-    export * from 'async_hooks';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/buffer.d.ts b/node_modules/socket.io/node_modules/@types/node/buffer.d.ts
index 927f278..0aa039c 100755
--- a/node_modules/socket.io/node_modules/@types/node/buffer.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/buffer.d.ts
@@ -20,6 +20,3 @@
 
     export { BuffType as Buffer };
 }
-declare module 'node:buffer' {
-    export * from 'buffer';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/child_process.d.ts b/node_modules/socket.io/node_modules/@types/node/child_process.d.ts
index ed34d31..cea7f89 100755
--- a/node_modules/socket.io/node_modules/@types/node/child_process.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/child_process.d.ts
@@ -509,6 +509,3 @@
     function execFileSync(command: string, args: ReadonlyArray<string>, options: ExecFileSyncOptionsWithBufferEncoding): Buffer;
     function execFileSync(command: string, args?: ReadonlyArray<string>, options?: ExecFileSyncOptions): string | Buffer;
 }
-declare module 'node:child_process' {
-    export * from 'child_process';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/cluster.d.ts b/node_modules/socket.io/node_modules/@types/node/cluster.d.ts
index 19fcad4..6c51f49 100755
--- a/node_modules/socket.io/node_modules/@types/node/cluster.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/cluster.d.ts
@@ -260,6 +260,3 @@
 
     function eventNames(): string[];
 }
-declare module 'node:cluster' {
-    export * from 'cluster';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/console.d.ts b/node_modules/socket.io/node_modules/@types/node/console.d.ts
index c20106e..39e16d2 100755
--- a/node_modules/socket.io/node_modules/@types/node/console.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/console.d.ts
@@ -1,8 +1,4 @@
 declare module 'console' {
-    import console = require('node:console');
-    export = console;
-}
-declare module 'node:console' {
     import { InspectOptions } from 'util';
 
     global {
diff --git a/node_modules/socket.io/node_modules/@types/node/constants.d.ts b/node_modules/socket.io/node_modules/@types/node/constants.d.ts
index 4c5c881..98ff976 100755
--- a/node_modules/socket.io/node_modules/@types/node/constants.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/constants.d.ts
@@ -11,8 +11,3 @@
         typeof fsConstants;
     export = exp;
 }
-
-declare module 'node:constants' {
-    import constants = require('constants');
-    export = constants;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/crypto.d.ts b/node_modules/socket.io/node_modules/@types/node/crypto.d.ts
index f08a9fd..853b5f8 100755
--- a/node_modules/socket.io/node_modules/@types/node/crypto.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/crypto.d.ts
@@ -1184,6 +1184,3 @@
      */
     function diffieHellman(options: { privateKey: KeyObject; publicKey: KeyObject }): Buffer;
 }
-declare module 'node:crypto' {
-    export * from 'crypto';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/dgram.d.ts b/node_modules/socket.io/node_modules/@types/node/dgram.d.ts
index 041cc51..88c8c87 100755
--- a/node_modules/socket.io/node_modules/@types/node/dgram.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/dgram.d.ts
@@ -139,6 +139,3 @@
         prependOnceListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
     }
 }
-declare module 'node:dgram' {
-    export * from 'dgram';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/dns.d.ts b/node_modules/socket.io/node_modules/@types/node/dns.d.ts
index d142626..412a093 100755
--- a/node_modules/socket.io/node_modules/@types/node/dns.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/dns.d.ts
@@ -382,6 +382,3 @@
         }
     }
 }
-declare module 'node:dns' {
-    export * from 'dns';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/domain.d.ts b/node_modules/socket.io/node_modules/@types/node/domain.d.ts
index daefff3..6423ebf 100755
--- a/node_modules/socket.io/node_modules/@types/node/domain.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/domain.d.ts
@@ -22,6 +22,3 @@
 
     function create(): Domain;
 }
-declare module 'node:domain' {
-    export * from 'domain';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/events.d.ts b/node_modules/socket.io/node_modules/@types/node/events.d.ts
index a0856b0..feb2b41 100755
--- a/node_modules/socket.io/node_modules/@types/node/events.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/events.d.ts
@@ -76,7 +76,3 @@
 
     export = EventEmitter;
 }
-declare module 'node:events' {
-    import events = require('events');
-    export = events;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/fs.d.ts b/node_modules/socket.io/node_modules/@types/node/fs.d.ts
index a249f9d..89528f4 100755
--- a/node_modules/socket.io/node_modules/@types/node/fs.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/fs.d.ts
@@ -2268,6 +2268,3 @@
         bigint?: boolean | undefined;
     }
 }
-declare module 'node:fs' {
-    export * from 'fs';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/fs/promises.d.ts b/node_modules/socket.io/node_modules/@types/node/fs/promises.d.ts
index a3ee359..1133977 100755
--- a/node_modules/socket.io/node_modules/@types/node/fs/promises.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/fs/promises.d.ts
@@ -563,6 +563,3 @@
 
     function opendir(path: PathLike, options?: OpenDirOptions): Promise<Dir>;
 }
-declare module 'node:fs/promises' {
-    export * from 'fs/promises';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/http.d.ts b/node_modules/socket.io/node_modules/@types/node/http.d.ts
index b6f838b..f288ea3 100755
--- a/node_modules/socket.io/node_modules/@types/node/http.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/http.d.ts
@@ -485,6 +485,3 @@
      */
     const maxHeaderSize: number;
 }
-declare module 'node:http' {
-    export * from 'http';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/http2.d.ts b/node_modules/socket.io/node_modules/@types/node/http2.d.ts
index aeb9bf3..22c0487 100755
--- a/node_modules/socket.io/node_modules/@types/node/http2.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/http2.d.ts
@@ -956,6 +956,3 @@
         listener?: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void
     ): ClientHttp2Session;
 }
-declare module 'node:http2' {
-    export * from 'http2';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/https.d.ts b/node_modules/socket.io/node_modules/@types/node/https.d.ts
index 74eb2d3..0d516a8 100755
--- a/node_modules/socket.io/node_modules/@types/node/https.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/https.d.ts
@@ -137,6 +137,3 @@
     function get(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
     let globalAgent: Agent;
 }
-declare module 'node:https' {
-    export * from 'https';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/index.d.ts b/node_modules/socket.io/node_modules/@types/node/index.d.ts
index 853342e..427d095 100755
--- a/node_modules/socket.io/node_modules/@types/node/index.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/index.d.ts
@@ -1,4 +1,4 @@
-// Type definitions for non-npm package Node.js 14.18
+// Type definitions for non-npm package Node.js 14.17
 // Project: https://nodejs.org/
 // Definitions by: Microsoft TypeScript <https://github.com/Microsoft>
 //                 DefinitelyTyped <https://github.com/DefinitelyTyped>
@@ -41,7 +41,6 @@
 //                 Victor Perin <https://github.com/victorperin>
 //                 Yongsheng Zhang <https://github.com/ZYSzys>
 //                 Bond <https://github.com/bondz>
-//                 Linus Unnebäck <https://github.com/LinusU>
 // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
 
 // NOTE: These definitions support NodeJS and TypeScript 3.7+
diff --git a/node_modules/socket.io/node_modules/@types/node/inspector.d.ts b/node_modules/socket.io/node_modules/@types/node/inspector.d.ts
index a249881..22eb7b5 100755
--- a/node_modules/socket.io/node_modules/@types/node/inspector.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/inspector.d.ts
@@ -3045,7 +3045,3 @@
      */
     function waitForDebugger(): void;
 }
-declare module 'node:inspector' {
-    import EventEmitter = require('inspector');
-    export = EventEmitter;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/module.d.ts b/node_modules/socket.io/node_modules/@types/node/module.d.ts
index ab3c541..787955a 100755
--- a/node_modules/socket.io/node_modules/@types/node/module.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/module.d.ts
@@ -50,7 +50,3 @@
     }
     export = Module;
 }
-declare module 'node:module' {
-    import module = require('module');
-    export = module;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/net.d.ts b/node_modules/socket.io/node_modules/@types/node/net.d.ts
index 0edfcd3..ed6a6e1 100755
--- a/node_modules/socket.io/node_modules/@types/node/net.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/net.d.ts
@@ -291,6 +291,3 @@
     function isIPv4(input: string): boolean;
     function isIPv6(input: string): boolean;
 }
-declare module 'node:net' {
-    export * from 'net';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/os.d.ts b/node_modules/socket.io/node_modules/@types/node/os.d.ts
index 1112ed8..6c92907 100755
--- a/node_modules/socket.io/node_modules/@types/node/os.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/os.d.ts
@@ -237,6 +237,3 @@
      */
     function setPriority(pid: number, priority: number): void;
 }
-declare module 'node:os' {
-    export * from 'os';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/package.json b/node_modules/socket.io/node_modules/@types/node/package.json
index 21b1f4e..bed1a85 100755
--- a/node_modules/socket.io/node_modules/@types/node/package.json
+++ b/node_modules/socket.io/node_modules/@types/node/package.json
@@ -1,6 +1,6 @@
 {
   "name": "@types/node",
-  "version": "14.18.0",
+  "version": "14.17.34",
   "description": "TypeScript definitions for Node.js",
   "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
   "license": "MIT",
@@ -209,11 +209,6 @@
       "name": "Bond",
       "url": "https://github.com/bondz",
       "githubUsername": "bondz"
-    },
-    {
-      "name": "Linus Unneb\u00e4ck",
-      "url": "https://github.com/LinusU",
-      "githubUsername": "LinusU"
     }
   ],
   "main": "",
@@ -225,6 +220,6 @@
   },
   "scripts": {},
   "dependencies": {},
-  "typesPublisherContentHash": "eae258c4cd666e101533e7968dec84fffca2b8844f142c4961eaed8caf8abe04",
+  "typesPublisherContentHash": "e2a1fbcecdca546c154d6cef43d8b0cd889ae502a33a0aa58c210786c3a2fa7e",
   "typeScriptVersion": "3.8"
 }
diff --git a/node_modules/socket.io/node_modules/@types/node/path.d.ts b/node_modules/socket.io/node_modules/@types/node/path.d.ts
index 9b9d001..05469ba 100755
--- a/node_modules/socket.io/node_modules/@types/node/path.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/path.d.ts
@@ -151,7 +151,3 @@
     const path: path.PlatformPath;
     export = path;
 }
-declare module 'node:path' {
-    import path = require('path');
-    export = path;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/perf_hooks.d.ts b/node_modules/socket.io/node_modules/@types/node/perf_hooks.d.ts
index 82babc6..b12eff7 100755
--- a/node_modules/socket.io/node_modules/@types/node/perf_hooks.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/perf_hooks.d.ts
@@ -269,6 +269,3 @@
 
     function monitorEventLoopDelay(options?: EventLoopMonitorOptions): EventLoopDelayMonitor;
 }
-declare module 'node:perf_hooks' {
-    export * from 'perf_hooks';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/process.d.ts b/node_modules/socket.io/node_modules/@types/node/process.d.ts
index de27bca..ef201b4 100755
--- a/node_modules/socket.io/node_modules/@types/node/process.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/process.d.ts
@@ -407,7 +407,3 @@
 
     export = process;
 }
-declare module 'node:process' {
-    import process = require('process');
-    export = process;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/punycode.d.ts b/node_modules/socket.io/node_modules/@types/node/punycode.d.ts
index 25680d8..b21ee8e 100755
--- a/node_modules/socket.io/node_modules/@types/node/punycode.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/punycode.d.ts
@@ -73,6 +73,3 @@
      */
     const version: string;
 }
-declare module 'node:punycode' {
-    export * from 'punycode';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/querystring.d.ts b/node_modules/socket.io/node_modules/@types/node/querystring.d.ts
index fb0a5dc..3d2c4f0 100755
--- a/node_modules/socket.io/node_modules/@types/node/querystring.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/querystring.d.ts
@@ -26,6 +26,3 @@
     function escape(str: string): string;
     function unescape(str: string): string;
 }
-declare module 'node:querystring' {
-    export * from 'querystring';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/readline.d.ts b/node_modules/socket.io/node_modules/@types/node/readline.d.ts
index ba3f257..af2b3c9 100755
--- a/node_modules/socket.io/node_modules/@types/node/readline.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/readline.d.ts
@@ -169,6 +169,3 @@
      */
     function moveCursor(stream: NodeJS.WritableStream, dx: number, dy: number, callback?: () => void): boolean;
 }
-declare module 'node:readline' {
-    export * from 'readline';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/repl.d.ts b/node_modules/socket.io/node_modules/@types/node/repl.d.ts
index 54fc9ef..06f8b64 100755
--- a/node_modules/socket.io/node_modules/@types/node/repl.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/repl.d.ts
@@ -393,6 +393,3 @@
         constructor(err: Error);
     }
 }
-declare module 'node:repl' {
-    export * from 'repl';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/stream.d.ts b/node_modules/socket.io/node_modules/@types/node/stream.d.ts
index 8d34d7a..083bc2f 100755
--- a/node_modules/socket.io/node_modules/@types/node/stream.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/stream.d.ts
@@ -353,7 +353,3 @@
 
     export = internal;
 }
-declare module 'node:stream' {
-    import stream = require('stream');
-    export = stream;
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/string_decoder.d.ts b/node_modules/socket.io/node_modules/@types/node/string_decoder.d.ts
index 7da4a51..c7ace1c 100755
--- a/node_modules/socket.io/node_modules/@types/node/string_decoder.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/string_decoder.d.ts
@@ -5,6 +5,3 @@
         end(buffer?: Buffer): string;
     }
 }
-declare module 'node:string_decoder' {
-    export * from 'string_decoder';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/timers.d.ts b/node_modules/socket.io/node_modules/@types/node/timers.d.ts
index 4b96496..df0157b 100755
--- a/node_modules/socket.io/node_modules/@types/node/timers.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/timers.d.ts
@@ -14,6 +14,3 @@
     }
     function clearImmediate(immediateId: NodeJS.Immediate): void;
 }
-declare module 'node:timers' {
-    export * from 'timers';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/tls.d.ts b/node_modules/socket.io/node_modules/@types/node/tls.d.ts
index afc8714..8e29da3 100755
--- a/node_modules/socket.io/node_modules/@types/node/tls.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/tls.d.ts
@@ -778,6 +778,3 @@
      */
     const rootCertificates: ReadonlyArray<string>;
 }
-declare module 'node:tls' {
-    export * from 'tls';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/trace_events.d.ts b/node_modules/socket.io/node_modules/@types/node/trace_events.d.ts
index b8281bd3..1bf6534 100755
--- a/node_modules/socket.io/node_modules/@types/node/trace_events.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/trace_events.d.ts
@@ -59,6 +59,3 @@
      */
     function getEnabledCategories(): string | undefined;
 }
-declare module 'node:trace_events' {
-    export * from 'trace_events';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/tty.d.ts b/node_modules/socket.io/node_modules/@types/node/tty.d.ts
index 40c4fc4..0935524 100755
--- a/node_modules/socket.io/node_modules/@types/node/tty.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/tty.d.ts
@@ -64,6 +64,3 @@
         isTTY: boolean;
     }
 }
-declare module 'node:tty' {
-    export * from 'tty';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/url.d.ts b/node_modules/socket.io/node_modules/@types/node/url.d.ts
index 715dc7d..3fc9206 100755
--- a/node_modules/socket.io/node_modules/@types/node/url.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/url.d.ts
@@ -114,6 +114,3 @@
         [Symbol.iterator](): IterableIterator<[string, string]>;
     }
 }
-declare module 'node:url' {
-    export * from 'url';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/util.d.ts b/node_modules/socket.io/node_modules/@types/node/util.d.ts
index 77c68b0..c6d4224 100755
--- a/node_modules/socket.io/node_modules/@types/node/util.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/util.d.ts
@@ -211,6 +211,3 @@
         encodeInto(input: string, output: Uint8Array): EncodeIntoResult;
     }
 }
-declare module 'node:util' {
-    export * from 'util';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/v8.d.ts b/node_modules/socket.io/node_modules/@types/node/v8.d.ts
index 744e7df..b497dcb 100755
--- a/node_modules/socket.io/node_modules/@types/node/v8.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/v8.d.ts
@@ -185,6 +185,3 @@
      */
     function deserialize(data: NodeJS.TypedArray): any;
 }
-declare module 'node:v8' {
-    export * from 'v8';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/vm.d.ts b/node_modules/socket.io/node_modules/@types/node/vm.d.ts
index 30fc9b3..1b1390a 100755
--- a/node_modules/socket.io/node_modules/@types/node/vm.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/vm.d.ts
@@ -150,6 +150,3 @@
      */
     function measureMemory(options?: MeasureMemoryOptions): Promise<MemoryMeasurement>;
 }
-declare module 'node:vm' {
-    export * from 'vm';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/wasi.d.ts b/node_modules/socket.io/node_modules/@types/node/wasi.d.ts
index c466ba1..f01fd1e 100755
--- a/node_modules/socket.io/node_modules/@types/node/wasi.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/wasi.d.ts
@@ -84,6 +84,3 @@
         readonly wasiImport: NodeJS.Dict<any>; // TODO: Narrow to DOM types
     }
 }
-declare module 'node:wasi' {
-    export * from 'wasi';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/worker_threads.d.ts b/node_modules/socket.io/node_modules/@types/node/worker_threads.d.ts
index 7621729..e1bd54d 100755
--- a/node_modules/socket.io/node_modules/@types/node/worker_threads.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/worker_threads.d.ts
@@ -236,6 +236,3 @@
      */
     function receiveMessageOnPort(port: MessagePort): { message: any } | undefined;
 }
-declare module 'node:worker_threads' {
-    export * from 'worker_threads';
-}
diff --git a/node_modules/socket.io/node_modules/@types/node/zlib.d.ts b/node_modules/socket.io/node_modules/@types/node/zlib.d.ts
index 8779cb2..4def68a 100755
--- a/node_modules/socket.io/node_modules/@types/node/zlib.d.ts
+++ b/node_modules/socket.io/node_modules/@types/node/zlib.d.ts
@@ -359,6 +359,3 @@
     /** @deprecated */
     const Z_DEFLATED: number;
 }
-declare module 'node:zlib' {
-    export * from 'zlib';
-}
diff --git a/node_modules/stylelint/node_modules/debug/LICENSE b/node_modules/stylelint/node_modules/debug/LICENSE
index 1a9820e..658c933 100644
--- a/node_modules/stylelint/node_modules/debug/LICENSE
+++ b/node_modules/stylelint/node_modules/debug/LICENSE
@@ -1,20 +1,19 @@
 (The MIT License)
 
-Copyright (c) 2014-2017 TJ Holowaychuk <[email protected]>
-Copyright (c) 2018-2021 Josh Junon
+Copyright (c) 2014 TJ Holowaychuk <[email protected]>
 
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software 
+and associated documentation files (the 'Software'), to deal in the Software without restriction, 
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 
 and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
 subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in all copies or substantial
+The above copyright notice and this permission notice shall be included in all copies or substantial 
 portions of the Software.
 
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 
+LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
diff --git a/node_modules/stylelint/node_modules/debug/README.md b/node_modules/stylelint/node_modules/debug/README.md
index 5ea4cd2..88dae35 100644
--- a/node_modules/stylelint/node_modules/debug/README.md
+++ b/node_modules/stylelint/node_modules/debug/README.md
@@ -1,5 +1,5 @@
 # debug
-[![Build Status](https://travis-ci.org/debug-js/debug.svg?branch=master)](https://travis-ci.org/debug-js/debug)  [![Coverage Status](https://coveralls.io/repos/github/debug-js/debug/badge.svg?branch=master)](https://coveralls.io/github/debug-js/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
+[![Build Status](https://travis-ci.org/visionmedia/debug.svg?branch=master)](https://travis-ci.org/visionmedia/debug)  [![Coverage Status](https://coveralls.io/repos/github/visionmedia/debug/badge.svg?branch=master)](https://coveralls.io/github/visionmedia/debug?branch=master)  [![Slack](https://visionmedia-community-slackin.now.sh/badge.svg)](https://visionmedia-community-slackin.now.sh/) [![OpenCollective](https://opencollective.com/debug/backers/badge.svg)](#backers)
 [![OpenCollective](https://opencollective.com/debug/sponsors/badge.svg)](#sponsors)
 
 <img width="647" src="https://user-images.githubusercontent.com/71256/29091486-fa38524c-7c37-11e7-895f-e7ec8e1039b6.png">
@@ -351,34 +351,12 @@
 You can also manually toggle this property to force the debug instance to be
 enabled or disabled.
 
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.  
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
-  stdio: [
-    /* stdin: */ 0,
-    /* stdout: */ 'pipe',
-    /* stderr: */ 'pipe',
-    'ipc',
-  ],
-  env: Object.assign({}, process.env, {
-    DEBUG_COLORS: 1 // without this settings, colors won't be shown
-  }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
 
 ## Authors
 
  - TJ Holowaychuk
  - Nathan Rajlich
  - Andrew Rhyne
- - Josh Junon
 
 ## Backers
 
@@ -456,7 +434,6 @@
 (The MIT License)
 
 Copyright (c) 2014-2017 TJ Holowaychuk &lt;[email protected]&gt;
-Copyright (c) 2018-2021 Josh Junon
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the
diff --git a/node_modules/stylelint/node_modules/debug/package.json b/node_modules/stylelint/node_modules/debug/package.json
index cb7efa8..b7d70ac 100644
--- a/node_modules/stylelint/node_modules/debug/package.json
+++ b/node_modules/stylelint/node_modules/debug/package.json
@@ -1,11 +1,11 @@
 {
   "name": "debug",
-  "version": "4.3.3",
+  "version": "4.3.2",
   "repository": {
     "type": "git",
-    "url": "git://github.com/debug-js/debug.git"
+    "url": "git://github.com/visionmedia/debug.git"
   },
-  "description": "Lightweight debugging utility for Node.js and the browser",
+  "description": "small debugging utility",
   "keywords": [
     "debug",
     "log",
@@ -16,11 +16,11 @@
     "LICENSE",
     "README.md"
   ],
-  "author": "Josh Junon <[email protected]>",
+  "author": "TJ Holowaychuk <[email protected]>",
   "contributors": [
-    "TJ Holowaychuk <[email protected]>",
     "Nathan Rajlich <[email protected]> (http://n8.io)",
-    "Andrew Rhyne <[email protected]>"
+    "Andrew Rhyne <[email protected]>",
+    "Josh Junon <[email protected]>"
   ],
   "license": "MIT",
   "scripts": {
diff --git a/node_modules/stylelint/node_modules/debug/src/common.js b/node_modules/stylelint/node_modules/debug/src/common.js
index 6d571d2..50ce292 100644
--- a/node_modules/stylelint/node_modules/debug/src/common.js
+++ b/node_modules/stylelint/node_modules/debug/src/common.js
@@ -34,7 +34,7 @@
 
 	/**
 	* Selects a color for a debug namespace
-	* @param {String} namespace The namespace string for the debug instance to be colored
+	* @param {String} namespace The namespace string for the for the debug instance to be colored
 	* @return {Number|String} An ANSI color code for the given namespace
 	* @api private
 	*/
diff --git a/node_modules/tar-fs/.travis.yml b/node_modules/tar-fs/.travis.yml
index 977f7a6..5911b74 100644
--- a/node_modules/tar-fs/.travis.yml
+++ b/node_modules/tar-fs/.travis.yml
@@ -1,6 +1,5 @@
 language: node_js
 node_js:
+  - 6
   - 8
   - 10
-  - 12
-  - 14
diff --git a/node_modules/tar-fs/README.md b/node_modules/tar-fs/README.md
index c6d35cf..acdc843 100644
--- a/node_modules/tar-fs/README.md
+++ b/node_modules/tar-fs/README.md
@@ -81,8 +81,6 @@
 ``` js
 var pack = tar.pack('./my-directory', {
   mapStream: function(fileStream, header) {
-    // NOTE: the returned stream HAS to have the same length as the input stream.
-    // If not make sure to update the size in the header passed in here.
     if (path.extname(header.name) === '.js') {
       return fileStream.pipe(someTransform)
     }
@@ -157,8 +155,8 @@
 Packing and extracting a 6.1 GB with 2496 directories and 2398 files yields the following results on my Macbook Air.
 [See the benchmark here](https://gist.github.com/mafintosh/8102201)
 
-* tar-fs: 34.261 seconds
-* [node-tar](https://github.com/isaacs/node-tar): 366.123 seconds (or 10x slower)
+* tar-fs: 34.261 ms
+* [node-tar](https://github.com/isaacs/node-tar): 366.123 ms (or 10x slower)
 
 ## License
 
diff --git a/node_modules/tar-fs/index.js b/node_modules/tar-fs/index.js
index 18a28ee..0fd0433 100644
--- a/node_modules/tar-fs/index.js
+++ b/node_modules/tar-fs/index.js
@@ -1,7 +1,7 @@
 var chownr = require('chownr')
 var tar = require('tar-stream')
 var pump = require('pump')
-var mkdirp = require('mkdirp-classic')
+var mkdirp = require('mkdirp')
 var fs = require('fs')
 var path = require('path')
 var os = require('os')
@@ -26,7 +26,7 @@
     var next = queue.shift()
     var nextAbs = path.join(cwd, next)
 
-    stat.call(fs, nextAbs, function (err, stat) {
+    stat(nextAbs, function (err, stat) {
       if (err) return callback(err)
 
       if (!stat.isDirectory()) return callback(null, next, stat)
@@ -138,7 +138,7 @@
     var entry = pack.entry(header, onnextentry)
     if (!entry) return
 
-    var rs = mapStream(xfs.createReadStream(path.join(cwd, filename), { start: 0, end: header.size > 0 ? header.size - 1 : header.size }), header)
+    var rs = mapStream(xfs.createReadStream(path.join(cwd, filename)), header)
 
     rs.on('error', function (err) { // always forward errors on destroy
       entry.destroy(err)
@@ -227,15 +227,12 @@
     if (!chmod) return cb()
 
     var mode = (header.mode | (header.type === 'directory' ? dmode : fmode)) & umask
-
-    if (chown && own) chown.call(xfs, name, header.uid, header.gid, onchown)
-    else onchown(null)
-
-    function onchown (err) {
+    chmod(name, mode, function (err) {
       if (err) return cb(err)
-      if (!chmod) return cb()
-      chmod.call(xfs, name, mode, cb)
-    }
+      if (!own) return cb()
+      if (!chown) return cb()
+      chown(name, header.uid, header.gid, cb)
+    })
   }
 
   extract.on('entry', function (header, stream, next) {
diff --git a/node_modules/tar-fs/package.json b/node_modules/tar-fs/package.json
index 165bcce..58c3ccd 100644
--- a/node_modules/tar-fs/package.json
+++ b/node_modules/tar-fs/package.json
@@ -1,12 +1,12 @@
 {
   "name": "tar-fs",
-  "version": "2.1.1",
+  "version": "2.0.0",
   "description": "filesystem bindings for tar-stream",
   "dependencies": {
     "chownr": "^1.1.1",
-    "mkdirp-classic": "^0.5.2",
+    "mkdirp": "^0.5.1",
     "pump": "^3.0.0",
-    "tar-stream": "^2.1.4"
+    "tar-stream": "^2.0.0"
   },
   "keywords": [
     "tar",
@@ -18,7 +18,7 @@
   ],
   "devDependencies": {
     "rimraf": "^2.6.3",
-    "standard": "^13.0.1",
+    "standard": "^12.0.1",
     "tape": "^4.9.2"
   },
   "scripts": {
diff --git a/node_modules/tar-fs/test/index.js b/node_modules/tar-fs/test/index.js
index a01f82a..3f5e07b 100644
--- a/node_modules/tar-fs/test/index.js
+++ b/node_modules/tar-fs/test/index.js
@@ -197,7 +197,7 @@
   var a = path.join(__dirname, 'fixtures', 'd')
   var b = path.join(__dirname, 'fixtures', 'copy', 'd-entries')
 
-  var entries = ['file1', 'sub-files/file3', 'sub-dir']
+  var entries = [ 'file1', 'sub-files/file3', 'sub-dir' ]
 
   rimraf.sync(b)
   tar.pack(a, { entries: entries })
diff --git a/node_modules/tr46/.npmignore b/node_modules/tr46/.npmignore
deleted file mode 100644
index 96e9161..0000000
--- a/node_modules/tr46/.npmignore
+++ /dev/null
@@ -1,4 +0,0 @@
-scripts/
-test/
-
-!lib/mapping_table.json
diff --git a/node_modules/tr46/index.js b/node_modules/tr46/index.js
deleted file mode 100644
index 9ce12ca..0000000
--- a/node_modules/tr46/index.js
+++ /dev/null
@@ -1,193 +0,0 @@
-"use strict";
-
-var punycode = require("punycode");
-var mappingTable = require("./lib/mappingTable.json");
-
-var PROCESSING_OPTIONS = {
-  TRANSITIONAL: 0,
-  NONTRANSITIONAL: 1
-};
-
-function normalize(str) { // fix bug in v8
-  return str.split('\u0000').map(function (s) { return s.normalize('NFC'); }).join('\u0000');
-}
-
-function findStatus(val) {
-  var start = 0;
-  var end = mappingTable.length - 1;
-
-  while (start <= end) {
-    var mid = Math.floor((start + end) / 2);
-
-    var target = mappingTable[mid];
-    if (target[0][0] <= val && target[0][1] >= val) {
-      return target;
-    } else if (target[0][0] > val) {
-      end = mid - 1;
-    } else {
-      start = mid + 1;
-    }
-  }
-
-  return null;
-}
-
-var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
-
-function countSymbols(string) {
-  return string
-    // replace every surrogate pair with a BMP symbol
-    .replace(regexAstralSymbols, '_')
-    // then get the length
-    .length;
-}
-
-function mapChars(domain_name, useSTD3, processing_option) {
-  var hasError = false;
-  var processed = "";
-
-  var len = countSymbols(domain_name);
-  for (var i = 0; i < len; ++i) {
-    var codePoint = domain_name.codePointAt(i);
-    var status = findStatus(codePoint);
-
-    switch (status[1]) {
-      case "disallowed":
-        hasError = true;
-        processed += String.fromCodePoint(codePoint);
-        break;
-      case "ignored":
-        break;
-      case "mapped":
-        processed += String.fromCodePoint.apply(String, status[2]);
-        break;
-      case "deviation":
-        if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {
-          processed += String.fromCodePoint.apply(String, status[2]);
-        } else {
-          processed += String.fromCodePoint(codePoint);
-        }
-        break;
-      case "valid":
-        processed += String.fromCodePoint(codePoint);
-        break;
-      case "disallowed_STD3_mapped":
-        if (useSTD3) {
-          hasError = true;
-          processed += String.fromCodePoint(codePoint);
-        } else {
-          processed += String.fromCodePoint.apply(String, status[2]);
-        }
-        break;
-      case "disallowed_STD3_valid":
-        if (useSTD3) {
-          hasError = true;
-        }
-
-        processed += String.fromCodePoint(codePoint);
-        break;
-    }
-  }
-
-  return {
-    string: processed,
-    error: hasError
-  };
-}
-
-var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;
-
-function validateLabel(label, processing_option) {
-  if (label.substr(0, 4) === "xn--") {
-    label = punycode.toUnicode(label);
-    processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;
-  }
-
-  var error = false;
-
-  if (normalize(label) !== label ||
-      (label[3] === "-" && label[4] === "-") ||
-      label[0] === "-" || label[label.length - 1] === "-" ||
-      label.indexOf(".") !== -1 ||
-      label.search(combiningMarksRegex) === 0) {
-    error = true;
-  }
-
-  var len = countSymbols(label);
-  for (var i = 0; i < len; ++i) {
-    var status = findStatus(label.codePointAt(i));
-    if ((processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid") ||
-        (processing === PROCESSING_OPTIONS.NONTRANSITIONAL &&
-         status[1] !== "valid" && status[1] !== "deviation")) {
-      error = true;
-      break;
-    }
-  }
-
-  return {
-    label: label,
-    error: error
-  };
-}
-
-function processing(domain_name, useSTD3, processing_option) {
-  var result = mapChars(domain_name, useSTD3, processing_option);
-  result.string = normalize(result.string);
-
-  var labels = result.string.split(".");
-  for (var i = 0; i < labels.length; ++i) {
-    try {
-      var validation = validateLabel(labels[i]);
-      labels[i] = validation.label;
-      result.error = result.error || validation.error;
-    } catch(e) {
-      result.error = true;
-    }
-  }
-
-  return {
-    string: labels.join("."),
-    error: result.error
-  };
-}
-
-module.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {
-  var result = processing(domain_name, useSTD3, processing_option);
-  var labels = result.string.split(".");
-  labels = labels.map(function(l) {
-    try {
-      return punycode.toASCII(l);
-    } catch(e) {
-      result.error = true;
-      return l;
-    }
-  });
-
-  if (verifyDnsLength) {
-    var total = labels.slice(0, labels.length - 1).join(".").length;
-    if (total.length > 253 || total.length === 0) {
-      result.error = true;
-    }
-
-    for (var i=0; i < labels.length; ++i) {
-      if (labels.length > 63 || labels.length === 0) {
-        result.error = true;
-        break;
-      }
-    }
-  }
-
-  if (result.error) return null;
-  return labels.join(".");
-};
-
-module.exports.toUnicode = function(domain_name, useSTD3) {
-  var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);
-
-  return {
-    domain: result.string,
-    error: result.error
-  };
-};
-
-module.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;
diff --git a/node_modules/tr46/lib/.gitkeep b/node_modules/tr46/lib/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/node_modules/tr46/lib/.gitkeep
+++ /dev/null
diff --git a/node_modules/tr46/lib/mappingTable.json b/node_modules/tr46/lib/mappingTable.json
deleted file mode 100644
index 89cf19a..0000000
--- a/node_modules/tr46/lib/mappingTable.json
+++ /dev/null
@@ -1 +0,0 @@
-[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1000,1000],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6000],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8000,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8000]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9000],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[30000]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13000,13000],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43000,43000],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64000,64000],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66000,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[120000,120000],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128000,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23000]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149000]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32000]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195000,195000],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[40000]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918000,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]
\ No newline at end of file
diff --git a/node_modules/tr46/package.json b/node_modules/tr46/package.json
deleted file mode 100644
index b6826da..0000000
--- a/node_modules/tr46/package.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-  "name": "tr46",
-  "version": "0.0.3",
-  "description": "An implementation of the Unicode TR46 spec",
-  "main": "index.js",
-  "scripts": {
-    "test": "mocha",
-    "pretest": "node scripts/getLatestUnicodeTests.js",
-    "prepublish": "node scripts/generateMappingTable.js"
-  },
-  "repository": {
-    "type": "git",
-    "url": "git+https://github.com/Sebmaster/tr46.js.git"
-  },
-  "keywords": [
-    "unicode",
-    "tr46",
-    "url",
-    "whatwg"
-  ],
-  "author": "Sebastian Mayr <[email protected]>",
-  "license": "MIT",
-  "bugs": {
-    "url": "https://github.com/Sebmaster/tr46.js/issues"
-  },
-  "homepage": "https://github.com/Sebmaster/tr46.js#readme",
-  "devDependencies": {
-    "mocha": "^2.2.5",
-    "request": "^2.57.0"
-  }
-}
diff --git a/node_modules/unbzip2-stream/README.md b/node_modules/unbzip2-stream/README.md
index db4a03c..e8441c6 100644
--- a/node_modules/unbzip2-stream/README.md
+++ b/node_modules/unbzip2-stream/README.md
@@ -20,7 +20,7 @@
 
 Also see [test/browser/download.js](https://github.com/regular/unbzip2-stream/blob/master/test/browser/download.js) for an example of decompressing a file while downloading.
 
-Or, using a &lt;script&gt; tag
+Or, using a <script> tag
 ---
 
 ```
diff --git a/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js b/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js
index ce9e2e1..aacd41e 100644
--- a/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js
+++ b/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js
@@ -1 +1 @@
-(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.unbzip2Stream=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r}()({1:[function(require,module,exports){(function(Buffer){var through=require("through");var bz2=require("./lib/bzip2");var bitIterator=require("./lib/bit_iterator");module.exports=unbzip2Stream;function unbzip2Stream(){var bufferQueue=[];var hasBytes=0;var blockSize=0;var broken=false;var done=false;var bitReader=null;var streamCRC=null;function decompressBlock(push){if(!blockSize){blockSize=bz2.header(bitReader);streamCRC=0;return true}else{var bufsize=1e5*blockSize;var buf=new Int32Array(bufsize);var chunk=[];var f=function(b){chunk.push(b)};streamCRC=bz2.decompress(bitReader,f,buf,bufsize,streamCRC);if(streamCRC===null){blockSize=0;return false}else{push(Buffer.from(chunk));return true}}}var outlength=0;function decompressAndQueue(stream){if(broken)return;try{return decompressBlock(function(d){stream.queue(d);if(d!==null){outlength+=d.length}else{}})}catch(e){stream.emit("error",e);broken=true;return false}}return through(function write(data){bufferQueue.push(data);hasBytes+=data.length;if(bitReader===null){bitReader=bitIterator(function(){return bufferQueue.shift()})}while(!broken&&hasBytes-bitReader.bytesRead+1>=(25e3+1e5*blockSize||4)){decompressAndQueue(this)}},function end(x){while(!broken&&bitReader&&hasBytes>bitReader.bytesRead){decompressAndQueue(this)}if(!broken){if(streamCRC!==null)this.emit("error",new Error("input stream ended prematurely"));this.queue(null)}})}}).call(this,require("buffer").Buffer)},{"./lib/bit_iterator":2,"./lib/bzip2":3,buffer:6,through:31}],2:[function(require,module,exports){var BITMASK=[0,1,3,7,15,31,63,127,255];module.exports=function bitIterator(nextBuffer){var bit=0,byte=0;var bytes=nextBuffer();var f=function(n){if(n===null&&bit!=0){bit=0;byte++;return}var result=0;while(n>0){if(byte>=bytes.length){byte=0;bytes=nextBuffer()}var left=8-bit;if(bit===0&&n>0)f.bytesRead++;if(n>=left){result<<=left;result|=BITMASK[left]&bytes[byte++];bit=0;n-=left}else{result<<=n;result|=(bytes[byte]&BITMASK[n]<<8-n-bit)>>8-n-bit;bit+=n;n=0}}return result};f.bytesRead=0;return f}},{}],3:[function(require,module,exports){function Bzip2Error(message){this.name="Bzip2Error";this.message=message;this.stack=(new Error).stack}Bzip2Error.prototype=new Error;var message={Error:function(message){throw new Bzip2Error(message)}};var bzip2={};bzip2.Bzip2Error=Bzip2Error;bzip2.crcTable=[0,79764919,159529838,222504665,319059676,398814059,445009330,507990021,638119352,583659535,797628118,726387553,890018660,835552979,1015980042,944750013,1276238704,1221641927,1167319070,1095957929,1595256236,1540665371,1452775106,1381403509,1780037320,1859660671,1671105958,1733955601,2031960084,2111593891,1889500026,1952343757,2552477408,2632100695,2443283854,2506133561,2334638140,2414271883,2191915858,2254759653,3190512472,3135915759,3081330742,3009969537,2905550212,2850959411,2762807018,2691435357,3560074640,3505614887,3719321342,3648080713,3342211916,3287746299,3467911202,3396681109,4063920168,4143685023,4223187782,4286162673,3779000052,3858754371,3904687514,3967668269,881225847,809987520,1023691545,969234094,662832811,591600412,771767749,717299826,311336399,374308984,453813921,533576470,25881363,88864420,134795389,214552010,2023205639,2086057648,1897238633,1976864222,1804852699,1867694188,1645340341,1724971778,1587496639,1516133128,1461550545,1406951526,1302016099,1230646740,1142491917,1087903418,2896545431,2825181984,2770861561,2716262478,3215044683,3143675388,3055782693,3001194130,2326604591,2389456536,2200899649,2280525302,2578013683,2640855108,2418763421,2498394922,3769900519,3832873040,3912640137,3992402750,4088425275,4151408268,4197601365,4277358050,3334271071,3263032808,3476998961,3422541446,3585640067,3514407732,3694837229,3640369242,1762451694,1842216281,1619975040,1682949687,2047383090,2127137669,1938468188,2001449195,1325665622,1271206113,1183200824,1111960463,1543535498,1489069629,1434599652,1363369299,622672798,568075817,748617968,677256519,907627842,853037301,1067152940,995781531,51762726,131386257,177728840,240578815,269590778,349224269,429104020,491947555,4046411278,4126034873,4172115296,4234965207,3794477266,3874110821,3953728444,4016571915,3609705398,3555108353,3735388376,3664026991,3290680682,3236090077,3449943556,3378572211,3174993278,3120533705,3032266256,2961025959,2923101090,2868635157,2813903052,2742672763,2604032198,2683796849,2461293480,2524268063,2284983834,2364738477,2175806836,2238787779,1569362073,1498123566,1409854455,1355396672,1317987909,1246755826,1192025387,1137557660,2072149281,2135122070,1912620623,1992383480,1753615357,1816598090,1627664531,1707420964,295390185,358241886,404320391,483945776,43990325,106832002,186451547,266083308,932423249,861060070,1041341759,986742920,613929101,542559546,756411363,701822548,3316196985,3244833742,3425377559,3370778784,3601682597,3530312978,3744426955,3689838204,3819031489,3881883254,3928223919,4007849240,4037393693,4100235434,4180117107,4259748804,2310601993,2373574846,2151335527,2231098320,2596047829,2659030626,2470359227,2550115596,2947551409,2876312838,2788305887,2733848168,3165939309,3094707162,3040238851,2985771188];bzip2.array=function(bytes){var bit=0,byte=0;var BITMASK=[0,1,3,7,15,31,63,127,255];return function(n){var result=0;while(n>0){var left=8-bit;if(n>=left){result<<=left;result|=BITMASK[left]&bytes[byte++];bit=0;n-=left}else{result<<=n;result|=(bytes[byte]&BITMASK[n]<<8-n-bit)>>8-n-bit;bit+=n;n=0}}return result}};bzip2.simple=function(srcbuffer,stream){var bits=bzip2.array(srcbuffer);var size=bzip2.header(bits);var ret=false;var bufsize=1e5*size;var buf=new Int32Array(bufsize);do{ret=bzip2.decompress(bits,stream,buf,bufsize)}while(!ret)};bzip2.header=function(bits){this.byteCount=new Int32Array(256);this.symToByte=new Uint8Array(256);this.mtfSymbol=new Int32Array(256);this.selectors=new Uint8Array(32768);if(bits(8*3)!=4348520)message.Error("No magic number found");var i=bits(8)-48;if(i<1||i>9)message.Error("Not a BZIP archive");return i};bzip2.decompress=function(bits,stream,buf,bufsize,streamCRC){var MAX_HUFCODE_BITS=20;var MAX_SYMBOLS=258;var SYMBOL_RUNA=0;var SYMBOL_RUNB=1;var GROUP_SIZE=50;var crc=0^-1;for(var h="",i=0;i<6;i++)h+=bits(8).toString(16);if(h=="177245385090"){var finalCRC=bits(32)|0;if(finalCRC!==streamCRC)message.Error("Error in bzip2: crc32 do not match");bits(null);return null}if(h!="314159265359")message.Error("eek not valid bzip data");var crcblock=bits(32)|0;if(bits(1))message.Error("unsupported obsolete version");var origPtr=bits(24);if(origPtr>bufsize)message.Error("Initial position larger than buffer size");var t=bits(16);var symTotal=0;for(i=0;i<16;i++){if(t&1<<15-i){var k=bits(16);for(j=0;j<16;j++){if(k&1<<15-j){this.symToByte[symTotal++]=16*i+j}}}}var groupCount=bits(3);if(groupCount<2||groupCount>6)message.Error("another error");var nSelectors=bits(15);if(nSelectors==0)message.Error("meh");for(var i=0;i<groupCount;i++)this.mtfSymbol[i]=i;for(var i=0;i<nSelectors;i++){for(var j=0;bits(1);j++)if(j>=groupCount)message.Error("whoops another error");var uc=this.mtfSymbol[j];for(var k=j-1;k>=0;k--){this.mtfSymbol[k+1]=this.mtfSymbol[k]}this.mtfSymbol[0]=uc;this.selectors[i]=uc}var symCount=symTotal+2;var groups=[];var length=new Uint8Array(MAX_SYMBOLS),temp=new Uint16Array(MAX_HUFCODE_BITS+1);var hufGroup;for(var j=0;j<groupCount;j++){t=bits(5);for(var i=0;i<symCount;i++){while(true){if(t<1||t>MAX_HUFCODE_BITS)message.Error("I gave up a while ago on writing error messages");if(!bits(1))break;if(!bits(1))t++;else t--}length[i]=t}var minLen,maxLen;minLen=maxLen=length[0];for(var i=1;i<symCount;i++){if(length[i]>maxLen)maxLen=length[i];else if(length[i]<minLen)minLen=length[i]}hufGroup=groups[j]={};hufGroup.permute=new Int32Array(MAX_SYMBOLS);hufGroup.limit=new Int32Array(MAX_HUFCODE_BITS+1);hufGroup.base=new Int32Array(MAX_HUFCODE_BITS+1);hufGroup.minLen=minLen;hufGroup.maxLen=maxLen;var base=hufGroup.base;var limit=hufGroup.limit;var pp=0;for(var i=minLen;i<=maxLen;i++)for(var t=0;t<symCount;t++)if(length[t]==i)hufGroup.permute[pp++]=t;for(i=minLen;i<=maxLen;i++)temp[i]=limit[i]=0;for(i=0;i<symCount;i++)temp[length[i]]++;pp=t=0;for(i=minLen;i<maxLen;i++){pp+=temp[i];limit[i]=pp-1;pp<<=1;base[i+1]=pp-(t+=temp[i])}limit[maxLen]=pp+temp[maxLen]-1;base[minLen]=0}for(var i=0;i<256;i++){this.mtfSymbol[i]=i;this.byteCount[i]=0}var runPos,count,symCount,selector;runPos=count=symCount=selector=0;while(true){if(!symCount--){symCount=GROUP_SIZE-1;if(selector>=nSelectors)message.Error("meow i'm a kitty, that's an error");hufGroup=groups[this.selectors[selector++]];base=hufGroup.base;limit=hufGroup.limit}i=hufGroup.minLen;j=bits(i);while(true){if(i>hufGroup.maxLen)message.Error("rawr i'm a dinosaur");if(j<=limit[i])break;i++;j=j<<1|bits(1)}j-=base[i];if(j<0||j>=MAX_SYMBOLS)message.Error("moo i'm a cow");var nextSym=hufGroup.permute[j];if(nextSym==SYMBOL_RUNA||nextSym==SYMBOL_RUNB){if(!runPos){runPos=1;t=0}if(nextSym==SYMBOL_RUNA)t+=runPos;else t+=2*runPos;runPos<<=1;continue}if(runPos){runPos=0;if(count+t>bufsize)message.Error("Boom.");uc=this.symToByte[this.mtfSymbol[0]];this.byteCount[uc]+=t;while(t--)buf[count++]=uc}if(nextSym>symTotal)break;if(count>=bufsize)message.Error("I can't think of anything. Error");i=nextSym-1;uc=this.mtfSymbol[i];for(var k=i-1;k>=0;k--){this.mtfSymbol[k+1]=this.mtfSymbol[k]}this.mtfSymbol[0]=uc;uc=this.symToByte[uc];this.byteCount[uc]++;buf[count++]=uc}if(origPtr<0||origPtr>=count)message.Error("I'm a monkey and I'm throwing something at someone, namely you");var j=0;for(var i=0;i<256;i++){k=j+this.byteCount[i];this.byteCount[i]=j;j=k}for(var i=0;i<count;i++){uc=buf[i]&255;buf[this.byteCount[uc]]|=i<<8;this.byteCount[uc]++}var pos=0,current=0,run=0;if(count){pos=buf[origPtr];current=pos&255;pos>>=8;run=-1}count=count;var copies,previous,outbyte;while(count){count--;previous=current;pos=buf[pos];current=pos&255;pos>>=8;if(run++==3){copies=current;outbyte=previous;current=-1}else{copies=1;outbyte=current}while(copies--){crc=(crc<<8^this.crcTable[(crc>>24^outbyte)&255])&4294967295;stream(outbyte)}if(current!=previous)run=0}crc=(crc^-1)>>>0;if((crc|0)!=(crcblock|0))message.Error("Error in bzip2: crc32 do not match");streamCRC=(crc^(streamCRC<<1|streamCRC>>>31))&4294967295;return streamCRC};module.exports=bzip2},{}],4:[function(require,module,exports){"use strict";exports.byteLength=byteLength;exports.toByteArray=toByteArray;exports.fromByteArray=fromByteArray;var lookup=[];var revLookup=[];var Arr=typeof Uint8Array!=="undefined"?Uint8Array:Array;var code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var i=0,len=code.length;i<len;++i){lookup[i]=code[i];revLookup[code.charCodeAt(i)]=i}revLookup["-".charCodeAt(0)]=62;revLookup["_".charCodeAt(0)]=63;function getLens(b64){var len=b64.length;if(len%4>0){throw new Error("Invalid string. Length must be a multiple of 4")}var validLen=b64.indexOf("=");if(validLen===-1)validLen=len;var placeHoldersLen=validLen===len?0:4-validLen%4;return[validLen,placeHoldersLen]}function byteLength(b64){var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function _byteLength(b64,validLen,placeHoldersLen){return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function toByteArray(b64){var tmp;var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];var arr=new Arr(_byteLength(b64,validLen,placeHoldersLen));var curByte=0;var len=placeHoldersLen>0?validLen-4:validLen;var i;for(i=0;i<len;i+=4){tmp=revLookup[b64.charCodeAt(i)]<<18|revLookup[b64.charCodeAt(i+1)]<<12|revLookup[b64.charCodeAt(i+2)]<<6|revLookup[b64.charCodeAt(i+3)];arr[curByte++]=tmp>>16&255;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}if(placeHoldersLen===2){tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4;arr[curByte++]=tmp&255}if(placeHoldersLen===1){tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}return arr}function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[num&63]}function encodeChunk(uint8,start,end){var tmp;var output=[];for(var i=start;i<end;i+=3){tmp=(uint8[i]<<16&16711680)+(uint8[i+1]<<8&65280)+(uint8[i+2]&255);output.push(tripletToBase64(tmp))}return output.join("")}function fromByteArray(uint8){var tmp;var len=uint8.length;var extraBytes=len%3;var parts=[];var maxChunkLength=16383;for(var i=0,len2=len-extraBytes;i<len2;i+=maxChunkLength){parts.push(encodeChunk(uint8,i,i+maxChunkLength>len2?len2:i+maxChunkLength))}if(extraBytes===1){tmp=uint8[len-1];parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")}else if(extraBytes===2){tmp=(uint8[len-2]<<8)+uint8[len-1];parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"=")}return parts.join("")}},{}],5:[function(require,module,exports){},{}],6:[function(require,module,exports){(function(Buffer){"use strict";var base64=require("base64-js");var ieee754=require("ieee754");exports.Buffer=Buffer;exports.SlowBuffer=SlowBuffer;exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;exports.kMaxLength=K_MAX_LENGTH;Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport();if(!Buffer.TYPED_ARRAY_SUPPORT&&typeof console!=="undefined"&&typeof console.error==="function"){console.error("This browser lacks typed array (Uint8Array) support which is required by "+"`buffer` v5.x. Use `buffer` v4.x if you require old browser support.")}function typedArraySupport(){try{var arr=new Uint8Array(1);arr.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}};return arr.foo()===42}catch(e){return false}}Object.defineProperty(Buffer.prototype,"parent",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.buffer}});Object.defineProperty(Buffer.prototype,"offset",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.byteOffset}});function createBuffer(length){if(length>K_MAX_LENGTH){throw new RangeError('The value "'+length+'" is invalid for option "size"')}var buf=new Uint8Array(length);buf.__proto__=Buffer.prototype;return buf}function Buffer(arg,encodingOrOffset,length){if(typeof arg==="number"){if(typeof encodingOrOffset==="string"){throw new TypeError('The "string" argument must be of type string. Received type number')}return allocUnsafe(arg)}return from(arg,encodingOrOffset,length)}if(typeof Symbol!=="undefined"&&Symbol.species!=null&&Buffer[Symbol.species]===Buffer){Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:true,enumerable:false,writable:false})}Buffer.poolSize=8192;function from(value,encodingOrOffset,length){if(typeof value==="string"){return fromString(value,encodingOrOffset)}if(ArrayBuffer.isView(value)){return fromArrayLike(value)}if(value==null){throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}if(isInstance(value,ArrayBuffer)||value&&isInstance(value.buffer,ArrayBuffer)){return fromArrayBuffer(value,encodingOrOffset,length)}if(typeof value==="number"){throw new TypeError('The "value" argument must not be of type number. Received type number')}var valueOf=value.valueOf&&value.valueOf();if(valueOf!=null&&valueOf!==value){return Buffer.from(valueOf,encodingOrOffset,length)}var b=fromObject(value);if(b)return b;if(typeof Symbol!=="undefined"&&Symbol.toPrimitive!=null&&typeof value[Symbol.toPrimitive]==="function"){return Buffer.from(value[Symbol.toPrimitive]("string"),encodingOrOffset,length)}throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}Buffer.from=function(value,encodingOrOffset,length){return from(value,encodingOrOffset,length)};Buffer.prototype.__proto__=Uint8Array.prototype;Buffer.__proto__=Uint8Array;function assertSize(size){if(typeof size!=="number"){throw new TypeError('"size" argument must be of type number')}else if(size<0){throw new RangeError('The value "'+size+'" is invalid for option "size"')}}function alloc(size,fill,encoding){assertSize(size);if(size<=0){return createBuffer(size)}if(fill!==undefined){return typeof encoding==="string"?createBuffer(size).fill(fill,encoding):createBuffer(size).fill(fill)}return createBuffer(size)}Buffer.alloc=function(size,fill,encoding){return alloc(size,fill,encoding)};function allocUnsafe(size){assertSize(size);return createBuffer(size<0?0:checked(size)|0)}Buffer.allocUnsafe=function(size){return allocUnsafe(size)};Buffer.allocUnsafeSlow=function(size){return allocUnsafe(size)};function fromString(string,encoding){if(typeof encoding!=="string"||encoding===""){encoding="utf8"}if(!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}var length=byteLength(string,encoding)|0;var buf=createBuffer(length);var actual=buf.write(string,encoding);if(actual!==length){buf=buf.slice(0,actual)}return buf}function fromArrayLike(array){var length=array.length<0?0:checked(array.length)|0;var buf=createBuffer(length);for(var i=0;i<length;i+=1){buf[i]=array[i]&255}return buf}function fromArrayBuffer(array,byteOffset,length){if(byteOffset<0||array.byteLength<byteOffset){throw new RangeError('"offset" is outside of buffer bounds')}if(array.byteLength<byteOffset+(length||0)){throw new RangeError('"length" is outside of buffer bounds')}var buf;if(byteOffset===undefined&&length===undefined){buf=new Uint8Array(array)}else if(length===undefined){buf=new Uint8Array(array,byteOffset)}else{buf=new Uint8Array(array,byteOffset,length)}buf.__proto__=Buffer.prototype;return buf}function fromObject(obj){if(Buffer.isBuffer(obj)){var len=checked(obj.length)|0;var buf=createBuffer(len);if(buf.length===0){return buf}obj.copy(buf,0,0,len);return buf}if(obj.length!==undefined){if(typeof obj.length!=="number"||numberIsNaN(obj.length)){return createBuffer(0)}return fromArrayLike(obj)}if(obj.type==="Buffer"&&Array.isArray(obj.data)){return fromArrayLike(obj.data)}}function checked(length){if(length>=K_MAX_LENGTH){throw new RangeError("Attempt to allocate Buffer larger than maximum "+"size: 0x"+K_MAX_LENGTH.toString(16)+" bytes")}return length|0}function SlowBuffer(length){if(+length!=length){length=0}return Buffer.alloc(+length)}Buffer.isBuffer=function isBuffer(b){return b!=null&&b._isBuffer===true&&b!==Buffer.prototype};Buffer.compare=function compare(a,b){if(isInstance(a,Uint8Array))a=Buffer.from(a,a.offset,a.byteLength);if(isInstance(b,Uint8Array))b=Buffer.from(b,b.offset,b.byteLength);if(!Buffer.isBuffer(a)||!Buffer.isBuffer(b)){throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array')}if(a===b)return 0;var x=a.length;var y=b.length;for(var i=0,len=Math.min(x,y);i<len;++i){if(a[i]!==b[i]){x=a[i];y=b[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};Buffer.isEncoding=function isEncoding(encoding){switch(String(encoding).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return true;default:return false}};Buffer.concat=function concat(list,length){if(!Array.isArray(list)){throw new TypeError('"list" argument must be an Array of Buffers')}if(list.length===0){return Buffer.alloc(0)}var i;if(length===undefined){length=0;for(i=0;i<list.length;++i){length+=list[i].length}}var buffer=Buffer.allocUnsafe(length);var pos=0;for(i=0;i<list.length;++i){var buf=list[i];if(isInstance(buf,Uint8Array)){buf=Buffer.from(buf)}if(!Buffer.isBuffer(buf)){throw new TypeError('"list" argument must be an Array of Buffers')}buf.copy(buffer,pos);pos+=buf.length}return buffer};function byteLength(string,encoding){if(Buffer.isBuffer(string)){return string.length}if(ArrayBuffer.isView(string)||isInstance(string,ArrayBuffer)){return string.byteLength}if(typeof string!=="string"){throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. '+"Received type "+typeof string)}var len=string.length;var mustMatch=arguments.length>2&&arguments[2]===true;if(!mustMatch&&len===0)return 0;var loweredCase=false;for(;;){switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return len*2;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase){return mustMatch?-1:utf8ToBytes(string).length}encoding=(""+encoding).toLowerCase();loweredCase=true}}}Buffer.byteLength=byteLength;function slowToString(encoding,start,end){var loweredCase=false;if(start===undefined||start<0){start=0}if(start>this.length){return""}if(end===undefined||end>this.length){end=this.length}if(end<=0){return""}end>>>=0;start>>>=0;if(end<=start){return""}if(!encoding)encoding="utf8";while(true){switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase();loweredCase=true}}}Buffer.prototype._isBuffer=true;function swap(b,n,m){var i=b[n];b[n]=b[m];b[m]=i}Buffer.prototype.swap16=function swap16(){var len=this.length;if(len%2!==0){throw new RangeError("Buffer size must be a multiple of 16-bits")}for(var i=0;i<len;i+=2){swap(this,i,i+1)}return this};Buffer.prototype.swap32=function swap32(){var len=this.length;if(len%4!==0){throw new RangeError("Buffer size must be a multiple of 32-bits")}for(var i=0;i<len;i+=4){swap(this,i,i+3);swap(this,i+1,i+2)}return this};Buffer.prototype.swap64=function swap64(){var len=this.length;if(len%8!==0){throw new RangeError("Buffer size must be a multiple of 64-bits")}for(var i=0;i<len;i+=8){swap(this,i,i+7);swap(this,i+1,i+6);swap(this,i+2,i+5);swap(this,i+3,i+4)}return this};Buffer.prototype.toString=function toString(){var length=this.length;if(length===0)return"";if(arguments.length===0)return utf8Slice(this,0,length);return slowToString.apply(this,arguments)};Buffer.prototype.toLocaleString=Buffer.prototype.toString;Buffer.prototype.equals=function equals(b){if(!Buffer.isBuffer(b))throw new TypeError("Argument must be a Buffer");if(this===b)return true;return Buffer.compare(this,b)===0};Buffer.prototype.inspect=function inspect(){var str="";var max=exports.INSPECT_MAX_BYTES;str=this.toString("hex",0,max).replace(/(.{2})/g,"$1 ").trim();if(this.length>max)str+=" ... ";return"<Buffer "+str+">"};Buffer.prototype.compare=function compare(target,start,end,thisStart,thisEnd){if(isInstance(target,Uint8Array)){target=Buffer.from(target,target.offset,target.byteLength)}if(!Buffer.isBuffer(target)){throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. '+"Received type "+typeof target)}if(start===undefined){start=0}if(end===undefined){end=target?target.length:0}if(thisStart===undefined){thisStart=0}if(thisEnd===undefined){thisEnd=this.length}if(start<0||end>target.length||thisStart<0||thisEnd>this.length){throw new RangeError("out of range index")}if(thisStart>=thisEnd&&start>=end){return 0}if(thisStart>=thisEnd){return-1}if(start>=end){return 1}start>>>=0;end>>>=0;thisStart>>>=0;thisEnd>>>=0;if(this===target)return 0;var x=thisEnd-thisStart;var y=end-start;var len=Math.min(x,y);var thisCopy=this.slice(thisStart,thisEnd);var targetCopy=target.slice(start,end);for(var i=0;i<len;++i){if(thisCopy[i]!==targetCopy[i]){x=thisCopy[i];y=targetCopy[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(buffer.length===0)return-1;if(typeof byteOffset==="string"){encoding=byteOffset;byteOffset=0}else if(byteOffset>2147483647){byteOffset=2147483647}else if(byteOffset<-2147483648){byteOffset=-2147483648}byteOffset=+byteOffset;if(numberIsNaN(byteOffset)){byteOffset=dir?0:buffer.length-1}if(byteOffset<0)byteOffset=buffer.length+byteOffset;if(byteOffset>=buffer.length){if(dir)return-1;else byteOffset=buffer.length-1}else if(byteOffset<0){if(dir)byteOffset=0;else return-1}if(typeof val==="string"){val=Buffer.from(val,encoding)}if(Buffer.isBuffer(val)){if(val.length===0){return-1}return arrayIndexOf(buffer,val,byteOffset,encoding,dir)}else if(typeof val==="number"){val=val&255;if(typeof Uint8Array.prototype.indexOf==="function"){if(dir){return Uint8Array.prototype.indexOf.call(buffer,val,byteOffset)}else{return Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset)}}return arrayIndexOf(buffer,[val],byteOffset,encoding,dir)}throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var indexSize=1;var arrLength=arr.length;var valLength=val.length;if(encoding!==undefined){encoding=String(encoding).toLowerCase();if(encoding==="ucs2"||encoding==="ucs-2"||encoding==="utf16le"||encoding==="utf-16le"){if(arr.length<2||val.length<2){return-1}indexSize=2;arrLength/=2;valLength/=2;byteOffset/=2}}function read(buf,i){if(indexSize===1){return buf[i]}else{return buf.readUInt16BE(i*indexSize)}}var i;if(dir){var foundIndex=-1;for(i=byteOffset;i<arrLength;i++){if(read(arr,i)===read(val,foundIndex===-1?0:i-foundIndex)){if(foundIndex===-1)foundIndex=i;if(i-foundIndex+1===valLength)return foundIndex*indexSize}else{if(foundIndex!==-1)i-=i-foundIndex;foundIndex=-1}}}else{if(byteOffset+valLength>arrLength)byteOffset=arrLength-valLength;for(i=byteOffset;i>=0;i--){var found=true;for(var j=0;j<valLength;j++){if(read(arr,i+j)!==read(val,j)){found=false;break}}if(found)return i}}return-1}Buffer.prototype.includes=function includes(val,byteOffset,encoding){return this.indexOf(val,byteOffset,encoding)!==-1};Buffer.prototype.indexOf=function indexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,true)};Buffer.prototype.lastIndexOf=function lastIndexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,false)};function hexWrite(buf,string,offset,length){offset=Number(offset)||0;var remaining=buf.length-offset;if(!length){length=remaining}else{length=Number(length);if(length>remaining){length=remaining}}var strLen=string.length;if(length>strLen/2){length=strLen/2}for(var i=0;i<length;++i){var parsed=parseInt(string.substr(i*2,2),16);if(numberIsNaN(parsed))return i;buf[offset+i]=parsed}return i}function utf8Write(buf,string,offset,length){return blitBuffer(utf8ToBytes(string,buf.length-offset),buf,offset,length)}function asciiWrite(buf,string,offset,length){return blitBuffer(asciiToBytes(string),buf,offset,length)}function latin1Write(buf,string,offset,length){return asciiWrite(buf,string,offset,length)}function base64Write(buf,string,offset,length){return blitBuffer(base64ToBytes(string),buf,offset,length)}function ucs2Write(buf,string,offset,length){return blitBuffer(utf16leToBytes(string,buf.length-offset),buf,offset,length)}Buffer.prototype.write=function write(string,offset,length,encoding){if(offset===undefined){encoding="utf8";length=this.length;offset=0}else if(length===undefined&&typeof offset==="string"){encoding=offset;length=this.length;offset=0}else if(isFinite(offset)){offset=offset>>>0;if(isFinite(length)){length=length>>>0;if(encoding===undefined)encoding="utf8"}else{encoding=length;length=undefined}}else{throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported")}var remaining=this.length-offset;if(length===undefined||length>remaining)length=remaining;if(string.length>0&&(length<0||offset<0)||offset>this.length){throw new RangeError("Attempt to write outside buffer bounds")}if(!encoding)encoding="utf8";var loweredCase=false;for(;;){switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase();loweredCase=true}}};Buffer.prototype.toJSON=function toJSON(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(buf,start,end){if(start===0&&end===buf.length){return base64.fromByteArray(buf)}else{return base64.fromByteArray(buf.slice(start,end))}}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);var res=[];var i=start;while(i<end){var firstByte=buf[i];var codePoint=null;var bytesPerSequence=firstByte>239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end){var secondByte,thirdByte,fourthByte,tempCodePoint;switch(bytesPerSequence){case 1:if(firstByte<128){codePoint=firstByte}break;case 2:secondByte=buf[i+1];if((secondByte&192)===128){tempCodePoint=(firstByte&31)<<6|secondByte&63;if(tempCodePoint>127){codePoint=tempCodePoint}}break;case 3:secondByte=buf[i+1];thirdByte=buf[i+2];if((secondByte&192)===128&&(thirdByte&192)===128){tempCodePoint=(firstByte&15)<<12|(secondByte&63)<<6|thirdByte&63;if(tempCodePoint>2047&&(tempCodePoint<55296||tempCodePoint>57343)){codePoint=tempCodePoint}}break;case 4:secondByte=buf[i+1];thirdByte=buf[i+2];fourthByte=buf[i+3];if((secondByte&192)===128&&(thirdByte&192)===128&&(fourthByte&192)===128){tempCodePoint=(firstByte&15)<<18|(secondByte&63)<<12|(thirdByte&63)<<6|fourthByte&63;if(tempCodePoint>65535&&tempCodePoint<1114112){codePoint=tempCodePoint}}}}if(codePoint===null){codePoint=65533;bytesPerSequence=1}else if(codePoint>65535){codePoint-=65536;res.push(codePoint>>>10&1023|55296);codePoint=56320|codePoint&1023}res.push(codePoint);i+=bytesPerSequence}return decodeCodePointsArray(res)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH){return String.fromCharCode.apply(String,codePoints)}var res="";var i=0;while(i<len){res+=String.fromCharCode.apply(String,codePoints.slice(i,i+=MAX_ARGUMENTS_LENGTH))}return res}function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i]&127)}return ret}function latin1Slice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i])}return ret}function hexSlice(buf,start,end){var len=buf.length;if(!start||start<0)start=0;if(!end||end<0||end>len)end=len;var out="";for(var i=start;i<end;++i){out+=toHex(buf[i])}return out}function utf16leSlice(buf,start,end){var bytes=buf.slice(start,end);var res="";for(var i=0;i<bytes.length;i+=2){res+=String.fromCharCode(bytes[i]+bytes[i+1]*256)}return res}Buffer.prototype.slice=function slice(start,end){var len=this.length;start=~~start;end=end===undefined?len:~~end;if(start<0){start+=len;if(start<0)start=0}else if(start>len){start=len}if(end<0){end+=len;if(end<0)end=0}else if(end>len){end=len}if(end<start)end=start;var newBuf=this.subarray(start,end);newBuf.__proto__=Buffer.prototype;return newBuf};function checkOffset(offset,ext,length){if(offset%1!==0||offset<0)throw new RangeError("offset is not uint");if(offset+ext>length)throw new RangeError("Trying to access beyond buffer length")}Buffer.prototype.readUIntLE=function readUIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}return val};Buffer.prototype.readUIntBE=function readUIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){checkOffset(offset,byteLength,this.length)}var val=this[offset+--byteLength];var mul=1;while(byteLength>0&&(mul*=256)){val+=this[offset+--byteLength]*mul}return val};Buffer.prototype.readUInt8=function readUInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);return this[offset]};Buffer.prototype.readUInt16LE=function readUInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]|this[offset+1]<<8};Buffer.prototype.readUInt16BE=function readUInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]<<8|this[offset+1]};Buffer.prototype.readUInt32LE=function readUInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+this[offset+3]*16777216};Buffer.prototype.readUInt32BE=function readUInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]*16777216+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])};Buffer.prototype.readIntLE=function readIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readIntBE=function readIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var i=byteLength;var mul=1;var val=this[offset+--i];while(i>0&&(mul*=256)){val+=this[offset+--i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readInt8=function readInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);if(!(this[offset]&128))return this[offset];return(255-this[offset]+1)*-1};Buffer.prototype.readInt16LE=function readInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt16BE=function readInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt32LE=function readInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24};Buffer.prototype.readInt32BE=function readInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]};Buffer.prototype.readFloatLE=function readFloatLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,true,23,4)};Buffer.prototype.readFloatBE=function readFloatBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,false,23,4)};Buffer.prototype.readDoubleLE=function readDoubleLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,true,52,8)};Buffer.prototype.readDoubleBE=function readDoubleBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,false,52,8)};function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||value<min)throw new RangeError('"value" argument is out of bounds');if(offset+ext>buf.length)throw new RangeError("Index out of range")}Buffer.prototype.writeUIntLE=function writeUIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var mul=1;var i=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUIntBE=function writeUIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var i=byteLength-1;var mul=1;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUInt8=function writeUInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,255,0);this[offset]=value&255;return offset+1};Buffer.prototype.writeUInt16LE=function writeUInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeUInt16BE=function writeUInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeUInt32LE=function writeUInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset+3]=value>>>24;this[offset+2]=value>>>16;this[offset+1]=value>>>8;this[offset]=value&255;return offset+4};Buffer.prototype.writeUInt32BE=function writeUInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};Buffer.prototype.writeIntLE=function writeIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0;var mul=1;var sub=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){if(value<0&&sub===0&&this[offset+i-1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeIntBE=function writeIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1;var mul=1;var sub=0;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){if(value<0&&sub===0&&this[offset+i+1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeInt8=function writeInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,127,-128);if(value<0)value=255+value+1;this[offset]=value&255;return offset+1};Buffer.prototype.writeInt16LE=function writeInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeInt16BE=function writeInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeInt32LE=function writeInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);this[offset]=value&255;this[offset+1]=value>>>8;this[offset+2]=value>>>16;this[offset+3]=value>>>24;return offset+4};Buffer.prototype.writeInt32BE=function writeInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);if(value<0)value=4294967295+value+1;this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,4,34028234663852886e22,-34028234663852886e22)}ieee754.write(buf,value,offset,littleEndian,23,4);return offset+4}Buffer.prototype.writeFloatLE=function writeFloatLE(value,offset,noAssert){return writeFloat(this,value,offset,true,noAssert)};Buffer.prototype.writeFloatBE=function writeFloatBE(value,offset,noAssert){return writeFloat(this,value,offset,false,noAssert)};function writeDouble(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,8,17976931348623157e292,-17976931348623157e292)}ieee754.write(buf,value,offset,littleEndian,52,8);return offset+8}Buffer.prototype.writeDoubleLE=function writeDoubleLE(value,offset,noAssert){return writeDouble(this,value,offset,true,noAssert)};Buffer.prototype.writeDoubleBE=function writeDoubleBE(value,offset,noAssert){return writeDouble(this,value,offset,false,noAssert)};Buffer.prototype.copy=function copy(target,targetStart,start,end){if(!Buffer.isBuffer(target))throw new TypeError("argument should be a Buffer");if(!start)start=0;if(!end&&end!==0)end=this.length;if(targetStart>=target.length)targetStart=target.length;if(!targetStart)targetStart=0;if(end>0&&end<start)end=start;if(end===start)return 0;if(target.length===0||this.length===0)return 0;if(targetStart<0){throw new RangeError("targetStart out of bounds")}if(start<0||start>=this.length)throw new RangeError("Index out of range");if(end<0)throw new RangeError("sourceEnd out of bounds");if(end>this.length)end=this.length;if(target.length-targetStart<end-start){end=target.length-targetStart+start}var len=end-start;if(this===target&&typeof Uint8Array.prototype.copyWithin==="function"){this.copyWithin(targetStart,start,end)}else if(this===target&&start<targetStart&&targetStart<end){for(var i=len-1;i>=0;--i){target[i+targetStart]=this[i+start]}}else{Uint8Array.prototype.set.call(target,this.subarray(start,end),targetStart)}return len};Buffer.prototype.fill=function fill(val,start,end,encoding){if(typeof val==="string"){if(typeof start==="string"){encoding=start;start=0;end=this.length}else if(typeof end==="string"){encoding=end;end=this.length}if(encoding!==undefined&&typeof encoding!=="string"){throw new TypeError("encoding must be a string")}if(typeof encoding==="string"&&!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}if(val.length===1){var code=val.charCodeAt(0);if(encoding==="utf8"&&code<128||encoding==="latin1"){val=code}}}else if(typeof val==="number"){val=val&255}if(start<0||this.length<start||this.length<end){throw new RangeError("Out of range index")}if(end<=start){return this}start=start>>>0;end=end===undefined?this.length:end>>>0;if(!val)val=0;var i;if(typeof val==="number"){for(i=start;i<end;++i){this[i]=val}}else{var bytes=Buffer.isBuffer(val)?val:Buffer.from(val,encoding);var len=bytes.length;if(len===0){throw new TypeError('The value "'+val+'" is invalid for argument "value"')}for(i=0;i<end-start;++i){this[i+start]=bytes[i%len]}}return this};var INVALID_BASE64_RE=/[^+/0-9A-Za-z-_]/g;function base64clean(str){str=str.split("=")[0];str=str.trim().replace(INVALID_BASE64_RE,"");if(str.length<2)return"";while(str.length%4!==0){str=str+"="}return str}function toHex(n){if(n<16)return"0"+n.toString(16);return n.toString(16)}function utf8ToBytes(string,units){units=units||Infinity;var codePoint;var length=string.length;var leadSurrogate=null;var bytes=[];for(var i=0;i<length;++i){codePoint=string.charCodeAt(i);if(codePoint>55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){if((units-=3)>-1)bytes.push(239,191,189);continue}else if(i+1===length){if((units-=3)>-1)bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){if((units-=3)>-1)bytes.push(239,191,189);leadSurrogate=codePoint;continue}codePoint=(leadSurrogate-55296<<10|codePoint-56320)+65536}else if(leadSurrogate){if((units-=3)>-1)bytes.push(239,191,189)}leadSurrogate=null;if(codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,codePoint&63|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,codePoint&63|128)}else if(codePoint<1114112){if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,codePoint&63|128)}else{throw new Error("Invalid code point")}}return bytes}function asciiToBytes(str){var byteArray=[];for(var i=0;i<str.length;++i){byteArray.push(str.charCodeAt(i)&255)}return byteArray}function utf16leToBytes(str,units){var c,hi,lo;var byteArray=[];for(var i=0;i<str.length;++i){if((units-=2)<0)break;c=str.charCodeAt(i);hi=c>>8;lo=c%256;byteArray.push(lo);byteArray.push(hi)}return byteArray}function base64ToBytes(str){return base64.toByteArray(base64clean(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i<length;++i){if(i+offset>=dst.length||i>=src.length)break;dst[i+offset]=src[i]}return i}function isInstance(obj,type){return obj instanceof type||obj!=null&&obj.constructor!=null&&obj.constructor.name!=null&&obj.constructor.name===type.name}function numberIsNaN(obj){return obj!==obj}}).call(this,require("buffer").Buffer)},{"base64-js":4,buffer:6,ieee754:9}],7:[function(require,module,exports){(function(Buffer){function isArray(arg){if(Array.isArray){return Array.isArray(arg)}return objectToString(arg)==="[object Array]"}exports.isArray=isArray;function isBoolean(arg){return typeof arg==="boolean"}exports.isBoolean=isBoolean;function isNull(arg){return arg===null}exports.isNull=isNull;function isNullOrUndefined(arg){return arg==null}exports.isNullOrUndefined=isNullOrUndefined;function isNumber(arg){return typeof arg==="number"}exports.isNumber=isNumber;function isString(arg){return typeof arg==="string"}exports.isString=isString;function isSymbol(arg){return typeof arg==="symbol"}exports.isSymbol=isSymbol;function isUndefined(arg){return arg===void 0}exports.isUndefined=isUndefined;function isRegExp(re){return objectToString(re)==="[object RegExp]"}exports.isRegExp=isRegExp;function isObject(arg){return typeof arg==="object"&&arg!==null}exports.isObject=isObject;function isDate(d){return objectToString(d)==="[object Date]"}exports.isDate=isDate;function isError(e){return objectToString(e)==="[object Error]"||e instanceof Error}exports.isError=isError;function isFunction(arg){return typeof arg==="function"}exports.isFunction=isFunction;function isPrimitive(arg){return arg===null||typeof arg==="boolean"||typeof arg==="number"||typeof arg==="string"||typeof arg==="symbol"||typeof arg==="undefined"}exports.isPrimitive=isPrimitive;exports.isBuffer=Buffer.isBuffer;function objectToString(o){return Object.prototype.toString.call(o)}}).call(this,{isBuffer:require("../../is-buffer/index.js")})},{"../../is-buffer/index.js":11}],8:[function(require,module,exports){var objectCreate=Object.create||objectCreatePolyfill;var objectKeys=Object.keys||objectKeysPolyfill;var bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){if(!this._events||!Object.prototype.hasOwnProperty.call(this,"_events")){this._events=objectCreate(null);this._eventsCount=0}this._maxListeners=this._maxListeners||undefined}module.exports=EventEmitter;EventEmitter.EventEmitter=EventEmitter;EventEmitter.prototype._events=undefined;EventEmitter.prototype._maxListeners=undefined;var defaultMaxListeners=10;var hasDefineProperty;try{var o={};if(Object.defineProperty)Object.defineProperty(o,"x",{value:0});hasDefineProperty=o.x===0}catch(err){hasDefineProperty=false}if(hasDefineProperty){Object.defineProperty(EventEmitter,"defaultMaxListeners",{enumerable:true,get:function(){return defaultMaxListeners},set:function(arg){if(typeof arg!=="number"||arg<0||arg!==arg)throw new TypeError('"defaultMaxListeners" must be a positive number');defaultMaxListeners=arg}})}else{EventEmitter.defaultMaxListeners=defaultMaxListeners}EventEmitter.prototype.setMaxListeners=function setMaxListeners(n){if(typeof n!=="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');this._maxListeners=n;return this};function $getMaxListeners(that){if(that._maxListeners===undefined)return EventEmitter.defaultMaxListeners;return that._maxListeners}EventEmitter.prototype.getMaxListeners=function getMaxListeners(){return $getMaxListeners(this)};function emitNone(handler,isFn,self){if(isFn)handler.call(self);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self)}}function emitOne(handler,isFn,self,arg1){if(isFn)handler.call(self,arg1);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1)}}function emitTwo(handler,isFn,self,arg1,arg2){if(isFn)handler.call(self,arg1,arg2);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2)}}function emitThree(handler,isFn,self,arg1,arg2,arg3){if(isFn)handler.call(self,arg1,arg2,arg3);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2,arg3)}}function emitMany(handler,isFn,self,args){if(isFn)handler.apply(self,args);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].apply(self,args)}}EventEmitter.prototype.emit=function emit(type){var er,handler,len,args,i,events;var doError=type==="error";events=this._events;if(events)doError=doError&&events.error==null;else if(!doError)return false;if(doError){if(arguments.length>1)er=arguments[1];if(er instanceof Error){throw er}else{var err=new Error('Unhandled "error" event. ('+er+")");err.context=er;throw err}return false}handler=events[type];if(!handler)return false;var isFn=typeof handler==="function";len=arguments.length;switch(len){case 1:emitNone(handler,isFn,this);break;case 2:emitOne(handler,isFn,this,arguments[1]);break;case 3:emitTwo(handler,isFn,this,arguments[1],arguments[2]);break;case 4:emitThree(handler,isFn,this,arguments[1],arguments[2],arguments[3]);break;default:args=new Array(len-1);for(i=1;i<len;i++)args[i-1]=arguments[i];emitMany(handler,isFn,this,args)}return true};function _addListener(target,type,listener,prepend){var m;var events;var existing;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=target._events;if(!events){events=target._events=objectCreate(null);target._eventsCount=0}else{if(events.newListener){target.emit("newListener",type,listener.listener?listener.listener:listener);events=target._events}existing=events[type]}if(!existing){existing=events[type]=listener;++target._eventsCount}else{if(typeof existing==="function"){existing=events[type]=prepend?[listener,existing]:[existing,listener]}else{if(prepend){existing.unshift(listener)}else{existing.push(listener)}}if(!existing.warned){m=$getMaxListeners(target);if(m&&m>0&&existing.length>m){existing.warned=true;var w=new Error("Possible EventEmitter memory leak detected. "+existing.length+' "'+String(type)+'" listeners '+"added. Use emitter.setMaxListeners() to "+"increase limit.");w.name="MaxListenersExceededWarning";w.emitter=target;w.type=type;w.count=existing.length;if(typeof console==="object"&&console.warn){console.warn("%s: %s",w.name,w.message)}}}}return target}EventEmitter.prototype.addListener=function addListener(type,listener){return _addListener(this,type,listener,false)};EventEmitter.prototype.on=EventEmitter.prototype.addListener;EventEmitter.prototype.prependListener=function prependListener(type,listener){return _addListener(this,type,listener,true)};function onceWrapper(){if(!this.fired){this.target.removeListener(this.type,this.wrapFn);this.fired=true;switch(arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:var args=new Array(arguments.length);for(var i=0;i<args.length;++i)args[i]=arguments[i];this.listener.apply(this.target,args)}}}function _onceWrap(target,type,listener){var state={fired:false,wrapFn:undefined,target:target,type:type,listener:listener};var wrapped=bind.call(onceWrapper,state);wrapped.listener=listener;state.wrapFn=wrapped;return wrapped}EventEmitter.prototype.once=function once(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.on(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.prependOnceListener=function prependOnceListener(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.prependListener(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.removeListener=function removeListener(type,listener){var list,events,position,i,originalListener;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=this._events;if(!events)return this;list=events[type];if(!list)return this;if(list===listener||list.listener===listener){if(--this._eventsCount===0)this._events=objectCreate(null);else{delete events[type];if(events.removeListener)this.emit("removeListener",type,list.listener||listener)}}else if(typeof list!=="function"){position=-1;for(i=list.length-1;i>=0;i--){if(list[i]===listener||list[i].listener===listener){originalListener=list[i].listener;position=i;break}}if(position<0)return this;if(position===0)list.shift();else spliceOne(list,position);if(list.length===1)events[type]=list[0];if(events.removeListener)this.emit("removeListener",type,originalListener||listener)}return this};EventEmitter.prototype.removeAllListeners=function removeAllListeners(type){var listeners,events,i;events=this._events;if(!events)return this;if(!events.removeListener){if(arguments.length===0){this._events=objectCreate(null);this._eventsCount=0}else if(events[type]){if(--this._eventsCount===0)this._events=objectCreate(null);else delete events[type]}return this}if(arguments.length===0){var keys=objectKeys(events);var key;for(i=0;i<keys.length;++i){key=keys[i];if(key==="removeListener")continue;this.removeAllListeners(key)}this.removeAllListeners("removeListener");this._events=objectCreate(null);this._eventsCount=0;return this}listeners=events[type];if(typeof listeners==="function"){this.removeListener(type,listeners)}else if(listeners){for(i=listeners.length-1;i>=0;i--){this.removeListener(type,listeners[i])}}return this};function _listeners(target,type,unwrap){var events=target._events;if(!events)return[];var evlistener=events[type];if(!evlistener)return[];if(typeof evlistener==="function")return unwrap?[evlistener.listener||evlistener]:[evlistener];return unwrap?unwrapListeners(evlistener):arrayClone(evlistener,evlistener.length)}EventEmitter.prototype.listeners=function listeners(type){return _listeners(this,type,true)};EventEmitter.prototype.rawListeners=function rawListeners(type){return _listeners(this,type,false)};EventEmitter.listenerCount=function(emitter,type){if(typeof emitter.listenerCount==="function"){return emitter.listenerCount(type)}else{return listenerCount.call(emitter,type)}};EventEmitter.prototype.listenerCount=listenerCount;function listenerCount(type){var events=this._events;if(events){var evlistener=events[type];if(typeof evlistener==="function"){return 1}else if(evlistener){return evlistener.length}}return 0}EventEmitter.prototype.eventNames=function eventNames(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(list,index){for(var i=index,k=i+1,n=list.length;k<n;i+=1,k+=1)list[i]=list[k];list.pop()}function arrayClone(arr,n){var copy=new Array(n);for(var i=0;i<n;++i)copy[i]=arr[i];return copy}function unwrapListeners(arr){var ret=new Array(arr.length);for(var i=0;i<ret.length;++i){ret[i]=arr[i].listener||arr[i]}return ret}function objectCreatePolyfill(proto){var F=function(){};F.prototype=proto;return new F}function objectKeysPolyfill(obj){var keys=[];for(var k in obj)if(Object.prototype.hasOwnProperty.call(obj,k)){keys.push(k)}return k}function functionBindPolyfill(context){var fn=this;return function(){return fn.apply(context,arguments)}}},{}],9:[function(require,module,exports){exports.read=function(buffer,offset,isLE,mLen,nBytes){var e,m;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var nBits=-7;var i=isLE?nBytes-1:0;var d=isLE?-1:1;var s=buffer[offset+i];i+=d;e=s&(1<<-nBits)-1;s>>=-nBits;nBits+=eLen;for(;nBits>0;e=e*256+buffer[offset+i],i+=d,nBits-=8){}m=e&(1<<-nBits)-1;e>>=-nBits;nBits+=mLen;for(;nBits>0;m=m*256+buffer[offset+i],i+=d,nBits-=8){}if(e===0){e=1-eBias}else if(e===eMax){return m?NaN:(s?-1:1)*Infinity}else{m=m+Math.pow(2,mLen);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)};exports.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var rt=mLen===23?Math.pow(2,-24)-Math.pow(2,-77):0;var i=isLE?0:nBytes-1;var d=isLE?1:-1;var s=value<0||value===0&&1/value<0?1:0;value=Math.abs(value);if(isNaN(value)||value===Infinity){m=isNaN(value)?1:0;e=eMax}else{e=Math.floor(Math.log(value)/Math.LN2);if(value*(c=Math.pow(2,-e))<1){e--;c*=2}if(e+eBias>=1){value+=rt/c}else{value+=rt*Math.pow(2,1-eBias)}if(value*c>=2){e++;c/=2}if(e+eBias>=eMax){m=0;e=eMax}else if(e+eBias>=1){m=(value*c-1)*Math.pow(2,mLen);e=e+eBias}else{m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen);e=0}}for(;mLen>=8;buffer[offset+i]=m&255,i+=d,m/=256,mLen-=8){}e=e<<mLen|m;eLen+=mLen;for(;eLen>0;buffer[offset+i]=e&255,i+=d,e/=256,eLen-=8){}buffer[offset+i-d]|=s*128}},{}],10:[function(require,module,exports){if(typeof Object.create==="function"){module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})}}}else{module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}}}},{}],11:[function(require,module,exports){module.exports=function(obj){return obj!=null&&(isBuffer(obj)||isSlowBuffer(obj)||!!obj._isBuffer)};function isBuffer(obj){return!!obj.constructor&&typeof obj.constructor.isBuffer==="function"&&obj.constructor.isBuffer(obj)}function isSlowBuffer(obj){return typeof obj.readFloatLE==="function"&&typeof obj.slice==="function"&&isBuffer(obj.slice(0,0))}},{}],12:[function(require,module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return toString.call(arr)=="[object Array]"}},{}],13:[function(require,module,exports){(function(process){"use strict";if(typeof process==="undefined"||!process.version||process.version.indexOf("v0.")===0||process.version.indexOf("v1.")===0&&process.version.indexOf("v1.8.")!==0){module.exports={nextTick:nextTick}}else{module.exports=process}function nextTick(fn,arg1,arg2,arg3){if(typeof fn!=="function"){throw new TypeError('"callback" argument must be a function')}var len=arguments.length;var args,i;switch(len){case 0:case 1:return process.nextTick(fn);case 2:return process.nextTick(function afterTickOne(){fn.call(null,arg1)});case 3:return process.nextTick(function afterTickTwo(){fn.call(null,arg1,arg2)});case 4:return process.nextTick(function afterTickThree(){fn.call(null,arg1,arg2,arg3)});default:args=new Array(len-1);i=0;while(i<args.length){args[i++]=arguments[i]}return process.nextTick(function afterTick(){fn.apply(null,args)})}}}).call(this,require("_process"))},{_process:14}],14:[function(require,module,exports){var process=module.exports={};var cachedSetTimeout;var cachedClearTimeout;function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}(function(){try{if(typeof setTimeout==="function"){cachedSetTimeout=setTimeout}else{cachedSetTimeout=defaultSetTimout}}catch(e){cachedSetTimeout=defaultSetTimout}try{if(typeof clearTimeout==="function"){cachedClearTimeout=clearTimeout}else{cachedClearTimeout=defaultClearTimeout}}catch(e){cachedClearTimeout=defaultClearTimeout}})();function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTimeout(fun,0)}if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout){cachedSetTimeout=setTimeout;return setTimeout(fun,0)}try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){return clearTimeout(marker)}if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout){cachedClearTimeout=clearTimeout;return clearTimeout(marker)}try{return cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}var queue=[];var draining=false;var currentQueue;var queueIndex=-1;function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=false;if(currentQueue.length){queue=currentQueue.concat(queue)}else{queueIndex=-1}if(queue.length){drainQueue()}}function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUpNextTick);draining=true;var len=queue.length;while(len){currentQueue=queue;queue=[];while(++queueIndex<len){if(currentQueue){currentQueue[queueIndex].run()}}queueIndex=-1;len=queue.length}currentQueue=null;draining=false;runClearTimeout(timeout)}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1){for(var i=1;i<arguments.length;i++){args[i-1]=arguments[i]}}queue.push(new Item(fun,args));if(queue.length===1&&!draining){runTimeout(drainQueue)}};function Item(fun,array){this.fun=fun;this.array=array}Item.prototype.run=function(){this.fun.apply(null,this.array)};process.title="browser";process.browser=true;process.env={};process.argv=[];process.version="";process.versions={};function noop(){}process.on=noop;process.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=noop;process.emit=noop;process.prependListener=noop;process.prependOnceListener=noop;process.listeners=function(name){return[]};process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")};process.umask=function(){return 0}},{}],15:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:6}],16:[function(require,module,exports){module.exports=Stream;var EE=require("events").EventEmitter;var inherits=require("inherits");inherits(Stream,EE);Stream.Readable=require("readable-stream/readable.js");Stream.Writable=require("readable-stream/writable.js");Stream.Duplex=require("readable-stream/duplex.js");Stream.Transform=require("readable-stream/transform.js");Stream.PassThrough=require("readable-stream/passthrough.js");Stream.Stream=Stream;function Stream(){EE.call(this)}Stream.prototype.pipe=function(dest,options){var source=this;function ondata(chunk){if(dest.writable){if(false===dest.write(chunk)&&source.pause){source.pause()}}}source.on("data",ondata);function ondrain(){if(source.readable&&source.resume){source.resume()}}dest.on("drain",ondrain);if(!dest._isStdio&&(!options||options.end!==false)){source.on("end",onend);source.on("close",onclose)}var didOnEnd=false;function onend(){if(didOnEnd)return;didOnEnd=true;dest.end()}function onclose(){if(didOnEnd)return;didOnEnd=true;if(typeof dest.destroy==="function")dest.destroy()}function onerror(er){cleanup();if(EE.listenerCount(this,"error")===0){throw er}}source.on("error",onerror);dest.on("error",onerror);function cleanup(){source.removeListener("data",ondata);dest.removeListener("drain",ondrain);source.removeListener("end",onend);source.removeListener("close",onclose);source.removeListener("error",onerror);dest.removeListener("error",onerror);source.removeListener("end",cleanup);source.removeListener("close",cleanup);dest.removeListener("close",cleanup)}source.on("end",cleanup);source.on("close",cleanup);dest.on("close",cleanup);dest.emit("pipe",source);return dest}},{events:8,inherits:10,"readable-stream/duplex.js":17,"readable-stream/passthrough.js":26,"readable-stream/readable.js":27,"readable-stream/transform.js":28,"readable-stream/writable.js":29}],17:[function(require,module,exports){module.exports=require("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":18}],18:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){keys.push(key)}return keys};module.exports=Duplex;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var Readable=require("./_stream_readable");var Writable=require("./_stream_writable");util.inherits(Duplex,Readable);{var keys=objectKeys(Writable.prototype);for(var v=0;v<keys.length;v++){var method=keys[v];if(!Duplex.prototype[method])Duplex.prototype[method]=Writable.prototype[method]}}function Duplex(options){if(!(this instanceof Duplex))return new Duplex(options);Readable.call(this,options);Writable.call(this,options);if(options&&options.readable===false)this.readable=false;if(options&&options.writable===false)this.writable=false;this.allowHalfOpen=true;if(options&&options.allowHalfOpen===false)this.allowHalfOpen=false;this.once("end",onend)}Object.defineProperty(Duplex.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function onend(){if(this.allowHalfOpen||this._writableState.ended)return;pna.nextTick(onEndNT,this)}function onEndNT(self){self.end()}Object.defineProperty(Duplex.prototype,"destroyed",{get:function(){if(this._readableState===undefined||this._writableState===undefined){return false}return this._readableState.destroyed&&this._writableState.destroyed},set:function(value){if(this._readableState===undefined||this._writableState===undefined){return}this._readableState.destroyed=value;this._writableState.destroyed=value}});Duplex.prototype._destroy=function(err,cb){this.push(null);this.end();pna.nextTick(cb,err)}},{"./_stream_readable":20,"./_stream_writable":22,"core-util-is":7,inherits:10,"process-nextick-args":13}],19:[function(require,module,exports){"use strict";module.exports=PassThrough;var Transform=require("./_stream_transform");var util=Object.create(require("core-util-is"));util.inherits=require("inherits");util.inherits(PassThrough,Transform);function PassThrough(options){if(!(this instanceof PassThrough))return new PassThrough(options);Transform.call(this,options)}PassThrough.prototype._transform=function(chunk,encoding,cb){cb(null,chunk)}},{"./_stream_transform":21,"core-util-is":7,inherits:10}],20:[function(require,module,exports){(function(process,global){"use strict";var pna=require("process-nextick-args");module.exports=Readable;var isArray=require("isarray");var Duplex;Readable.ReadableState=ReadableState;var EE=require("events").EventEmitter;var EElistenerCount=function(emitter,type){return emitter.listeners(type).length};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var debugUtil=require("util");var debug=void 0;if(debugUtil&&debugUtil.debuglog){debug=debugUtil.debuglog("stream")}else{debug=function(){}}var BufferList=require("./internal/streams/BufferList");var destroyImpl=require("./internal/streams/destroy");var StringDecoder;util.inherits(Readable,Stream);var kProxyEvents=["error","close","destroy","pause","resume"];function prependListener(emitter,event,fn){if(typeof emitter.prependListener==="function")return emitter.prependListener(event,fn);if(!emitter._events||!emitter._events[event])emitter.on(event,fn);else if(isArray(emitter._events[event]))emitter._events[event].unshift(fn);else emitter._events[event]=[fn,emitter._events[event]]}function ReadableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.readableObjectMode;var hwm=options.highWaterMark;var readableHwm=options.readableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(readableHwm||readableHwm===0))this.highWaterMark=readableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.buffer=new BufferList;this.length=0;this.pipes=null;this.pipesCount=0;this.flowing=null;this.ended=false;this.endEmitted=false;this.reading=false;this.sync=true;this.needReadable=false;this.emittedReadable=false;this.readableListening=false;this.resumeScheduled=false;this.destroyed=false;this.defaultEncoding=options.defaultEncoding||"utf8";this.awaitDrain=0;this.readingMore=false;this.decoder=null;this.encoding=null;if(options.encoding){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this.decoder=new StringDecoder(options.encoding);this.encoding=options.encoding}}function Readable(options){Duplex=Duplex||require("./_stream_duplex");if(!(this instanceof Readable))return new Readable(options);this._readableState=new ReadableState(options,this);this.readable=true;if(options){if(typeof options.read==="function")this._read=options.read;if(typeof options.destroy==="function")this._destroy=options.destroy}Stream.call(this)}Object.defineProperty(Readable.prototype,"destroyed",{get:function(){if(this._readableState===undefined){return false}return this._readableState.destroyed},set:function(value){if(!this._readableState){return}this._readableState.destroyed=value}});Readable.prototype.destroy=destroyImpl.destroy;Readable.prototype._undestroy=destroyImpl.undestroy;Readable.prototype._destroy=function(err,cb){this.push(null);cb(err)};Readable.prototype.push=function(chunk,encoding){var state=this._readableState;var skipChunkCheck;if(!state.objectMode){if(typeof chunk==="string"){encoding=encoding||state.defaultEncoding;if(encoding!==state.encoding){chunk=Buffer.from(chunk,encoding);encoding=""}skipChunkCheck=true}}else{skipChunkCheck=true}return readableAddChunk(this,chunk,encoding,false,skipChunkCheck)};Readable.prototype.unshift=function(chunk){return readableAddChunk(this,chunk,null,true,false)};function readableAddChunk(stream,chunk,encoding,addToFront,skipChunkCheck){var state=stream._readableState;if(chunk===null){state.reading=false;onEofChunk(stream,state)}else{var er;if(!skipChunkCheck)er=chunkInvalid(state,chunk);if(er){stream.emit("error",er)}else if(state.objectMode||chunk&&chunk.length>0){if(typeof chunk!=="string"&&!state.objectMode&&Object.getPrototypeOf(chunk)!==Buffer.prototype){chunk=_uint8ArrayToBuffer(chunk)}if(addToFront){if(state.endEmitted)stream.emit("error",new Error("stream.unshift() after end event"));else addChunk(stream,state,chunk,true)}else if(state.ended){stream.emit("error",new Error("stream.push() after EOF"))}else{state.reading=false;if(state.decoder&&!encoding){chunk=state.decoder.write(chunk);if(state.objectMode||chunk.length!==0)addChunk(stream,state,chunk,false);else maybeReadMore(stream,state)}else{addChunk(stream,state,chunk,false)}}}else if(!addToFront){state.reading=false}}return needMoreData(state)}function addChunk(stream,state,chunk,addToFront){if(state.flowing&&state.length===0&&!state.sync){stream.emit("data",chunk);stream.read(0)}else{state.length+=state.objectMode?1:chunk.length;if(addToFront)state.buffer.unshift(chunk);else state.buffer.push(chunk);if(state.needReadable)emitReadable(stream)}maybeReadMore(stream,state)}function chunkInvalid(state,chunk){var er;if(!_isUint8Array(chunk)&&typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}return er}function needMoreData(state){return!state.ended&&(state.needReadable||state.length<state.highWaterMark||state.length===0)}Readable.prototype.isPaused=function(){return this._readableState.flowing===false};Readable.prototype.setEncoding=function(enc){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this._readableState.decoder=new StringDecoder(enc);this._readableState.encoding=enc;return this};var MAX_HWM=8388608;function computeNewHighWaterMark(n){if(n>=MAX_HWM){n=MAX_HWM}else{n--;n|=n>>>1;n|=n>>>2;n|=n>>>4;n|=n>>>8;n|=n>>>16;n++}return n}function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)return 0;if(state.objectMode)return 1;if(n!==n){if(state.flowing&&state.length)return state.buffer.head.data.length;else return state.length}if(n>state.highWaterMark)state.highWaterMark=computeNewHighWaterMark(n);if(n<=state.length)return n;if(!state.ended){state.needReadable=true;return 0}return state.length}Readable.prototype.read=function(n){debug("read",n);n=parseInt(n,10);var state=this._readableState;var nOrig=n;if(n!==0)state.emittedReadable=false;if(n===0&&state.needReadable&&(state.length>=state.highWaterMark||state.ended)){debug("read: emitReadable",state.length,state.ended);if(state.length===0&&state.ended)endReadable(this);else emitReadable(this);return null}n=howMuchToRead(n,state);if(n===0&&state.ended){if(state.length===0)endReadable(this);return null}var doRead=state.needReadable;debug("need readable",doRead);if(state.length===0||state.length-n<state.highWaterMark){doRead=true;debug("length less than watermark",doRead)}if(state.ended||state.reading){doRead=false;debug("reading or ended",doRead)}else if(doRead){debug("do read");state.reading=true;state.sync=true;if(state.length===0)state.needReadable=true;this._read(state.highWaterMark);state.sync=false;if(!state.reading)n=howMuchToRead(nOrig,state)}var ret;if(n>0)ret=fromList(n,state);else ret=null;if(ret===null){state.needReadable=true;n=0}else{state.length-=n}if(state.length===0){if(!state.ended)state.needReadable=true;if(nOrig!==n&&state.ended)endReadable(this)}if(ret!==null)this.emit("data",ret);return ret};function onEofChunk(stream,state){if(state.ended)return;if(state.decoder){var chunk=state.decoder.end();if(chunk&&chunk.length){state.buffer.push(chunk);state.length+=state.objectMode?1:chunk.length}}state.ended=true;emitReadable(stream)}function emitReadable(stream){var state=stream._readableState;state.needReadable=false;if(!state.emittedReadable){debug("emitReadable",state.flowing);state.emittedReadable=true;if(state.sync)pna.nextTick(emitReadable_,stream);else emitReadable_(stream)}}function emitReadable_(stream){debug("emit readable");stream.emit("readable");flow(stream)}function maybeReadMore(stream,state){if(!state.readingMore){state.readingMore=true;pna.nextTick(maybeReadMore_,stream,state)}}function maybeReadMore_(stream,state){var len=state.length;while(!state.reading&&!state.flowing&&!state.ended&&state.length<state.highWaterMark){debug("maybeReadMore read 0");stream.read(0);if(len===state.length)break;else len=state.length}state.readingMore=false}Readable.prototype._read=function(n){this.emit("error",new Error("_read() is not implemented"))};Readable.prototype.pipe=function(dest,pipeOpts){var src=this;var state=this._readableState;switch(state.pipesCount){case 0:state.pipes=dest;break;case 1:state.pipes=[state.pipes,dest];break;default:state.pipes.push(dest);break}state.pipesCount+=1;debug("pipe count=%d opts=%j",state.pipesCount,pipeOpts);var doEnd=(!pipeOpts||pipeOpts.end!==false)&&dest!==process.stdout&&dest!==process.stderr;var endFn=doEnd?onend:unpipe;if(state.endEmitted)pna.nextTick(endFn);else src.once("end",endFn);dest.on("unpipe",onunpipe);function onunpipe(readable,unpipeInfo){debug("onunpipe");if(readable===src){if(unpipeInfo&&unpipeInfo.hasUnpiped===false){unpipeInfo.hasUnpiped=true;cleanup()}}}function onend(){debug("onend");dest.end()}var ondrain=pipeOnDrain(src);dest.on("drain",ondrain);var cleanedUp=false;function cleanup(){debug("cleanup");dest.removeListener("close",onclose);dest.removeListener("finish",onfinish);dest.removeListener("drain",ondrain);dest.removeListener("error",onerror);dest.removeListener("unpipe",onunpipe);src.removeListener("end",onend);src.removeListener("end",unpipe);src.removeListener("data",ondata);cleanedUp=true;if(state.awaitDrain&&(!dest._writableState||dest._writableState.needDrain))ondrain()}var increasedAwaitDrain=false;src.on("data",ondata);function ondata(chunk){debug("ondata");increasedAwaitDrain=false;var ret=dest.write(chunk);if(false===ret&&!increasedAwaitDrain){if((state.pipesCount===1&&state.pipes===dest||state.pipesCount>1&&indexOf(state.pipes,dest)!==-1)&&!cleanedUp){debug("false write response, pause",src._readableState.awaitDrain);src._readableState.awaitDrain++;increasedAwaitDrain=true}src.pause()}}function onerror(er){debug("onerror",er);unpipe();dest.removeListener("error",onerror);if(EElistenerCount(dest,"error")===0)dest.emit("error",er)}prependListener(dest,"error",onerror);function onclose(){dest.removeListener("finish",onfinish);unpipe()}dest.once("close",onclose);function onfinish(){debug("onfinish");dest.removeListener("close",onclose);unpipe()}dest.once("finish",onfinish);function unpipe(){debug("unpipe");src.unpipe(dest)}dest.emit("pipe",src);if(!state.flowing){debug("pipe resume");src.resume()}return dest};function pipeOnDrain(src){return function(){var state=src._readableState;debug("pipeOnDrain",state.awaitDrain);if(state.awaitDrain)state.awaitDrain--;if(state.awaitDrain===0&&EElistenerCount(src,"data")){state.flowing=true;flow(src)}}}Readable.prototype.unpipe=function(dest){var state=this._readableState;var unpipeInfo={hasUnpiped:false};if(state.pipesCount===0)return this;if(state.pipesCount===1){if(dest&&dest!==state.pipes)return this;if(!dest)dest=state.pipes;state.pipes=null;state.pipesCount=0;state.flowing=false;if(dest)dest.emit("unpipe",this,unpipeInfo);return this}if(!dest){var dests=state.pipes;var len=state.pipesCount;state.pipes=null;state.pipesCount=0;state.flowing=false;for(var i=0;i<len;i++){dests[i].emit("unpipe",this,unpipeInfo)}return this}var index=indexOf(state.pipes,dest);if(index===-1)return this;state.pipes.splice(index,1);state.pipesCount-=1;if(state.pipesCount===1)state.pipes=state.pipes[0];dest.emit("unpipe",this,unpipeInfo);return this};Readable.prototype.on=function(ev,fn){var res=Stream.prototype.on.call(this,ev,fn);if(ev==="data"){if(this._readableState.flowing!==false)this.resume()}else if(ev==="readable"){var state=this._readableState;if(!state.endEmitted&&!state.readableListening){state.readableListening=state.needReadable=true;state.emittedReadable=false;if(!state.reading){pna.nextTick(nReadingNextTick,this)}else if(state.length){emitReadable(this)}}}return res};Readable.prototype.addListener=Readable.prototype.on;function nReadingNextTick(self){debug("readable nexttick read 0");self.read(0)}Readable.prototype.resume=function(){var state=this._readableState;if(!state.flowing){debug("resume");state.flowing=true;resume(this,state)}return this};function resume(stream,state){if(!state.resumeScheduled){state.resumeScheduled=true;pna.nextTick(resume_,stream,state)}}function resume_(stream,state){if(!state.reading){debug("resume read 0");stream.read(0)}state.resumeScheduled=false;state.awaitDrain=0;stream.emit("resume");flow(stream);if(state.flowing&&!state.reading)stream.read(0)}Readable.prototype.pause=function(){debug("call pause flowing=%j",this._readableState.flowing);if(false!==this._readableState.flowing){debug("pause");this._readableState.flowing=false;this.emit("pause")}return this};function flow(stream){var state=stream._readableState;debug("flow",state.flowing);while(state.flowing&&stream.read()!==null){}}Readable.prototype.wrap=function(stream){var _this=this;var state=this._readableState;var paused=false;stream.on("end",function(){debug("wrapped end");if(state.decoder&&!state.ended){var chunk=state.decoder.end();if(chunk&&chunk.length)_this.push(chunk)}_this.push(null)});stream.on("data",function(chunk){debug("wrapped data");if(state.decoder)chunk=state.decoder.write(chunk);if(state.objectMode&&(chunk===null||chunk===undefined))return;else if(!state.objectMode&&(!chunk||!chunk.length))return;var ret=_this.push(chunk);if(!ret){paused=true;stream.pause()}});for(var i in stream){if(this[i]===undefined&&typeof stream[i]==="function"){this[i]=function(method){return function(){return stream[method].apply(stream,arguments)}}(i)}}for(var n=0;n<kProxyEvents.length;n++){stream.on(kProxyEvents[n],this.emit.bind(this,kProxyEvents[n]))}this._read=function(n){debug("wrapped _read",n);if(paused){paused=false;stream.resume()}};return this};Object.defineProperty(Readable.prototype,"readableHighWaterMark",{enumerable:false,get:function(){return this._readableState.highWaterMark}});Readable._fromList=fromList;function fromList(n,state){if(state.length===0)return null;var ret;if(state.objectMode)ret=state.buffer.shift();else if(!n||n>=state.length){if(state.decoder)ret=state.buffer.join("");else if(state.buffer.length===1)ret=state.buffer.head.data;else ret=state.buffer.concat(state.length);state.buffer.clear()}else{ret=fromListPartial(n,state.buffer,state.decoder)}return ret}function fromListPartial(n,list,hasStrings){var ret;if(n<list.head.data.length){ret=list.head.data.slice(0,n);list.head.data=list.head.data.slice(n)}else if(n===list.head.data.length){ret=list.shift()}else{ret=hasStrings?copyFromBufferString(n,list):copyFromBuffer(n,list)}return ret}function copyFromBufferString(n,list){var p=list.head;var c=1;var ret=p.data;n-=ret.length;while(p=p.next){var str=p.data;var nb=n>str.length?str.length:n;if(nb===str.length)ret+=str;else ret+=str.slice(0,n);n-=nb;if(n===0){if(nb===str.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=str.slice(nb)}break}++c}list.length-=c;return ret}function copyFromBuffer(n,list){var ret=Buffer.allocUnsafe(n);var p=list.head;var c=1;p.data.copy(ret);n-=p.data.length;while(p=p.next){var buf=p.data;var nb=n>buf.length?buf.length:n;buf.copy(ret,ret.length-n,0,nb);n-=nb;if(n===0){if(nb===buf.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=buf.slice(nb)}break}++c}list.length-=c;return ret}function endReadable(stream){var state=stream._readableState;if(state.length>0)throw new Error('"endReadable()" called on non-empty stream');if(!state.endEmitted){state.ended=true;pna.nextTick(endReadableNT,state,stream)}}function endReadableNT(state,stream){if(!state.endEmitted&&state.length===0){state.endEmitted=true;stream.readable=false;stream.emit("end")}}function indexOf(xs,x){for(var i=0,l=xs.length;i<l;i++){if(xs[i]===x)return i}return-1}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./_stream_duplex":18,"./internal/streams/BufferList":23,"./internal/streams/destroy":24,"./internal/streams/stream":25,_process:14,"core-util-is":7,events:8,inherits:10,isarray:12,"process-nextick-args":13,"safe-buffer":15,"string_decoder/":30,util:5}],21:[function(require,module,exports){"use strict";module.exports=Transform;var Duplex=require("./_stream_duplex");var util=Object.create(require("core-util-is"));util.inherits=require("inherits");util.inherits(Transform,Duplex);function afterTransform(er,data){var ts=this._transformState;ts.transforming=false;var cb=ts.writecb;if(!cb){return this.emit("error",new Error("write callback called multiple times"))}ts.writechunk=null;ts.writecb=null;if(data!=null)this.push(data);cb(er);var rs=this._readableState;rs.reading=false;if(rs.needReadable||rs.length<rs.highWaterMark){this._read(rs.highWaterMark)}}function Transform(options){if(!(this instanceof Transform))return new Transform(options);Duplex.call(this,options);this._transformState={afterTransform:afterTransform.bind(this),needTransform:false,transforming:false,writecb:null,writechunk:null,writeencoding:null};this._readableState.needReadable=true;this._readableState.sync=false;if(options){if(typeof options.transform==="function")this._transform=options.transform;if(typeof options.flush==="function")this._flush=options.flush}this.on("prefinish",prefinish)}function prefinish(){var _this=this;if(typeof this._flush==="function"){this._flush(function(er,data){done(_this,er,data)})}else{done(this,null,null)}}Transform.prototype.push=function(chunk,encoding){this._transformState.needTransform=false;return Duplex.prototype.push.call(this,chunk,encoding)};Transform.prototype._transform=function(chunk,encoding,cb){throw new Error("_transform() is not implemented")};Transform.prototype._write=function(chunk,encoding,cb){var ts=this._transformState;ts.writecb=cb;ts.writechunk=chunk;ts.writeencoding=encoding;if(!ts.transforming){var rs=this._readableState;if(ts.needTransform||rs.needReadable||rs.length<rs.highWaterMark)this._read(rs.highWaterMark)}};Transform.prototype._read=function(n){var ts=this._transformState;if(ts.writechunk!==null&&ts.writecb&&!ts.transforming){ts.transforming=true;this._transform(ts.writechunk,ts.writeencoding,ts.afterTransform)}else{ts.needTransform=true}};Transform.prototype._destroy=function(err,cb){var _this2=this;Duplex.prototype._destroy.call(this,err,function(err2){cb(err2);_this2.emit("close")})};function done(stream,er,data){if(er)return stream.emit("error",er);if(data!=null)stream.push(data);if(stream._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(stream._transformState.transforming)throw new Error("Calling transform done when still transforming");return stream.push(null)}},{"./_stream_duplex":18,"core-util-is":7,inherits:10}],22:[function(require,module,exports){(function(process,global,setImmediate){"use strict";var pna=require("process-nextick-args");module.exports=Writable;function WriteReq(chunk,encoding,cb){this.chunk=chunk;this.encoding=encoding;this.callback=cb;this.next=null}function CorkedRequest(state){var _this=this;this.next=null;this.entry=null;this.finish=function(){onCorkedFinish(_this,state)}}var asyncWrite=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:pna.nextTick;var Duplex;Writable.WritableState=WritableState;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var destroyImpl=require("./internal/streams/destroy");util.inherits(Writable,Stream);function nop(){}function WritableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.writableObjectMode;var hwm=options.highWaterMark;var writableHwm=options.writableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(writableHwm||writableHwm===0))this.highWaterMark=writableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var noDecode=options.decodeStrings===false;this.decodeStrings=!noDecode;this.defaultEncoding=options.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(er){onwrite(stream,er)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var current=this.bufferedRequest;var out=[];while(current){out.push(current);current=current.next}return out};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:internalUtil.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(_){}})();var realHasInstance;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){realHasInstance=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function(object){if(realHasInstance.call(this,object))return true;if(this!==Writable)return false;return object&&object._writableState instanceof WritableState}})}else{realHasInstance=function(object){return object instanceof this}}function Writable(options){Duplex=Duplex||require("./_stream_duplex");if(!realHasInstance.call(Writable,this)&&!(this instanceof Duplex)){return new Writable(options)}this._writableState=new WritableState(options,this);this.writable=true;if(options){if(typeof options.write==="function")this._write=options.write;if(typeof options.writev==="function")this._writev=options.writev;if(typeof options.destroy==="function")this._destroy=options.destroy;if(typeof options.final==="function")this._final=options.final}Stream.call(this)}Writable.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function writeAfterEnd(stream,cb){var er=new Error("write after end");stream.emit("error",er);pna.nextTick(cb,er)}function validChunk(stream,state,chunk,cb){var valid=true;var er=false;if(chunk===null){er=new TypeError("May not write null values to stream")}else if(typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}if(er){stream.emit("error",er);pna.nextTick(cb,er);valid=false}return valid}Writable.prototype.write=function(chunk,encoding,cb){var state=this._writableState;var ret=false;var isBuf=!state.objectMode&&_isUint8Array(chunk);if(isBuf&&!Buffer.isBuffer(chunk)){chunk=_uint8ArrayToBuffer(chunk)}if(typeof encoding==="function"){cb=encoding;encoding=null}if(isBuf)encoding="buffer";else if(!encoding)encoding=state.defaultEncoding;if(typeof cb!=="function")cb=nop;if(state.ended)writeAfterEnd(this,cb);else if(isBuf||validChunk(this,state,chunk,cb)){state.pendingcb++;ret=writeOrBuffer(this,state,isBuf,chunk,encoding,cb)}return ret};Writable.prototype.cork=function(){var state=this._writableState;state.corked++};Writable.prototype.uncork=function(){var state=this._writableState;if(state.corked){state.corked--;if(!state.writing&&!state.corked&&!state.finished&&!state.bufferProcessing&&state.bufferedRequest)clearBuffer(this,state)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(encoding){if(typeof encoding==="string")encoding=encoding.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((encoding+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+encoding);this._writableState.defaultEncoding=encoding;return this};function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.decodeStrings!==false&&typeof chunk==="string"){chunk=Buffer.from(chunk,encoding)}return chunk}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function writeOrBuffer(stream,state,isBuf,chunk,encoding,cb){if(!isBuf){var newChunk=decodeChunk(state,chunk,encoding);if(chunk!==newChunk){isBuf=true;encoding="buffer";chunk=newChunk}}var len=state.objectMode?1:chunk.length;state.length+=len;var ret=state.length<state.highWaterMark;if(!ret)state.needDrain=true;if(state.writing||state.corked){var last=state.lastBufferedRequest;state.lastBufferedRequest={chunk:chunk,encoding:encoding,isBuf:isBuf,callback:cb,next:null};if(last){last.next=state.lastBufferedRequest}else{state.bufferedRequest=state.lastBufferedRequest}state.bufferedRequestCount+=1}else{doWrite(stream,state,false,len,chunk,encoding,cb)}return ret}function doWrite(stream,state,writev,len,chunk,encoding,cb){state.writelen=len;state.writecb=cb;state.writing=true;state.sync=true;if(writev)stream._writev(chunk,state.onwrite);else stream._write(chunk,encoding,state.onwrite);state.sync=false}function onwriteError(stream,state,sync,er,cb){--state.pendingcb;if(sync){pna.nextTick(cb,er);pna.nextTick(finishMaybe,stream,state);stream._writableState.errorEmitted=true;stream.emit("error",er)}else{cb(er);stream._writableState.errorEmitted=true;stream.emit("error",er);finishMaybe(stream,state)}}function onwriteStateUpdate(state){state.writing=false;state.writecb=null;state.length-=state.writelen;state.writelen=0}function onwrite(stream,er){var state=stream._writableState;var sync=state.sync;var cb=state.writecb;onwriteStateUpdate(state);if(er)onwriteError(stream,state,sync,er,cb);else{var finished=needFinish(state);if(!finished&&!state.corked&&!state.bufferProcessing&&state.bufferedRequest){clearBuffer(stream,state)}if(sync){asyncWrite(afterWrite,stream,state,finished,cb)}else{afterWrite(stream,state,finished,cb)}}}function afterWrite(stream,state,finished,cb){if(!finished)onwriteDrain(stream,state);state.pendingcb--;cb();finishMaybe(stream,state)}function onwriteDrain(stream,state){if(state.length===0&&state.needDrain){state.needDrain=false;stream.emit("drain")}}function clearBuffer(stream,state){state.bufferProcessing=true;var entry=state.bufferedRequest;if(stream._writev&&entry&&entry.next){var l=state.bufferedRequestCount;var buffer=new Array(l);var holder=state.corkedRequestsFree;holder.entry=entry;var count=0;var allBuffers=true;while(entry){buffer[count]=entry;if(!entry.isBuf)allBuffers=false;entry=entry.next;count+=1}buffer.allBuffers=allBuffers;doWrite(stream,state,true,state.length,buffer,"",holder.finish);state.pendingcb++;state.lastBufferedRequest=null;if(holder.next){state.corkedRequestsFree=holder.next;holder.next=null}else{state.corkedRequestsFree=new CorkedRequest(state)}state.bufferedRequestCount=0}else{while(entry){var chunk=entry.chunk;var encoding=entry.encoding;var cb=entry.callback;var len=state.objectMode?1:chunk.length;doWrite(stream,state,false,len,chunk,encoding,cb);entry=entry.next;state.bufferedRequestCount--;if(state.writing){break}}if(entry===null)state.lastBufferedRequest=null}state.bufferedRequest=entry;state.bufferProcessing=false}Writable.prototype._write=function(chunk,encoding,cb){cb(new Error("_write() is not implemented"))};Writable.prototype._writev=null;Writable.prototype.end=function(chunk,encoding,cb){var state=this._writableState;if(typeof chunk==="function"){cb=chunk;chunk=null;encoding=null}else if(typeof encoding==="function"){cb=encoding;encoding=null}if(chunk!==null&&chunk!==undefined)this.write(chunk,encoding);if(state.corked){state.corked=1;this.uncork()}if(!state.ending&&!state.finished)endWritable(this,state,cb)};function needFinish(state){return state.ending&&state.length===0&&state.bufferedRequest===null&&!state.finished&&!state.writing}function callFinal(stream,state){stream._final(function(err){state.pendingcb--;if(err){stream.emit("error",err)}state.prefinished=true;stream.emit("prefinish");finishMaybe(stream,state)})}function prefinish(stream,state){if(!state.prefinished&&!state.finalCalled){if(typeof stream._final==="function"){state.pendingcb++;state.finalCalled=true;pna.nextTick(callFinal,stream,state)}else{state.prefinished=true;stream.emit("prefinish")}}}function finishMaybe(stream,state){var need=needFinish(state);if(need){prefinish(stream,state);if(state.pendingcb===0){state.finished=true;stream.emit("finish")}}return need}function endWritable(stream,state,cb){state.ending=true;finishMaybe(stream,state);if(cb){if(state.finished)pna.nextTick(cb);else stream.once("finish",cb)}state.ended=true;stream.writable=false}function onCorkedFinish(corkReq,state,err){var entry=corkReq.entry;corkReq.entry=null;while(entry){var cb=entry.callback;state.pendingcb--;cb(err);entry=entry.next}if(state.corkedRequestsFree){state.corkedRequestsFree.next=corkReq}else{state.corkedRequestsFree=corkReq}}Object.defineProperty(Writable.prototype,"destroyed",{get:function(){if(this._writableState===undefined){return false}return this._writableState.destroyed},set:function(value){if(!this._writableState){return}this._writableState.destroyed=value}});Writable.prototype.destroy=destroyImpl.destroy;Writable.prototype._undestroy=destroyImpl.undestroy;Writable.prototype._destroy=function(err,cb){this.end();cb(err)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("timers").setImmediate)},{"./_stream_duplex":18,"./internal/streams/destroy":24,"./internal/streams/stream":25,_process:14,"core-util-is":7,inherits:10,"process-nextick-args":13,"safe-buffer":15,timers:32,"util-deprecate":33}],23:[function(require,module,exports){"use strict";function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}var Buffer=require("safe-buffer").Buffer;var util=require("util");function copyBuffer(src,target,offset){src.copy(target,offset)}module.exports=function(){function BufferList(){_classCallCheck(this,BufferList);this.head=null;this.tail=null;this.length=0}BufferList.prototype.push=function push(v){var entry={data:v,next:null};if(this.length>0)this.tail.next=entry;else this.head=entry;this.tail=entry;++this.length};BufferList.prototype.unshift=function unshift(v){var entry={data:v,next:this.head};if(this.length===0)this.tail=entry;this.head=entry;++this.length};BufferList.prototype.shift=function shift(){if(this.length===0)return;var ret=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return ret};BufferList.prototype.clear=function clear(){this.head=this.tail=null;this.length=0};BufferList.prototype.join=function join(s){if(this.length===0)return"";var p=this.head;var ret=""+p.data;while(p=p.next){ret+=s+p.data}return ret};BufferList.prototype.concat=function concat(n){if(this.length===0)return Buffer.alloc(0);if(this.length===1)return this.head.data;var ret=Buffer.allocUnsafe(n>>>0);var p=this.head;var i=0;while(p){copyBuffer(p.data,ret,i);i+=p.data.length;p=p.next}return ret};return BufferList}();if(util&&util.inspect&&util.inspect.custom){module.exports.prototype[util.inspect.custom]=function(){var obj=util.inspect({length:this.length});return this.constructor.name+" "+obj}}},{"safe-buffer":15,util:5}],24:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");function destroy(err,cb){var _this=this;var readableDestroyed=this._readableState&&this._readableState.destroyed;var writableDestroyed=this._writableState&&this._writableState.destroyed;if(readableDestroyed||writableDestroyed){if(cb){cb(err)}else if(err&&(!this._writableState||!this._writableState.errorEmitted)){pna.nextTick(emitErrorNT,this,err)}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(err||null,function(err){if(!cb&&err){pna.nextTick(emitErrorNT,_this,err);if(_this._writableState){_this._writableState.errorEmitted=true}}else if(cb){cb(err)}});return this}function undestroy(){if(this._readableState){this._readableState.destroyed=false;this._readableState.reading=false;this._readableState.ended=false;this._readableState.endEmitted=false}if(this._writableState){this._writableState.destroyed=false;this._writableState.ended=false;this._writableState.ending=false;this._writableState.finished=false;this._writableState.errorEmitted=false}}function emitErrorNT(self,err){self.emit("error",err)}module.exports={destroy:destroy,undestroy:undestroy}},{"process-nextick-args":13}],25:[function(require,module,exports){module.exports=require("events").EventEmitter},{events:8}],26:[function(require,module,exports){module.exports=require("./readable").PassThrough},{"./readable":27}],27:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js");exports.Stream=exports;exports.Readable=exports;exports.Writable=require("./lib/_stream_writable.js");exports.Duplex=require("./lib/_stream_duplex.js");exports.Transform=require("./lib/_stream_transform.js");exports.PassThrough=require("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":18,"./lib/_stream_passthrough.js":19,"./lib/_stream_readable.js":20,"./lib/_stream_transform.js":21,"./lib/_stream_writable.js":22}],28:[function(require,module,exports){module.exports=require("./readable").Transform},{"./readable":27}],29:[function(require,module,exports){module.exports=require("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":22}],30:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer;var isEncoding=Buffer.isEncoding||function(encoding){encoding=""+encoding;switch(encoding&&encoding.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return true;default:return false}};function _normalizeEncoding(enc){if(!enc)return"utf8";var retried;while(true){switch(enc){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return enc;default:if(retried)return;enc=(""+enc).toLowerCase();retried=true}}}function normalizeEncoding(enc){var nenc=_normalizeEncoding(enc);if(typeof nenc!=="string"&&(Buffer.isEncoding===isEncoding||!isEncoding(enc)))throw new Error("Unknown encoding: "+enc);return nenc||enc}exports.StringDecoder=StringDecoder;function StringDecoder(encoding){this.encoding=normalizeEncoding(encoding);var nb;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;nb=4;break;case"utf8":this.fillLast=utf8FillLast;nb=4;break;case"base64":this.text=base64Text;this.end=base64End;nb=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=Buffer.allocUnsafe(nb)}StringDecoder.prototype.write=function(buf){if(buf.length===0)return"";var r;var i;if(this.lastNeed){r=this.fillLast(buf);if(r===undefined)return"";i=this.lastNeed;this.lastNeed=0}else{i=0}if(i<buf.length)return r?r+this.text(buf,i):this.text(buf,i);return r||""};StringDecoder.prototype.end=utf8End;StringDecoder.prototype.text=utf8Text;StringDecoder.prototype.fillLast=function(buf){if(this.lastNeed<=buf.length){buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,buf.length);this.lastNeed-=buf.length};function utf8CheckByte(byte){if(byte<=127)return 0;else if(byte>>5===6)return 2;else if(byte>>4===14)return 3;else if(byte>>3===30)return 4;return byte>>6===2?-1:-2}function utf8CheckIncomplete(self,buf,i){var j=buf.length-1;if(j<i)return 0;var nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-1;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-2;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0){if(nb===2)nb=0;else self.lastNeed=nb-3}return nb}return 0}function utf8CheckExtraBytes(self,buf,p){if((buf[0]&192)!==128){self.lastNeed=0;return"�"}if(self.lastNeed>1&&buf.length>1){if((buf[1]&192)!==128){self.lastNeed=1;return"�"}if(self.lastNeed>2&&buf.length>2){if((buf[2]&192)!==128){self.lastNeed=2;return"�"}}}}function utf8FillLast(buf){var p=this.lastTotal-this.lastNeed;var r=utf8CheckExtraBytes(this,buf,p);if(r!==undefined)return r;if(this.lastNeed<=buf.length){buf.copy(this.lastChar,p,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,p,0,buf.length);this.lastNeed-=buf.length}function utf8Text(buf,i){var total=utf8CheckIncomplete(this,buf,i);if(!this.lastNeed)return buf.toString("utf8",i);this.lastTotal=total;var end=buf.length-(total-this.lastNeed);buf.copy(this.lastChar,0,end);return buf.toString("utf8",i,end)}function utf8End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+"�";return r}function utf16Text(buf,i){if((buf.length-i)%2===0){var r=buf.toString("utf16le",i);if(r){var c=r.charCodeAt(r.length-1);if(c>=55296&&c<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1];return r.slice(0,-1)}}return r}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=buf[buf.length-1];return buf.toString("utf16le",i,buf.length-1)}function utf16End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed){var end=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,end)}return r}function base64Text(buf,i){var n=(buf.length-i)%3;if(n===0)return buf.toString("base64",i);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=buf[buf.length-1]}else{this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1]}return buf.toString("base64",i,buf.length-n)}function base64End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+this.lastChar.toString("base64",0,3-this.lastNeed);return r}function simpleWrite(buf){return buf.toString(this.encoding)}function simpleEnd(buf){return buf&&buf.length?this.write(buf):""}},{"safe-buffer":15}],31:[function(require,module,exports){(function(process){var Stream=require("stream");exports=module.exports=through;through.through=through;function through(write,end,opts){write=write||function(data){this.queue(data)};end=end||function(){this.queue(null)};var ended=false,destroyed=false,buffer=[],_ended=false;var stream=new Stream;stream.readable=stream.writable=true;stream.paused=false;stream.autoDestroy=!(opts&&opts.autoDestroy===false);stream.write=function(data){write.call(this,data);return!stream.paused};function drain(){while(buffer.length&&!stream.paused){var data=buffer.shift();if(null===data)return stream.emit("end");else stream.emit("data",data)}}stream.queue=stream.push=function(data){if(_ended)return stream;if(data===null)_ended=true;buffer.push(data);drain();return stream};stream.on("end",function(){stream.readable=false;if(!stream.writable&&stream.autoDestroy)process.nextTick(function(){stream.destroy()})});function _end(){stream.writable=false;end.call(stream);if(!stream.readable&&stream.autoDestroy)stream.destroy()}stream.end=function(data){if(ended)return;ended=true;if(arguments.length)stream.write(data);_end();return stream};stream.destroy=function(){if(destroyed)return;destroyed=true;ended=true;buffer.length=0;stream.writable=stream.readable=false;stream.emit("close");return stream};stream.pause=function(){if(stream.paused)return;stream.paused=true;return stream};stream.resume=function(){if(stream.paused){stream.paused=false;stream.emit("resume")}drain();if(!stream.paused)stream.emit("drain");return stream};return stream}}).call(this,require("_process"))},{_process:14,stream:16}],32:[function(require,module,exports){(function(setImmediate,clearImmediate){var nextTick=require("process/browser.js").nextTick;var apply=Function.prototype.apply;var slice=Array.prototype.slice;var immediateIds={};var nextImmediateId=0;exports.setTimeout=function(){return new Timeout(apply.call(setTimeout,window,arguments),clearTimeout)};exports.setInterval=function(){return new Timeout(apply.call(setInterval,window,arguments),clearInterval)};exports.clearTimeout=exports.clearInterval=function(timeout){timeout.close()};function Timeout(id,clearFn){this._id=id;this._clearFn=clearFn}Timeout.prototype.unref=Timeout.prototype.ref=function(){};Timeout.prototype.close=function(){this._clearFn.call(window,this._id)};exports.enroll=function(item,msecs){clearTimeout(item._idleTimeoutId);item._idleTimeout=msecs};exports.unenroll=function(item){clearTimeout(item._idleTimeoutId);item._idleTimeout=-1};exports._unrefActive=exports.active=function(item){clearTimeout(item._idleTimeoutId);var msecs=item._idleTimeout;if(msecs>=0){item._idleTimeoutId=setTimeout(function onTimeout(){if(item._onTimeout)item._onTimeout()},msecs)}};exports.setImmediate=typeof setImmediate==="function"?setImmediate:function(fn){var id=nextImmediateId++;var args=arguments.length<2?false:slice.call(arguments,1);immediateIds[id]=true;nextTick(function onNextTick(){if(immediateIds[id]){if(args){fn.apply(null,args)}else{fn.call(null)}exports.clearImmediate(id)}});return id};exports.clearImmediate=typeof clearImmediate==="function"?clearImmediate:function(id){delete immediateIds[id]}}).call(this,require("timers").setImmediate,require("timers").clearImmediate)},{"process/browser.js":14,timers:32}],33:[function(require,module,exports){(function(global){module.exports=deprecate;function deprecate(fn,msg){if(config("noDeprecation")){return fn}var warned=false;function deprecated(){if(!warned){if(config("throwDeprecation")){throw new Error(msg)}else if(config("traceDeprecation")){console.trace(msg)}else{console.warn(msg)}warned=true}return fn.apply(this,arguments)}return deprecated}function config(name){try{if(!global.localStorage)return false}catch(_){return false}var val=global.localStorage[name];if(null==val)return false;return String(val).toLowerCase()==="true"}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[1])(1)});
+(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.unbzip2Stream=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r}()({1:[function(require,module,exports){(function(Buffer){var through=require("through");var bz2=require("./lib/bzip2");var bitIterator=require("./lib/bit_iterator");module.exports=unbzip2Stream;function unbzip2Stream(){var bufferQueue=[];var hasBytes=0;var blockSize=0;var broken=false;var done=false;var bitReader=null;var streamCRC=null;function decompressBlock(push){if(!blockSize){blockSize=bz2.header(bitReader);return true}else{var bufsize=1e5*blockSize;var buf=new Int32Array(bufsize);var chunk=[];var f=function(b){chunk.push(b)};streamCRC=bz2.decompress(bitReader,f,buf,bufsize,streamCRC);if(streamCRC===null){blockSize=0;return false}else{push(Buffer.from(chunk));return true}}}var outlength=0;function decompressAndQueue(stream){if(broken)return;try{return decompressBlock(function(d){stream.queue(d);if(d!==null){outlength+=d.length}else{}})}catch(e){stream.emit("error",e);broken=true;return false}}return through(function write(data){bufferQueue.push(data);hasBytes+=data.length;if(bitReader===null){bitReader=bitIterator(function(){return bufferQueue.shift()})}while(!broken&&hasBytes-bitReader.bytesRead+1>=(25e3+1e5*blockSize||4)){decompressAndQueue(this)}},function end(x){while(!broken&&hasBytes>bitReader.bytesRead){decompressAndQueue(this)}if(!broken){if(streamCRC!==null)stream.emit("error",new Error("input stream ended prematurely"));this.queue(null)}})}}).call(this,require("buffer").Buffer)},{"./lib/bit_iterator":2,"./lib/bzip2":3,buffer:6,through:31}],2:[function(require,module,exports){var BITMASK=[0,1,3,7,15,31,63,127,255];module.exports=function bitIterator(nextBuffer){var bit=0,byte=0;var bytes=nextBuffer();var f=function(n){if(n===null&&bit!=0){bit=0;byte++;return}var result=0;while(n>0){if(byte>=bytes.length){byte=0;bytes=nextBuffer()}var left=8-bit;if(bit===0&&n>0)f.bytesRead++;if(n>=left){result<<=left;result|=BITMASK[left]&bytes[byte++];bit=0;n-=left}else{result<<=n;result|=(bytes[byte]&BITMASK[n]<<8-n-bit)>>8-n-bit;bit+=n;n=0}}return result};f.bytesRead=0;return f}},{}],3:[function(require,module,exports){function Bzip2Error(message){this.name="Bzip2Error";this.message=message;this.stack=(new Error).stack}Bzip2Error.prototype=new Error;var message={Error:function(message){throw new Bzip2Error(message)}};var bzip2={};bzip2.Bzip2Error=Bzip2Error;bzip2.crcTable=[0,79764919,159529838,222504665,319059676,398814059,445009330,507990021,638119352,583659535,797628118,726387553,890018660,835552979,1015980042,944750013,1276238704,1221641927,1167319070,1095957929,1595256236,1540665371,1452775106,1381403509,1780037320,1859660671,1671105958,1733955601,2031960084,2111593891,1889500026,1952343757,2552477408,2632100695,2443283854,2506133561,2334638140,2414271883,2191915858,2254759653,3190512472,3135915759,3081330742,3009969537,2905550212,2850959411,2762807018,2691435357,3560074640,3505614887,3719321342,3648080713,3342211916,3287746299,3467911202,3396681109,4063920168,4143685023,4223187782,4286162673,3779000052,3858754371,3904687514,3967668269,881225847,809987520,1023691545,969234094,662832811,591600412,771767749,717299826,311336399,374308984,453813921,533576470,25881363,88864420,134795389,214552010,2023205639,2086057648,1897238633,1976864222,1804852699,1867694188,1645340341,1724971778,1587496639,1516133128,1461550545,1406951526,1302016099,1230646740,1142491917,1087903418,2896545431,2825181984,2770861561,2716262478,3215044683,3143675388,3055782693,3001194130,2326604591,2389456536,2200899649,2280525302,2578013683,2640855108,2418763421,2498394922,3769900519,3832873040,3912640137,3992402750,4088425275,4151408268,4197601365,4277358050,3334271071,3263032808,3476998961,3422541446,3585640067,3514407732,3694837229,3640369242,1762451694,1842216281,1619975040,1682949687,2047383090,2127137669,1938468188,2001449195,1325665622,1271206113,1183200824,1111960463,1543535498,1489069629,1434599652,1363369299,622672798,568075817,748617968,677256519,907627842,853037301,1067152940,995781531,51762726,131386257,177728840,240578815,269590778,349224269,429104020,491947555,4046411278,4126034873,4172115296,4234965207,3794477266,3874110821,3953728444,4016571915,3609705398,3555108353,3735388376,3664026991,3290680682,3236090077,3449943556,3378572211,3174993278,3120533705,3032266256,2961025959,2923101090,2868635157,2813903052,2742672763,2604032198,2683796849,2461293480,2524268063,2284983834,2364738477,2175806836,2238787779,1569362073,1498123566,1409854455,1355396672,1317987909,1246755826,1192025387,1137557660,2072149281,2135122070,1912620623,1992383480,1753615357,1816598090,1627664531,1707420964,295390185,358241886,404320391,483945776,43990325,106832002,186451547,266083308,932423249,861060070,1041341759,986742920,613929101,542559546,756411363,701822548,3316196985,3244833742,3425377559,3370778784,3601682597,3530312978,3744426955,3689838204,3819031489,3881883254,3928223919,4007849240,4037393693,4100235434,4180117107,4259748804,2310601993,2373574846,2151335527,2231098320,2596047829,2659030626,2470359227,2550115596,2947551409,2876312838,2788305887,2733848168,3165939309,3094707162,3040238851,2985771188];bzip2.array=function(bytes){var bit=0,byte=0;var BITMASK=[0,1,3,7,15,31,63,127,255];return function(n){var result=0;while(n>0){var left=8-bit;if(n>=left){result<<=left;result|=BITMASK[left]&bytes[byte++];bit=0;n-=left}else{result<<=n;result|=(bytes[byte]&BITMASK[n]<<8-n-bit)>>8-n-bit;bit+=n;n=0}}return result}};bzip2.simple=function(srcbuffer,stream){var bits=bzip2.array(srcbuffer);var size=bzip2.header(bits);var ret=false;var bufsize=1e5*size;var buf=new Int32Array(bufsize);do{ret=bzip2.decompress(bits,stream,buf,bufsize)}while(!ret)};bzip2.header=function(bits){this.byteCount=new Int32Array(256);this.symToByte=new Uint8Array(256);this.mtfSymbol=new Int32Array(256);this.selectors=new Uint8Array(32768);if(bits(8*3)!=4348520)message.Error("No magic number found");var i=bits(8)-48;if(i<1||i>9)message.Error("Not a BZIP archive");return i};bzip2.decompress=function(bits,stream,buf,bufsize,streamCRC){var MAX_HUFCODE_BITS=20;var MAX_SYMBOLS=258;var SYMBOL_RUNA=0;var SYMBOL_RUNB=1;var GROUP_SIZE=50;var crc=0^-1;for(var h="",i=0;i<6;i++)h+=bits(8).toString(16);if(h=="177245385090"){var finalCRC=bits(32)|0;if(finalCRC!==streamCRC)message.Error("Error in bzip2: crc32 do not match");bits(null);return null}if(h!="314159265359")message.Error("eek not valid bzip data");var crcblock=bits(32)|0;if(bits(1))message.Error("unsupported obsolete version");var origPtr=bits(24);if(origPtr>bufsize)message.Error("Initial position larger than buffer size");var t=bits(16);var symTotal=0;for(i=0;i<16;i++){if(t&1<<15-i){var k=bits(16);for(j=0;j<16;j++){if(k&1<<15-j){this.symToByte[symTotal++]=16*i+j}}}}var groupCount=bits(3);if(groupCount<2||groupCount>6)message.Error("another error");var nSelectors=bits(15);if(nSelectors==0)message.Error("meh");for(var i=0;i<groupCount;i++)this.mtfSymbol[i]=i;for(var i=0;i<nSelectors;i++){for(var j=0;bits(1);j++)if(j>=groupCount)message.Error("whoops another error");var uc=this.mtfSymbol[j];for(var k=j-1;k>=0;k--){this.mtfSymbol[k+1]=this.mtfSymbol[k]}this.mtfSymbol[0]=uc;this.selectors[i]=uc}var symCount=symTotal+2;var groups=[];var length=new Uint8Array(MAX_SYMBOLS),temp=new Uint16Array(MAX_HUFCODE_BITS+1);var hufGroup;for(var j=0;j<groupCount;j++){t=bits(5);for(var i=0;i<symCount;i++){while(true){if(t<1||t>MAX_HUFCODE_BITS)message.Error("I gave up a while ago on writing error messages");if(!bits(1))break;if(!bits(1))t++;else t--}length[i]=t}var minLen,maxLen;minLen=maxLen=length[0];for(var i=1;i<symCount;i++){if(length[i]>maxLen)maxLen=length[i];else if(length[i]<minLen)minLen=length[i]}hufGroup=groups[j]={};hufGroup.permute=new Int32Array(MAX_SYMBOLS);hufGroup.limit=new Int32Array(MAX_HUFCODE_BITS+1);hufGroup.base=new Int32Array(MAX_HUFCODE_BITS+1);hufGroup.minLen=minLen;hufGroup.maxLen=maxLen;var base=hufGroup.base.subarray(1);var limit=hufGroup.limit.subarray(1);var pp=0;for(var i=minLen;i<=maxLen;i++)for(var t=0;t<symCount;t++)if(length[t]==i)hufGroup.permute[pp++]=t;for(i=minLen;i<=maxLen;i++)temp[i]=limit[i]=0;for(i=0;i<symCount;i++)temp[length[i]]++;pp=t=0;for(i=minLen;i<maxLen;i++){pp+=temp[i];limit[i]=pp-1;pp<<=1;base[i+1]=pp-(t+=temp[i])}limit[maxLen]=pp+temp[maxLen]-1;base[minLen]=0}for(var i=0;i<256;i++){this.mtfSymbol[i]=i;this.byteCount[i]=0}var runPos,count,symCount,selector;runPos=count=symCount=selector=0;while(true){if(!symCount--){symCount=GROUP_SIZE-1;if(selector>=nSelectors)message.Error("meow i'm a kitty, that's an error");hufGroup=groups[this.selectors[selector++]];base=hufGroup.base.subarray(1);limit=hufGroup.limit.subarray(1)}i=hufGroup.minLen;j=bits(i);while(true){if(i>hufGroup.maxLen)message.Error("rawr i'm a dinosaur");if(j<=limit[i])break;i++;j=j<<1|bits(1)}j-=base[i];if(j<0||j>=MAX_SYMBOLS)message.Error("moo i'm a cow");var nextSym=hufGroup.permute[j];if(nextSym==SYMBOL_RUNA||nextSym==SYMBOL_RUNB){if(!runPos){runPos=1;t=0}if(nextSym==SYMBOL_RUNA)t+=runPos;else t+=2*runPos;runPos<<=1;continue}if(runPos){runPos=0;if(count+t>bufsize)message.Error("Boom.");uc=this.symToByte[this.mtfSymbol[0]];this.byteCount[uc]+=t;while(t--)buf[count++]=uc}if(nextSym>symTotal)break;if(count>=bufsize)message.Error("I can't think of anything. Error");i=nextSym-1;uc=this.mtfSymbol[i];for(var k=i-1;k>=0;k--){this.mtfSymbol[k+1]=this.mtfSymbol[k]}this.mtfSymbol[0]=uc;uc=this.symToByte[uc];this.byteCount[uc]++;buf[count++]=uc}if(origPtr<0||origPtr>=count)message.Error("I'm a monkey and I'm throwing something at someone, namely you");var j=0;for(var i=0;i<256;i++){k=j+this.byteCount[i];this.byteCount[i]=j;j=k}for(var i=0;i<count;i++){uc=buf[i]&255;buf[this.byteCount[uc]]|=i<<8;this.byteCount[uc]++}var pos=0,current=0,run=0;if(count){pos=buf[origPtr];current=pos&255;pos>>=8;run=-1}count=count;var copies,previous,outbyte;while(count){count--;previous=current;pos=buf[pos];current=pos&255;pos>>=8;if(run++==3){copies=current;outbyte=previous;current=-1}else{copies=1;outbyte=current}while(copies--){crc=(crc<<8^this.crcTable[(crc>>24^outbyte)&255])&4294967295;stream(outbyte)}if(current!=previous)run=0}crc=(crc^-1)>>>0;if((crc|0)!=(crcblock|0))message.Error("Error in bzip2: crc32 do not match");if(streamCRC===null)streamCRC=0;streamCRC=(crc^(streamCRC<<1|streamCRC>>>31))&4294967295;return streamCRC};module.exports=bzip2},{}],4:[function(require,module,exports){},{}],5:[function(require,module,exports){"use strict";exports.byteLength=byteLength;exports.toByteArray=toByteArray;exports.fromByteArray=fromByteArray;var lookup=[];var revLookup=[];var Arr=typeof Uint8Array!=="undefined"?Uint8Array:Array;var code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var i=0,len=code.length;i<len;++i){lookup[i]=code[i];revLookup[code.charCodeAt(i)]=i}revLookup["-".charCodeAt(0)]=62;revLookup["_".charCodeAt(0)]=63;function getLens(b64){var len=b64.length;if(len%4>0){throw new Error("Invalid string. Length must be a multiple of 4")}var validLen=b64.indexOf("=");if(validLen===-1)validLen=len;var placeHoldersLen=validLen===len?0:4-validLen%4;return[validLen,placeHoldersLen]}function byteLength(b64){var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function _byteLength(b64,validLen,placeHoldersLen){return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function toByteArray(b64){var tmp;var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];var arr=new Arr(_byteLength(b64,validLen,placeHoldersLen));var curByte=0;var len=placeHoldersLen>0?validLen-4:validLen;for(var i=0;i<len;i+=4){tmp=revLookup[b64.charCodeAt(i)]<<18|revLookup[b64.charCodeAt(i+1)]<<12|revLookup[b64.charCodeAt(i+2)]<<6|revLookup[b64.charCodeAt(i+3)];arr[curByte++]=tmp>>16&255;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}if(placeHoldersLen===2){tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4;arr[curByte++]=tmp&255}if(placeHoldersLen===1){tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}return arr}function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[num&63]}function encodeChunk(uint8,start,end){var tmp;var output=[];for(var i=start;i<end;i+=3){tmp=(uint8[i]<<16&16711680)+(uint8[i+1]<<8&65280)+(uint8[i+2]&255);output.push(tripletToBase64(tmp))}return output.join("")}function fromByteArray(uint8){var tmp;var len=uint8.length;var extraBytes=len%3;var parts=[];var maxChunkLength=16383;for(var i=0,len2=len-extraBytes;i<len2;i+=maxChunkLength){parts.push(encodeChunk(uint8,i,i+maxChunkLength>len2?len2:i+maxChunkLength))}if(extraBytes===1){tmp=uint8[len-1];parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")}else if(extraBytes===2){tmp=(uint8[len-2]<<8)+uint8[len-1];parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"=")}return parts.join("")}},{}],6:[function(require,module,exports){"use strict";var base64=require("base64-js");var ieee754=require("ieee754");exports.Buffer=Buffer;exports.SlowBuffer=SlowBuffer;exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;exports.kMaxLength=K_MAX_LENGTH;Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport();if(!Buffer.TYPED_ARRAY_SUPPORT&&typeof console!=="undefined"&&typeof console.error==="function"){console.error("This browser lacks typed array (Uint8Array) support which is required by "+"`buffer` v5.x. Use `buffer` v4.x if you require old browser support.")}function typedArraySupport(){try{var arr=new Uint8Array(1);arr.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}};return arr.foo()===42}catch(e){return false}}Object.defineProperty(Buffer.prototype,"parent",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.buffer}});Object.defineProperty(Buffer.prototype,"offset",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.byteOffset}});function createBuffer(length){if(length>K_MAX_LENGTH){throw new RangeError('The value "'+length+'" is invalid for option "size"')}var buf=new Uint8Array(length);buf.__proto__=Buffer.prototype;return buf}function Buffer(arg,encodingOrOffset,length){if(typeof arg==="number"){if(typeof encodingOrOffset==="string"){throw new TypeError('The "string" argument must be of type string. Received type number')}return allocUnsafe(arg)}return from(arg,encodingOrOffset,length)}if(typeof Symbol!=="undefined"&&Symbol.species!=null&&Buffer[Symbol.species]===Buffer){Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:true,enumerable:false,writable:false})}Buffer.poolSize=8192;function from(value,encodingOrOffset,length){if(typeof value==="string"){return fromString(value,encodingOrOffset)}if(ArrayBuffer.isView(value)){return fromArrayLike(value)}if(value==null){throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}if(isInstance(value,ArrayBuffer)||value&&isInstance(value.buffer,ArrayBuffer)){return fromArrayBuffer(value,encodingOrOffset,length)}if(typeof value==="number"){throw new TypeError('The "value" argument must not be of type number. Received type number')}var valueOf=value.valueOf&&value.valueOf();if(valueOf!=null&&valueOf!==value){return Buffer.from(valueOf,encodingOrOffset,length)}var b=fromObject(value);if(b)return b;if(typeof Symbol!=="undefined"&&Symbol.toPrimitive!=null&&typeof value[Symbol.toPrimitive]==="function"){return Buffer.from(value[Symbol.toPrimitive]("string"),encodingOrOffset,length)}throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}Buffer.from=function(value,encodingOrOffset,length){return from(value,encodingOrOffset,length)};Buffer.prototype.__proto__=Uint8Array.prototype;Buffer.__proto__=Uint8Array;function assertSize(size){if(typeof size!=="number"){throw new TypeError('"size" argument must be of type number')}else if(size<0){throw new RangeError('The value "'+size+'" is invalid for option "size"')}}function alloc(size,fill,encoding){assertSize(size);if(size<=0){return createBuffer(size)}if(fill!==undefined){return typeof encoding==="string"?createBuffer(size).fill(fill,encoding):createBuffer(size).fill(fill)}return createBuffer(size)}Buffer.alloc=function(size,fill,encoding){return alloc(size,fill,encoding)};function allocUnsafe(size){assertSize(size);return createBuffer(size<0?0:checked(size)|0)}Buffer.allocUnsafe=function(size){return allocUnsafe(size)};Buffer.allocUnsafeSlow=function(size){return allocUnsafe(size)};function fromString(string,encoding){if(typeof encoding!=="string"||encoding===""){encoding="utf8"}if(!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}var length=byteLength(string,encoding)|0;var buf=createBuffer(length);var actual=buf.write(string,encoding);if(actual!==length){buf=buf.slice(0,actual)}return buf}function fromArrayLike(array){var length=array.length<0?0:checked(array.length)|0;var buf=createBuffer(length);for(var i=0;i<length;i+=1){buf[i]=array[i]&255}return buf}function fromArrayBuffer(array,byteOffset,length){if(byteOffset<0||array.byteLength<byteOffset){throw new RangeError('"offset" is outside of buffer bounds')}if(array.byteLength<byteOffset+(length||0)){throw new RangeError('"length" is outside of buffer bounds')}var buf;if(byteOffset===undefined&&length===undefined){buf=new Uint8Array(array)}else if(length===undefined){buf=new Uint8Array(array,byteOffset)}else{buf=new Uint8Array(array,byteOffset,length)}buf.__proto__=Buffer.prototype;return buf}function fromObject(obj){if(Buffer.isBuffer(obj)){var len=checked(obj.length)|0;var buf=createBuffer(len);if(buf.length===0){return buf}obj.copy(buf,0,0,len);return buf}if(obj.length!==undefined){if(typeof obj.length!=="number"||numberIsNaN(obj.length)){return createBuffer(0)}return fromArrayLike(obj)}if(obj.type==="Buffer"&&Array.isArray(obj.data)){return fromArrayLike(obj.data)}}function checked(length){if(length>=K_MAX_LENGTH){throw new RangeError("Attempt to allocate Buffer larger than maximum "+"size: 0x"+K_MAX_LENGTH.toString(16)+" bytes")}return length|0}function SlowBuffer(length){if(+length!=length){length=0}return Buffer.alloc(+length)}Buffer.isBuffer=function isBuffer(b){return b!=null&&b._isBuffer===true&&b!==Buffer.prototype};Buffer.compare=function compare(a,b){if(isInstance(a,Uint8Array))a=Buffer.from(a,a.offset,a.byteLength);if(isInstance(b,Uint8Array))b=Buffer.from(b,b.offset,b.byteLength);if(!Buffer.isBuffer(a)||!Buffer.isBuffer(b)){throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array')}if(a===b)return 0;var x=a.length;var y=b.length;for(var i=0,len=Math.min(x,y);i<len;++i){if(a[i]!==b[i]){x=a[i];y=b[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};Buffer.isEncoding=function isEncoding(encoding){switch(String(encoding).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return true;default:return false}};Buffer.concat=function concat(list,length){if(!Array.isArray(list)){throw new TypeError('"list" argument must be an Array of Buffers')}if(list.length===0){return Buffer.alloc(0)}var i;if(length===undefined){length=0;for(i=0;i<list.length;++i){length+=list[i].length}}var buffer=Buffer.allocUnsafe(length);var pos=0;for(i=0;i<list.length;++i){var buf=list[i];if(isInstance(buf,Uint8Array)){buf=Buffer.from(buf)}if(!Buffer.isBuffer(buf)){throw new TypeError('"list" argument must be an Array of Buffers')}buf.copy(buffer,pos);pos+=buf.length}return buffer};function byteLength(string,encoding){if(Buffer.isBuffer(string)){return string.length}if(ArrayBuffer.isView(string)||isInstance(string,ArrayBuffer)){return string.byteLength}if(typeof string!=="string"){throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. '+"Received type "+typeof string)}var len=string.length;var mustMatch=arguments.length>2&&arguments[2]===true;if(!mustMatch&&len===0)return 0;var loweredCase=false;for(;;){switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return len*2;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase){return mustMatch?-1:utf8ToBytes(string).length}encoding=(""+encoding).toLowerCase();loweredCase=true}}}Buffer.byteLength=byteLength;function slowToString(encoding,start,end){var loweredCase=false;if(start===undefined||start<0){start=0}if(start>this.length){return""}if(end===undefined||end>this.length){end=this.length}if(end<=0){return""}end>>>=0;start>>>=0;if(end<=start){return""}if(!encoding)encoding="utf8";while(true){switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase();loweredCase=true}}}Buffer.prototype._isBuffer=true;function swap(b,n,m){var i=b[n];b[n]=b[m];b[m]=i}Buffer.prototype.swap16=function swap16(){var len=this.length;if(len%2!==0){throw new RangeError("Buffer size must be a multiple of 16-bits")}for(var i=0;i<len;i+=2){swap(this,i,i+1)}return this};Buffer.prototype.swap32=function swap32(){var len=this.length;if(len%4!==0){throw new RangeError("Buffer size must be a multiple of 32-bits")}for(var i=0;i<len;i+=4){swap(this,i,i+3);swap(this,i+1,i+2)}return this};Buffer.prototype.swap64=function swap64(){var len=this.length;if(len%8!==0){throw new RangeError("Buffer size must be a multiple of 64-bits")}for(var i=0;i<len;i+=8){swap(this,i,i+7);swap(this,i+1,i+6);swap(this,i+2,i+5);swap(this,i+3,i+4)}return this};Buffer.prototype.toString=function toString(){var length=this.length;if(length===0)return"";if(arguments.length===0)return utf8Slice(this,0,length);return slowToString.apply(this,arguments)};Buffer.prototype.toLocaleString=Buffer.prototype.toString;Buffer.prototype.equals=function equals(b){if(!Buffer.isBuffer(b))throw new TypeError("Argument must be a Buffer");if(this===b)return true;return Buffer.compare(this,b)===0};Buffer.prototype.inspect=function inspect(){var str="";var max=exports.INSPECT_MAX_BYTES;str=this.toString("hex",0,max).replace(/(.{2})/g,"$1 ").trim();if(this.length>max)str+=" ... ";return"<Buffer "+str+">"};Buffer.prototype.compare=function compare(target,start,end,thisStart,thisEnd){if(isInstance(target,Uint8Array)){target=Buffer.from(target,target.offset,target.byteLength)}if(!Buffer.isBuffer(target)){throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. '+"Received type "+typeof target)}if(start===undefined){start=0}if(end===undefined){end=target?target.length:0}if(thisStart===undefined){thisStart=0}if(thisEnd===undefined){thisEnd=this.length}if(start<0||end>target.length||thisStart<0||thisEnd>this.length){throw new RangeError("out of range index")}if(thisStart>=thisEnd&&start>=end){return 0}if(thisStart>=thisEnd){return-1}if(start>=end){return 1}start>>>=0;end>>>=0;thisStart>>>=0;thisEnd>>>=0;if(this===target)return 0;var x=thisEnd-thisStart;var y=end-start;var len=Math.min(x,y);var thisCopy=this.slice(thisStart,thisEnd);var targetCopy=target.slice(start,end);for(var i=0;i<len;++i){if(thisCopy[i]!==targetCopy[i]){x=thisCopy[i];y=targetCopy[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(buffer.length===0)return-1;if(typeof byteOffset==="string"){encoding=byteOffset;byteOffset=0}else if(byteOffset>2147483647){byteOffset=2147483647}else if(byteOffset<-2147483648){byteOffset=-2147483648}byteOffset=+byteOffset;if(numberIsNaN(byteOffset)){byteOffset=dir?0:buffer.length-1}if(byteOffset<0)byteOffset=buffer.length+byteOffset;if(byteOffset>=buffer.length){if(dir)return-1;else byteOffset=buffer.length-1}else if(byteOffset<0){if(dir)byteOffset=0;else return-1}if(typeof val==="string"){val=Buffer.from(val,encoding)}if(Buffer.isBuffer(val)){if(val.length===0){return-1}return arrayIndexOf(buffer,val,byteOffset,encoding,dir)}else if(typeof val==="number"){val=val&255;if(typeof Uint8Array.prototype.indexOf==="function"){if(dir){return Uint8Array.prototype.indexOf.call(buffer,val,byteOffset)}else{return Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset)}}return arrayIndexOf(buffer,[val],byteOffset,encoding,dir)}throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var indexSize=1;var arrLength=arr.length;var valLength=val.length;if(encoding!==undefined){encoding=String(encoding).toLowerCase();if(encoding==="ucs2"||encoding==="ucs-2"||encoding==="utf16le"||encoding==="utf-16le"){if(arr.length<2||val.length<2){return-1}indexSize=2;arrLength/=2;valLength/=2;byteOffset/=2}}function read(buf,i){if(indexSize===1){return buf[i]}else{return buf.readUInt16BE(i*indexSize)}}var i;if(dir){var foundIndex=-1;for(i=byteOffset;i<arrLength;i++){if(read(arr,i)===read(val,foundIndex===-1?0:i-foundIndex)){if(foundIndex===-1)foundIndex=i;if(i-foundIndex+1===valLength)return foundIndex*indexSize}else{if(foundIndex!==-1)i-=i-foundIndex;foundIndex=-1}}}else{if(byteOffset+valLength>arrLength)byteOffset=arrLength-valLength;for(i=byteOffset;i>=0;i--){var found=true;for(var j=0;j<valLength;j++){if(read(arr,i+j)!==read(val,j)){found=false;break}}if(found)return i}}return-1}Buffer.prototype.includes=function includes(val,byteOffset,encoding){return this.indexOf(val,byteOffset,encoding)!==-1};Buffer.prototype.indexOf=function indexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,true)};Buffer.prototype.lastIndexOf=function lastIndexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,false)};function hexWrite(buf,string,offset,length){offset=Number(offset)||0;var remaining=buf.length-offset;if(!length){length=remaining}else{length=Number(length);if(length>remaining){length=remaining}}var strLen=string.length;if(length>strLen/2){length=strLen/2}for(var i=0;i<length;++i){var parsed=parseInt(string.substr(i*2,2),16);if(numberIsNaN(parsed))return i;buf[offset+i]=parsed}return i}function utf8Write(buf,string,offset,length){return blitBuffer(utf8ToBytes(string,buf.length-offset),buf,offset,length)}function asciiWrite(buf,string,offset,length){return blitBuffer(asciiToBytes(string),buf,offset,length)}function latin1Write(buf,string,offset,length){return asciiWrite(buf,string,offset,length)}function base64Write(buf,string,offset,length){return blitBuffer(base64ToBytes(string),buf,offset,length)}function ucs2Write(buf,string,offset,length){return blitBuffer(utf16leToBytes(string,buf.length-offset),buf,offset,length)}Buffer.prototype.write=function write(string,offset,length,encoding){if(offset===undefined){encoding="utf8";length=this.length;offset=0}else if(length===undefined&&typeof offset==="string"){encoding=offset;length=this.length;offset=0}else if(isFinite(offset)){offset=offset>>>0;if(isFinite(length)){length=length>>>0;if(encoding===undefined)encoding="utf8"}else{encoding=length;length=undefined}}else{throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported")}var remaining=this.length-offset;if(length===undefined||length>remaining)length=remaining;if(string.length>0&&(length<0||offset<0)||offset>this.length){throw new RangeError("Attempt to write outside buffer bounds")}if(!encoding)encoding="utf8";var loweredCase=false;for(;;){switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase();loweredCase=true}}};Buffer.prototype.toJSON=function toJSON(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(buf,start,end){if(start===0&&end===buf.length){return base64.fromByteArray(buf)}else{return base64.fromByteArray(buf.slice(start,end))}}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);var res=[];var i=start;while(i<end){var firstByte=buf[i];var codePoint=null;var bytesPerSequence=firstByte>239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end){var secondByte,thirdByte,fourthByte,tempCodePoint;switch(bytesPerSequence){case 1:if(firstByte<128){codePoint=firstByte}break;case 2:secondByte=buf[i+1];if((secondByte&192)===128){tempCodePoint=(firstByte&31)<<6|secondByte&63;if(tempCodePoint>127){codePoint=tempCodePoint}}break;case 3:secondByte=buf[i+1];thirdByte=buf[i+2];if((secondByte&192)===128&&(thirdByte&192)===128){tempCodePoint=(firstByte&15)<<12|(secondByte&63)<<6|thirdByte&63;if(tempCodePoint>2047&&(tempCodePoint<55296||tempCodePoint>57343)){codePoint=tempCodePoint}}break;case 4:secondByte=buf[i+1];thirdByte=buf[i+2];fourthByte=buf[i+3];if((secondByte&192)===128&&(thirdByte&192)===128&&(fourthByte&192)===128){tempCodePoint=(firstByte&15)<<18|(secondByte&63)<<12|(thirdByte&63)<<6|fourthByte&63;if(tempCodePoint>65535&&tempCodePoint<1114112){codePoint=tempCodePoint}}}}if(codePoint===null){codePoint=65533;bytesPerSequence=1}else if(codePoint>65535){codePoint-=65536;res.push(codePoint>>>10&1023|55296);codePoint=56320|codePoint&1023}res.push(codePoint);i+=bytesPerSequence}return decodeCodePointsArray(res)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH){return String.fromCharCode.apply(String,codePoints)}var res="";var i=0;while(i<len){res+=String.fromCharCode.apply(String,codePoints.slice(i,i+=MAX_ARGUMENTS_LENGTH))}return res}function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i]&127)}return ret}function latin1Slice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i])}return ret}function hexSlice(buf,start,end){var len=buf.length;if(!start||start<0)start=0;if(!end||end<0||end>len)end=len;var out="";for(var i=start;i<end;++i){out+=toHex(buf[i])}return out}function utf16leSlice(buf,start,end){var bytes=buf.slice(start,end);var res="";for(var i=0;i<bytes.length;i+=2){res+=String.fromCharCode(bytes[i]+bytes[i+1]*256)}return res}Buffer.prototype.slice=function slice(start,end){var len=this.length;start=~~start;end=end===undefined?len:~~end;if(start<0){start+=len;if(start<0)start=0}else if(start>len){start=len}if(end<0){end+=len;if(end<0)end=0}else if(end>len){end=len}if(end<start)end=start;var newBuf=this.subarray(start,end);newBuf.__proto__=Buffer.prototype;return newBuf};function checkOffset(offset,ext,length){if(offset%1!==0||offset<0)throw new RangeError("offset is not uint");if(offset+ext>length)throw new RangeError("Trying to access beyond buffer length")}Buffer.prototype.readUIntLE=function readUIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}return val};Buffer.prototype.readUIntBE=function readUIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){checkOffset(offset,byteLength,this.length)}var val=this[offset+--byteLength];var mul=1;while(byteLength>0&&(mul*=256)){val+=this[offset+--byteLength]*mul}return val};Buffer.prototype.readUInt8=function readUInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);return this[offset]};Buffer.prototype.readUInt16LE=function readUInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]|this[offset+1]<<8};Buffer.prototype.readUInt16BE=function readUInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]<<8|this[offset+1]};Buffer.prototype.readUInt32LE=function readUInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+this[offset+3]*16777216};Buffer.prototype.readUInt32BE=function readUInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]*16777216+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])};Buffer.prototype.readIntLE=function readIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readIntBE=function readIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var i=byteLength;var mul=1;var val=this[offset+--i];while(i>0&&(mul*=256)){val+=this[offset+--i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readInt8=function readInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);if(!(this[offset]&128))return this[offset];return(255-this[offset]+1)*-1};Buffer.prototype.readInt16LE=function readInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt16BE=function readInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt32LE=function readInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24};Buffer.prototype.readInt32BE=function readInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]};Buffer.prototype.readFloatLE=function readFloatLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,true,23,4)};Buffer.prototype.readFloatBE=function readFloatBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,false,23,4)};Buffer.prototype.readDoubleLE=function readDoubleLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,true,52,8)};Buffer.prototype.readDoubleBE=function readDoubleBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,false,52,8)};function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||value<min)throw new RangeError('"value" argument is out of bounds');if(offset+ext>buf.length)throw new RangeError("Index out of range")}Buffer.prototype.writeUIntLE=function writeUIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var mul=1;var i=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUIntBE=function writeUIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var i=byteLength-1;var mul=1;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUInt8=function writeUInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,255,0);this[offset]=value&255;return offset+1};Buffer.prototype.writeUInt16LE=function writeUInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeUInt16BE=function writeUInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeUInt32LE=function writeUInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset+3]=value>>>24;this[offset+2]=value>>>16;this[offset+1]=value>>>8;this[offset]=value&255;return offset+4};Buffer.prototype.writeUInt32BE=function writeUInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};Buffer.prototype.writeIntLE=function writeIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0;var mul=1;var sub=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){if(value<0&&sub===0&&this[offset+i-1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeIntBE=function writeIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1;var mul=1;var sub=0;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){if(value<0&&sub===0&&this[offset+i+1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeInt8=function writeInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,127,-128);if(value<0)value=255+value+1;this[offset]=value&255;return offset+1};Buffer.prototype.writeInt16LE=function writeInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeInt16BE=function writeInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeInt32LE=function writeInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);this[offset]=value&255;this[offset+1]=value>>>8;this[offset+2]=value>>>16;this[offset+3]=value>>>24;return offset+4};Buffer.prototype.writeInt32BE=function writeInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);if(value<0)value=4294967295+value+1;this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,4,34028234663852886e22,-34028234663852886e22)}ieee754.write(buf,value,offset,littleEndian,23,4);return offset+4}Buffer.prototype.writeFloatLE=function writeFloatLE(value,offset,noAssert){return writeFloat(this,value,offset,true,noAssert)};Buffer.prototype.writeFloatBE=function writeFloatBE(value,offset,noAssert){return writeFloat(this,value,offset,false,noAssert)};function writeDouble(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,8,17976931348623157e292,-17976931348623157e292)}ieee754.write(buf,value,offset,littleEndian,52,8);return offset+8}Buffer.prototype.writeDoubleLE=function writeDoubleLE(value,offset,noAssert){return writeDouble(this,value,offset,true,noAssert)};Buffer.prototype.writeDoubleBE=function writeDoubleBE(value,offset,noAssert){return writeDouble(this,value,offset,false,noAssert)};Buffer.prototype.copy=function copy(target,targetStart,start,end){if(!Buffer.isBuffer(target))throw new TypeError("argument should be a Buffer");if(!start)start=0;if(!end&&end!==0)end=this.length;if(targetStart>=target.length)targetStart=target.length;if(!targetStart)targetStart=0;if(end>0&&end<start)end=start;if(end===start)return 0;if(target.length===0||this.length===0)return 0;if(targetStart<0){throw new RangeError("targetStart out of bounds")}if(start<0||start>=this.length)throw new RangeError("Index out of range");if(end<0)throw new RangeError("sourceEnd out of bounds");if(end>this.length)end=this.length;if(target.length-targetStart<end-start){end=target.length-targetStart+start}var len=end-start;if(this===target&&typeof Uint8Array.prototype.copyWithin==="function"){this.copyWithin(targetStart,start,end)}else if(this===target&&start<targetStart&&targetStart<end){for(var i=len-1;i>=0;--i){target[i+targetStart]=this[i+start]}}else{Uint8Array.prototype.set.call(target,this.subarray(start,end),targetStart)}return len};Buffer.prototype.fill=function fill(val,start,end,encoding){if(typeof val==="string"){if(typeof start==="string"){encoding=start;start=0;end=this.length}else if(typeof end==="string"){encoding=end;end=this.length}if(encoding!==undefined&&typeof encoding!=="string"){throw new TypeError("encoding must be a string")}if(typeof encoding==="string"&&!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}if(val.length===1){var code=val.charCodeAt(0);if(encoding==="utf8"&&code<128||encoding==="latin1"){val=code}}}else if(typeof val==="number"){val=val&255}if(start<0||this.length<start||this.length<end){throw new RangeError("Out of range index")}if(end<=start){return this}start=start>>>0;end=end===undefined?this.length:end>>>0;if(!val)val=0;var i;if(typeof val==="number"){for(i=start;i<end;++i){this[i]=val}}else{var bytes=Buffer.isBuffer(val)?val:Buffer.from(val,encoding);var len=bytes.length;if(len===0){throw new TypeError('The value "'+val+'" is invalid for argument "value"')}for(i=0;i<end-start;++i){this[i+start]=bytes[i%len]}}return this};var INVALID_BASE64_RE=/[^+/0-9A-Za-z-_]/g;function base64clean(str){str=str.split("=")[0];str=str.trim().replace(INVALID_BASE64_RE,"");if(str.length<2)return"";while(str.length%4!==0){str=str+"="}return str}function toHex(n){if(n<16)return"0"+n.toString(16);return n.toString(16)}function utf8ToBytes(string,units){units=units||Infinity;var codePoint;var length=string.length;var leadSurrogate=null;var bytes=[];for(var i=0;i<length;++i){codePoint=string.charCodeAt(i);if(codePoint>55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){if((units-=3)>-1)bytes.push(239,191,189);continue}else if(i+1===length){if((units-=3)>-1)bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){if((units-=3)>-1)bytes.push(239,191,189);leadSurrogate=codePoint;continue}codePoint=(leadSurrogate-55296<<10|codePoint-56320)+65536}else if(leadSurrogate){if((units-=3)>-1)bytes.push(239,191,189)}leadSurrogate=null;if(codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,codePoint&63|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,codePoint&63|128)}else if(codePoint<1114112){if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,codePoint&63|128)}else{throw new Error("Invalid code point")}}return bytes}function asciiToBytes(str){var byteArray=[];for(var i=0;i<str.length;++i){byteArray.push(str.charCodeAt(i)&255)}return byteArray}function utf16leToBytes(str,units){var c,hi,lo;var byteArray=[];for(var i=0;i<str.length;++i){if((units-=2)<0)break;c=str.charCodeAt(i);hi=c>>8;lo=c%256;byteArray.push(lo);byteArray.push(hi)}return byteArray}function base64ToBytes(str){return base64.toByteArray(base64clean(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i<length;++i){if(i+offset>=dst.length||i>=src.length)break;dst[i+offset]=src[i]}return i}function isInstance(obj,type){return obj instanceof type||obj!=null&&obj.constructor!=null&&obj.constructor.name!=null&&obj.constructor.name===type.name}function numberIsNaN(obj){return obj!==obj}},{"base64-js":5,ieee754:9}],7:[function(require,module,exports){(function(Buffer){function isArray(arg){if(Array.isArray){return Array.isArray(arg)}return objectToString(arg)==="[object Array]"}exports.isArray=isArray;function isBoolean(arg){return typeof arg==="boolean"}exports.isBoolean=isBoolean;function isNull(arg){return arg===null}exports.isNull=isNull;function isNullOrUndefined(arg){return arg==null}exports.isNullOrUndefined=isNullOrUndefined;function isNumber(arg){return typeof arg==="number"}exports.isNumber=isNumber;function isString(arg){return typeof arg==="string"}exports.isString=isString;function isSymbol(arg){return typeof arg==="symbol"}exports.isSymbol=isSymbol;function isUndefined(arg){return arg===void 0}exports.isUndefined=isUndefined;function isRegExp(re){return objectToString(re)==="[object RegExp]"}exports.isRegExp=isRegExp;function isObject(arg){return typeof arg==="object"&&arg!==null}exports.isObject=isObject;function isDate(d){return objectToString(d)==="[object Date]"}exports.isDate=isDate;function isError(e){return objectToString(e)==="[object Error]"||e instanceof Error}exports.isError=isError;function isFunction(arg){return typeof arg==="function"}exports.isFunction=isFunction;function isPrimitive(arg){return arg===null||typeof arg==="boolean"||typeof arg==="number"||typeof arg==="string"||typeof arg==="symbol"||typeof arg==="undefined"}exports.isPrimitive=isPrimitive;exports.isBuffer=Buffer.isBuffer;function objectToString(o){return Object.prototype.toString.call(o)}}).call(this,{isBuffer:require("../../is-buffer/index.js")})},{"../../is-buffer/index.js":11}],8:[function(require,module,exports){var objectCreate=Object.create||objectCreatePolyfill;var objectKeys=Object.keys||objectKeysPolyfill;var bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){if(!this._events||!Object.prototype.hasOwnProperty.call(this,"_events")){this._events=objectCreate(null);this._eventsCount=0}this._maxListeners=this._maxListeners||undefined}module.exports=EventEmitter;EventEmitter.EventEmitter=EventEmitter;EventEmitter.prototype._events=undefined;EventEmitter.prototype._maxListeners=undefined;var defaultMaxListeners=10;var hasDefineProperty;try{var o={};if(Object.defineProperty)Object.defineProperty(o,"x",{value:0});hasDefineProperty=o.x===0}catch(err){hasDefineProperty=false}if(hasDefineProperty){Object.defineProperty(EventEmitter,"defaultMaxListeners",{enumerable:true,get:function(){return defaultMaxListeners},set:function(arg){if(typeof arg!=="number"||arg<0||arg!==arg)throw new TypeError('"defaultMaxListeners" must be a positive number');defaultMaxListeners=arg}})}else{EventEmitter.defaultMaxListeners=defaultMaxListeners}EventEmitter.prototype.setMaxListeners=function setMaxListeners(n){if(typeof n!=="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');this._maxListeners=n;return this};function $getMaxListeners(that){if(that._maxListeners===undefined)return EventEmitter.defaultMaxListeners;return that._maxListeners}EventEmitter.prototype.getMaxListeners=function getMaxListeners(){return $getMaxListeners(this)};function emitNone(handler,isFn,self){if(isFn)handler.call(self);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self)}}function emitOne(handler,isFn,self,arg1){if(isFn)handler.call(self,arg1);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1)}}function emitTwo(handler,isFn,self,arg1,arg2){if(isFn)handler.call(self,arg1,arg2);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2)}}function emitThree(handler,isFn,self,arg1,arg2,arg3){if(isFn)handler.call(self,arg1,arg2,arg3);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2,arg3)}}function emitMany(handler,isFn,self,args){if(isFn)handler.apply(self,args);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].apply(self,args)}}EventEmitter.prototype.emit=function emit(type){var er,handler,len,args,i,events;var doError=type==="error";events=this._events;if(events)doError=doError&&events.error==null;else if(!doError)return false;if(doError){if(arguments.length>1)er=arguments[1];if(er instanceof Error){throw er}else{var err=new Error('Unhandled "error" event. ('+er+")");err.context=er;throw err}return false}handler=events[type];if(!handler)return false;var isFn=typeof handler==="function";len=arguments.length;switch(len){case 1:emitNone(handler,isFn,this);break;case 2:emitOne(handler,isFn,this,arguments[1]);break;case 3:emitTwo(handler,isFn,this,arguments[1],arguments[2]);break;case 4:emitThree(handler,isFn,this,arguments[1],arguments[2],arguments[3]);break;default:args=new Array(len-1);for(i=1;i<len;i++)args[i-1]=arguments[i];emitMany(handler,isFn,this,args)}return true};function _addListener(target,type,listener,prepend){var m;var events;var existing;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=target._events;if(!events){events=target._events=objectCreate(null);target._eventsCount=0}else{if(events.newListener){target.emit("newListener",type,listener.listener?listener.listener:listener);events=target._events}existing=events[type]}if(!existing){existing=events[type]=listener;++target._eventsCount}else{if(typeof existing==="function"){existing=events[type]=prepend?[listener,existing]:[existing,listener]}else{if(prepend){existing.unshift(listener)}else{existing.push(listener)}}if(!existing.warned){m=$getMaxListeners(target);if(m&&m>0&&existing.length>m){existing.warned=true;var w=new Error("Possible EventEmitter memory leak detected. "+existing.length+' "'+String(type)+'" listeners '+"added. Use emitter.setMaxListeners() to "+"increase limit.");w.name="MaxListenersExceededWarning";w.emitter=target;w.type=type;w.count=existing.length;if(typeof console==="object"&&console.warn){console.warn("%s: %s",w.name,w.message)}}}}return target}EventEmitter.prototype.addListener=function addListener(type,listener){return _addListener(this,type,listener,false)};EventEmitter.prototype.on=EventEmitter.prototype.addListener;EventEmitter.prototype.prependListener=function prependListener(type,listener){return _addListener(this,type,listener,true)};function onceWrapper(){if(!this.fired){this.target.removeListener(this.type,this.wrapFn);this.fired=true;switch(arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:var args=new Array(arguments.length);for(var i=0;i<args.length;++i)args[i]=arguments[i];this.listener.apply(this.target,args)}}}function _onceWrap(target,type,listener){var state={fired:false,wrapFn:undefined,target:target,type:type,listener:listener};var wrapped=bind.call(onceWrapper,state);wrapped.listener=listener;state.wrapFn=wrapped;return wrapped}EventEmitter.prototype.once=function once(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.on(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.prependOnceListener=function prependOnceListener(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.prependListener(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.removeListener=function removeListener(type,listener){var list,events,position,i,originalListener;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=this._events;if(!events)return this;list=events[type];if(!list)return this;if(list===listener||list.listener===listener){if(--this._eventsCount===0)this._events=objectCreate(null);else{delete events[type];if(events.removeListener)this.emit("removeListener",type,list.listener||listener)}}else if(typeof list!=="function"){position=-1;for(i=list.length-1;i>=0;i--){if(list[i]===listener||list[i].listener===listener){originalListener=list[i].listener;position=i;break}}if(position<0)return this;if(position===0)list.shift();else spliceOne(list,position);if(list.length===1)events[type]=list[0];if(events.removeListener)this.emit("removeListener",type,originalListener||listener)}return this};EventEmitter.prototype.removeAllListeners=function removeAllListeners(type){var listeners,events,i;events=this._events;if(!events)return this;if(!events.removeListener){if(arguments.length===0){this._events=objectCreate(null);this._eventsCount=0}else if(events[type]){if(--this._eventsCount===0)this._events=objectCreate(null);else delete events[type]}return this}if(arguments.length===0){var keys=objectKeys(events);var key;for(i=0;i<keys.length;++i){key=keys[i];if(key==="removeListener")continue;this.removeAllListeners(key)}this.removeAllListeners("removeListener");this._events=objectCreate(null);this._eventsCount=0;return this}listeners=events[type];if(typeof listeners==="function"){this.removeListener(type,listeners)}else if(listeners){for(i=listeners.length-1;i>=0;i--){this.removeListener(type,listeners[i])}}return this};function _listeners(target,type,unwrap){var events=target._events;if(!events)return[];var evlistener=events[type];if(!evlistener)return[];if(typeof evlistener==="function")return unwrap?[evlistener.listener||evlistener]:[evlistener];return unwrap?unwrapListeners(evlistener):arrayClone(evlistener,evlistener.length)}EventEmitter.prototype.listeners=function listeners(type){return _listeners(this,type,true)};EventEmitter.prototype.rawListeners=function rawListeners(type){return _listeners(this,type,false)};EventEmitter.listenerCount=function(emitter,type){if(typeof emitter.listenerCount==="function"){return emitter.listenerCount(type)}else{return listenerCount.call(emitter,type)}};EventEmitter.prototype.listenerCount=listenerCount;function listenerCount(type){var events=this._events;if(events){var evlistener=events[type];if(typeof evlistener==="function"){return 1}else if(evlistener){return evlistener.length}}return 0}EventEmitter.prototype.eventNames=function eventNames(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(list,index){for(var i=index,k=i+1,n=list.length;k<n;i+=1,k+=1)list[i]=list[k];list.pop()}function arrayClone(arr,n){var copy=new Array(n);for(var i=0;i<n;++i)copy[i]=arr[i];return copy}function unwrapListeners(arr){var ret=new Array(arr.length);for(var i=0;i<ret.length;++i){ret[i]=arr[i].listener||arr[i]}return ret}function objectCreatePolyfill(proto){var F=function(){};F.prototype=proto;return new F}function objectKeysPolyfill(obj){var keys=[];for(var k in obj)if(Object.prototype.hasOwnProperty.call(obj,k)){keys.push(k)}return k}function functionBindPolyfill(context){var fn=this;return function(){return fn.apply(context,arguments)}}},{}],9:[function(require,module,exports){exports.read=function(buffer,offset,isLE,mLen,nBytes){var e,m;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var nBits=-7;var i=isLE?nBytes-1:0;var d=isLE?-1:1;var s=buffer[offset+i];i+=d;e=s&(1<<-nBits)-1;s>>=-nBits;nBits+=eLen;for(;nBits>0;e=e*256+buffer[offset+i],i+=d,nBits-=8){}m=e&(1<<-nBits)-1;e>>=-nBits;nBits+=mLen;for(;nBits>0;m=m*256+buffer[offset+i],i+=d,nBits-=8){}if(e===0){e=1-eBias}else if(e===eMax){return m?NaN:(s?-1:1)*Infinity}else{m=m+Math.pow(2,mLen);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-mLen)};exports.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var rt=mLen===23?Math.pow(2,-24)-Math.pow(2,-77):0;var i=isLE?0:nBytes-1;var d=isLE?1:-1;var s=value<0||value===0&&1/value<0?1:0;value=Math.abs(value);if(isNaN(value)||value===Infinity){m=isNaN(value)?1:0;e=eMax}else{e=Math.floor(Math.log(value)/Math.LN2);if(value*(c=Math.pow(2,-e))<1){e--;c*=2}if(e+eBias>=1){value+=rt/c}else{value+=rt*Math.pow(2,1-eBias)}if(value*c>=2){e++;c/=2}if(e+eBias>=eMax){m=0;e=eMax}else if(e+eBias>=1){m=(value*c-1)*Math.pow(2,mLen);e=e+eBias}else{m=value*Math.pow(2,eBias-1)*Math.pow(2,mLen);e=0}}for(;mLen>=8;buffer[offset+i]=m&255,i+=d,m/=256,mLen-=8){}e=e<<mLen|m;eLen+=mLen;for(;eLen>0;buffer[offset+i]=e&255,i+=d,e/=256,eLen-=8){}buffer[offset+i-d]|=s*128}},{}],10:[function(require,module,exports){if(typeof Object.create==="function"){module.exports=function inherits(ctor,superCtor){ctor.super_=superCtor;ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})}}else{module.exports=function inherits(ctor,superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}}},{}],11:[function(require,module,exports){module.exports=function(obj){return obj!=null&&(isBuffer(obj)||isSlowBuffer(obj)||!!obj._isBuffer)};function isBuffer(obj){return!!obj.constructor&&typeof obj.constructor.isBuffer==="function"&&obj.constructor.isBuffer(obj)}function isSlowBuffer(obj){return typeof obj.readFloatLE==="function"&&typeof obj.slice==="function"&&isBuffer(obj.slice(0,0))}},{}],12:[function(require,module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return toString.call(arr)=="[object Array]"}},{}],13:[function(require,module,exports){(function(process){"use strict";if(!process.version||process.version.indexOf("v0.")===0||process.version.indexOf("v1.")===0&&process.version.indexOf("v1.8.")!==0){module.exports={nextTick:nextTick}}else{module.exports=process}function nextTick(fn,arg1,arg2,arg3){if(typeof fn!=="function"){throw new TypeError('"callback" argument must be a function')}var len=arguments.length;var args,i;switch(len){case 0:case 1:return process.nextTick(fn);case 2:return process.nextTick(function afterTickOne(){fn.call(null,arg1)});case 3:return process.nextTick(function afterTickTwo(){fn.call(null,arg1,arg2)});case 4:return process.nextTick(function afterTickThree(){fn.call(null,arg1,arg2,arg3)});default:args=new Array(len-1);i=0;while(i<args.length){args[i++]=arguments[i]}return process.nextTick(function afterTick(){fn.apply(null,args)})}}}).call(this,require("_process"))},{_process:14}],14:[function(require,module,exports){var process=module.exports={};var cachedSetTimeout;var cachedClearTimeout;function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}(function(){try{if(typeof setTimeout==="function"){cachedSetTimeout=setTimeout}else{cachedSetTimeout=defaultSetTimout}}catch(e){cachedSetTimeout=defaultSetTimout}try{if(typeof clearTimeout==="function"){cachedClearTimeout=clearTimeout}else{cachedClearTimeout=defaultClearTimeout}}catch(e){cachedClearTimeout=defaultClearTimeout}})();function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTimeout(fun,0)}if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout){cachedSetTimeout=setTimeout;return setTimeout(fun,0)}try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){return clearTimeout(marker)}if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout){cachedClearTimeout=clearTimeout;return clearTimeout(marker)}try{return cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}var queue=[];var draining=false;var currentQueue;var queueIndex=-1;function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=false;if(currentQueue.length){queue=currentQueue.concat(queue)}else{queueIndex=-1}if(queue.length){drainQueue()}}function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUpNextTick);draining=true;var len=queue.length;while(len){currentQueue=queue;queue=[];while(++queueIndex<len){if(currentQueue){currentQueue[queueIndex].run()}}queueIndex=-1;len=queue.length}currentQueue=null;draining=false;runClearTimeout(timeout)}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1){for(var i=1;i<arguments.length;i++){args[i-1]=arguments[i]}}queue.push(new Item(fun,args));if(queue.length===1&&!draining){runTimeout(drainQueue)}};function Item(fun,array){this.fun=fun;this.array=array}Item.prototype.run=function(){this.fun.apply(null,this.array)};process.title="browser";process.browser=true;process.env={};process.argv=[];process.version="";process.versions={};function noop(){}process.on=noop;process.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=noop;process.emit=noop;process.prependListener=noop;process.prependOnceListener=noop;process.listeners=function(name){return[]};process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")};process.umask=function(){return 0}},{}],15:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:6}],16:[function(require,module,exports){module.exports=Stream;var EE=require("events").EventEmitter;var inherits=require("inherits");inherits(Stream,EE);Stream.Readable=require("readable-stream/readable.js");Stream.Writable=require("readable-stream/writable.js");Stream.Duplex=require("readable-stream/duplex.js");Stream.Transform=require("readable-stream/transform.js");Stream.PassThrough=require("readable-stream/passthrough.js");Stream.Stream=Stream;function Stream(){EE.call(this)}Stream.prototype.pipe=function(dest,options){var source=this;function ondata(chunk){if(dest.writable){if(false===dest.write(chunk)&&source.pause){source.pause()}}}source.on("data",ondata);function ondrain(){if(source.readable&&source.resume){source.resume()}}dest.on("drain",ondrain);if(!dest._isStdio&&(!options||options.end!==false)){source.on("end",onend);source.on("close",onclose)}var didOnEnd=false;function onend(){if(didOnEnd)return;didOnEnd=true;dest.end()}function onclose(){if(didOnEnd)return;didOnEnd=true;if(typeof dest.destroy==="function")dest.destroy()}function onerror(er){cleanup();if(EE.listenerCount(this,"error")===0){throw er}}source.on("error",onerror);dest.on("error",onerror);function cleanup(){source.removeListener("data",ondata);dest.removeListener("drain",ondrain);source.removeListener("end",onend);source.removeListener("close",onclose);source.removeListener("error",onerror);dest.removeListener("error",onerror);source.removeListener("end",cleanup);source.removeListener("close",cleanup);dest.removeListener("close",cleanup)}source.on("end",cleanup);source.on("close",cleanup);dest.on("close",cleanup);dest.emit("pipe",source);return dest}},{events:8,inherits:10,"readable-stream/duplex.js":17,"readable-stream/passthrough.js":26,"readable-stream/readable.js":27,"readable-stream/transform.js":28,"readable-stream/writable.js":29}],17:[function(require,module,exports){module.exports=require("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":18}],18:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){keys.push(key)}return keys};module.exports=Duplex;var util=require("core-util-is");util.inherits=require("inherits");var Readable=require("./_stream_readable");var Writable=require("./_stream_writable");util.inherits(Duplex,Readable);{var keys=objectKeys(Writable.prototype);for(var v=0;v<keys.length;v++){var method=keys[v];if(!Duplex.prototype[method])Duplex.prototype[method]=Writable.prototype[method]}}function Duplex(options){if(!(this instanceof Duplex))return new Duplex(options);Readable.call(this,options);Writable.call(this,options);if(options&&options.readable===false)this.readable=false;if(options&&options.writable===false)this.writable=false;this.allowHalfOpen=true;if(options&&options.allowHalfOpen===false)this.allowHalfOpen=false;this.once("end",onend)}Object.defineProperty(Duplex.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function onend(){if(this.allowHalfOpen||this._writableState.ended)return;pna.nextTick(onEndNT,this)}function onEndNT(self){self.end()}Object.defineProperty(Duplex.prototype,"destroyed",{get:function(){if(this._readableState===undefined||this._writableState===undefined){return false}return this._readableState.destroyed&&this._writableState.destroyed},set:function(value){if(this._readableState===undefined||this._writableState===undefined){return}this._readableState.destroyed=value;this._writableState.destroyed=value}});Duplex.prototype._destroy=function(err,cb){this.push(null);this.end();pna.nextTick(cb,err)}},{"./_stream_readable":20,"./_stream_writable":22,"core-util-is":7,inherits:10,"process-nextick-args":13}],19:[function(require,module,exports){"use strict";module.exports=PassThrough;var Transform=require("./_stream_transform");var util=require("core-util-is");util.inherits=require("inherits");util.inherits(PassThrough,Transform);function PassThrough(options){if(!(this instanceof PassThrough))return new PassThrough(options);Transform.call(this,options)}PassThrough.prototype._transform=function(chunk,encoding,cb){cb(null,chunk)}},{"./_stream_transform":21,"core-util-is":7,inherits:10}],20:[function(require,module,exports){(function(process,global){"use strict";var pna=require("process-nextick-args");module.exports=Readable;var isArray=require("isarray");var Duplex;Readable.ReadableState=ReadableState;var EE=require("events").EventEmitter;var EElistenerCount=function(emitter,type){return emitter.listeners(type).length};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var util=require("core-util-is");util.inherits=require("inherits");var debugUtil=require("util");var debug=void 0;if(debugUtil&&debugUtil.debuglog){debug=debugUtil.debuglog("stream")}else{debug=function(){}}var BufferList=require("./internal/streams/BufferList");var destroyImpl=require("./internal/streams/destroy");var StringDecoder;util.inherits(Readable,Stream);var kProxyEvents=["error","close","destroy","pause","resume"];function prependListener(emitter,event,fn){if(typeof emitter.prependListener==="function")return emitter.prependListener(event,fn);if(!emitter._events||!emitter._events[event])emitter.on(event,fn);else if(isArray(emitter._events[event]))emitter._events[event].unshift(fn);else emitter._events[event]=[fn,emitter._events[event]]}function ReadableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.readableObjectMode;var hwm=options.highWaterMark;var readableHwm=options.readableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(readableHwm||readableHwm===0))this.highWaterMark=readableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.buffer=new BufferList;this.length=0;this.pipes=null;this.pipesCount=0;this.flowing=null;this.ended=false;this.endEmitted=false;this.reading=false;this.sync=true;this.needReadable=false;this.emittedReadable=false;this.readableListening=false;this.resumeScheduled=false;this.destroyed=false;this.defaultEncoding=options.defaultEncoding||"utf8";this.awaitDrain=0;this.readingMore=false;this.decoder=null;this.encoding=null;if(options.encoding){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this.decoder=new StringDecoder(options.encoding);this.encoding=options.encoding}}function Readable(options){Duplex=Duplex||require("./_stream_duplex");if(!(this instanceof Readable))return new Readable(options);this._readableState=new ReadableState(options,this);this.readable=true;if(options){if(typeof options.read==="function")this._read=options.read;if(typeof options.destroy==="function")this._destroy=options.destroy}Stream.call(this)}Object.defineProperty(Readable.prototype,"destroyed",{get:function(){if(this._readableState===undefined){return false}return this._readableState.destroyed},set:function(value){if(!this._readableState){return}this._readableState.destroyed=value}});Readable.prototype.destroy=destroyImpl.destroy;Readable.prototype._undestroy=destroyImpl.undestroy;Readable.prototype._destroy=function(err,cb){this.push(null);cb(err)};Readable.prototype.push=function(chunk,encoding){var state=this._readableState;var skipChunkCheck;if(!state.objectMode){if(typeof chunk==="string"){encoding=encoding||state.defaultEncoding;if(encoding!==state.encoding){chunk=Buffer.from(chunk,encoding);encoding=""}skipChunkCheck=true}}else{skipChunkCheck=true}return readableAddChunk(this,chunk,encoding,false,skipChunkCheck)};Readable.prototype.unshift=function(chunk){return readableAddChunk(this,chunk,null,true,false)};function readableAddChunk(stream,chunk,encoding,addToFront,skipChunkCheck){var state=stream._readableState;if(chunk===null){state.reading=false;onEofChunk(stream,state)}else{var er;if(!skipChunkCheck)er=chunkInvalid(state,chunk);if(er){stream.emit("error",er)}else if(state.objectMode||chunk&&chunk.length>0){if(typeof chunk!=="string"&&!state.objectMode&&Object.getPrototypeOf(chunk)!==Buffer.prototype){chunk=_uint8ArrayToBuffer(chunk)}if(addToFront){if(state.endEmitted)stream.emit("error",new Error("stream.unshift() after end event"));else addChunk(stream,state,chunk,true)}else if(state.ended){stream.emit("error",new Error("stream.push() after EOF"))}else{state.reading=false;if(state.decoder&&!encoding){chunk=state.decoder.write(chunk);if(state.objectMode||chunk.length!==0)addChunk(stream,state,chunk,false);else maybeReadMore(stream,state)}else{addChunk(stream,state,chunk,false)}}}else if(!addToFront){state.reading=false}}return needMoreData(state)}function addChunk(stream,state,chunk,addToFront){if(state.flowing&&state.length===0&&!state.sync){stream.emit("data",chunk);stream.read(0)}else{state.length+=state.objectMode?1:chunk.length;if(addToFront)state.buffer.unshift(chunk);else state.buffer.push(chunk);if(state.needReadable)emitReadable(stream)}maybeReadMore(stream,state)}function chunkInvalid(state,chunk){var er;if(!_isUint8Array(chunk)&&typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}return er}function needMoreData(state){return!state.ended&&(state.needReadable||state.length<state.highWaterMark||state.length===0)}Readable.prototype.isPaused=function(){return this._readableState.flowing===false};Readable.prototype.setEncoding=function(enc){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this._readableState.decoder=new StringDecoder(enc);this._readableState.encoding=enc;return this};var MAX_HWM=8388608;function computeNewHighWaterMark(n){if(n>=MAX_HWM){n=MAX_HWM}else{n--;n|=n>>>1;n|=n>>>2;n|=n>>>4;n|=n>>>8;n|=n>>>16;n++}return n}function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)return 0;if(state.objectMode)return 1;if(n!==n){if(state.flowing&&state.length)return state.buffer.head.data.length;else return state.length}if(n>state.highWaterMark)state.highWaterMark=computeNewHighWaterMark(n);if(n<=state.length)return n;if(!state.ended){state.needReadable=true;return 0}return state.length}Readable.prototype.read=function(n){debug("read",n);n=parseInt(n,10);var state=this._readableState;var nOrig=n;if(n!==0)state.emittedReadable=false;if(n===0&&state.needReadable&&(state.length>=state.highWaterMark||state.ended)){debug("read: emitReadable",state.length,state.ended);if(state.length===0&&state.ended)endReadable(this);else emitReadable(this);return null}n=howMuchToRead(n,state);if(n===0&&state.ended){if(state.length===0)endReadable(this);return null}var doRead=state.needReadable;debug("need readable",doRead);if(state.length===0||state.length-n<state.highWaterMark){doRead=true;debug("length less than watermark",doRead)}if(state.ended||state.reading){doRead=false;debug("reading or ended",doRead)}else if(doRead){debug("do read");state.reading=true;state.sync=true;if(state.length===0)state.needReadable=true;this._read(state.highWaterMark);state.sync=false;if(!state.reading)n=howMuchToRead(nOrig,state)}var ret;if(n>0)ret=fromList(n,state);else ret=null;if(ret===null){state.needReadable=true;n=0}else{state.length-=n}if(state.length===0){if(!state.ended)state.needReadable=true;if(nOrig!==n&&state.ended)endReadable(this)}if(ret!==null)this.emit("data",ret);return ret};function onEofChunk(stream,state){if(state.ended)return;if(state.decoder){var chunk=state.decoder.end();if(chunk&&chunk.length){state.buffer.push(chunk);state.length+=state.objectMode?1:chunk.length}}state.ended=true;emitReadable(stream)}function emitReadable(stream){var state=stream._readableState;state.needReadable=false;if(!state.emittedReadable){debug("emitReadable",state.flowing);state.emittedReadable=true;if(state.sync)pna.nextTick(emitReadable_,stream);else emitReadable_(stream)}}function emitReadable_(stream){debug("emit readable");stream.emit("readable");flow(stream)}function maybeReadMore(stream,state){if(!state.readingMore){state.readingMore=true;pna.nextTick(maybeReadMore_,stream,state)}}function maybeReadMore_(stream,state){var len=state.length;while(!state.reading&&!state.flowing&&!state.ended&&state.length<state.highWaterMark){debug("maybeReadMore read 0");stream.read(0);if(len===state.length)break;else len=state.length}state.readingMore=false}Readable.prototype._read=function(n){this.emit("error",new Error("_read() is not implemented"))};Readable.prototype.pipe=function(dest,pipeOpts){var src=this;var state=this._readableState;switch(state.pipesCount){case 0:state.pipes=dest;break;case 1:state.pipes=[state.pipes,dest];break;default:state.pipes.push(dest);break}state.pipesCount+=1;debug("pipe count=%d opts=%j",state.pipesCount,pipeOpts);var doEnd=(!pipeOpts||pipeOpts.end!==false)&&dest!==process.stdout&&dest!==process.stderr;var endFn=doEnd?onend:unpipe;if(state.endEmitted)pna.nextTick(endFn);else src.once("end",endFn);dest.on("unpipe",onunpipe);function onunpipe(readable,unpipeInfo){debug("onunpipe");if(readable===src){if(unpipeInfo&&unpipeInfo.hasUnpiped===false){unpipeInfo.hasUnpiped=true;cleanup()}}}function onend(){debug("onend");dest.end()}var ondrain=pipeOnDrain(src);dest.on("drain",ondrain);var cleanedUp=false;function cleanup(){debug("cleanup");dest.removeListener("close",onclose);dest.removeListener("finish",onfinish);dest.removeListener("drain",ondrain);dest.removeListener("error",onerror);dest.removeListener("unpipe",onunpipe);src.removeListener("end",onend);src.removeListener("end",unpipe);src.removeListener("data",ondata);cleanedUp=true;if(state.awaitDrain&&(!dest._writableState||dest._writableState.needDrain))ondrain()}var increasedAwaitDrain=false;src.on("data",ondata);function ondata(chunk){debug("ondata");increasedAwaitDrain=false;var ret=dest.write(chunk);if(false===ret&&!increasedAwaitDrain){if((state.pipesCount===1&&state.pipes===dest||state.pipesCount>1&&indexOf(state.pipes,dest)!==-1)&&!cleanedUp){debug("false write response, pause",src._readableState.awaitDrain);src._readableState.awaitDrain++;increasedAwaitDrain=true}src.pause()}}function onerror(er){debug("onerror",er);unpipe();dest.removeListener("error",onerror);if(EElistenerCount(dest,"error")===0)dest.emit("error",er)}prependListener(dest,"error",onerror);function onclose(){dest.removeListener("finish",onfinish);unpipe()}dest.once("close",onclose);function onfinish(){debug("onfinish");dest.removeListener("close",onclose);unpipe()}dest.once("finish",onfinish);function unpipe(){debug("unpipe");src.unpipe(dest)}dest.emit("pipe",src);if(!state.flowing){debug("pipe resume");src.resume()}return dest};function pipeOnDrain(src){return function(){var state=src._readableState;debug("pipeOnDrain",state.awaitDrain);if(state.awaitDrain)state.awaitDrain--;if(state.awaitDrain===0&&EElistenerCount(src,"data")){state.flowing=true;flow(src)}}}Readable.prototype.unpipe=function(dest){var state=this._readableState;var unpipeInfo={hasUnpiped:false};if(state.pipesCount===0)return this;if(state.pipesCount===1){if(dest&&dest!==state.pipes)return this;if(!dest)dest=state.pipes;state.pipes=null;state.pipesCount=0;state.flowing=false;if(dest)dest.emit("unpipe",this,unpipeInfo);return this}if(!dest){var dests=state.pipes;var len=state.pipesCount;state.pipes=null;state.pipesCount=0;state.flowing=false;for(var i=0;i<len;i++){dests[i].emit("unpipe",this,unpipeInfo)}return this}var index=indexOf(state.pipes,dest);if(index===-1)return this;state.pipes.splice(index,1);state.pipesCount-=1;if(state.pipesCount===1)state.pipes=state.pipes[0];dest.emit("unpipe",this,unpipeInfo);return this};Readable.prototype.on=function(ev,fn){var res=Stream.prototype.on.call(this,ev,fn);if(ev==="data"){if(this._readableState.flowing!==false)this.resume()}else if(ev==="readable"){var state=this._readableState;if(!state.endEmitted&&!state.readableListening){state.readableListening=state.needReadable=true;state.emittedReadable=false;if(!state.reading){pna.nextTick(nReadingNextTick,this)}else if(state.length){emitReadable(this)}}}return res};Readable.prototype.addListener=Readable.prototype.on;function nReadingNextTick(self){debug("readable nexttick read 0");self.read(0)}Readable.prototype.resume=function(){var state=this._readableState;if(!state.flowing){debug("resume");state.flowing=true;resume(this,state)}return this};function resume(stream,state){if(!state.resumeScheduled){state.resumeScheduled=true;pna.nextTick(resume_,stream,state)}}function resume_(stream,state){if(!state.reading){debug("resume read 0");stream.read(0)}state.resumeScheduled=false;state.awaitDrain=0;stream.emit("resume");flow(stream);if(state.flowing&&!state.reading)stream.read(0)}Readable.prototype.pause=function(){debug("call pause flowing=%j",this._readableState.flowing);if(false!==this._readableState.flowing){debug("pause");this._readableState.flowing=false;this.emit("pause")}return this};function flow(stream){var state=stream._readableState;debug("flow",state.flowing);while(state.flowing&&stream.read()!==null){}}Readable.prototype.wrap=function(stream){var _this=this;var state=this._readableState;var paused=false;stream.on("end",function(){debug("wrapped end");if(state.decoder&&!state.ended){var chunk=state.decoder.end();if(chunk&&chunk.length)_this.push(chunk)}_this.push(null)});stream.on("data",function(chunk){debug("wrapped data");if(state.decoder)chunk=state.decoder.write(chunk);if(state.objectMode&&(chunk===null||chunk===undefined))return;else if(!state.objectMode&&(!chunk||!chunk.length))return;var ret=_this.push(chunk);if(!ret){paused=true;stream.pause()}});for(var i in stream){if(this[i]===undefined&&typeof stream[i]==="function"){this[i]=function(method){return function(){return stream[method].apply(stream,arguments)}}(i)}}for(var n=0;n<kProxyEvents.length;n++){stream.on(kProxyEvents[n],this.emit.bind(this,kProxyEvents[n]))}this._read=function(n){debug("wrapped _read",n);if(paused){paused=false;stream.resume()}};return this};Object.defineProperty(Readable.prototype,"readableHighWaterMark",{enumerable:false,get:function(){return this._readableState.highWaterMark}});Readable._fromList=fromList;function fromList(n,state){if(state.length===0)return null;var ret;if(state.objectMode)ret=state.buffer.shift();else if(!n||n>=state.length){if(state.decoder)ret=state.buffer.join("");else if(state.buffer.length===1)ret=state.buffer.head.data;else ret=state.buffer.concat(state.length);state.buffer.clear()}else{ret=fromListPartial(n,state.buffer,state.decoder)}return ret}function fromListPartial(n,list,hasStrings){var ret;if(n<list.head.data.length){ret=list.head.data.slice(0,n);list.head.data=list.head.data.slice(n)}else if(n===list.head.data.length){ret=list.shift()}else{ret=hasStrings?copyFromBufferString(n,list):copyFromBuffer(n,list)}return ret}function copyFromBufferString(n,list){var p=list.head;var c=1;var ret=p.data;n-=ret.length;while(p=p.next){var str=p.data;var nb=n>str.length?str.length:n;if(nb===str.length)ret+=str;else ret+=str.slice(0,n);n-=nb;if(n===0){if(nb===str.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=str.slice(nb)}break}++c}list.length-=c;return ret}function copyFromBuffer(n,list){var ret=Buffer.allocUnsafe(n);var p=list.head;var c=1;p.data.copy(ret);n-=p.data.length;while(p=p.next){var buf=p.data;var nb=n>buf.length?buf.length:n;buf.copy(ret,ret.length-n,0,nb);n-=nb;if(n===0){if(nb===buf.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=buf.slice(nb)}break}++c}list.length-=c;return ret}function endReadable(stream){var state=stream._readableState;if(state.length>0)throw new Error('"endReadable()" called on non-empty stream');if(!state.endEmitted){state.ended=true;pna.nextTick(endReadableNT,state,stream)}}function endReadableNT(state,stream){if(!state.endEmitted&&state.length===0){state.endEmitted=true;stream.readable=false;stream.emit("end")}}function indexOf(xs,x){for(var i=0,l=xs.length;i<l;i++){if(xs[i]===x)return i}return-1}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./_stream_duplex":18,"./internal/streams/BufferList":23,"./internal/streams/destroy":24,"./internal/streams/stream":25,_process:14,"core-util-is":7,events:8,inherits:10,isarray:12,"process-nextick-args":13,"safe-buffer":15,"string_decoder/":30,util:4}],21:[function(require,module,exports){"use strict";module.exports=Transform;var Duplex=require("./_stream_duplex");var util=require("core-util-is");util.inherits=require("inherits");util.inherits(Transform,Duplex);function afterTransform(er,data){var ts=this._transformState;ts.transforming=false;var cb=ts.writecb;if(!cb){return this.emit("error",new Error("write callback called multiple times"))}ts.writechunk=null;ts.writecb=null;if(data!=null)this.push(data);cb(er);var rs=this._readableState;rs.reading=false;if(rs.needReadable||rs.length<rs.highWaterMark){this._read(rs.highWaterMark)}}function Transform(options){if(!(this instanceof Transform))return new Transform(options);Duplex.call(this,options);this._transformState={afterTransform:afterTransform.bind(this),needTransform:false,transforming:false,writecb:null,writechunk:null,writeencoding:null};this._readableState.needReadable=true;this._readableState.sync=false;if(options){if(typeof options.transform==="function")this._transform=options.transform;if(typeof options.flush==="function")this._flush=options.flush}this.on("prefinish",prefinish)}function prefinish(){var _this=this;if(typeof this._flush==="function"){this._flush(function(er,data){done(_this,er,data)})}else{done(this,null,null)}}Transform.prototype.push=function(chunk,encoding){this._transformState.needTransform=false;return Duplex.prototype.push.call(this,chunk,encoding)};Transform.prototype._transform=function(chunk,encoding,cb){throw new Error("_transform() is not implemented")};Transform.prototype._write=function(chunk,encoding,cb){var ts=this._transformState;ts.writecb=cb;ts.writechunk=chunk;ts.writeencoding=encoding;if(!ts.transforming){var rs=this._readableState;if(ts.needTransform||rs.needReadable||rs.length<rs.highWaterMark)this._read(rs.highWaterMark)}};Transform.prototype._read=function(n){var ts=this._transformState;if(ts.writechunk!==null&&ts.writecb&&!ts.transforming){ts.transforming=true;this._transform(ts.writechunk,ts.writeencoding,ts.afterTransform)}else{ts.needTransform=true}};Transform.prototype._destroy=function(err,cb){var _this2=this;Duplex.prototype._destroy.call(this,err,function(err2){cb(err2);_this2.emit("close")})};function done(stream,er,data){if(er)return stream.emit("error",er);if(data!=null)stream.push(data);if(stream._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(stream._transformState.transforming)throw new Error("Calling transform done when still transforming");return stream.push(null)}},{"./_stream_duplex":18,"core-util-is":7,inherits:10}],22:[function(require,module,exports){(function(process,global,setImmediate){"use strict";var pna=require("process-nextick-args");module.exports=Writable;function WriteReq(chunk,encoding,cb){this.chunk=chunk;this.encoding=encoding;this.callback=cb;this.next=null}function CorkedRequest(state){var _this=this;this.next=null;this.entry=null;this.finish=function(){onCorkedFinish(_this,state)}}var asyncWrite=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:pna.nextTick;var Duplex;Writable.WritableState=WritableState;var util=require("core-util-is");util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var destroyImpl=require("./internal/streams/destroy");util.inherits(Writable,Stream);function nop(){}function WritableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.writableObjectMode;var hwm=options.highWaterMark;var writableHwm=options.writableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(writableHwm||writableHwm===0))this.highWaterMark=writableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var noDecode=options.decodeStrings===false;this.decodeStrings=!noDecode;this.defaultEncoding=options.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(er){onwrite(stream,er)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var current=this.bufferedRequest;var out=[];while(current){out.push(current);current=current.next}return out};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:internalUtil.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(_){}})();var realHasInstance;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){realHasInstance=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function(object){if(realHasInstance.call(this,object))return true;if(this!==Writable)return false;return object&&object._writableState instanceof WritableState}})}else{realHasInstance=function(object){return object instanceof this}}function Writable(options){Duplex=Duplex||require("./_stream_duplex");if(!realHasInstance.call(Writable,this)&&!(this instanceof Duplex)){return new Writable(options)}this._writableState=new WritableState(options,this);this.writable=true;if(options){if(typeof options.write==="function")this._write=options.write;if(typeof options.writev==="function")this._writev=options.writev;if(typeof options.destroy==="function")this._destroy=options.destroy;if(typeof options.final==="function")this._final=options.final}Stream.call(this)}Writable.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function writeAfterEnd(stream,cb){var er=new Error("write after end");stream.emit("error",er);pna.nextTick(cb,er)}function validChunk(stream,state,chunk,cb){var valid=true;var er=false;if(chunk===null){er=new TypeError("May not write null values to stream")}else if(typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}if(er){stream.emit("error",er);pna.nextTick(cb,er);valid=false}return valid}Writable.prototype.write=function(chunk,encoding,cb){var state=this._writableState;var ret=false;var isBuf=!state.objectMode&&_isUint8Array(chunk);if(isBuf&&!Buffer.isBuffer(chunk)){chunk=_uint8ArrayToBuffer(chunk)}if(typeof encoding==="function"){cb=encoding;encoding=null}if(isBuf)encoding="buffer";else if(!encoding)encoding=state.defaultEncoding;if(typeof cb!=="function")cb=nop;if(state.ended)writeAfterEnd(this,cb);else if(isBuf||validChunk(this,state,chunk,cb)){state.pendingcb++;ret=writeOrBuffer(this,state,isBuf,chunk,encoding,cb)}return ret};Writable.prototype.cork=function(){var state=this._writableState;state.corked++};Writable.prototype.uncork=function(){var state=this._writableState;if(state.corked){state.corked--;if(!state.writing&&!state.corked&&!state.finished&&!state.bufferProcessing&&state.bufferedRequest)clearBuffer(this,state)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(encoding){if(typeof encoding==="string")encoding=encoding.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((encoding+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+encoding);this._writableState.defaultEncoding=encoding;return this};function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.decodeStrings!==false&&typeof chunk==="string"){chunk=Buffer.from(chunk,encoding)}return chunk}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function writeOrBuffer(stream,state,isBuf,chunk,encoding,cb){if(!isBuf){var newChunk=decodeChunk(state,chunk,encoding);if(chunk!==newChunk){isBuf=true;encoding="buffer";chunk=newChunk}}var len=state.objectMode?1:chunk.length;state.length+=len;var ret=state.length<state.highWaterMark;if(!ret)state.needDrain=true;if(state.writing||state.corked){var last=state.lastBufferedRequest;state.lastBufferedRequest={chunk:chunk,encoding:encoding,isBuf:isBuf,callback:cb,next:null};if(last){last.next=state.lastBufferedRequest}else{state.bufferedRequest=state.lastBufferedRequest}state.bufferedRequestCount+=1}else{doWrite(stream,state,false,len,chunk,encoding,cb)}return ret}function doWrite(stream,state,writev,len,chunk,encoding,cb){state.writelen=len;state.writecb=cb;state.writing=true;state.sync=true;if(writev)stream._writev(chunk,state.onwrite);else stream._write(chunk,encoding,state.onwrite);state.sync=false}function onwriteError(stream,state,sync,er,cb){--state.pendingcb;if(sync){pna.nextTick(cb,er);pna.nextTick(finishMaybe,stream,state);stream._writableState.errorEmitted=true;stream.emit("error",er)}else{cb(er);stream._writableState.errorEmitted=true;stream.emit("error",er);finishMaybe(stream,state)}}function onwriteStateUpdate(state){state.writing=false;state.writecb=null;state.length-=state.writelen;state.writelen=0}function onwrite(stream,er){var state=stream._writableState;var sync=state.sync;var cb=state.writecb;onwriteStateUpdate(state);if(er)onwriteError(stream,state,sync,er,cb);else{var finished=needFinish(state);if(!finished&&!state.corked&&!state.bufferProcessing&&state.bufferedRequest){clearBuffer(stream,state)}if(sync){asyncWrite(afterWrite,stream,state,finished,cb)}else{afterWrite(stream,state,finished,cb)}}}function afterWrite(stream,state,finished,cb){if(!finished)onwriteDrain(stream,state);state.pendingcb--;cb();finishMaybe(stream,state)}function onwriteDrain(stream,state){if(state.length===0&&state.needDrain){state.needDrain=false;stream.emit("drain")}}function clearBuffer(stream,state){state.bufferProcessing=true;var entry=state.bufferedRequest;if(stream._writev&&entry&&entry.next){var l=state.bufferedRequestCount;var buffer=new Array(l);var holder=state.corkedRequestsFree;holder.entry=entry;var count=0;var allBuffers=true;while(entry){buffer[count]=entry;if(!entry.isBuf)allBuffers=false;entry=entry.next;count+=1}buffer.allBuffers=allBuffers;doWrite(stream,state,true,state.length,buffer,"",holder.finish);state.pendingcb++;state.lastBufferedRequest=null;if(holder.next){state.corkedRequestsFree=holder.next;holder.next=null}else{state.corkedRequestsFree=new CorkedRequest(state)}state.bufferedRequestCount=0}else{while(entry){var chunk=entry.chunk;var encoding=entry.encoding;var cb=entry.callback;var len=state.objectMode?1:chunk.length;doWrite(stream,state,false,len,chunk,encoding,cb);entry=entry.next;state.bufferedRequestCount--;if(state.writing){break}}if(entry===null)state.lastBufferedRequest=null}state.bufferedRequest=entry;state.bufferProcessing=false}Writable.prototype._write=function(chunk,encoding,cb){cb(new Error("_write() is not implemented"))};Writable.prototype._writev=null;Writable.prototype.end=function(chunk,encoding,cb){var state=this._writableState;if(typeof chunk==="function"){cb=chunk;chunk=null;encoding=null}else if(typeof encoding==="function"){cb=encoding;encoding=null}if(chunk!==null&&chunk!==undefined)this.write(chunk,encoding);if(state.corked){state.corked=1;this.uncork()}if(!state.ending&&!state.finished)endWritable(this,state,cb)};function needFinish(state){return state.ending&&state.length===0&&state.bufferedRequest===null&&!state.finished&&!state.writing}function callFinal(stream,state){stream._final(function(err){state.pendingcb--;if(err){stream.emit("error",err)}state.prefinished=true;stream.emit("prefinish");finishMaybe(stream,state)})}function prefinish(stream,state){if(!state.prefinished&&!state.finalCalled){if(typeof stream._final==="function"){state.pendingcb++;state.finalCalled=true;pna.nextTick(callFinal,stream,state)}else{state.prefinished=true;stream.emit("prefinish")}}}function finishMaybe(stream,state){var need=needFinish(state);if(need){prefinish(stream,state);if(state.pendingcb===0){state.finished=true;stream.emit("finish")}}return need}function endWritable(stream,state,cb){state.ending=true;finishMaybe(stream,state);if(cb){if(state.finished)pna.nextTick(cb);else stream.once("finish",cb)}state.ended=true;stream.writable=false}function onCorkedFinish(corkReq,state,err){var entry=corkReq.entry;corkReq.entry=null;while(entry){var cb=entry.callback;state.pendingcb--;cb(err);entry=entry.next}if(state.corkedRequestsFree){state.corkedRequestsFree.next=corkReq}else{state.corkedRequestsFree=corkReq}}Object.defineProperty(Writable.prototype,"destroyed",{get:function(){if(this._writableState===undefined){return false}return this._writableState.destroyed},set:function(value){if(!this._writableState){return}this._writableState.destroyed=value}});Writable.prototype.destroy=destroyImpl.destroy;Writable.prototype._undestroy=destroyImpl.undestroy;Writable.prototype._destroy=function(err,cb){this.end();cb(err)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("timers").setImmediate)},{"./_stream_duplex":18,"./internal/streams/destroy":24,"./internal/streams/stream":25,_process:14,"core-util-is":7,inherits:10,"process-nextick-args":13,"safe-buffer":15,timers:32,"util-deprecate":33}],23:[function(require,module,exports){"use strict";function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}var Buffer=require("safe-buffer").Buffer;var util=require("util");function copyBuffer(src,target,offset){src.copy(target,offset)}module.exports=function(){function BufferList(){_classCallCheck(this,BufferList);this.head=null;this.tail=null;this.length=0}BufferList.prototype.push=function push(v){var entry={data:v,next:null};if(this.length>0)this.tail.next=entry;else this.head=entry;this.tail=entry;++this.length};BufferList.prototype.unshift=function unshift(v){var entry={data:v,next:this.head};if(this.length===0)this.tail=entry;this.head=entry;++this.length};BufferList.prototype.shift=function shift(){if(this.length===0)return;var ret=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return ret};BufferList.prototype.clear=function clear(){this.head=this.tail=null;this.length=0};BufferList.prototype.join=function join(s){if(this.length===0)return"";var p=this.head;var ret=""+p.data;while(p=p.next){ret+=s+p.data}return ret};BufferList.prototype.concat=function concat(n){if(this.length===0)return Buffer.alloc(0);if(this.length===1)return this.head.data;var ret=Buffer.allocUnsafe(n>>>0);var p=this.head;var i=0;while(p){copyBuffer(p.data,ret,i);i+=p.data.length;p=p.next}return ret};return BufferList}();if(util&&util.inspect&&util.inspect.custom){module.exports.prototype[util.inspect.custom]=function(){var obj=util.inspect({length:this.length});return this.constructor.name+" "+obj}}},{"safe-buffer":15,util:4}],24:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");function destroy(err,cb){var _this=this;var readableDestroyed=this._readableState&&this._readableState.destroyed;var writableDestroyed=this._writableState&&this._writableState.destroyed;if(readableDestroyed||writableDestroyed){if(cb){cb(err)}else if(err&&(!this._writableState||!this._writableState.errorEmitted)){pna.nextTick(emitErrorNT,this,err)}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(err||null,function(err){if(!cb&&err){pna.nextTick(emitErrorNT,_this,err);if(_this._writableState){_this._writableState.errorEmitted=true}}else if(cb){cb(err)}});return this}function undestroy(){if(this._readableState){this._readableState.destroyed=false;this._readableState.reading=false;this._readableState.ended=false;this._readableState.endEmitted=false}if(this._writableState){this._writableState.destroyed=false;this._writableState.ended=false;this._writableState.ending=false;this._writableState.finished=false;this._writableState.errorEmitted=false}}function emitErrorNT(self,err){self.emit("error",err)}module.exports={destroy:destroy,undestroy:undestroy}},{"process-nextick-args":13}],25:[function(require,module,exports){module.exports=require("events").EventEmitter},{events:8}],26:[function(require,module,exports){module.exports=require("./readable").PassThrough},{"./readable":27}],27:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js");exports.Stream=exports;exports.Readable=exports;exports.Writable=require("./lib/_stream_writable.js");exports.Duplex=require("./lib/_stream_duplex.js");exports.Transform=require("./lib/_stream_transform.js");exports.PassThrough=require("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":18,"./lib/_stream_passthrough.js":19,"./lib/_stream_readable.js":20,"./lib/_stream_transform.js":21,"./lib/_stream_writable.js":22}],28:[function(require,module,exports){module.exports=require("./readable").Transform},{"./readable":27}],29:[function(require,module,exports){module.exports=require("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":22}],30:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer;var isEncoding=Buffer.isEncoding||function(encoding){encoding=""+encoding;switch(encoding&&encoding.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return true;default:return false}};function _normalizeEncoding(enc){if(!enc)return"utf8";var retried;while(true){switch(enc){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return enc;default:if(retried)return;enc=(""+enc).toLowerCase();retried=true}}}function normalizeEncoding(enc){var nenc=_normalizeEncoding(enc);if(typeof nenc!=="string"&&(Buffer.isEncoding===isEncoding||!isEncoding(enc)))throw new Error("Unknown encoding: "+enc);return nenc||enc}exports.StringDecoder=StringDecoder;function StringDecoder(encoding){this.encoding=normalizeEncoding(encoding);var nb;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;nb=4;break;case"utf8":this.fillLast=utf8FillLast;nb=4;break;case"base64":this.text=base64Text;this.end=base64End;nb=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=Buffer.allocUnsafe(nb)}StringDecoder.prototype.write=function(buf){if(buf.length===0)return"";var r;var i;if(this.lastNeed){r=this.fillLast(buf);if(r===undefined)return"";i=this.lastNeed;this.lastNeed=0}else{i=0}if(i<buf.length)return r?r+this.text(buf,i):this.text(buf,i);return r||""};StringDecoder.prototype.end=utf8End;StringDecoder.prototype.text=utf8Text;StringDecoder.prototype.fillLast=function(buf){if(this.lastNeed<=buf.length){buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,buf.length);this.lastNeed-=buf.length};function utf8CheckByte(byte){if(byte<=127)return 0;else if(byte>>5===6)return 2;else if(byte>>4===14)return 3;else if(byte>>3===30)return 4;return byte>>6===2?-1:-2}function utf8CheckIncomplete(self,buf,i){var j=buf.length-1;if(j<i)return 0;var nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-1;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-2;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0){if(nb===2)nb=0;else self.lastNeed=nb-3}return nb}return 0}function utf8CheckExtraBytes(self,buf,p){if((buf[0]&192)!==128){self.lastNeed=0;return"�"}if(self.lastNeed>1&&buf.length>1){if((buf[1]&192)!==128){self.lastNeed=1;return"�"}if(self.lastNeed>2&&buf.length>2){if((buf[2]&192)!==128){self.lastNeed=2;return"�"}}}}function utf8FillLast(buf){var p=this.lastTotal-this.lastNeed;var r=utf8CheckExtraBytes(this,buf,p);if(r!==undefined)return r;if(this.lastNeed<=buf.length){buf.copy(this.lastChar,p,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,p,0,buf.length);this.lastNeed-=buf.length}function utf8Text(buf,i){var total=utf8CheckIncomplete(this,buf,i);if(!this.lastNeed)return buf.toString("utf8",i);this.lastTotal=total;var end=buf.length-(total-this.lastNeed);buf.copy(this.lastChar,0,end);return buf.toString("utf8",i,end)}function utf8End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+"�";return r}function utf16Text(buf,i){if((buf.length-i)%2===0){var r=buf.toString("utf16le",i);if(r){var c=r.charCodeAt(r.length-1);if(c>=55296&&c<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1];return r.slice(0,-1)}}return r}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=buf[buf.length-1];return buf.toString("utf16le",i,buf.length-1)}function utf16End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed){var end=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,end)}return r}function base64Text(buf,i){var n=(buf.length-i)%3;if(n===0)return buf.toString("base64",i);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=buf[buf.length-1]}else{this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1]}return buf.toString("base64",i,buf.length-n)}function base64End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+this.lastChar.toString("base64",0,3-this.lastNeed);return r}function simpleWrite(buf){return buf.toString(this.encoding)}function simpleEnd(buf){return buf&&buf.length?this.write(buf):""}},{"safe-buffer":15}],31:[function(require,module,exports){(function(process){var Stream=require("stream");exports=module.exports=through;through.through=through;function through(write,end,opts){write=write||function(data){this.queue(data)};end=end||function(){this.queue(null)};var ended=false,destroyed=false,buffer=[],_ended=false;var stream=new Stream;stream.readable=stream.writable=true;stream.paused=false;stream.autoDestroy=!(opts&&opts.autoDestroy===false);stream.write=function(data){write.call(this,data);return!stream.paused};function drain(){while(buffer.length&&!stream.paused){var data=buffer.shift();if(null===data)return stream.emit("end");else stream.emit("data",data)}}stream.queue=stream.push=function(data){if(_ended)return stream;if(data===null)_ended=true;buffer.push(data);drain();return stream};stream.on("end",function(){stream.readable=false;if(!stream.writable&&stream.autoDestroy)process.nextTick(function(){stream.destroy()})});function _end(){stream.writable=false;end.call(stream);if(!stream.readable&&stream.autoDestroy)stream.destroy()}stream.end=function(data){if(ended)return;ended=true;if(arguments.length)stream.write(data);_end();return stream};stream.destroy=function(){if(destroyed)return;destroyed=true;ended=true;buffer.length=0;stream.writable=stream.readable=false;stream.emit("close");return stream};stream.pause=function(){if(stream.paused)return;stream.paused=true;return stream};stream.resume=function(){if(stream.paused){stream.paused=false;stream.emit("resume")}drain();if(!stream.paused)stream.emit("drain");return stream};return stream}}).call(this,require("_process"))},{_process:14,stream:16}],32:[function(require,module,exports){(function(setImmediate,clearImmediate){var nextTick=require("process/browser.js").nextTick;var apply=Function.prototype.apply;var slice=Array.prototype.slice;var immediateIds={};var nextImmediateId=0;exports.setTimeout=function(){return new Timeout(apply.call(setTimeout,window,arguments),clearTimeout)};exports.setInterval=function(){return new Timeout(apply.call(setInterval,window,arguments),clearInterval)};exports.clearTimeout=exports.clearInterval=function(timeout){timeout.close()};function Timeout(id,clearFn){this._id=id;this._clearFn=clearFn}Timeout.prototype.unref=Timeout.prototype.ref=function(){};Timeout.prototype.close=function(){this._clearFn.call(window,this._id)};exports.enroll=function(item,msecs){clearTimeout(item._idleTimeoutId);item._idleTimeout=msecs};exports.unenroll=function(item){clearTimeout(item._idleTimeoutId);item._idleTimeout=-1};exports._unrefActive=exports.active=function(item){clearTimeout(item._idleTimeoutId);var msecs=item._idleTimeout;if(msecs>=0){item._idleTimeoutId=setTimeout(function onTimeout(){if(item._onTimeout)item._onTimeout()},msecs)}};exports.setImmediate=typeof setImmediate==="function"?setImmediate:function(fn){var id=nextImmediateId++;var args=arguments.length<2?false:slice.call(arguments,1);immediateIds[id]=true;nextTick(function onNextTick(){if(immediateIds[id]){if(args){fn.apply(null,args)}else{fn.call(null)}exports.clearImmediate(id)}});return id};exports.clearImmediate=typeof clearImmediate==="function"?clearImmediate:function(id){delete immediateIds[id]}}).call(this,require("timers").setImmediate,require("timers").clearImmediate)},{"process/browser.js":14,timers:32}],33:[function(require,module,exports){(function(global){module.exports=deprecate;function deprecate(fn,msg){if(config("noDeprecation")){return fn}var warned=false;function deprecated(){if(!warned){if(config("throwDeprecation")){throw new Error(msg)}else if(config("traceDeprecation")){console.trace(msg)}else{console.warn(msg)}warned=true}return fn.apply(this,arguments)}return deprecated}function config(name){try{if(!global.localStorage)return false}catch(_){return false}var val=global.localStorage[name];if(null==val)return false;return String(val).toLowerCase()==="true"}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[1])(1)});
diff --git a/node_modules/unbzip2-stream/index.js b/node_modules/unbzip2-stream/index.js
index 4333963..217d11f 100644
--- a/node_modules/unbzip2-stream/index.js
+++ b/node_modules/unbzip2-stream/index.js
@@ -17,7 +17,6 @@
         if(!blockSize){
             blockSize = bz2.header(bitReader);
             //console.error("got header of", blockSize);
-            streamCRC = 0;
             return true;
         }else{
             var bufsize = 100000 * blockSize;
@@ -79,12 +78,12 @@
         },
         function end(x) {
             //console.error(x,'last compressing with', hasBytes, 'bytes in buffer');
-            while (!broken && bitReader && hasBytes > bitReader.bytesRead){
+            while (!broken && hasBytes > bitReader.bytesRead){
                 decompressAndQueue(this);
             }
             if (!broken) {
                 if (streamCRC !== null)
-                    this.emit('error', new Error("input stream ended prematurely"));
+                    stream.emit('error', new Error("input stream ended prematurely"));
                 this.queue(null);
             }
         }
diff --git a/node_modules/unbzip2-stream/lib/bzip2.js b/node_modules/unbzip2-stream/lib/bzip2.js
index 61c8cee..6968e23 100644
--- a/node_modules/unbzip2-stream/lib/bzip2.js
+++ b/node_modules/unbzip2-stream/lib/bzip2.js
@@ -241,8 +241,8 @@
 
         hufGroup.minLen = minLen;
         hufGroup.maxLen = maxLen;
-        var base = hufGroup.base;
-        var limit = hufGroup.limit;
+        var base = hufGroup.base.subarray(1);
+        var limit = hufGroup.limit.subarray(1);
         var pp = 0;
         for(var i = minLen; i <= maxLen; i++)
         for(var t = 0; t < symCount; t++)
@@ -271,8 +271,8 @@
             symCount = GROUP_SIZE - 1;
             if (selector >= nSelectors) message.Error("meow i'm a kitty, that's an error");
             hufGroup = groups[this.selectors[selector++]];
-            base = hufGroup.base;
-            limit = hufGroup.limit;
+            base = hufGroup.base.subarray(1);
+            limit = hufGroup.limit.subarray(1);
         }
         i = hufGroup.minLen;
         j = bits(i);
@@ -358,6 +358,8 @@
 
     crc = (crc ^ (-1)) >>> 0;
     if ((crc|0) != (crcblock|0)) message.Error("Error in bzip2: crc32 do not match");
+    if (streamCRC === null)
+      streamCRC = 0;
     streamCRC = (crc ^ ((streamCRC << 1) | (streamCRC >>> 31))) & 0xFFFFFFFF;
     return streamCRC;
 }
diff --git a/node_modules/unbzip2-stream/package.json b/node_modules/unbzip2-stream/package.json
index 47393e5..b500e3c 100644
--- a/node_modules/unbzip2-stream/package.json
+++ b/node_modules/unbzip2-stream/package.json
@@ -1,6 +1,6 @@
 {
   "name": "unbzip2-stream",
-  "version": "1.4.3",
+  "version": "1.3.3",
   "description": "streaming unbzip2 implementation in pure javascript for node and browsers",
   "keywords": [
     "bzip",
diff --git a/node_modules/webidl-conversions/LICENSE.md b/node_modules/webidl-conversions/LICENSE.md
deleted file mode 100644
index d4a994f..0000000
--- a/node_modules/webidl-conversions/LICENSE.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# The BSD 2-Clause License
-
-Copyright (c) 2014, Domenic Denicola
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/node_modules/webidl-conversions/README.md b/node_modules/webidl-conversions/README.md
deleted file mode 100644
index 3657890..0000000
--- a/node_modules/webidl-conversions/README.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# WebIDL Type Conversions on JavaScript Values
-
-This package implements, in JavaScript, the algorithms to convert a given JavaScript value according to a given [WebIDL](http://heycam.github.io/webidl/) [type](http://heycam.github.io/webidl/#idl-types).
-
-The goal is that you should be able to write code like
-
-```js
-const conversions = require("webidl-conversions");
-
-function doStuff(x, y) {
-    x = conversions["boolean"](x);
-    y = conversions["unsigned long"](y);
-    // actual algorithm code here
-}
-```
-
-and your function `doStuff` will behave the same as a WebIDL operation declared as
-
-```webidl
-void doStuff(boolean x, unsigned long y);
-```
-
-## API
-
-This package's main module's default export is an object with a variety of methods, each corresponding to a different WebIDL type. Each method, when invoked on a JavaScript value, will give back the new JavaScript value that results after passing through the WebIDL conversion rules. (See below for more details on what that means.) Alternately, the method could throw an error, if the WebIDL algorithm is specified to do so: for example `conversions["float"](NaN)` [will throw a `TypeError`](http://heycam.github.io/webidl/#es-float).
-
-## Status
-
-All of the numeric types are implemented (float being implemented as double) and some others are as well - check the source for all of them. This list will grow over time in service of the [HTML as Custom Elements](https://github.com/dglazkov/html-as-custom-elements) project, but in the meantime, pull requests welcome!
-
-I'm not sure yet what the strategy will be for modifiers, e.g. [`[Clamp]`](http://heycam.github.io/webidl/#Clamp). Maybe something like `conversions["unsigned long"](x, { clamp: true })`? We'll see.
-
-We might also want to extend the API to give better error messages, e.g. "Argument 1 of HTMLMediaElement.fastSeek is not a finite floating-point value" instead of "Argument is not a finite floating-point value." This would require passing in more information to the conversion functions than we currently do.
-
-## Background
-
-What's actually going on here, conceptually, is pretty weird. Let's try to explain.
-
-WebIDL, as part of its madness-inducing design, has its own type system. When people write algorithms in web platform specs, they usually operate on WebIDL values, i.e. instances of WebIDL types. For example, if they were specifying the algorithm for our `doStuff` operation above, they would treat `x` as a WebIDL value of [WebIDL type `boolean`](http://heycam.github.io/webidl/#idl-boolean). Crucially, they would _not_ treat `x` as a JavaScript variable whose value is either the JavaScript `true` or `false`. They're instead working in a different type system altogether, with its own rules.
-
-Separately from its type system, WebIDL defines a ["binding"](http://heycam.github.io/webidl/#ecmascript-binding) of the type system into JavaScript. This contains rules like: when you pass a JavaScript value to the JavaScript method that manifests a given WebIDL operation, how does that get converted into a WebIDL value? For example, a JavaScript `true` passed in the position of a WebIDL `boolean` argument becomes a WebIDL `true`. But, a JavaScript `true` passed in the position of a [WebIDL `unsigned long`](http://heycam.github.io/webidl/#idl-unsigned-long) becomes a WebIDL `1`. And so on.
-
-Finally, we have the actual implementation code. This is usually C++, although these days [some smart people are using Rust](https://github.com/servo/servo). The implementation, of course, has its own type system. So when they implement the WebIDL algorithms, they don't actually use WebIDL values, since those aren't "real" outside of specs. Instead, implementations apply the WebIDL binding rules in such a way as to convert incoming JavaScript values into C++ values. For example, if code in the browser called `doStuff(true, true)`, then the implementation code would eventually receive a C++ `bool` containing `true` and a C++ `uint32_t` containing `1`.
-
-The upside of all this is that implementations can abstract all the conversion logic away, letting WebIDL handle it, and focus on implementing the relevant methods in C++ with values of the correct type already provided. That is payoff of WebIDL, in a nutshell.
-
-And getting to that payoff is the goal of _this_ project—but for JavaScript implementations, instead of C++ ones. That is, this library is designed to make it easier for JavaScript developers to write functions that behave like a given WebIDL operation. So conceptually, the conversion pipeline, which in its general form is JavaScript values ↦ WebIDL values ↦ implementation-language values, in this case becomes JavaScript values ↦ WebIDL values ↦ JavaScript values. And that intermediate step is where all the logic is performed: a JavaScript `true` becomes a WebIDL `1` in an unsigned long context, which then becomes a JavaScript `1`.
-
-## Don't Use This
-
-Seriously, why would you ever use this? You really shouldn't. WebIDL is … not great, and you shouldn't be emulating its semantics. If you're looking for a generic argument-processing library, you should find one with better rules than those from WebIDL. In general, your JavaScript should not be trying to become more like WebIDL; if anything, we should fix WebIDL to make it more like JavaScript.
-
-The _only_ people who should use this are those trying to create faithful implementations (or polyfills) of web platform interfaces defined in WebIDL.
diff --git a/node_modules/webidl-conversions/lib/index.js b/node_modules/webidl-conversions/lib/index.js
deleted file mode 100644
index c5153a3..0000000
--- a/node_modules/webidl-conversions/lib/index.js
+++ /dev/null
@@ -1,189 +0,0 @@
-"use strict";
-
-var conversions = {};
-module.exports = conversions;
-
-function sign(x) {
-    return x < 0 ? -1 : 1;
-}
-
-function evenRound(x) {
-    // Round x to the nearest integer, choosing the even integer if it lies halfway between two.
-    if ((x % 1) === 0.5 && (x & 1) === 0) { // [even number].5; round down (i.e. floor)
-        return Math.floor(x);
-    } else {
-        return Math.round(x);
-    }
-}
-
-function createNumberConversion(bitLength, typeOpts) {
-    if (!typeOpts.unsigned) {
-        --bitLength;
-    }
-    const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);
-    const upperBound = Math.pow(2, bitLength) - 1;
-
-    const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);
-    const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);
-
-    return function(V, opts) {
-        if (!opts) opts = {};
-
-        let x = +V;
-
-        if (opts.enforceRange) {
-            if (!Number.isFinite(x)) {
-                throw new TypeError("Argument is not a finite number");
-            }
-
-            x = sign(x) * Math.floor(Math.abs(x));
-            if (x < lowerBound || x > upperBound) {
-                throw new TypeError("Argument is not in byte range");
-            }
-
-            return x;
-        }
-
-        if (!isNaN(x) && opts.clamp) {
-            x = evenRound(x);
-
-            if (x < lowerBound) x = lowerBound;
-            if (x > upperBound) x = upperBound;
-            return x;
-        }
-
-        if (!Number.isFinite(x) || x === 0) {
-            return 0;
-        }
-
-        x = sign(x) * Math.floor(Math.abs(x));
-        x = x % moduloVal;
-
-        if (!typeOpts.unsigned && x >= moduloBound) {
-            return x - moduloVal;
-        } else if (typeOpts.unsigned) {
-            if (x < 0) {
-              x += moduloVal;
-            } else if (x === -0) { // don't return negative zero
-              return 0;
-            }
-        }
-
-        return x;
-    }
-}
-
-conversions["void"] = function () {
-    return undefined;
-};
-
-conversions["boolean"] = function (val) {
-    return !!val;
-};
-
-conversions["byte"] = createNumberConversion(8, { unsigned: false });
-conversions["octet"] = createNumberConversion(8, { unsigned: true });
-
-conversions["short"] = createNumberConversion(16, { unsigned: false });
-conversions["unsigned short"] = createNumberConversion(16, { unsigned: true });
-
-conversions["long"] = createNumberConversion(32, { unsigned: false });
-conversions["unsigned long"] = createNumberConversion(32, { unsigned: true });
-
-conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });
-conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });
-
-conversions["double"] = function (V) {
-    const x = +V;
-
-    if (!Number.isFinite(x)) {
-        throw new TypeError("Argument is not a finite floating-point value");
-    }
-
-    return x;
-};
-
-conversions["unrestricted double"] = function (V) {
-    const x = +V;
-
-    if (isNaN(x)) {
-        throw new TypeError("Argument is NaN");
-    }
-
-    return x;
-};
-
-// not quite valid, but good enough for JS
-conversions["float"] = conversions["double"];
-conversions["unrestricted float"] = conversions["unrestricted double"];
-
-conversions["DOMString"] = function (V, opts) {
-    if (!opts) opts = {};
-
-    if (opts.treatNullAsEmptyString && V === null) {
-        return "";
-    }
-
-    return String(V);
-};
-
-conversions["ByteString"] = function (V, opts) {
-    const x = String(V);
-    let c = undefined;
-    for (let i = 0; (c = x.codePointAt(i)) !== undefined; ++i) {
-        if (c > 255) {
-            throw new TypeError("Argument is not a valid bytestring");
-        }
-    }
-
-    return x;
-};
-
-conversions["USVString"] = function (V) {
-    const S = String(V);
-    const n = S.length;
-    const U = [];
-    for (let i = 0; i < n; ++i) {
-        const c = S.charCodeAt(i);
-        if (c < 0xD800 || c > 0xDFFF) {
-            U.push(String.fromCodePoint(c));
-        } else if (0xDC00 <= c && c <= 0xDFFF) {
-            U.push(String.fromCodePoint(0xFFFD));
-        } else {
-            if (i === n - 1) {
-                U.push(String.fromCodePoint(0xFFFD));
-            } else {
-                const d = S.charCodeAt(i + 1);
-                if (0xDC00 <= d && d <= 0xDFFF) {
-                    const a = c & 0x3FF;
-                    const b = d & 0x3FF;
-                    U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));
-                    ++i;
-                } else {
-                    U.push(String.fromCodePoint(0xFFFD));
-                }
-            }
-        }
-    }
-
-    return U.join('');
-};
-
-conversions["Date"] = function (V, opts) {
-    if (!(V instanceof Date)) {
-        throw new TypeError("Argument is not a Date object");
-    }
-    if (isNaN(V)) {
-        return undefined;
-    }
-
-    return V;
-};
-
-conversions["RegExp"] = function (V, opts) {
-    if (!(V instanceof RegExp)) {
-        V = new RegExp(V);
-    }
-
-    return V;
-};
diff --git a/node_modules/webidl-conversions/package.json b/node_modules/webidl-conversions/package.json
deleted file mode 100644
index c31bc07..0000000
--- a/node_modules/webidl-conversions/package.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-  "name": "webidl-conversions",
-  "version": "3.0.1",
-  "description": "Implements the WebIDL algorithms for converting to and from JavaScript values",
-  "main": "lib/index.js",
-  "scripts": {
-    "test": "mocha test/*.js"
-  },
-  "repository": "jsdom/webidl-conversions",
-  "keywords": [
-    "webidl",
-    "web",
-    "types"
-  ],
-  "files": [
-    "lib/"
-  ],
-  "author": "Domenic Denicola <[email protected]> (https://domenic.me/)",
-  "license": "BSD-2-Clause",
-  "devDependencies": {
-    "mocha": "^1.21.4"
-  }
-}
diff --git a/node_modules/whatwg-url/LICENSE.txt b/node_modules/whatwg-url/LICENSE.txt
deleted file mode 100644
index 54dfac3..0000000
--- a/node_modules/whatwg-url/LICENSE.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2015–2016 Sebastian Mayr
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/node_modules/whatwg-url/README.md b/node_modules/whatwg-url/README.md
deleted file mode 100644
index 4347a7f..0000000
--- a/node_modules/whatwg-url/README.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# whatwg-url
-
-whatwg-url is a full implementation of the WHATWG [URL Standard](https://url.spec.whatwg.org/). It can be used standalone, but it also exposes a lot of the internal algorithms that are useful for integrating a URL parser into a project like [jsdom](https://github.com/tmpvar/jsdom).
-
-## Current Status
-
-whatwg-url is currently up to date with the URL spec up to commit [a62223](https://github.com/whatwg/url/commit/a622235308342c9adc7fc2fd1659ff059f7d5e2a).
-
-## API
-
-### The `URL` Constructor
-
-The main API is the [`URL`](https://url.spec.whatwg.org/#url) export, which follows the spec's behavior in all ways (including e.g. `USVString` conversion). Most consumers of this library will want to use this.
-
-### Low-level URL Standard API
-
-The following methods are exported for use by places like jsdom that need to implement things like [`HTMLHyperlinkElementUtils`](https://html.spec.whatwg.org/#htmlhyperlinkelementutils). They operate on or return an "internal URL" or ["URL record"](https://url.spec.whatwg.org/#concept-url) type.
-
-- [URL parser](https://url.spec.whatwg.org/#concept-url-parser): `parseURL(input, { baseURL, encodingOverride })`
-- [Basic URL parser](https://url.spec.whatwg.org/#concept-basic-url-parser): `basicURLParse(input, { baseURL, encodingOverride, url, stateOverride })`
-- [URL serializer](https://url.spec.whatwg.org/#concept-url-serializer): `serializeURL(urlRecord, excludeFragment)`
-- [Host serializer](https://url.spec.whatwg.org/#concept-host-serializer): `serializeHost(hostFromURLRecord)`
-- [Serialize an integer](https://url.spec.whatwg.org/#serialize-an-integer): `serializeInteger(number)`
-- [Origin](https://url.spec.whatwg.org/#concept-url-origin) [serializer](https://html.spec.whatwg.org/multipage/browsers.html#serialization-of-an-origin): `serializeURLOrigin(urlRecord)`
-- [Set the username](https://url.spec.whatwg.org/#set-the-username): `setTheUsername(urlRecord, usernameString)`
-- [Set the password](https://url.spec.whatwg.org/#set-the-password): `setThePassword(urlRecord, passwordString)`
-- [Cannot have a username/password/port](https://url.spec.whatwg.org/#cannot-have-a-username-password-port): `cannotHaveAUsernamePasswordPort(urlRecord)`
-
-The `stateOverride` parameter is one of the following strings:
-
-- [`"scheme start"`](https://url.spec.whatwg.org/#scheme-start-state)
-- [`"scheme"`](https://url.spec.whatwg.org/#scheme-state)
-- [`"no scheme"`](https://url.spec.whatwg.org/#no-scheme-state)
-- [`"special relative or authority"`](https://url.spec.whatwg.org/#special-relative-or-authority-state)
-- [`"path or authority"`](https://url.spec.whatwg.org/#path-or-authority-state)
-- [`"relative"`](https://url.spec.whatwg.org/#relative-state)
-- [`"relative slash"`](https://url.spec.whatwg.org/#relative-slash-state)
-- [`"special authority slashes"`](https://url.spec.whatwg.org/#special-authority-slashes-state)
-- [`"special authority ignore slashes"`](https://url.spec.whatwg.org/#special-authority-ignore-slashes-state)
-- [`"authority"`](https://url.spec.whatwg.org/#authority-state)
-- [`"host"`](https://url.spec.whatwg.org/#host-state)
-- [`"hostname"`](https://url.spec.whatwg.org/#hostname-state)
-- [`"port"`](https://url.spec.whatwg.org/#port-state)
-- [`"file"`](https://url.spec.whatwg.org/#file-state)
-- [`"file slash"`](https://url.spec.whatwg.org/#file-slash-state)
-- [`"file host"`](https://url.spec.whatwg.org/#file-host-state)
-- [`"path start"`](https://url.spec.whatwg.org/#path-start-state)
-- [`"path"`](https://url.spec.whatwg.org/#path-state)
-- [`"cannot-be-a-base-URL path"`](https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state)
-- [`"query"`](https://url.spec.whatwg.org/#query-state)
-- [`"fragment"`](https://url.spec.whatwg.org/#fragment-state)
-
-The URL record type has the following API:
-
-- [`scheme`](https://url.spec.whatwg.org/#concept-url-scheme)
-- [`username`](https://url.spec.whatwg.org/#concept-url-username)
-- [`password`](https://url.spec.whatwg.org/#concept-url-password)
-- [`host`](https://url.spec.whatwg.org/#concept-url-host)
-- [`port`](https://url.spec.whatwg.org/#concept-url-port)
-- [`path`](https://url.spec.whatwg.org/#concept-url-path) (as an array)
-- [`query`](https://url.spec.whatwg.org/#concept-url-query)
-- [`fragment`](https://url.spec.whatwg.org/#concept-url-fragment)
-- [`cannotBeABaseURL`](https://url.spec.whatwg.org/#url-cannot-be-a-base-url-flag) (as a boolean)
-
-These properties should be treated with care, as in general changing them will cause the URL record to be in an inconsistent state until the appropriate invocation of `basicURLParse` is used to fix it up. You can see examples of this in the URL Standard, where there are many step sequences like "4. Set context object’s url’s fragment to the empty string. 5. Basic URL parse _input_ with context object’s url as _url_ and fragment state as _state override_." In between those two steps, a URL record is in an unusable state.
-
-The return value of "failure" in the spec is represented by the string `"failure"`. That is, functions like `parseURL` and `basicURLParse` can return _either_ a URL record _or_ the string `"failure"`.
diff --git a/node_modules/whatwg-url/lib/URL-impl.js b/node_modules/whatwg-url/lib/URL-impl.js
deleted file mode 100644
index dc7452c..0000000
--- a/node_modules/whatwg-url/lib/URL-impl.js
+++ /dev/null
@@ -1,200 +0,0 @@
-"use strict";
-const usm = require("./url-state-machine");
-
-exports.implementation = class URLImpl {
-  constructor(constructorArgs) {
-    const url = constructorArgs[0];
-    const base = constructorArgs[1];
-
-    let parsedBase = null;
-    if (base !== undefined) {
-      parsedBase = usm.basicURLParse(base);
-      if (parsedBase === "failure") {
-        throw new TypeError("Invalid base URL");
-      }
-    }
-
-    const parsedURL = usm.basicURLParse(url, { baseURL: parsedBase });
-    if (parsedURL === "failure") {
-      throw new TypeError("Invalid URL");
-    }
-
-    this._url = parsedURL;
-
-    // TODO: query stuff
-  }
-
-  get href() {
-    return usm.serializeURL(this._url);
-  }
-
-  set href(v) {
-    const parsedURL = usm.basicURLParse(v);
-    if (parsedURL === "failure") {
-      throw new TypeError("Invalid URL");
-    }
-
-    this._url = parsedURL;
-  }
-
-  get origin() {
-    return usm.serializeURLOrigin(this._url);
-  }
-
-  get protocol() {
-    return this._url.scheme + ":";
-  }
-
-  set protocol(v) {
-    usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" });
-  }
-
-  get username() {
-    return this._url.username;
-  }
-
-  set username(v) {
-    if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
-      return;
-    }
-
-    usm.setTheUsername(this._url, v);
-  }
-
-  get password() {
-    return this._url.password;
-  }
-
-  set password(v) {
-    if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
-      return;
-    }
-
-    usm.setThePassword(this._url, v);
-  }
-
-  get host() {
-    const url = this._url;
-
-    if (url.host === null) {
-      return "";
-    }
-
-    if (url.port === null) {
-      return usm.serializeHost(url.host);
-    }
-
-    return usm.serializeHost(url.host) + ":" + usm.serializeInteger(url.port);
-  }
-
-  set host(v) {
-    if (this._url.cannotBeABaseURL) {
-      return;
-    }
-
-    usm.basicURLParse(v, { url: this._url, stateOverride: "host" });
-  }
-
-  get hostname() {
-    if (this._url.host === null) {
-      return "";
-    }
-
-    return usm.serializeHost(this._url.host);
-  }
-
-  set hostname(v) {
-    if (this._url.cannotBeABaseURL) {
-      return;
-    }
-
-    usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" });
-  }
-
-  get port() {
-    if (this._url.port === null) {
-      return "";
-    }
-
-    return usm.serializeInteger(this._url.port);
-  }
-
-  set port(v) {
-    if (usm.cannotHaveAUsernamePasswordPort(this._url)) {
-      return;
-    }
-
-    if (v === "") {
-      this._url.port = null;
-    } else {
-      usm.basicURLParse(v, { url: this._url, stateOverride: "port" });
-    }
-  }
-
-  get pathname() {
-    if (this._url.cannotBeABaseURL) {
-      return this._url.path[0];
-    }
-
-    if (this._url.path.length === 0) {
-      return "";
-    }
-
-    return "/" + this._url.path.join("/");
-  }
-
-  set pathname(v) {
-    if (this._url.cannotBeABaseURL) {
-      return;
-    }
-
-    this._url.path = [];
-    usm.basicURLParse(v, { url: this._url, stateOverride: "path start" });
-  }
-
-  get search() {
-    if (this._url.query === null || this._url.query === "") {
-      return "";
-    }
-
-    return "?" + this._url.query;
-  }
-
-  set search(v) {
-    // TODO: query stuff
-
-    const url = this._url;
-
-    if (v === "") {
-      url.query = null;
-      return;
-    }
-
-    const input = v[0] === "?" ? v.substring(1) : v;
-    url.query = "";
-    usm.basicURLParse(input, { url, stateOverride: "query" });
-  }
-
-  get hash() {
-    if (this._url.fragment === null || this._url.fragment === "") {
-      return "";
-    }
-
-    return "#" + this._url.fragment;
-  }
-
-  set hash(v) {
-    if (v === "") {
-      this._url.fragment = null;
-      return;
-    }
-
-    const input = v[0] === "#" ? v.substring(1) : v;
-    this._url.fragment = "";
-    usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" });
-  }
-
-  toJSON() {
-    return this.href;
-  }
-};
diff --git a/node_modules/whatwg-url/lib/URL.js b/node_modules/whatwg-url/lib/URL.js
deleted file mode 100644
index 78c7207..0000000
--- a/node_modules/whatwg-url/lib/URL.js
+++ /dev/null
@@ -1,196 +0,0 @@
-"use strict";
-
-const conversions = require("webidl-conversions");
-const utils = require("./utils.js");
-const Impl = require(".//URL-impl.js");
-
-const impl = utils.implSymbol;
-
-function URL(url) {
-  if (!this || this[impl] || !(this instanceof URL)) {
-    throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");
-  }
-  if (arguments.length < 1) {
-    throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present.");
-  }
-  const args = [];
-  for (let i = 0; i < arguments.length && i < 2; ++i) {
-    args[i] = arguments[i];
-  }
-  args[0] = conversions["USVString"](args[0]);
-  if (args[1] !== undefined) {
-  args[1] = conversions["USVString"](args[1]);
-  }
-
-  module.exports.setup(this, args);
-}
-
-URL.prototype.toJSON = function toJSON() {
-  if (!this || !module.exports.is(this)) {
-    throw new TypeError("Illegal invocation");
-  }
-  const args = [];
-  for (let i = 0; i < arguments.length && i < 0; ++i) {
-    args[i] = arguments[i];
-  }
-  return this[impl].toJSON.apply(this[impl], args);
-};
-Object.defineProperty(URL.prototype, "href", {
-  get() {
-    return this[impl].href;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].href = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-URL.prototype.toString = function () {
-  if (!this || !module.exports.is(this)) {
-    throw new TypeError("Illegal invocation");
-  }
-  return this.href;
-};
-
-Object.defineProperty(URL.prototype, "origin", {
-  get() {
-    return this[impl].origin;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "protocol", {
-  get() {
-    return this[impl].protocol;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].protocol = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "username", {
-  get() {
-    return this[impl].username;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].username = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "password", {
-  get() {
-    return this[impl].password;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].password = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "host", {
-  get() {
-    return this[impl].host;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].host = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "hostname", {
-  get() {
-    return this[impl].hostname;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].hostname = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "port", {
-  get() {
-    return this[impl].port;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].port = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "pathname", {
-  get() {
-    return this[impl].pathname;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].pathname = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "search", {
-  get() {
-    return this[impl].search;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].search = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-Object.defineProperty(URL.prototype, "hash", {
-  get() {
-    return this[impl].hash;
-  },
-  set(V) {
-    V = conversions["USVString"](V);
-    this[impl].hash = V;
-  },
-  enumerable: true,
-  configurable: true
-});
-
-
-module.exports = {
-  is(obj) {
-    return !!obj && obj[impl] instanceof Impl.implementation;
-  },
-  create(constructorArgs, privateData) {
-    let obj = Object.create(URL.prototype);
-    this.setup(obj, constructorArgs, privateData);
-    return obj;
-  },
-  setup(obj, constructorArgs, privateData) {
-    if (!privateData) privateData = {};
-    privateData.wrapper = obj;
-
-    obj[impl] = new Impl.implementation(constructorArgs, privateData);
-    obj[impl][utils.wrapperSymbol] = obj;
-  },
-  interface: URL,
-  expose: {
-    Window: { URL: URL },
-    Worker: { URL: URL }
-  }
-};
-
diff --git a/node_modules/whatwg-url/lib/public-api.js b/node_modules/whatwg-url/lib/public-api.js
deleted file mode 100644
index 932dcad..0000000
--- a/node_modules/whatwg-url/lib/public-api.js
+++ /dev/null
@@ -1,11 +0,0 @@
-"use strict";
-
-exports.URL = require("./URL").interface;
-exports.serializeURL = require("./url-state-machine").serializeURL;
-exports.serializeURLOrigin = require("./url-state-machine").serializeURLOrigin;
-exports.basicURLParse = require("./url-state-machine").basicURLParse;
-exports.setTheUsername = require("./url-state-machine").setTheUsername;
-exports.setThePassword = require("./url-state-machine").setThePassword;
-exports.serializeHost = require("./url-state-machine").serializeHost;
-exports.serializeInteger = require("./url-state-machine").serializeInteger;
-exports.parseURL = require("./url-state-machine").parseURL;
diff --git a/node_modules/whatwg-url/lib/url-state-machine.js b/node_modules/whatwg-url/lib/url-state-machine.js
deleted file mode 100644
index 27d977a..0000000
--- a/node_modules/whatwg-url/lib/url-state-machine.js
+++ /dev/null
@@ -1,1297 +0,0 @@
-"use strict";
-const punycode = require("punycode");
-const tr46 = require("tr46");
-
-const specialSchemes = {
-  ftp: 21,
-  file: null,
-  gopher: 70,
-  http: 80,
-  https: 443,
-  ws: 80,
-  wss: 443
-};
-
-const failure = Symbol("failure");
-
-function countSymbols(str) {
-  return punycode.ucs2.decode(str).length;
-}
-
-function at(input, idx) {
-  const c = input[idx];
-  return isNaN(c) ? undefined : String.fromCodePoint(c);
-}
-
-function isASCIIDigit(c) {
-  return c >= 0x30 && c <= 0x39;
-}
-
-function isASCIIAlpha(c) {
-  return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A);
-}
-
-function isASCIIAlphanumeric(c) {
-  return isASCIIAlpha(c) || isASCIIDigit(c);
-}
-
-function isASCIIHex(c) {
-  return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66);
-}
-
-function isSingleDot(buffer) {
-  return buffer === "." || buffer.toLowerCase() === "%2e";
-}
-
-function isDoubleDot(buffer) {
-  buffer = buffer.toLowerCase();
-  return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e";
-}
-
-function isWindowsDriveLetterCodePoints(cp1, cp2) {
-  return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);
-}
-
-function isWindowsDriveLetterString(string) {
-  return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|");
-}
-
-function isNormalizedWindowsDriveLetterString(string) {
-  return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":";
-}
-
-function containsForbiddenHostCodePoint(string) {
-  return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1;
-}
-
-function containsForbiddenHostCodePointExcludingPercent(string) {
-  return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1;
-}
-
-function isSpecialScheme(scheme) {
-  return specialSchemes[scheme] !== undefined;
-}
-
-function isSpecial(url) {
-  return isSpecialScheme(url.scheme);
-}
-
-function defaultPort(scheme) {
-  return specialSchemes[scheme];
-}
-
-function percentEncode(c) {
-  let hex = c.toString(16).toUpperCase();
-  if (hex.length === 1) {
-    hex = "0" + hex;
-  }
-
-  return "%" + hex;
-}
-
-function utf8PercentEncode(c) {
-  const buf = new Buffer(c);
-
-  let str = "";
-
-  for (let i = 0; i < buf.length; ++i) {
-    str += percentEncode(buf[i]);
-  }
-
-  return str;
-}
-
-function utf8PercentDecode(str) {
-  const input = new Buffer(str);
-  const output = [];
-  for (let i = 0; i < input.length; ++i) {
-    if (input[i] !== 37) {
-      output.push(input[i]);
-    } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {
-      output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));
-      i += 2;
-    } else {
-      output.push(input[i]);
-    }
-  }
-  return new Buffer(output).toString();
-}
-
-function isC0ControlPercentEncode(c) {
-  return c <= 0x1F || c > 0x7E;
-}
-
-const extraPathPercentEncodeSet = new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);
-function isPathPercentEncode(c) {
-  return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);
-}
-
-const extraUserinfoPercentEncodeSet =
-  new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);
-function isUserinfoPercentEncode(c) {
-  return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);
-}
-
-function percentEncodeChar(c, encodeSetPredicate) {
-  const cStr = String.fromCodePoint(c);
-
-  if (encodeSetPredicate(c)) {
-    return utf8PercentEncode(cStr);
-  }
-
-  return cStr;
-}
-
-function parseIPv4Number(input) {
-  let R = 10;
-
-  if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") {
-    input = input.substring(2);
-    R = 16;
-  } else if (input.length >= 2 && input.charAt(0) === "0") {
-    input = input.substring(1);
-    R = 8;
-  }
-
-  if (input === "") {
-    return 0;
-  }
-
-  const regex = R === 10 ? /[^0-9]/ : (R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/);
-  if (regex.test(input)) {
-    return failure;
-  }
-
-  return parseInt(input, R);
-}
-
-function parseIPv4(input) {
-  const parts = input.split(".");
-  if (parts[parts.length - 1] === "") {
-    if (parts.length > 1) {
-      parts.pop();
-    }
-  }
-
-  if (parts.length > 4) {
-    return input;
-  }
-
-  const numbers = [];
-  for (const part of parts) {
-    if (part === "") {
-      return input;
-    }
-    const n = parseIPv4Number(part);
-    if (n === failure) {
-      return input;
-    }
-
-    numbers.push(n);
-  }
-
-  for (let i = 0; i < numbers.length - 1; ++i) {
-    if (numbers[i] > 255) {
-      return failure;
-    }
-  }
-  if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {
-    return failure;
-  }
-
-  let ipv4 = numbers.pop();
-  let counter = 0;
-
-  for (const n of numbers) {
-    ipv4 += n * Math.pow(256, 3 - counter);
-    ++counter;
-  }
-
-  return ipv4;
-}
-
-function serializeIPv4(address) {
-  let output = "";
-  let n = address;
-
-  for (let i = 1; i <= 4; ++i) {
-    output = String(n % 256) + output;
-    if (i !== 4) {
-      output = "." + output;
-    }
-    n = Math.floor(n / 256);
-  }
-
-  return output;
-}
-
-function parseIPv6(input) {
-  const address = [0, 0, 0, 0, 0, 0, 0, 0];
-  let pieceIndex = 0;
-  let compress = null;
-  let pointer = 0;
-
-  input = punycode.ucs2.decode(input);
-
-  if (input[pointer] === 58) {
-    if (input[pointer + 1] !== 58) {
-      return failure;
-    }
-
-    pointer += 2;
-    ++pieceIndex;
-    compress = pieceIndex;
-  }
-
-  while (pointer < input.length) {
-    if (pieceIndex === 8) {
-      return failure;
-    }
-
-    if (input[pointer] === 58) {
-      if (compress !== null) {
-        return failure;
-      }
-      ++pointer;
-      ++pieceIndex;
-      compress = pieceIndex;
-      continue;
-    }
-
-    let value = 0;
-    let length = 0;
-
-    while (length < 4 && isASCIIHex(input[pointer])) {
-      value = value * 0x10 + parseInt(at(input, pointer), 16);
-      ++pointer;
-      ++length;
-    }
-
-    if (input[pointer] === 46) {
-      if (length === 0) {
-        return failure;
-      }
-
-      pointer -= length;
-
-      if (pieceIndex > 6) {
-        return failure;
-      }
-
-      let numbersSeen = 0;
-
-      while (input[pointer] !== undefined) {
-        let ipv4Piece = null;
-
-        if (numbersSeen > 0) {
-          if (input[pointer] === 46 && numbersSeen < 4) {
-            ++pointer;
-          } else {
-            return failure;
-          }
-        }
-
-        if (!isASCIIDigit(input[pointer])) {
-          return failure;
-        }
-
-        while (isASCIIDigit(input[pointer])) {
-          const number = parseInt(at(input, pointer));
-          if (ipv4Piece === null) {
-            ipv4Piece = number;
-          } else if (ipv4Piece === 0) {
-            return failure;
-          } else {
-            ipv4Piece = ipv4Piece * 10 + number;
-          }
-          if (ipv4Piece > 255) {
-            return failure;
-          }
-          ++pointer;
-        }
-
-        address[pieceIndex] = address[pieceIndex] * 0x100 + ipv4Piece;
-
-        ++numbersSeen;
-
-        if (numbersSeen === 2 || numbersSeen === 4) {
-          ++pieceIndex;
-        }
-      }
-
-      if (numbersSeen !== 4) {
-        return failure;
-      }
-
-      break;
-    } else if (input[pointer] === 58) {
-      ++pointer;
-      if (input[pointer] === undefined) {
-        return failure;
-      }
-    } else if (input[pointer] !== undefined) {
-      return failure;
-    }
-
-    address[pieceIndex] = value;
-    ++pieceIndex;
-  }
-
-  if (compress !== null) {
-    let swaps = pieceIndex - compress;
-    pieceIndex = 7;
-    while (pieceIndex !== 0 && swaps > 0) {
-      const temp = address[compress + swaps - 1];
-      address[compress + swaps - 1] = address[pieceIndex];
-      address[pieceIndex] = temp;
-      --pieceIndex;
-      --swaps;
-    }
-  } else if (compress === null && pieceIndex !== 8) {
-    return failure;
-  }
-
-  return address;
-}
-
-function serializeIPv6(address) {
-  let output = "";
-  const seqResult = findLongestZeroSequence(address);
-  const compress = seqResult.idx;
-  let ignore0 = false;
-
-  for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {
-    if (ignore0 && address[pieceIndex] === 0) {
-      continue;
-    } else if (ignore0) {
-      ignore0 = false;
-    }
-
-    if (compress === pieceIndex) {
-      const separator = pieceIndex === 0 ? "::" : ":";
-      output += separator;
-      ignore0 = true;
-      continue;
-    }
-
-    output += address[pieceIndex].toString(16);
-
-    if (pieceIndex !== 7) {
-      output += ":";
-    }
-  }
-
-  return output;
-}
-
-function parseHost(input, isSpecialArg) {
-  if (input[0] === "[") {
-    if (input[input.length - 1] !== "]") {
-      return failure;
-    }
-
-    return parseIPv6(input.substring(1, input.length - 1));
-  }
-
-  if (!isSpecialArg) {
-    return parseOpaqueHost(input);
-  }
-
-  const domain = utf8PercentDecode(input);
-  const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);
-  if (asciiDomain === null) {
-    return failure;
-  }
-
-  if (containsForbiddenHostCodePoint(asciiDomain)) {
-    return failure;
-  }
-
-  const ipv4Host = parseIPv4(asciiDomain);
-  if (typeof ipv4Host === "number" || ipv4Host === failure) {
-    return ipv4Host;
-  }
-
-  return asciiDomain;
-}
-
-function parseOpaqueHost(input) {
-  if (containsForbiddenHostCodePointExcludingPercent(input)) {
-    return failure;
-  }
-
-  let output = "";
-  const decoded = punycode.ucs2.decode(input);
-  for (let i = 0; i < decoded.length; ++i) {
-    output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);
-  }
-  return output;
-}
-
-function findLongestZeroSequence(arr) {
-  let maxIdx = null;
-  let maxLen = 1; // only find elements > 1
-  let currStart = null;
-  let currLen = 0;
-
-  for (let i = 0; i < arr.length; ++i) {
-    if (arr[i] !== 0) {
-      if (currLen > maxLen) {
-        maxIdx = currStart;
-        maxLen = currLen;
-      }
-
-      currStart = null;
-      currLen = 0;
-    } else {
-      if (currStart === null) {
-        currStart = i;
-      }
-      ++currLen;
-    }
-  }
-
-  // if trailing zeros
-  if (currLen > maxLen) {
-    maxIdx = currStart;
-    maxLen = currLen;
-  }
-
-  return {
-    idx: maxIdx,
-    len: maxLen
-  };
-}
-
-function serializeHost(host) {
-  if (typeof host === "number") {
-    return serializeIPv4(host);
-  }
-
-  // IPv6 serializer
-  if (host instanceof Array) {
-    return "[" + serializeIPv6(host) + "]";
-  }
-
-  return host;
-}
-
-function trimControlChars(url) {
-  return url.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, "");
-}
-
-function trimTabAndNewline(url) {
-  return url.replace(/\u0009|\u000A|\u000D/g, "");
-}
-
-function shortenPath(url) {
-  const path = url.path;
-  if (path.length === 0) {
-    return;
-  }
-  if (url.scheme === "file" && path.length === 1 && isNormalizedWindowsDriveLetter(path[0])) {
-    return;
-  }
-
-  path.pop();
-}
-
-function includesCredentials(url) {
-  return url.username !== "" || url.password !== "";
-}
-
-function cannotHaveAUsernamePasswordPort(url) {
-  return url.host === null || url.host === "" || url.cannotBeABaseURL || url.scheme === "file";
-}
-
-function isNormalizedWindowsDriveLetter(string) {
-  return /^[A-Za-z]:$/.test(string);
-}
-
-function URLStateMachine(input, base, encodingOverride, url, stateOverride) {
-  this.pointer = 0;
-  this.input = input;
-  this.base = base || null;
-  this.encodingOverride = encodingOverride || "utf-8";
-  this.stateOverride = stateOverride;
-  this.url = url;
-  this.failure = false;
-  this.parseError = false;
-
-  if (!this.url) {
-    this.url = {
-      scheme: "",
-      username: "",
-      password: "",
-      host: null,
-      port: null,
-      path: [],
-      query: null,
-      fragment: null,
-
-      cannotBeABaseURL: false
-    };
-
-    const res = trimControlChars(this.input);
-    if (res !== this.input) {
-      this.parseError = true;
-    }
-    this.input = res;
-  }
-
-  const res = trimTabAndNewline(this.input);
-  if (res !== this.input) {
-    this.parseError = true;
-  }
-  this.input = res;
-
-  this.state = stateOverride || "scheme start";
-
-  this.buffer = "";
-  this.atFlag = false;
-  this.arrFlag = false;
-  this.passwordTokenSeenFlag = false;
-
-  this.input = punycode.ucs2.decode(this.input);
-
-  for (; this.pointer <= this.input.length; ++this.pointer) {
-    const c = this.input[this.pointer];
-    const cStr = isNaN(c) ? undefined : String.fromCodePoint(c);
-
-    // exec state machine
-    const ret = this["parse " + this.state](c, cStr);
-    if (!ret) {
-      break; // terminate algorithm
-    } else if (ret === failure) {
-      this.failure = true;
-      break;
-    }
-  }
-}
-
-URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) {
-  if (isASCIIAlpha(c)) {
-    this.buffer += cStr.toLowerCase();
-    this.state = "scheme";
-  } else if (!this.stateOverride) {
-    this.state = "no scheme";
-    --this.pointer;
-  } else {
-    this.parseError = true;
-    return failure;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) {
-  if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {
-    this.buffer += cStr.toLowerCase();
-  } else if (c === 58) {
-    if (this.stateOverride) {
-      if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {
-        return false;
-      }
-
-      if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {
-        return false;
-      }
-
-      if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") {
-        return false;
-      }
-
-      if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) {
-        return false;
-      }
-    }
-    this.url.scheme = this.buffer;
-    this.buffer = "";
-    if (this.stateOverride) {
-      return false;
-    }
-    if (this.url.scheme === "file") {
-      if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {
-        this.parseError = true;
-      }
-      this.state = "file";
-    } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {
-      this.state = "special relative or authority";
-    } else if (isSpecial(this.url)) {
-      this.state = "special authority slashes";
-    } else if (this.input[this.pointer + 1] === 47) {
-      this.state = "path or authority";
-      ++this.pointer;
-    } else {
-      this.url.cannotBeABaseURL = true;
-      this.url.path.push("");
-      this.state = "cannot-be-a-base-URL path";
-    }
-  } else if (!this.stateOverride) {
-    this.buffer = "";
-    this.state = "no scheme";
-    this.pointer = -1;
-  } else {
-    this.parseError = true;
-    return failure;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) {
-  if (this.base === null || (this.base.cannotBeABaseURL && c !== 35)) {
-    return failure;
-  } else if (this.base.cannotBeABaseURL && c === 35) {
-    this.url.scheme = this.base.scheme;
-    this.url.path = this.base.path.slice();
-    this.url.query = this.base.query;
-    this.url.fragment = "";
-    this.url.cannotBeABaseURL = true;
-    this.state = "fragment";
-  } else if (this.base.scheme === "file") {
-    this.state = "file";
-    --this.pointer;
-  } else {
-    this.state = "relative";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) {
-  if (c === 47 && this.input[this.pointer + 1] === 47) {
-    this.state = "special authority ignore slashes";
-    ++this.pointer;
-  } else {
-    this.parseError = true;
-    this.state = "relative";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) {
-  if (c === 47) {
-    this.state = "authority";
-  } else {
-    this.state = "path";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse relative"] = function parseRelative(c) {
-  this.url.scheme = this.base.scheme;
-  if (isNaN(c)) {
-    this.url.username = this.base.username;
-    this.url.password = this.base.password;
-    this.url.host = this.base.host;
-    this.url.port = this.base.port;
-    this.url.path = this.base.path.slice();
-    this.url.query = this.base.query;
-  } else if (c === 47) {
-    this.state = "relative slash";
-  } else if (c === 63) {
-    this.url.username = this.base.username;
-    this.url.password = this.base.password;
-    this.url.host = this.base.host;
-    this.url.port = this.base.port;
-    this.url.path = this.base.path.slice();
-    this.url.query = "";
-    this.state = "query";
-  } else if (c === 35) {
-    this.url.username = this.base.username;
-    this.url.password = this.base.password;
-    this.url.host = this.base.host;
-    this.url.port = this.base.port;
-    this.url.path = this.base.path.slice();
-    this.url.query = this.base.query;
-    this.url.fragment = "";
-    this.state = "fragment";
-  } else if (isSpecial(this.url) && c === 92) {
-    this.parseError = true;
-    this.state = "relative slash";
-  } else {
-    this.url.username = this.base.username;
-    this.url.password = this.base.password;
-    this.url.host = this.base.host;
-    this.url.port = this.base.port;
-    this.url.path = this.base.path.slice(0, this.base.path.length - 1);
-
-    this.state = "path";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) {
-  if (isSpecial(this.url) && (c === 47 || c === 92)) {
-    if (c === 92) {
-      this.parseError = true;
-    }
-    this.state = "special authority ignore slashes";
-  } else if (c === 47) {
-    this.state = "authority";
-  } else {
-    this.url.username = this.base.username;
-    this.url.password = this.base.password;
-    this.url.host = this.base.host;
-    this.url.port = this.base.port;
-    this.state = "path";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) {
-  if (c === 47 && this.input[this.pointer + 1] === 47) {
-    this.state = "special authority ignore slashes";
-    ++this.pointer;
-  } else {
-    this.parseError = true;
-    this.state = "special authority ignore slashes";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) {
-  if (c !== 47 && c !== 92) {
-    this.state = "authority";
-    --this.pointer;
-  } else {
-    this.parseError = true;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) {
-  if (c === 64) {
-    this.parseError = true;
-    if (this.atFlag) {
-      this.buffer = "%40" + this.buffer;
-    }
-    this.atFlag = true;
-
-    // careful, this is based on buffer and has its own pointer (this.pointer != pointer) and inner chars
-    const len = countSymbols(this.buffer);
-    for (let pointer = 0; pointer < len; ++pointer) {
-      const codePoint = this.buffer.codePointAt(pointer);
-
-      if (codePoint === 58 && !this.passwordTokenSeenFlag) {
-        this.passwordTokenSeenFlag = true;
-        continue;
-      }
-      const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);
-      if (this.passwordTokenSeenFlag) {
-        this.url.password += encodedCodePoints;
-      } else {
-        this.url.username += encodedCodePoints;
-      }
-    }
-    this.buffer = "";
-  } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||
-             (isSpecial(this.url) && c === 92)) {
-    if (this.atFlag && this.buffer === "") {
-      this.parseError = true;
-      return failure;
-    }
-    this.pointer -= countSymbols(this.buffer) + 1;
-    this.buffer = "";
-    this.state = "host";
-  } else {
-    this.buffer += cStr;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse hostname"] =
-URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) {
-  if (this.stateOverride && this.url.scheme === "file") {
-    --this.pointer;
-    this.state = "file host";
-  } else if (c === 58 && !this.arrFlag) {
-    if (this.buffer === "") {
-      this.parseError = true;
-      return failure;
-    }
-
-    const host = parseHost(this.buffer, isSpecial(this.url));
-    if (host === failure) {
-      return failure;
-    }
-
-    this.url.host = host;
-    this.buffer = "";
-    this.state = "port";
-    if (this.stateOverride === "hostname") {
-      return false;
-    }
-  } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||
-             (isSpecial(this.url) && c === 92)) {
-    --this.pointer;
-    if (isSpecial(this.url) && this.buffer === "") {
-      this.parseError = true;
-      return failure;
-    } else if (this.stateOverride && this.buffer === "" &&
-               (includesCredentials(this.url) || this.url.port !== null)) {
-      this.parseError = true;
-      return false;
-    }
-
-    const host = parseHost(this.buffer, isSpecial(this.url));
-    if (host === failure) {
-      return failure;
-    }
-
-    this.url.host = host;
-    this.buffer = "";
-    this.state = "path start";
-    if (this.stateOverride) {
-      return false;
-    }
-  } else {
-    if (c === 91) {
-      this.arrFlag = true;
-    } else if (c === 93) {
-      this.arrFlag = false;
-    }
-    this.buffer += cStr;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) {
-  if (isASCIIDigit(c)) {
-    this.buffer += cStr;
-  } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||
-             (isSpecial(this.url) && c === 92) ||
-             this.stateOverride) {
-    if (this.buffer !== "") {
-      const port = parseInt(this.buffer);
-      if (port > Math.pow(2, 16) - 1) {
-        this.parseError = true;
-        return failure;
-      }
-      this.url.port = port === defaultPort(this.url.scheme) ? null : port;
-      this.buffer = "";
-    }
-    if (this.stateOverride) {
-      return false;
-    }
-    this.state = "path start";
-    --this.pointer;
-  } else {
-    this.parseError = true;
-    return failure;
-  }
-
-  return true;
-};
-
-const fileOtherwiseCodePoints = new Set([47, 92, 63, 35]);
-
-URLStateMachine.prototype["parse file"] = function parseFile(c) {
-  this.url.scheme = "file";
-
-  if (c === 47 || c === 92) {
-    if (c === 92) {
-      this.parseError = true;
-    }
-    this.state = "file slash";
-  } else if (this.base !== null && this.base.scheme === "file") {
-    if (isNaN(c)) {
-      this.url.host = this.base.host;
-      this.url.path = this.base.path.slice();
-      this.url.query = this.base.query;
-    } else if (c === 63) {
-      this.url.host = this.base.host;
-      this.url.path = this.base.path.slice();
-      this.url.query = "";
-      this.state = "query";
-    } else if (c === 35) {
-      this.url.host = this.base.host;
-      this.url.path = this.base.path.slice();
-      this.url.query = this.base.query;
-      this.url.fragment = "";
-      this.state = "fragment";
-    } else {
-      if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points
-          !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) ||
-          (this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points
-           !fileOtherwiseCodePoints.has(this.input[this.pointer + 2]))) {
-        this.url.host = this.base.host;
-        this.url.path = this.base.path.slice();
-        shortenPath(this.url);
-      } else {
-        this.parseError = true;
-      }
-
-      this.state = "path";
-      --this.pointer;
-    }
-  } else {
-    this.state = "path";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) {
-  if (c === 47 || c === 92) {
-    if (c === 92) {
-      this.parseError = true;
-    }
-    this.state = "file host";
-  } else {
-    if (this.base !== null && this.base.scheme === "file") {
-      if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {
-        this.url.path.push(this.base.path[0]);
-      } else {
-        this.url.host = this.base.host;
-      }
-    }
-    this.state = "path";
-    --this.pointer;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) {
-  if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {
-    --this.pointer;
-    if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {
-      this.parseError = true;
-      this.state = "path";
-    } else if (this.buffer === "") {
-      this.url.host = "";
-      if (this.stateOverride) {
-        return false;
-      }
-      this.state = "path start";
-    } else {
-      let host = parseHost(this.buffer, isSpecial(this.url));
-      if (host === failure) {
-        return failure;
-      }
-      if (host === "localhost") {
-        host = "";
-      }
-      this.url.host = host;
-
-      if (this.stateOverride) {
-        return false;
-      }
-
-      this.buffer = "";
-      this.state = "path start";
-    }
-  } else {
-    this.buffer += cStr;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse path start"] = function parsePathStart(c) {
-  if (isSpecial(this.url)) {
-    if (c === 92) {
-      this.parseError = true;
-    }
-    this.state = "path";
-
-    if (c !== 47 && c !== 92) {
-      --this.pointer;
-    }
-  } else if (!this.stateOverride && c === 63) {
-    this.url.query = "";
-    this.state = "query";
-  } else if (!this.stateOverride && c === 35) {
-    this.url.fragment = "";
-    this.state = "fragment";
-  } else if (c !== undefined) {
-    this.state = "path";
-    if (c !== 47) {
-      --this.pointer;
-    }
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse path"] = function parsePath(c) {
-  if (isNaN(c) || c === 47 || (isSpecial(this.url) && c === 92) ||
-      (!this.stateOverride && (c === 63 || c === 35))) {
-    if (isSpecial(this.url) && c === 92) {
-      this.parseError = true;
-    }
-
-    if (isDoubleDot(this.buffer)) {
-      shortenPath(this.url);
-      if (c !== 47 && !(isSpecial(this.url) && c === 92)) {
-        this.url.path.push("");
-      }
-    } else if (isSingleDot(this.buffer) && c !== 47 &&
-               !(isSpecial(this.url) && c === 92)) {
-      this.url.path.push("");
-    } else if (!isSingleDot(this.buffer)) {
-      if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {
-        if (this.url.host !== "" && this.url.host !== null) {
-          this.parseError = true;
-          this.url.host = "";
-        }
-        this.buffer = this.buffer[0] + ":";
-      }
-      this.url.path.push(this.buffer);
-    }
-    this.buffer = "";
-    if (this.url.scheme === "file" && (c === undefined || c === 63 || c === 35)) {
-      while (this.url.path.length > 1 && this.url.path[0] === "") {
-        this.parseError = true;
-        this.url.path.shift();
-      }
-    }
-    if (c === 63) {
-      this.url.query = "";
-      this.state = "query";
-    }
-    if (c === 35) {
-      this.url.fragment = "";
-      this.state = "fragment";
-    }
-  } else {
-    // TODO: If c is not a URL code point and not "%", parse error.
-
-    if (c === 37 &&
-      (!isASCIIHex(this.input[this.pointer + 1]) ||
-        !isASCIIHex(this.input[this.pointer + 2]))) {
-      this.parseError = true;
-    }
-
-    this.buffer += percentEncodeChar(c, isPathPercentEncode);
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) {
-  if (c === 63) {
-    this.url.query = "";
-    this.state = "query";
-  } else if (c === 35) {
-    this.url.fragment = "";
-    this.state = "fragment";
-  } else {
-    // TODO: Add: not a URL code point
-    if (!isNaN(c) && c !== 37) {
-      this.parseError = true;
-    }
-
-    if (c === 37 &&
-        (!isASCIIHex(this.input[this.pointer + 1]) ||
-         !isASCIIHex(this.input[this.pointer + 2]))) {
-      this.parseError = true;
-    }
-
-    if (!isNaN(c)) {
-      this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);
-    }
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) {
-  if (isNaN(c) || (!this.stateOverride && c === 35)) {
-    if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") {
-      this.encodingOverride = "utf-8";
-    }
-
-    const buffer = new Buffer(this.buffer); // TODO: Use encoding override instead
-    for (let i = 0; i < buffer.length; ++i) {
-      if (buffer[i] < 0x21 || buffer[i] > 0x7E || buffer[i] === 0x22 || buffer[i] === 0x23 ||
-          buffer[i] === 0x3C || buffer[i] === 0x3E) {
-        this.url.query += percentEncode(buffer[i]);
-      } else {
-        this.url.query += String.fromCodePoint(buffer[i]);
-      }
-    }
-
-    this.buffer = "";
-    if (c === 35) {
-      this.url.fragment = "";
-      this.state = "fragment";
-    }
-  } else {
-    // TODO: If c is not a URL code point and not "%", parse error.
-    if (c === 37 &&
-      (!isASCIIHex(this.input[this.pointer + 1]) ||
-        !isASCIIHex(this.input[this.pointer + 2]))) {
-      this.parseError = true;
-    }
-
-    this.buffer += cStr;
-  }
-
-  return true;
-};
-
-URLStateMachine.prototype["parse fragment"] = function parseFragment(c) {
-  if (isNaN(c)) { // do nothing
-  } else if (c === 0x0) {
-    this.parseError = true;
-  } else {
-    // TODO: If c is not a URL code point and not "%", parse error.
-    if (c === 37 &&
-      (!isASCIIHex(this.input[this.pointer + 1]) ||
-        !isASCIIHex(this.input[this.pointer + 2]))) {
-      this.parseError = true;
-    }
-
-    this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);
-  }
-
-  return true;
-};
-
-function serializeURL(url, excludeFragment) {
-  let output = url.scheme + ":";
-  if (url.host !== null) {
-    output += "//";
-
-    if (url.username !== "" || url.password !== "") {
-      output += url.username;
-      if (url.password !== "") {
-        output += ":" + url.password;
-      }
-      output += "@";
-    }
-
-    output += serializeHost(url.host);
-
-    if (url.port !== null) {
-      output += ":" + url.port;
-    }
-  } else if (url.host === null && url.scheme === "file") {
-    output += "//";
-  }
-
-  if (url.cannotBeABaseURL) {
-    output += url.path[0];
-  } else {
-    for (const string of url.path) {
-      output += "/" + string;
-    }
-  }
-
-  if (url.query !== null) {
-    output += "?" + url.query;
-  }
-
-  if (!excludeFragment && url.fragment !== null) {
-    output += "#" + url.fragment;
-  }
-
-  return output;
-}
-
-function serializeOrigin(tuple) {
-  let result = tuple.scheme + "://";
-  result += serializeHost(tuple.host);
-
-  if (tuple.port !== null) {
-    result += ":" + tuple.port;
-  }
-
-  return result;
-}
-
-module.exports.serializeURL = serializeURL;
-
-module.exports.serializeURLOrigin = function (url) {
-  // https://url.spec.whatwg.org/#concept-url-origin
-  switch (url.scheme) {
-    case "blob":
-      try {
-        return module.exports.serializeURLOrigin(module.exports.parseURL(url.path[0]));
-      } catch (e) {
-        // serializing an opaque origin returns "null"
-        return "null";
-      }
-    case "ftp":
-    case "gopher":
-    case "http":
-    case "https":
-    case "ws":
-    case "wss":
-      return serializeOrigin({
-        scheme: url.scheme,
-        host: url.host,
-        port: url.port
-      });
-    case "file":
-      // spec says "exercise to the reader", chrome says "file://"
-      return "file://";
-    default:
-      // serializing an opaque origin returns "null"
-      return "null";
-  }
-};
-
-module.exports.basicURLParse = function (input, options) {
-  if (options === undefined) {
-    options = {};
-  }
-
-  const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);
-  if (usm.failure) {
-    return "failure";
-  }
-
-  return usm.url;
-};
-
-module.exports.setTheUsername = function (url, username) {
-  url.username = "";
-  const decoded = punycode.ucs2.decode(username);
-  for (let i = 0; i < decoded.length; ++i) {
-    url.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
-  }
-};
-
-module.exports.setThePassword = function (url, password) {
-  url.password = "";
-  const decoded = punycode.ucs2.decode(password);
-  for (let i = 0; i < decoded.length; ++i) {
-    url.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);
-  }
-};
-
-module.exports.serializeHost = serializeHost;
-
-module.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;
-
-module.exports.serializeInteger = function (integer) {
-  return String(integer);
-};
-
-module.exports.parseURL = function (input, options) {
-  if (options === undefined) {
-    options = {};
-  }
-
-  // We don't handle blobs, so this just delegates:
-  return module.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });
-};
diff --git a/node_modules/whatwg-url/lib/utils.js b/node_modules/whatwg-url/lib/utils.js
deleted file mode 100644
index a562009..0000000
--- a/node_modules/whatwg-url/lib/utils.js
+++ /dev/null
@@ -1,20 +0,0 @@
-"use strict";
-
-module.exports.mixin = function mixin(target, source) {
-  const keys = Object.getOwnPropertyNames(source);
-  for (let i = 0; i < keys.length; ++i) {
-    Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));
-  }
-};
-
-module.exports.wrapperSymbol = Symbol("wrapper");
-module.exports.implSymbol = Symbol("impl");
-
-module.exports.wrapperForImpl = function (impl) {
-  return impl[module.exports.wrapperSymbol];
-};
-
-module.exports.implForWrapper = function (wrapper) {
-  return wrapper[module.exports.implSymbol];
-};
-
diff --git a/node_modules/whatwg-url/package.json b/node_modules/whatwg-url/package.json
deleted file mode 100644
index fce35ae..0000000
--- a/node_modules/whatwg-url/package.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
-  "name": "whatwg-url",
-  "version": "5.0.0",
-  "description": "An implementation of the WHATWG URL Standard's URL API and parsing machinery",
-  "main": "lib/public-api.js",
-  "files": [
-    "lib/"
-  ],
-  "author": "Sebastian Mayr <[email protected]>",
-  "license": "MIT",
-  "repository": "jsdom/whatwg-url",
-  "dependencies": {
-    "tr46": "~0.0.3",
-    "webidl-conversions": "^3.0.0"
-  },
-  "devDependencies": {
-    "eslint": "^2.6.0",
-    "istanbul": "~0.4.3",
-    "mocha": "^2.2.4",
-    "recast": "~0.10.29",
-    "request": "^2.55.0",
-    "webidl2js": "^3.0.2"
-  },
-  "scripts": {
-    "build": "node scripts/transform.js && node scripts/convert-idl.js",
-    "coverage": "istanbul cover node_modules/mocha/bin/_mocha",
-    "lint": "eslint .",
-    "prepublish": "npm run build",
-    "pretest": "node scripts/get-latest-platform-tests.js && npm run build",
-    "test": "mocha"
-  }
-}
diff --git a/package-lock.json b/package-lock.json
index dc77640..38c83f9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -18,7 +18,7 @@
         "@types/istanbul-lib-source-maps": "4.0.1",
         "@types/istanbul-reports": "3.0.1",
         "@types/karma-chai-sinon": "0.1.16",
-        "@types/marked": "4.0.1",
+        "@types/marked": "^4.0.1",
         "@types/mocha": "9.0.0",
         "@types/node": "16.9.1",
         "@types/rimraf": "3.0.2",
@@ -51,7 +51,7 @@
         "license-checker": "25.0.1",
         "mocha": "9.1.1",
         "postcss": "8.3.11",
-        "puppeteer": "12.0.1",
+        "puppeteer": "10.0.0",
         "recast": "0.20.4",
         "rimraf": "3.0.2",
         "rollup": "2.56.3",
@@ -63,7 +63,7 @@
         "stylelint-config-standard": "23.0.0",
         "svgo": "2.3.1",
         "terser": "5.8.0",
-        "typescript": "4.5.2",
+        "typescript": "^4.5.2",
         "ws": "7.5.3",
         "yargs": "16.2.0"
       }
@@ -464,9 +464,9 @@
       }
     },
     "node_modules/@eslint/eslintrc/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -956,9 +956,9 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -1015,9 +1015,9 @@
       }
     },
     "node_modules/@typescript-eslint/parser/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -1089,9 +1089,9 @@
       }
     },
     "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -2165,9 +2165,9 @@
       }
     },
     "node_modules/devtools-protocol": {
-      "version": "0.0.937139",
-      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.937139.tgz",
-      "integrity": "sha512-daj+rzR3QSxsPRy5vjjthn58axO8c11j58uY0lG5vvlJk/EiOdCWOptGdkXDjtuRHr78emKq0udHCXM4trhoDQ==",
+      "version": "0.0.883894",
+      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.883894.tgz",
+      "integrity": "sha512-33idhm54QJzf3Q7QofMgCvIVSd2o9H3kQPWaKT/fhoZh+digc+WSiMhbkeG3iN79WY4Hwr9G05NpbhEVrsOYAg==",
       "dev": true
     },
     "node_modules/dezalgo": {
@@ -2864,9 +2864,9 @@
       "dev": true
     },
     "node_modules/eslint/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -5073,12 +5073,6 @@
         "mkdirp": "bin/cmd.js"
       }
     },
-    "node_modules/mkdirp-classic": {
-      "version": "0.5.3",
-      "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
-      "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
-      "dev": true
-    },
     "node_modules/mocha": {
       "version": "9.1.1",
       "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.1.tgz",
@@ -5330,13 +5324,10 @@
       }
     },
     "node_modules/node-fetch": {
-      "version": "2.6.5",
-      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz",
-      "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==",
+      "version": "2.6.1",
+      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
+      "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
       "dev": true,
-      "dependencies": {
-        "whatwg-url": "^5.0.0"
-      },
       "engines": {
         "node": "4.x || >=6.0.0"
       }
@@ -5882,9 +5873,9 @@
       }
     },
     "node_modules/progress": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
-      "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz",
+      "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==",
       "dev": true,
       "engines": {
         "node": ">=0.4.0"
@@ -5916,46 +5907,29 @@
       }
     },
     "node_modules/puppeteer": {
-      "version": "12.0.1",
-      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-12.0.1.tgz",
-      "integrity": "sha512-YQ3GRiyZW0ddxTW+iiQcv2/8TT5c3+FcRUCg7F8q2gHqxd5akZN400VRXr9cHQKLWGukmJLDiE72MrcLK9tFHQ==",
+      "version": "10.0.0",
+      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-10.0.0.tgz",
+      "integrity": "sha512-AxHvCb9IWmmP3gMW+epxdj92Gglii+6Z4sb+W+zc2hTTu10HF0yg6hGXot5O74uYkVqG3lfDRLfnRpi6WOwi5A==",
       "dev": true,
       "hasInstallScript": true,
       "dependencies": {
-        "debug": "4.3.2",
-        "devtools-protocol": "0.0.937139",
+        "debug": "4.3.1",
+        "devtools-protocol": "0.0.883894",
         "extract-zip": "2.0.1",
         "https-proxy-agent": "5.0.0",
-        "node-fetch": "2.6.5",
+        "node-fetch": "2.6.1",
         "pkg-dir": "4.2.0",
-        "progress": "2.0.3",
+        "progress": "2.0.1",
         "proxy-from-env": "1.1.0",
         "rimraf": "3.0.2",
-        "tar-fs": "2.1.1",
-        "unbzip2-stream": "1.4.3",
-        "ws": "8.2.3"
+        "tar-fs": "2.0.0",
+        "unbzip2-stream": "1.3.3",
+        "ws": "7.4.6"
       },
       "engines": {
         "node": ">=10.18.1"
       }
     },
-    "node_modules/puppeteer/node_modules/debug": {
-      "version": "4.3.2",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
-      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
-      "dev": true,
-      "dependencies": {
-        "ms": "2.1.2"
-      },
-      "engines": {
-        "node": ">=6.0"
-      },
-      "peerDependenciesMeta": {
-        "supports-color": {
-          "optional": true
-        }
-      }
-    },
     "node_modules/puppeteer/node_modules/pkg-dir": {
       "version": "4.2.0",
       "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
@@ -5969,12 +5943,12 @@
       }
     },
     "node_modules/puppeteer/node_modules/ws": {
-      "version": "8.2.3",
-      "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
-      "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+      "version": "7.4.6",
+      "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
+      "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
       "dev": true,
       "engines": {
-        "node": ">=10.0.0"
+        "node": ">=8.3.0"
       },
       "peerDependencies": {
         "bufferutil": "^4.0.1",
@@ -6574,9 +6548,9 @@
       }
     },
     "node_modules/socket.io/node_modules/@types/node": {
-      "version": "14.18.0",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.0.tgz",
-      "integrity": "sha512-0GeIl2kmVMXEnx8tg1SlG6Gg8vkqirrW752KqolYo1PHevhhZN3bhJ67qHj+bQaINhX0Ra3TlWwRvMCd9iEfNQ==",
+      "version": "14.17.34",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.34.tgz",
+      "integrity": "sha512-USUftMYpmuMzeWobskoPfzDi+vkpe0dvcOBRNOscFrGxVp4jomnRxWuVohgqBow2xyIPC0S3gjxV/5079jhmDg==",
       "dev": true
     },
     "node_modules/source-map": {
@@ -6909,9 +6883,9 @@
       "dev": true
     },
     "node_modules/stylelint/node_modules/debug": {
-      "version": "4.3.3",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-      "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+      "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
       "dev": true,
       "dependencies": {
         "ms": "2.1.2"
@@ -7171,15 +7145,15 @@
       }
     },
     "node_modules/tar-fs": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
-      "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.0.tgz",
+      "integrity": "sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==",
       "dev": true,
       "dependencies": {
         "chownr": "^1.1.1",
-        "mkdirp-classic": "^0.5.2",
+        "mkdirp": "^0.5.1",
         "pump": "^3.0.0",
-        "tar-stream": "^2.1.4"
+        "tar-stream": "^2.0.0"
       }
     },
     "node_modules/tar-stream": {
@@ -7297,12 +7271,6 @@
         "node": ">=0.6"
       }
     },
-    "node_modules/tr46": {
-      "version": "0.0.3",
-      "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
-      "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
-      "dev": true
-    },
     "node_modules/treeify": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz",
@@ -7478,9 +7446,9 @@
       }
     },
     "node_modules/unbzip2-stream": {
-      "version": "1.4.3",
-      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
-      "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz",
+      "integrity": "sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==",
       "dev": true,
       "dependencies": {
         "buffer": "^5.2.1",
@@ -7575,22 +7543,6 @@
         "node": ">=0.10.0"
       }
     },
-    "node_modules/webidl-conversions": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
-      "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=",
-      "dev": true
-    },
-    "node_modules/whatwg-url": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
-      "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
-      "dev": true,
-      "dependencies": {
-        "tr46": "~0.0.3",
-        "webidl-conversions": "^3.0.0"
-      }
-    },
     "node_modules/which": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
@@ -8151,9 +8103,9 @@
       },
       "dependencies": {
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -8575,9 +8527,9 @@
           }
         },
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -8607,9 +8559,9 @@
       },
       "dependencies": {
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -8649,9 +8601,9 @@
       },
       "dependencies": {
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -9478,9 +9430,9 @@
       "dev": true
     },
     "devtools-protocol": {
-      "version": "0.0.937139",
-      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.937139.tgz",
-      "integrity": "sha512-daj+rzR3QSxsPRy5vjjthn58axO8c11j58uY0lG5vvlJk/EiOdCWOptGdkXDjtuRHr78emKq0udHCXM4trhoDQ==",
+      "version": "0.0.883894",
+      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.883894.tgz",
+      "integrity": "sha512-33idhm54QJzf3Q7QofMgCvIVSd2o9H3kQPWaKT/fhoZh+digc+WSiMhbkeG3iN79WY4Hwr9G05NpbhEVrsOYAg==",
       "dev": true
     },
     "dezalgo": {
@@ -9809,9 +9761,9 @@
           "dev": true
         },
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -11746,12 +11698,6 @@
         "minimist": "^1.2.5"
       }
     },
-    "mkdirp-classic": {
-      "version": "0.5.3",
-      "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
-      "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
-      "dev": true
-    },
     "mocha": {
       "version": "9.1.1",
       "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.1.1.tgz",
@@ -11947,13 +11893,10 @@
       }
     },
     "node-fetch": {
-      "version": "2.6.5",
-      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz",
-      "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==",
-      "dev": true,
-      "requires": {
-        "whatwg-url": "^5.0.0"
-      }
+      "version": "2.6.1",
+      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
+      "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
+      "dev": true
     },
     "node-releases": {
       "version": "1.1.73",
@@ -12369,9 +12312,9 @@
       "dev": true
     },
     "progress": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
-      "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.1.tgz",
+      "integrity": "sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==",
       "dev": true
     },
     "proxy-from-env": {
@@ -12397,34 +12340,25 @@
       "dev": true
     },
     "puppeteer": {
-      "version": "12.0.1",
-      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-12.0.1.tgz",
-      "integrity": "sha512-YQ3GRiyZW0ddxTW+iiQcv2/8TT5c3+FcRUCg7F8q2gHqxd5akZN400VRXr9cHQKLWGukmJLDiE72MrcLK9tFHQ==",
+      "version": "10.0.0",
+      "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-10.0.0.tgz",
+      "integrity": "sha512-AxHvCb9IWmmP3gMW+epxdj92Gglii+6Z4sb+W+zc2hTTu10HF0yg6hGXot5O74uYkVqG3lfDRLfnRpi6WOwi5A==",
       "dev": true,
       "requires": {
-        "debug": "4.3.2",
-        "devtools-protocol": "0.0.937139",
+        "debug": "4.3.1",
+        "devtools-protocol": "0.0.883894",
         "extract-zip": "2.0.1",
         "https-proxy-agent": "5.0.0",
-        "node-fetch": "2.6.5",
+        "node-fetch": "2.6.1",
         "pkg-dir": "4.2.0",
-        "progress": "2.0.3",
+        "progress": "2.0.1",
         "proxy-from-env": "1.1.0",
         "rimraf": "3.0.2",
-        "tar-fs": "2.1.1",
-        "unbzip2-stream": "1.4.3",
-        "ws": "8.2.3"
+        "tar-fs": "2.0.0",
+        "unbzip2-stream": "1.3.3",
+        "ws": "7.4.6"
       },
       "dependencies": {
-        "debug": {
-          "version": "4.3.2",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
-          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
-          "dev": true,
-          "requires": {
-            "ms": "2.1.2"
-          }
-        },
         "pkg-dir": {
           "version": "4.2.0",
           "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
@@ -12435,9 +12369,9 @@
           }
         },
         "ws": {
-          "version": "8.2.3",
-          "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
-          "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+          "version": "7.4.6",
+          "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
+          "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
           "dev": true,
           "requires": {}
         }
@@ -12900,9 +12834,9 @@
       },
       "dependencies": {
         "@types/node": {
-          "version": "14.18.0",
-          "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.0.tgz",
-          "integrity": "sha512-0GeIl2kmVMXEnx8tg1SlG6Gg8vkqirrW752KqolYo1PHevhhZN3bhJ67qHj+bQaINhX0Ra3TlWwRvMCd9iEfNQ==",
+          "version": "14.17.34",
+          "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.34.tgz",
+          "integrity": "sha512-USUftMYpmuMzeWobskoPfzDi+vkpe0dvcOBRNOscFrGxVp4jomnRxWuVohgqBow2xyIPC0S3gjxV/5079jhmDg==",
           "dev": true
         }
       }
@@ -13183,9 +13117,9 @@
           "dev": true
         },
         "debug": {
-          "version": "4.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
-          "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+          "version": "4.3.2",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+          "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -13395,15 +13329,15 @@
       }
     },
     "tar-fs": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
-      "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.0.tgz",
+      "integrity": "sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==",
       "dev": true,
       "requires": {
         "chownr": "^1.1.1",
-        "mkdirp-classic": "^0.5.2",
+        "mkdirp": "^0.5.1",
         "pump": "^3.0.0",
-        "tar-stream": "^2.1.4"
+        "tar-stream": "^2.0.0"
       }
     },
     "tar-stream": {
@@ -13498,12 +13432,6 @@
       "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==",
       "dev": true
     },
-    "tr46": {
-      "version": "0.0.3",
-      "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
-      "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=",
-      "dev": true
-    },
     "treeify": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz",
@@ -13625,9 +13553,9 @@
       }
     },
     "unbzip2-stream": {
-      "version": "1.4.3",
-      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz",
-      "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==",
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz",
+      "integrity": "sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==",
       "dev": true,
       "requires": {
         "buffer": "^5.2.1",
@@ -13707,22 +13635,6 @@
       "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=",
       "dev": true
     },
-    "webidl-conversions": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
-      "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=",
-      "dev": true
-    },
-    "whatwg-url": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
-      "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",
-      "dev": true,
-      "requires": {
-        "tr46": "~0.0.3",
-        "webidl-conversions": "^3.0.0"
-      }
-    },
     "which": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
diff --git a/scripts/deps/manage_node_deps.py b/scripts/deps/manage_node_deps.py
index ccacb9a..ef06193 100755
--- a/scripts/deps/manage_node_deps.py
+++ b/scripts/deps/manage_node_deps.py
@@ -84,7 +84,7 @@
     # Purposefully not the latest; we keep this in sync with what stylelint
     # depends on
     "postcss": "8.3.11",
-    "puppeteer": "12.0.1",
+    "puppeteer": "10.0.0",
     "recast": "0.20.4",
     "rimraf": "3.0.2",
     "rollup": "2.56.3",