This is an automated email from the ASF dual-hosted git repository.

yhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/master by this push:
     new 4c95230392c [typescript] - fix rest of vulnerabilities (#37852)
4c95230392c is described below

commit 4c95230392c92cad5f71807bd1ddccee6b813266
Author: Derrick Williams <[email protected]>
AuthorDate: Mon Mar 16 13:51:56 2026 -0400

    [typescript] - fix rest of vulnerabilities (#37852)
    
    * fix rest of vulnerabilities
    
    * remove codecov downgrade
---
 sdks/typescript/package-lock.json       | 1452 ++++++++++++++++++-------------
 sdks/typescript/package.json            |   10 +-
 sdks/typescript/test/primitives_test.ts |   12 +-
 3 files changed, 854 insertions(+), 620 deletions(-)

diff --git a/sdks/typescript/package-lock.json 
b/sdks/typescript/package-lock.json
index 66f9726949e..0ed3aed2004 100644
--- a/sdks/typescript/package-lock.json
+++ b/sdks/typescript/package-lock.json
@@ -8,8 +8,8 @@
       "name": "apache-beam",
       "version": "2.73.0-SNAPSHOT",
       "dependencies": {
-        "@google-cloud/pubsub": "^2.19.4",
-        "@grpc/grpc-js": "~1.4.6",
+        "@google-cloud/pubsub": "^4.2.0",
+        "@grpc/grpc-js": "^1.14.3",
         "@protobuf-ts/grpc-transport": "^2.1.0",
         "@protobuf-ts/plugin": "^2.1.0",
         "bson": "^4.6.0",
@@ -133,6 +133,7 @@
       "version": "3.0.7",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.7.tgz";,
       "integrity": 
"sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==",
+      "dev": true,
       "dependencies": {
         "arrify": "^2.0.0",
         "extend": "^3.0.2"
@@ -142,17 +143,19 @@
       }
     },
     "node_modules/@google-cloud/precise-date": {
-      "version": "2.0.4",
-      "resolved": 
"https://registry.npmjs.org/@google-cloud/precise-date/-/precise-date-2.0.4.tgz";,
-      "integrity": 
"sha512-nOB+mZdevI/1Si0QAfxWfzzIqFdc7wrO+DYePFvgbOoMtvX+XfFTINNt7e9Zg66AbDbWCPRnikU+6f5LTm9Wyg==",
+      "version": "4.0.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/precise-date/-/precise-date-4.0.0.tgz";,
+      "integrity": 
"sha512-1TUx3KdaU3cN7nfCdNf+UVqA/PSX29Cjcox3fZZBtINlRrXVTmUkQnCKv2MbBUbCopbK4olAT1IHl76uZyCiVA==",
+      "license": "Apache-2.0",
       "engines": {
-        "node": ">=10.4.0"
+        "node": ">=14.0.0"
       }
     },
     "node_modules/@google-cloud/projectify": {
       "version": "2.1.1",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz";,
       "integrity": 
"sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ==",
+      "dev": true,
       "engines": {
         "node": ">=10"
       }
@@ -161,57 +164,187 @@
       "version": "2.0.4",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz";,
       "integrity": 
"sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA==",
+      "dev": true,
       "engines": {
         "node": ">=10"
       }
     },
     "node_modules/@google-cloud/pubsub": {
-      "version": "2.19.4",
-      "resolved": 
"https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.19.4.tgz";,
-      "integrity": 
"sha512-+aZxq6N5XGarQS3xGXjKSRFy4TB+3PMpI0CBmSrcC59g3TB5nmwps3pv/KkdLa0Cd+CPHDdfrEW1uSrGBMLICw==",
-      "dependencies": {
-        "@google-cloud/paginator": "^3.0.6",
-        "@google-cloud/precise-date": "^2.0.0",
-        "@google-cloud/projectify": "^2.0.0",
-        "@google-cloud/promisify": "^2.0.0",
-        "@opentelemetry/api": "^1.0.0",
-        "@opentelemetry/semantic-conventions": "^1.0.0",
+      "version": "4.2.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-4.2.0.tgz";,
+      "integrity": 
"sha512-igfGk0SFB8bLnkcgluAo+Nl+ZiKcMA8X4IT3pk8ND4rIX8sx/afiYL6ags8rL0PEsrjnU4jkCC++M5pyBCRs4A==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "@google-cloud/paginator": "^5.0.0",
+        "@google-cloud/precise-date": "^4.0.0",
+        "@google-cloud/projectify": "^4.0.0",
+        "@google-cloud/promisify": "^4.0.0",
+        "@opentelemetry/api": "^1.6.0",
+        "@opentelemetry/semantic-conventions": "~1.21.0",
         "@types/duplexify": "^3.6.0",
         "@types/long": "^4.0.0",
         "arrify": "^2.0.0",
         "extend": "^3.0.2",
-        "google-auth-library": "^7.0.0",
-        "google-gax": "2.30.3",
+        "google-auth-library": "^9.0.0",
+        "google-gax": "^4.0.4",
+        "heap-js": "^2.2.0",
         "is-stream-ended": "^0.1.4",
         "lodash.snakecase": "^4.1.1",
         "p-defer": "^3.0.0"
       },
       "engines": {
-        "node": ">=10"
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/@google-cloud/paginator": {
+      "version": "5.0.2",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/paginator/-/paginator-5.0.2.tgz";,
+      "integrity": 
"sha512-DJS3s0OVH4zFDB1PzjxAsHqJT6sKVbRwwML0ZBP9PbU7Yebtu/7SWMRzvO2J3nUi9pRNITCfu4LJeooM2w4pjg==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "arrify": "^2.0.0",
+        "extend": "^3.0.2"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/@google-cloud/projectify": 
{
+      "version": "4.0.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/projectify/-/projectify-4.0.0.tgz";,
+      "integrity": 
"sha512-MmaX6HeSvyPbWGwFq7mXdo0uQZLGBYCwziiLIGq5JVX+/bdI3SAq6bP98trV5eTWfLuvsMcIC1YJOF2vfteLFA==",
+      "license": "Apache-2.0",
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/@google-cloud/promisify": {
+      "version": "4.1.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/promisify/-/promisify-4.1.0.tgz";,
+      "integrity": 
"sha512-G/FQx5cE/+DqBbOpA5jKsegGwdPniU6PuIEMt+qxWgFxvxuFOzVmp6zYchtYuwAWV5/8Dgs0yAmjvNZv3uXLQg==",
+      "license": "Apache-2.0",
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/agent-base": {
+      "version": "7.1.4",
+      "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz";,
+      "integrity": 
"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
+      "license": "MIT",
+      "engines": {
+        "node": ">= 14"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/gaxios": {
+      "version": "6.7.1",
+      "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz";,
+      "integrity": 
"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "extend": "^3.0.2",
+        "https-proxy-agent": "^7.0.1",
+        "is-stream": "^2.0.0",
+        "node-fetch": "^2.6.9",
+        "uuid": "^9.0.1"
+      },
+      "engines": {
+        "node": ">=14"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/gcp-metadata": {
+      "version": "6.1.1",
+      "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz";,
+      "integrity": 
"sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "gaxios": "^6.1.1",
+        "google-logging-utils": "^0.0.2",
+        "json-bigint": "^1.0.0"
+      },
+      "engines": {
+        "node": ">=14"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/google-auth-library": {
+      "version": "9.15.1",
+      "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz";,
+      "integrity": 
"sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "base64-js": "^1.3.0",
+        "ecdsa-sig-formatter": "^1.0.11",
+        "gaxios": "^6.1.1",
+        "gcp-metadata": "^6.1.0",
+        "gtoken": "^7.0.0",
+        "jws": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=14"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/gtoken": {
+      "version": "7.1.0",
+      "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz";,
+      "integrity": 
"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
+      "license": "MIT",
+      "dependencies": {
+        "gaxios": "^6.0.0",
+        "jws": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/https-proxy-agent": {
+      "version": "7.0.6",
+      "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz";,
+      "integrity": 
"sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
+      "license": "MIT",
+      "dependencies": {
+        "agent-base": "^7.1.2",
+        "debug": "4"
+      },
+      "engines": {
+        "node": ">= 14"
+      }
+    },
+    "node_modules/@google-cloud/pubsub/node_modules/uuid": {
+      "version": "9.0.1",
+      "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz";,
+      "integrity": 
"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+      "funding": [
+        "https://github.com/sponsors/broofa";,
+        "https://github.com/sponsors/ctavan";
+      ],
+      "license": "MIT",
+      "bin": {
+        "uuid": "dist/bin/uuid"
       }
     },
     "node_modules/@grpc/grpc-js": {
-      "version": "1.4.6",
-      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.4.6.tgz";,
-      "integrity": 
"sha512-Byau4xiXfIixb1PnW30V/P9mkrZ05lknyNqiK+cVY9J5hj3gecxd/anwaUbAM8j834zg1x78NvAbwGnMfWEu7A==",
+      "version": "1.14.3",
+      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.14.3.tgz";,
+      "integrity": 
"sha512-Iq8QQQ/7X3Sac15oB6p0FmUg/klxQvXLeileoqrTRGJYLV+/9tubbr9ipz0GKHjmXVsgFPo/+W+2cA8eNcR+XA==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@grpc/proto-loader": "^0.6.4",
-        "@types/node": ">=12.12.47"
+        "@grpc/proto-loader": "^0.8.0",
+        "@js-sdsl/ordered-map": "^4.4.2"
       },
       "engines": {
-        "node": "^8.13.0 || >=10.10.0"
+        "node": ">=12.10.0"
       }
     },
     "node_modules/@grpc/proto-loader": {
-      "version": "0.6.9",
-      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz";,
-      "integrity": 
"sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==",
+      "version": "0.8.0",
+      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.8.0.tgz";,
+      "integrity": 
"sha512-rc1hOQtjIWGxcxpb9aHAfLpIctjEnsDehj0DAiVfBlmT84uvR0uUtN2hEi/ecvWVjXUGf5qPF4qEgiLOx1YIMQ==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@types/long": "^4.0.1",
         "lodash.camelcase": "^4.3.0",
-        "long": "^4.0.0",
-        "protobufjs": "^6.10.0",
-        "yargs": "^16.2.0"
+        "long": "^5.0.0",
+        "protobufjs": "^7.5.3",
+        "yargs": "^17.7.2"
       },
       "bin": {
         "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js"
@@ -220,6 +353,36 @@
         "node": ">=6"
       }
     },
+    "node_modules/@grpc/proto-loader/node_modules/long": {
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+      "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
+      "license": "Apache-2.0"
+    },
+    "node_modules/@grpc/proto-loader/node_modules/protobufjs": {
+      "version": "7.5.4",
+      "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
+      "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
+      "hasInstallScript": true,
+      "license": "BSD-3-Clause",
+      "dependencies": {
+        "@protobufjs/aspromise": "^1.1.2",
+        "@protobufjs/base64": "^1.1.2",
+        "@protobufjs/codegen": "^2.0.4",
+        "@protobufjs/eventemitter": "^1.1.0",
+        "@protobufjs/fetch": "^1.1.0",
+        "@protobufjs/float": "^1.0.2",
+        "@protobufjs/inquire": "^1.1.0",
+        "@protobufjs/path": "^1.1.2",
+        "@protobufjs/pool": "^1.1.0",
+        "@protobufjs/utf8": "^1.1.0",
+        "@types/node": ">=13.7.0",
+        "long": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=12.0.0"
+      }
+    },
     "node_modules/@humanwhocodes/config-array": {
       "version": "0.9.5",
       "resolved": 
"https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz";,
@@ -343,6 +506,16 @@
         "url": "https://github.com/chalk/wrap-ansi?sponsor=1";
       }
     },
+    "node_modules/@js-sdsl/ordered-map": {
+      "version": "4.4.2",
+      "resolved": 
"https://registry.npmjs.org/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz";,
+      "integrity": 
"sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==",
+      "license": "MIT",
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/js-sdsl";
+      }
+    },
     "node_modules/@nodelib/fs.scandir": {
       "version": "2.1.5",
       "resolved": 
"https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";,
@@ -379,19 +552,21 @@
       }
     },
     "node_modules/@opentelemetry/api": {
-      "version": "1.1.0",
-      "resolved": 
"https://registry.npmjs.org/@opentelemetry/api/-/api-1.1.0.tgz";,
-      "integrity": 
"sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ==",
+      "version": "1.9.0",
+      "resolved": 
"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz";,
+      "integrity": 
"sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==",
+      "license": "Apache-2.0",
       "engines": {
         "node": ">=8.0.0"
       }
     },
     "node_modules/@opentelemetry/semantic-conventions": {
-      "version": "1.2.0",
-      "resolved": 
"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.2.0.tgz";,
-      "integrity": 
"sha512-BNKB9fiYVghALJzCuWO3eNYfdTExPVK4ykrtmfNfy0A6UWYhOYjGMXifUmkunDJNL8ju9tBobo8jF0WR9zGy1Q==",
+      "version": "1.21.0",
+      "resolved": 
"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.21.0.tgz";,
+      "integrity": 
"sha512-lkC8kZYntxVKr7b8xmjCVUgE0a8xgDakPyDo9uSWavXPyYqLgYYGdEd2j8NxihRyb6UwpX3G/hFUF4/9q2V+/g==",
+      "license": "Apache-2.0",
       "engines": {
-        "node": ">=8.12.0"
+        "node": ">=14"
       }
     },
     "node_modules/@pkgjs/parseargs": {
@@ -542,12 +717,13 @@
       "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA="
     },
     "node_modules/@tootallnate/once": {
-      "version": "1.1.2",
-      "resolved": 
"https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz";,
-      "integrity": 
"sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
+      "version": "3.0.1",
+      "resolved": 
"https://registry.npmjs.org/@tootallnate/once/-/once-3.0.1.tgz";,
+      "integrity": 
"sha512-VyMVKRrpHTT8PnotUeV8L/mDaMwD5DaAKCFLP73zAqAtvF0FCqky+Ki7BYbFCYQmqFyTe9316Ed5zS70QUR9eg==",
       "dev": true,
+      "license": "MIT",
       "engines": {
-        "node": ">= 6"
+        "node": ">= 10"
       }
     },
     "node_modules/@tsconfig/node10": {
@@ -575,9 +751,10 @@
       "peer": true
     },
     "node_modules/@types/duplexify": {
-      "version": "3.6.1",
-      "resolved": 
"https://registry.npmjs.org/@types/duplexify/-/duplexify-3.6.1.tgz";,
-      "integrity": 
"sha512-n0zoEj/fMdMOvqbHxmqnza/kXyoGgJmEpsXjpP+gEqE1Ye4yNqc7xWipKnUoMpWhMuzJQSfK2gMrwlElly7OGQ==",
+      "version": "3.6.5",
+      "resolved": 
"https://registry.npmjs.org/@types/duplexify/-/duplexify-3.6.5.tgz";,
+      "integrity": 
"sha512-fB56ACzlW91UdZ5F3VXplVMDngO8QaX5Y2mjvADtN01TT2TMy4WjF0Lg+tFDvt4uMBeTe4SgaD+qCrA7dL5/tA==",
+      "license": "MIT",
       "dependencies": {
         "@types/node": "*"
       }
@@ -838,6 +1015,7 @@
       "version": "6.0.2",
       "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz";,
       "integrity": 
"sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+      "dev": true,
       "dependencies": {
         "debug": "4"
       },
@@ -1177,13 +1355,17 @@
       }
     },
     "node_modules/cliui": {
-      "version": "7.0.4",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz";,
-      "integrity": 
"sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+      "version": "8.0.1",
+      "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
+      "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+      "license": "ISC",
       "dependencies": {
         "string-width": "^4.2.0",
-        "strip-ansi": "^6.0.0",
+        "strip-ansi": "^6.0.1",
         "wrap-ansi": "^7.0.0"
+      },
+      "engines": {
+        "node": ">=12"
       }
     },
     "node_modules/codecov": {
@@ -1192,6 +1374,7 @@
       "integrity": 
"sha512-Y8Hw+V3HgR7V71xWH2vQ9lyS358CbGCldWlJFR0JirqoGtOoas3R3/OclRTvgUYFK29mmJICDPauVKmpqbwhOA==",
       "deprecated": 
"https://about.codecov.io/blog/codecov-uploader-deprecation-plan/";,
       "dev": true,
+      "license": "MIT",
       "dependencies": {
         "argv": "0.0.2",
         "ignore-walk": "3.0.4",
@@ -1206,28 +1389,6 @@
         "node": ">=4.0"
       }
     },
-    "node_modules/codecov/node_modules/argparse": {
-      "version": "1.0.10",
-      "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";,
-      "integrity": 
"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
-      "dev": true,
-      "dependencies": {
-        "sprintf-js": "~1.0.2"
-      }
-    },
-    "node_modules/codecov/node_modules/js-yaml": {
-      "version": "3.14.1",
-      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz";,
-      "integrity": 
"sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
-      "dev": true,
-      "dependencies": {
-        "argparse": "^1.0.7",
-        "esprima": "^4.0.0"
-      },
-      "bin": {
-        "js-yaml": "bin/js-yaml.js"
-      }
-    },
     "node_modules/color-convert": {
       "version": "2.0.1",
       "resolved": 
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz";,
@@ -1348,10 +1509,9 @@
       "dev": true
     },
     "node_modules/diff": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz";,
-      "integrity": 
"sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==",
-      "dev": true,
+      "version": "8.0.3",
+      "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.3.tgz";,
+      "integrity": 
"sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==",
       "license": "BSD-3-Clause",
       "engines": {
         "node": ">=0.3.1"
@@ -1382,14 +1542,15 @@
       }
     },
     "node_modules/duplexify": {
-      "version": "4.1.2",
-      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz";,
-      "integrity": 
"sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
+      "version": "4.1.3",
+      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz";,
+      "integrity": 
"sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==",
+      "license": "MIT",
       "dependencies": {
         "end-of-stream": "^1.4.1",
         "inherits": "^2.0.3",
         "readable-stream": "^3.1.1",
-        "stream-shift": "^1.0.0"
+        "stream-shift": "^1.0.2"
       }
     },
     "node_modules/eastasianwidth": {
@@ -1690,19 +1851,6 @@
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
       }
     },
-    "node_modules/esprima": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";,
-      "integrity": 
"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
-      "dev": true,
-      "bin": {
-        "esparse": "bin/esparse.js",
-        "esvalidate": "bin/esvalidate.js"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
     "node_modules/esquery": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz";,
@@ -1812,13 +1960,15 @@
     "node_modules/fast-text-encoding": {
       "version": "1.0.3",
       "resolved": 
"https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz";,
-      "integrity": 
"sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig=="
+      "integrity": 
"sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig==",
+      "dev": true
     },
     "node_modules/fast-url-parser": {
       "version": "1.1.3",
       "resolved": 
"https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz";,
-      "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=",
+      "integrity": 
"sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==",
       "dev": true,
+      "license": "MIT",
       "dependencies": {
         "punycode": "^1.3.2"
       }
@@ -1900,10 +2050,11 @@
       }
     },
     "node_modules/flatted": {
-      "version": "3.2.5",
-      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz";,
-      "integrity": 
"sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==",
-      "dev": true
+      "version": "3.4.1",
+      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.1.tgz";,
+      "integrity": 
"sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==",
+      "dev": true,
+      "license": "ISC"
     },
     "node_modules/foreground-child": {
       "version": "3.3.0",
@@ -1943,6 +2094,7 @@
       "version": "4.3.3",
       "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz";,
       "integrity": 
"sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==",
+      "dev": true,
       "dependencies": {
         "abort-controller": "^3.0.0",
         "extend": "^3.0.2",
@@ -1958,6 +2110,7 @@
       "version": "4.3.1",
       "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz";,
       "integrity": 
"sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
+      "dev": true,
       "dependencies": {
         "gaxios": "^4.0.0",
         "json-bigint": "^1.0.0"
@@ -2053,6 +2206,7 @@
       "version": "7.14.1",
       "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz";,
       "integrity": 
"sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==",
+      "dev": true,
       "dependencies": {
         "arrify": "^2.0.0",
         "base64-js": "^1.3.0",
@@ -2069,52 +2223,49 @@
       }
     },
     "node_modules/google-gax": {
-      "version": "2.30.3",
-      "resolved": 
"https://registry.npmjs.org/google-gax/-/google-gax-2.30.3.tgz";,
-      "integrity": 
"sha512-Zsd6hbJBMvAcJS3cYpAsmupvfsxygFR2meUZJcGeR7iUqYHCR/1Hf2aQNB9srrlXQMm91pNiUvW0Kz6Qld8QkA==",
+      "version": "4.0.4",
+      "resolved": 
"https://registry.npmjs.org/google-gax/-/google-gax-4.0.4.tgz";,
+      "integrity": 
"sha512-Yoey/ABON2HaTUIRUt5tTQAvwQ6E/2etSyFXwHNVcYtIiYDpKix7G4oorZdkp17gFiYovzRCRhRZYrfdCgRK9Q==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@grpc/grpc-js": "~1.6.0",
-        "@grpc/proto-loader": "0.6.9",
+        "@grpc/grpc-js": "~1.9.0",
+        "@grpc/proto-loader": "^0.7.0",
         "@types/long": "^4.0.0",
         "abort-controller": "^3.0.0",
         "duplexify": "^4.0.0",
-        "fast-text-encoding": "^1.0.3",
-        "google-auth-library": "^7.14.0",
-        "is-stream-ended": "^0.1.4",
+        "google-auth-library": "^9.0.0",
         "node-fetch": "^2.6.1",
         "object-hash": "^3.0.0",
-        "proto3-json-serializer": "^0.1.8",
-        "protobufjs": "6.11.2",
-        "retry-request": "^4.0.0"
-      },
-      "bin": {
-        "compileProtos": "build/tools/compileProtos.js"
+        "proto3-json-serializer": "^2.0.0",
+        "protobufjs": "7.2.5",
+        "retry-request": "^6.0.0"
       },
       "engines": {
-        "node": ">=10"
+        "node": ">=14"
       }
     },
     "node_modules/google-gax/node_modules/@grpc/grpc-js": {
-      "version": "1.6.12",
-      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.12.tgz";,
-      "integrity": 
"sha512-JmvQ03OTSpVd9JTlj/K3IWHSz4Gk/JMLUTtW7Zb0KvO1LcOYGATh5cNuRYzCAeDR3O8wq+q8FZe97eO9MBrkUw==",
+      "version": "1.9.15",
+      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.9.15.tgz";,
+      "integrity": 
"sha512-nqE7Hc0AzI+euzUwDAy0aY5hCp10r734gMGRdU+qOPX0XSceI2ULrcXB5U2xSc5VkWwalCj4M7GzCAygZl2KoQ==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@grpc/proto-loader": "^0.7.0",
+        "@grpc/proto-loader": "^0.7.8",
         "@types/node": ">=12.12.47"
       },
       "engines": {
         "node": "^8.13.0 || >=10.10.0"
       }
     },
-    
"node_modules/google-gax/node_modules/@grpc/grpc-js/node_modules/@grpc/proto-loader":
 {
-      "version": "0.7.7",
-      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz";,
-      "integrity": 
"sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==",
+    "node_modules/google-gax/node_modules/@grpc/proto-loader": {
+      "version": "0.7.15",
+      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.15.tgz";,
+      "integrity": 
"sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@types/long": "^4.0.1",
         "lodash.camelcase": "^4.3.0",
-        "long": "^4.0.0",
-        "protobufjs": "^7.0.0",
+        "long": "^5.0.0",
+        "protobufjs": "^7.2.5",
         "yargs": "^17.7.2"
       },
       "bin": {
@@ -2124,53 +2275,100 @@
         "node": ">=6"
       }
     },
-    
"node_modules/google-gax/node_modules/@grpc/grpc-js/node_modules/protobufjs": {
-      "version": "7.5.4",
-      "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
-      "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
-      "hasInstallScript": true,
-      "license": "BSD-3-Clause",
+    "node_modules/google-gax/node_modules/agent-base": {
+      "version": "7.1.4",
+      "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz";,
+      "integrity": 
"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
+      "license": "MIT",
+      "engines": {
+        "node": ">= 14"
+      }
+    },
+    "node_modules/google-gax/node_modules/gaxios": {
+      "version": "6.7.1",
+      "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz";,
+      "integrity": 
"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@protobufjs/aspromise": "^1.1.2",
-        "@protobufjs/base64": "^1.1.2",
-        "@protobufjs/codegen": "^2.0.4",
-        "@protobufjs/eventemitter": "^1.1.0",
-        "@protobufjs/fetch": "^1.1.0",
-        "@protobufjs/float": "^1.0.2",
-        "@protobufjs/inquire": "^1.1.0",
-        "@protobufjs/path": "^1.1.2",
-        "@protobufjs/pool": "^1.1.0",
-        "@protobufjs/utf8": "^1.1.0",
-        "@types/node": ">=13.7.0",
-        "long": "^5.0.0"
+        "extend": "^3.0.2",
+        "https-proxy-agent": "^7.0.1",
+        "is-stream": "^2.0.0",
+        "node-fetch": "^2.6.9",
+        "uuid": "^9.0.1"
       },
       "engines": {
-        "node": ">=12.0.0"
+        "node": ">=14"
       }
     },
-    
"node_modules/google-gax/node_modules/@grpc/grpc-js/node_modules/protobufjs/node_modules/long":
 {
-      "version": "5.2.3",
-      "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz";,
-      "integrity": 
"sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q=="
+    "node_modules/google-gax/node_modules/gcp-metadata": {
+      "version": "6.1.1",
+      "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz";,
+      "integrity": 
"sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "gaxios": "^6.1.1",
+        "google-logging-utils": "^0.0.2",
+        "json-bigint": "^1.0.0"
+      },
+      "engines": {
+        "node": ">=14"
+      }
     },
-    "node_modules/google-gax/node_modules/cliui": {
-      "version": "8.0.1",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
-      "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+    "node_modules/google-gax/node_modules/google-auth-library": {
+      "version": "9.15.1",
+      "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz";,
+      "integrity": 
"sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "string-width": "^4.2.0",
-        "strip-ansi": "^6.0.1",
-        "wrap-ansi": "^7.0.0"
+        "base64-js": "^1.3.0",
+        "ecdsa-sig-formatter": "^1.0.11",
+        "gaxios": "^6.1.1",
+        "gcp-metadata": "^6.1.0",
+        "gtoken": "^7.0.0",
+        "jws": "^4.0.0"
       },
       "engines": {
-        "node": ">=12"
+        "node": ">=14"
+      }
+    },
+    "node_modules/google-gax/node_modules/gtoken": {
+      "version": "7.1.0",
+      "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz";,
+      "integrity": 
"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
+      "license": "MIT",
+      "dependencies": {
+        "gaxios": "^6.0.0",
+        "jws": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/google-gax/node_modules/https-proxy-agent": {
+      "version": "7.0.6",
+      "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz";,
+      "integrity": 
"sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
+      "license": "MIT",
+      "dependencies": {
+        "agent-base": "^7.1.2",
+        "debug": "4"
+      },
+      "engines": {
+        "node": ">= 14"
       }
     },
+    "node_modules/google-gax/node_modules/long": {
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+      "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
+      "license": "Apache-2.0"
+    },
     "node_modules/google-gax/node_modules/protobufjs": {
-      "version": "6.11.2",
-      "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz";,
-      "integrity": 
"sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==",
+      "version": "7.2.5",
+      "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.5.tgz";,
+      "integrity": 
"sha512-gGXRSXvxQ7UiPgfw8gevrfRWcTlSbOFg+p/N+JVJEK5VhueL2miT6qTymqAmjr1Q5WbOCyJbyrk6JfWKwlFn6A==",
       "hasInstallScript": true,
+      "license": "BSD-3-Clause",
       "dependencies": {
         "@protobufjs/aspromise": "^1.1.2",
         "@protobufjs/base64": "^1.1.2",
@@ -2182,44 +2380,53 @@
         "@protobufjs/path": "^1.1.2",
         "@protobufjs/pool": "^1.1.0",
         "@protobufjs/utf8": "^1.1.0",
-        "@types/long": "^4.0.1",
         "@types/node": ">=13.7.0",
-        "long": "^4.0.0"
+        "long": "^5.0.0"
       },
-      "bin": {
-        "pbjs": "bin/pbjs",
-        "pbts": "bin/pbts"
+      "engines": {
+        "node": ">=12.0.0"
       }
     },
-    "node_modules/google-gax/node_modules/yargs": {
-      "version": "17.7.2",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
-      "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+    "node_modules/google-gax/node_modules/retry-request": {
+      "version": "6.0.0",
+      "resolved": 
"https://registry.npmjs.org/retry-request/-/retry-request-6.0.0.tgz";,
+      "integrity": 
"sha512-24kaFMd3wCnT3n4uPnsQh90ZSV8OISpfTFXJ00Wi+/oD2OPrp63EQ8hznk6rhxdlpwx2QBhQSDz2Fg46ki852g==",
+      "license": "MIT",
       "dependencies": {
-        "cliui": "^8.0.1",
-        "escalade": "^3.1.1",
-        "get-caller-file": "^2.0.5",
-        "require-directory": "^2.1.1",
-        "string-width": "^4.2.3",
-        "y18n": "^5.0.5",
-        "yargs-parser": "^21.1.1"
+        "debug": "^4.1.1",
+        "extend": "^3.0.2"
       },
       "engines": {
-        "node": ">=12"
+        "node": ">=14"
       }
     },
-    "node_modules/google-gax/node_modules/yargs-parser": {
-      "version": "21.1.1",
-      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
-      "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+    "node_modules/google-gax/node_modules/uuid": {
+      "version": "9.0.1",
+      "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz";,
+      "integrity": 
"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+      "funding": [
+        "https://github.com/sponsors/broofa";,
+        "https://github.com/sponsors/ctavan";
+      ],
+      "license": "MIT",
+      "bin": {
+        "uuid": "dist/bin/uuid"
+      }
+    },
+    "node_modules/google-logging-utils": {
+      "version": "0.0.2",
+      "resolved": 
"https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-0.0.2.tgz";,
+      "integrity": 
"sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ==",
+      "license": "Apache-2.0",
       "engines": {
-        "node": ">=12"
+        "node": ">=14"
       }
     },
     "node_modules/google-p12-pem": {
       "version": "3.1.4",
       "resolved": 
"https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz";,
       "integrity": 
"sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==",
+      "dev": true,
       "dependencies": {
         "node-forge": "^1.3.1"
       },
@@ -2234,6 +2441,7 @@
       "version": "5.3.2",
       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz";,
       "integrity": 
"sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==",
+      "dev": true,
       "dependencies": {
         "gaxios": "^4.0.0",
         "google-p12-pem": "^3.1.3",
@@ -2302,6 +2510,15 @@
         "he": "bin/he"
       }
     },
+    "node_modules/heap-js": {
+      "version": "2.7.1",
+      "resolved": "https://registry.npmjs.org/heap-js/-/heap-js-2.7.1.tgz";,
+      "integrity": 
"sha512-EQfezRg0NCZGNlhlDR3Evrw1FVL2G3LhU7EgPoxufQKruNBSYA8MiRPHeWbU+36o+Fhel0wMwM+sLEiBAlNLJA==",
+      "license": "BSD-3-Clause",
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
     "node_modules/http-proxy-agent": {
       "version": "4.0.1",
       "resolved": 
"https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz";,
@@ -2320,6 +2537,7 @@
       "version": "5.0.0",
       "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz";,
       "integrity": 
"sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
+      "dev": true,
       "dependencies": {
         "agent-base": "6",
         "debug": "4"
@@ -2361,6 +2579,7 @@
       "resolved": 
"https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz";,
       "integrity": 
"sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==",
       "dev": true,
+      "license": "ISC",
       "dependencies": {
         "minimatch": "^3.0.4"
       }
@@ -2496,7 +2715,8 @@
     "node_modules/is-stream-ended": {
       "version": "0.1.4",
       "resolved": 
"https://registry.npmjs.org/is-stream-ended/-/is-stream-ended-0.1.4.tgz";,
-      "integrity": 
"sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw=="
+      "integrity": 
"sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==",
+      "license": "MIT"
     },
     "node_modules/is-unicode-supported": {
       "version": "0.1.0",
@@ -2542,15 +2762,6 @@
         "istanbul": "lib/cli.js"
       }
     },
-    "node_modules/istanbul/node_modules/argparse": {
-      "version": "1.0.10",
-      "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";,
-      "integrity": 
"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
-      "dev": true,
-      "dependencies": {
-        "sprintf-js": "~1.0.2"
-      }
-    },
     "node_modules/istanbul/node_modules/esprima": {
       "version": "2.7.3",
       "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz";,
@@ -2589,33 +2800,6 @@
         "node": ">=0.10.0"
       }
     },
-    "node_modules/istanbul/node_modules/js-yaml": {
-      "version": "3.14.2",
-      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz";,
-      "integrity": 
"sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "argparse": "^1.0.7",
-        "esprima": "^4.0.0"
-      },
-      "bin": {
-        "js-yaml": "bin/js-yaml.js"
-      }
-    },
-    "node_modules/istanbul/node_modules/js-yaml/node_modules/esprima": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";,
-      "integrity": 
"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
-      "dev": true,
-      "bin": {
-        "esparse": "bin/esparse.js",
-        "esvalidate": "bin/esvalidate.js"
-      },
-      "engines": {
-        "node": ">=4"
-      }
-    },
     "node_modules/istanbul/node_modules/supports-color": {
       "version": "3.2.3",
       "resolved": 
"https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz";,
@@ -2756,7 +2940,8 @@
     "node_modules/lodash.camelcase": {
       "version": "4.3.0",
       "resolved": 
"https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";,
-      "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY="
+      "integrity": 
"sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==",
+      "license": "MIT"
     },
     "node_modules/lodash.isfunction": {
       "version": "3.0.9",
@@ -2804,6 +2989,7 @@
       "version": "6.0.0",
       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz";,
       "integrity": 
"sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+      "dev": true,
       "dependencies": {
         "yallist": "^4.0.0"
       },
@@ -2944,21 +3130,6 @@
         "balanced-match": "^1.0.0"
       }
     },
-    "node_modules/mocha/node_modules/cliui": {
-      "version": "8.0.1",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
-      "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
-      "dev": true,
-      "license": "ISC",
-      "dependencies": {
-        "string-width": "^4.2.0",
-        "strip-ansi": "^6.0.1",
-        "wrap-ansi": "^7.0.0"
-      },
-      "engines": {
-        "node": ">=12"
-      }
-    },
     "node_modules/mocha/node_modules/glob": {
       "version": "10.5.0",
       "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz";,
@@ -2997,35 +3168,6 @@
         "url": "https://github.com/sponsors/isaacs";
       }
     },
-    "node_modules/mocha/node_modules/yargs": {
-      "version": "17.7.2",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
-      "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "cliui": "^8.0.1",
-        "escalade": "^3.1.1",
-        "get-caller-file": "^2.0.5",
-        "require-directory": "^2.1.1",
-        "string-width": "^4.2.3",
-        "y18n": "^5.0.5",
-        "yargs-parser": "^21.1.1"
-      },
-      "engines": {
-        "node": ">=12"
-      }
-    },
-    "node_modules/mocha/node_modules/yargs-parser": {
-      "version": "21.1.1",
-      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
-      "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
-      "dev": true,
-      "license": "ISC",
-      "engines": {
-        "node": ">=12"
-      }
-    },
     "node_modules/ms": {
       "version": "2.1.3",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz";,
@@ -3044,9 +3186,10 @@
       "dev": true
     },
     "node_modules/node-fetch": {
-      "version": "2.6.7",
-      "resolved": 
"https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz";,
-      "integrity": 
"sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+      "version": "2.7.0",
+      "resolved": 
"https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz";,
+      "integrity": 
"sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
+      "license": "MIT",
       "dependencies": {
         "whatwg-url": "^5.0.0"
       },
@@ -3066,6 +3209,7 @@
       "version": "1.3.2",
       "resolved": 
"https://registry.npmjs.org/node-forge/-/node-forge-1.3.2.tgz";,
       "integrity": 
"sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw==",
+      "dev": true,
       "engines": {
         "node": ">= 6.13.0"
       }
@@ -3086,6 +3230,7 @@
       "version": "3.0.0",
       "resolved": 
"https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz";,
       "integrity": 
"sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
+      "license": "MIT",
       "engines": {
         "node": ">= 6"
       }
@@ -3318,18 +3463,52 @@
         "prettier": "bin/prettier.cjs"
       },
       "engines": {
-        "node": ">=14"
-      },
-      "funding": {
-        "url": "https://github.com/prettier/prettier?sponsor=1";
-      }
-    },
-    "node_modules/proto3-json-serializer": {
-      "version": "0.1.9",
-      "resolved": 
"https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.9.tgz";,
-      "integrity": 
"sha512-A60IisqvnuI45qNRygJjrnNjX2TMdQGMY+57tR3nul3ZgO2zXkR9OGR8AXxJhkqx84g0FTnrfi3D5fWMSdANdQ==",
-      "dependencies": {
-        "protobufjs": "^6.11.2"
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/prettier/prettier?sponsor=1";
+      }
+    },
+    "node_modules/proto3-json-serializer": {
+      "version": "2.0.2",
+      "resolved": 
"https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-2.0.2.tgz";,
+      "integrity": 
"sha512-SAzp/O4Yh02jGdRc+uIrGoe87dkN/XtwxfZ4ZyafJHymd79ozp5VG5nyZ7ygqPM5+cpLDjjGnYFUkngonyDPOQ==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "protobufjs": "^7.2.5"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/proto3-json-serializer/node_modules/long": {
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+      "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
+      "license": "Apache-2.0"
+    },
+    "node_modules/proto3-json-serializer/node_modules/protobufjs": {
+      "version": "7.5.4",
+      "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
+      "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
+      "hasInstallScript": true,
+      "license": "BSD-3-Clause",
+      "dependencies": {
+        "@protobufjs/aspromise": "^1.1.2",
+        "@protobufjs/base64": "^1.1.2",
+        "@protobufjs/codegen": "^2.0.4",
+        "@protobufjs/eventemitter": "^1.1.0",
+        "@protobufjs/fetch": "^1.1.0",
+        "@protobufjs/float": "^1.0.2",
+        "@protobufjs/inquire": "^1.1.0",
+        "@protobufjs/path": "^1.1.2",
+        "@protobufjs/pool": "^1.1.0",
+        "@protobufjs/utf8": "^1.1.0",
+        "@types/node": ">=13.7.0",
+        "long": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=12.0.0"
       }
     },
     "node_modules/protobufjs": {
@@ -3361,8 +3540,9 @@
     "node_modules/punycode": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";,
-      "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
-      "dev": true
+      "integrity": 
"sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
+      "dev": true,
+      "license": "MIT"
     },
     "node_modules/queue-microtask": {
       "version": "1.2.3",
@@ -3392,16 +3572,6 @@
         "linked-list-typescript": "^1.0.11"
       }
     },
-    "node_modules/randombytes": {
-      "version": "2.1.0",
-      "resolved": 
"https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz";,
-      "integrity": 
"sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "safe-buffer": "^5.1.0"
-      }
-    },
     "node_modules/randomstring": {
       "version": "1.1.5",
       "resolved": 
"https://registry.npmjs.org/randomstring/-/randomstring-1.1.5.tgz";,
@@ -3482,6 +3652,7 @@
       "version": "4.2.2",
       "resolved": 
"https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz";,
       "integrity": 
"sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==",
+      "dev": true,
       "dependencies": {
         "debug": "^4.1.1",
         "extend": "^3.0.2"
@@ -3576,13 +3747,13 @@
       "integrity": 
"sha512-FJkTECOkJ1jiRdy/BF24lR9AU+siChyYEYrLNy1ZPSz5bas4ZxslM/Fm0VwActiL0zTo1UA5XE2NRubM78+i4g=="
     },
     "node_modules/serialize-javascript": {
-      "version": "6.0.2",
-      "resolved": 
"https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz";,
-      "integrity": 
"sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
+      "version": "7.0.4",
+      "resolved": 
"https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.4.tgz";,
+      "integrity": 
"sha512-DuGdB+Po43Q5Jxwpzt1lhyFSYKryqoNjQSA9M92tyw0lyHIOur+XCalOUe0KTJpyqzT8+fQ5A0Jf7vCx/NKmIg==",
       "dev": true,
       "license": "BSD-3-Clause",
-      "dependencies": {
-        "randombytes": "^2.1.0"
+      "engines": {
+        "node": ">=20.0.0"
       }
     },
     "node_modules/shebang-command": {
@@ -3652,12 +3823,6 @@
         "node": ">=0.8.0"
       }
     },
-    "node_modules/sprintf-js": {
-      "version": "1.0.3",
-      "resolved": 
"https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";,
-      "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
-      "dev": true
-    },
     "node_modules/stream-events": {
       "version": "1.0.5",
       "resolved": 
"https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz";,
@@ -3668,9 +3833,10 @@
       }
     },
     "node_modules/stream-shift": {
-      "version": "1.0.1",
-      "resolved": 
"https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz";,
-      "integrity": 
"sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ=="
+      "version": "1.0.3",
+      "resolved": 
"https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz";,
+      "integrity": 
"sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==",
+      "license": "MIT"
     },
     "node_modules/string_decoder": {
       "version": "1.3.0",
@@ -3865,16 +4031,6 @@
         }
       }
     },
-    "node_modules/ts-node/node_modules/diff": {
-      "version": "4.0.4",
-      "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz";,
-      "integrity": 
"sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==",
-      "license": "BSD-3-Clause",
-      "peer": true,
-      "engines": {
-        "node": ">=0.3.1"
-      }
-    },
     "node_modules/tslib": {
       "version": "1.14.1",
       "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz";,
@@ -4051,6 +4207,7 @@
       "resolved": "https://registry.npmjs.org/urlgrey/-/urlgrey-1.0.0.tgz";,
       "integrity": 
"sha512-hJfIzMPJmI9IlLkby8QrsCykQ+SXDeO2W5Q9QTW3QpqZVTx4a/K7p8/5q+/isD8vsbVaFgql/gvAoQCRQ2Cb5w==",
       "dev": true,
+      "license": "BSD-2-Clause",
       "dependencies": {
         "fast-url-parser": "^1.1.3"
       }
@@ -4147,6 +4304,7 @@
       "version": "7.0.0",
       "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz";,
       "integrity": 
"sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+      "license": "MIT",
       "dependencies": {
         "ansi-styles": "^4.0.0",
         "string-width": "^4.1.0",
@@ -4194,31 +4352,34 @@
     "node_modules/yallist": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz";,
-      "integrity": 
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+      "integrity": 
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+      "dev": true
     },
     "node_modules/yargs": {
-      "version": "16.2.0",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz";,
-      "integrity": 
"sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+      "version": "17.7.2",
+      "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
+      "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+      "license": "MIT",
       "dependencies": {
-        "cliui": "^7.0.2",
+        "cliui": "^8.0.1",
         "escalade": "^3.1.1",
         "get-caller-file": "^2.0.5",
         "require-directory": "^2.1.1",
-        "string-width": "^4.2.0",
+        "string-width": "^4.2.3",
         "y18n": "^5.0.5",
-        "yargs-parser": "^20.2.2"
+        "yargs-parser": "^21.1.1"
       },
       "engines": {
-        "node": ">=10"
+        "node": ">=12"
       }
     },
     "node_modules/yargs-parser": {
-      "version": "20.2.4",
-      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz";,
-      "integrity": 
"sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==",
+      "version": "21.1.1",
+      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
+      "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+      "license": "ISC",
       "engines": {
-        "node": ">=10"
+        "node": ">=12"
       }
     },
     "node_modules/yargs-unparser": {
@@ -4332,67 +4493,180 @@
       "version": "3.0.7",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.7.tgz";,
       "integrity": 
"sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==",
+      "dev": true,
       "requires": {
         "arrify": "^2.0.0",
         "extend": "^3.0.2"
       }
     },
     "@google-cloud/precise-date": {
-      "version": "2.0.4",
-      "resolved": 
"https://registry.npmjs.org/@google-cloud/precise-date/-/precise-date-2.0.4.tgz";,
-      "integrity": 
"sha512-nOB+mZdevI/1Si0QAfxWfzzIqFdc7wrO+DYePFvgbOoMtvX+XfFTINNt7e9Zg66AbDbWCPRnikU+6f5LTm9Wyg=="
+      "version": "4.0.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/precise-date/-/precise-date-4.0.0.tgz";,
+      "integrity": 
"sha512-1TUx3KdaU3cN7nfCdNf+UVqA/PSX29Cjcox3fZZBtINlRrXVTmUkQnCKv2MbBUbCopbK4olAT1IHl76uZyCiVA=="
     },
     "@google-cloud/projectify": {
       "version": "2.1.1",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz";,
-      "integrity": 
"sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ=="
+      "integrity": 
"sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ==",
+      "dev": true
     },
     "@google-cloud/promisify": {
       "version": "2.0.4",
       "resolved": 
"https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz";,
-      "integrity": 
"sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA=="
+      "integrity": 
"sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA==",
+      "dev": true
     },
     "@google-cloud/pubsub": {
-      "version": "2.19.4",
-      "resolved": 
"https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-2.19.4.tgz";,
-      "integrity": 
"sha512-+aZxq6N5XGarQS3xGXjKSRFy4TB+3PMpI0CBmSrcC59g3TB5nmwps3pv/KkdLa0Cd+CPHDdfrEW1uSrGBMLICw==",
-      "requires": {
-        "@google-cloud/paginator": "^3.0.6",
-        "@google-cloud/precise-date": "^2.0.0",
-        "@google-cloud/projectify": "^2.0.0",
-        "@google-cloud/promisify": "^2.0.0",
-        "@opentelemetry/api": "^1.0.0",
-        "@opentelemetry/semantic-conventions": "^1.0.0",
+      "version": "4.2.0",
+      "resolved": 
"https://registry.npmjs.org/@google-cloud/pubsub/-/pubsub-4.2.0.tgz";,
+      "integrity": 
"sha512-igfGk0SFB8bLnkcgluAo+Nl+ZiKcMA8X4IT3pk8ND4rIX8sx/afiYL6ags8rL0PEsrjnU4jkCC++M5pyBCRs4A==",
+      "requires": {
+        "@google-cloud/paginator": "^5.0.0",
+        "@google-cloud/precise-date": "^4.0.0",
+        "@google-cloud/projectify": "^4.0.0",
+        "@google-cloud/promisify": "^4.0.0",
+        "@opentelemetry/api": "^1.6.0",
+        "@opentelemetry/semantic-conventions": "~1.21.0",
         "@types/duplexify": "^3.6.0",
         "@types/long": "^4.0.0",
         "arrify": "^2.0.0",
         "extend": "^3.0.2",
-        "google-auth-library": "^7.0.0",
-        "google-gax": "2.30.3",
+        "google-auth-library": "^9.0.0",
+        "google-gax": "^4.0.4",
+        "heap-js": "^2.2.0",
         "is-stream-ended": "^0.1.4",
         "lodash.snakecase": "^4.1.1",
         "p-defer": "^3.0.0"
+      },
+      "dependencies": {
+        "@google-cloud/paginator": {
+          "version": "5.0.2",
+          "resolved": 
"https://registry.npmjs.org/@google-cloud/paginator/-/paginator-5.0.2.tgz";,
+          "integrity": 
"sha512-DJS3s0OVH4zFDB1PzjxAsHqJT6sKVbRwwML0ZBP9PbU7Yebtu/7SWMRzvO2J3nUi9pRNITCfu4LJeooM2w4pjg==",
+          "requires": {
+            "arrify": "^2.0.0",
+            "extend": "^3.0.2"
+          }
+        },
+        "@google-cloud/projectify": {
+          "version": "4.0.0",
+          "resolved": 
"https://registry.npmjs.org/@google-cloud/projectify/-/projectify-4.0.0.tgz";,
+          "integrity": 
"sha512-MmaX6HeSvyPbWGwFq7mXdo0uQZLGBYCwziiLIGq5JVX+/bdI3SAq6bP98trV5eTWfLuvsMcIC1YJOF2vfteLFA=="
+        },
+        "@google-cloud/promisify": {
+          "version": "4.1.0",
+          "resolved": 
"https://registry.npmjs.org/@google-cloud/promisify/-/promisify-4.1.0.tgz";,
+          "integrity": 
"sha512-G/FQx5cE/+DqBbOpA5jKsegGwdPniU6PuIEMt+qxWgFxvxuFOzVmp6zYchtYuwAWV5/8Dgs0yAmjvNZv3uXLQg=="
+        },
+        "agent-base": {
+          "version": "7.1.4",
+          "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz";,
+          "integrity": 
"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ=="
+        },
+        "gaxios": {
+          "version": "6.7.1",
+          "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz";,
+          "integrity": 
"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==",
+          "requires": {
+            "extend": "^3.0.2",
+            "https-proxy-agent": "^7.0.1",
+            "is-stream": "^2.0.0",
+            "node-fetch": "^2.6.9",
+            "uuid": "^9.0.1"
+          }
+        },
+        "gcp-metadata": {
+          "version": "6.1.1",
+          "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz";,
+          "integrity": 
"sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
+          "requires": {
+            "gaxios": "^6.1.1",
+            "google-logging-utils": "^0.0.2",
+            "json-bigint": "^1.0.0"
+          }
+        },
+        "google-auth-library": {
+          "version": "9.15.1",
+          "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz";,
+          "integrity": 
"sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
+          "requires": {
+            "base64-js": "^1.3.0",
+            "ecdsa-sig-formatter": "^1.0.11",
+            "gaxios": "^6.1.1",
+            "gcp-metadata": "^6.1.0",
+            "gtoken": "^7.0.0",
+            "jws": "^4.0.0"
+          }
+        },
+        "gtoken": {
+          "version": "7.1.0",
+          "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz";,
+          "integrity": 
"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
+          "requires": {
+            "gaxios": "^6.0.0",
+            "jws": "^4.0.0"
+          }
+        },
+        "https-proxy-agent": {
+          "version": "7.0.6",
+          "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz";,
+          "integrity": 
"sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
+          "requires": {
+            "agent-base": "^7.1.2",
+            "debug": "4"
+          }
+        },
+        "uuid": {
+          "version": "9.0.1",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz";,
+          "integrity": 
"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+        }
       }
     },
     "@grpc/grpc-js": {
-      "version": "1.4.6",
-      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.4.6.tgz";,
-      "integrity": 
"sha512-Byau4xiXfIixb1PnW30V/P9mkrZ05lknyNqiK+cVY9J5hj3gecxd/anwaUbAM8j834zg1x78NvAbwGnMfWEu7A==",
+      "version": "1.14.3",
+      "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.14.3.tgz";,
+      "integrity": 
"sha512-Iq8QQQ/7X3Sac15oB6p0FmUg/klxQvXLeileoqrTRGJYLV+/9tubbr9ipz0GKHjmXVsgFPo/+W+2cA8eNcR+XA==",
       "requires": {
-        "@grpc/proto-loader": "^0.6.4",
-        "@types/node": ">=12.12.47"
+        "@grpc/proto-loader": "^0.8.0",
+        "@js-sdsl/ordered-map": "^4.4.2"
       }
     },
     "@grpc/proto-loader": {
-      "version": "0.6.9",
-      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz";,
-      "integrity": 
"sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==",
+      "version": "0.8.0",
+      "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.8.0.tgz";,
+      "integrity": 
"sha512-rc1hOQtjIWGxcxpb9aHAfLpIctjEnsDehj0DAiVfBlmT84uvR0uUtN2hEi/ecvWVjXUGf5qPF4qEgiLOx1YIMQ==",
       "requires": {
-        "@types/long": "^4.0.1",
         "lodash.camelcase": "^4.3.0",
-        "long": "^4.0.0",
-        "protobufjs": "^6.10.0",
-        "yargs": "^16.2.0"
+        "long": "^5.0.0",
+        "protobufjs": "^7.5.3",
+        "yargs": "^17.7.2"
+      },
+      "dependencies": {
+        "long": {
+          "version": "5.3.2",
+          "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+          "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA=="
+        },
+        "protobufjs": {
+          "version": "7.5.4",
+          "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
+          "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
+          "requires": {
+            "@protobufjs/aspromise": "^1.1.2",
+            "@protobufjs/base64": "^1.1.2",
+            "@protobufjs/codegen": "^2.0.4",
+            "@protobufjs/eventemitter": "^1.1.0",
+            "@protobufjs/fetch": "^1.1.0",
+            "@protobufjs/float": "^1.0.2",
+            "@protobufjs/inquire": "^1.1.0",
+            "@protobufjs/path": "^1.1.2",
+            "@protobufjs/pool": "^1.1.0",
+            "@protobufjs/utf8": "^1.1.0",
+            "@types/node": ">=13.7.0",
+            "long": "^5.0.0"
+          }
+        }
       }
     },
     "@humanwhocodes/config-array": {
@@ -4477,6 +4751,11 @@
         }
       }
     },
+    "@js-sdsl/ordered-map": {
+      "version": "4.4.2",
+      "resolved": 
"https://registry.npmjs.org/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz";,
+      "integrity": 
"sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw=="
+    },
     "@nodelib/fs.scandir": {
       "version": "2.1.5",
       "resolved": 
"https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";,
@@ -4504,14 +4783,14 @@
       }
     },
     "@opentelemetry/api": {
-      "version": "1.1.0",
-      "resolved": 
"https://registry.npmjs.org/@opentelemetry/api/-/api-1.1.0.tgz";,
-      "integrity": 
"sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ=="
+      "version": "1.9.0",
+      "resolved": 
"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz";,
+      "integrity": 
"sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="
     },
     "@opentelemetry/semantic-conventions": {
-      "version": "1.2.0",
-      "resolved": 
"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.2.0.tgz";,
-      "integrity": 
"sha512-BNKB9fiYVghALJzCuWO3eNYfdTExPVK4ykrtmfNfy0A6UWYhOYjGMXifUmkunDJNL8ju9tBobo8jF0WR9zGy1Q=="
+      "version": "1.21.0",
+      "resolved": 
"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.21.0.tgz";,
+      "integrity": 
"sha512-lkC8kZYntxVKr7b8xmjCVUgE0a8xgDakPyDo9uSWavXPyYqLgYYGdEd2j8NxihRyb6UwpX3G/hFUF4/9q2V+/g=="
     },
     "@pkgjs/parseargs": {
       "version": "0.11.0",
@@ -4637,9 +4916,9 @@
       "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA="
     },
     "@tootallnate/once": {
-      "version": "1.1.2",
-      "resolved": 
"https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz";,
-      "integrity": 
"sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
+      "version": "3.0.1",
+      "resolved": 
"https://registry.npmjs.org/@tootallnate/once/-/once-3.0.1.tgz";,
+      "integrity": 
"sha512-VyMVKRrpHTT8PnotUeV8L/mDaMwD5DaAKCFLP73zAqAtvF0FCqky+Ki7BYbFCYQmqFyTe9316Ed5zS70QUR9eg==",
       "dev": true
     },
     "@tsconfig/node10": {
@@ -4667,9 +4946,9 @@
       "peer": true
     },
     "@types/duplexify": {
-      "version": "3.6.1",
-      "resolved": 
"https://registry.npmjs.org/@types/duplexify/-/duplexify-3.6.1.tgz";,
-      "integrity": 
"sha512-n0zoEj/fMdMOvqbHxmqnza/kXyoGgJmEpsXjpP+gEqE1Ye4yNqc7xWipKnUoMpWhMuzJQSfK2gMrwlElly7OGQ==",
+      "version": "3.6.5",
+      "resolved": 
"https://registry.npmjs.org/@types/duplexify/-/duplexify-3.6.5.tgz";,
+      "integrity": 
"sha512-fB56ACzlW91UdZ5F3VXplVMDngO8QaX5Y2mjvADtN01TT2TMy4WjF0Lg+tFDvt4uMBeTe4SgaD+qCrA7dL5/tA==",
       "requires": {
         "@types/node": "*"
       }
@@ -4827,6 +5106,7 @@
       "version": "6.0.2",
       "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz";,
       "integrity": 
"sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+      "dev": true,
       "requires": {
         "debug": "4"
       }
@@ -5057,12 +5337,12 @@
       }
     },
     "cliui": {
-      "version": "7.0.4",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz";,
-      "integrity": 
"sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+      "version": "8.0.1",
+      "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
+      "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
       "requires": {
         "string-width": "^4.2.0",
-        "strip-ansi": "^6.0.0",
+        "strip-ansi": "^6.0.1",
         "wrap-ansi": "^7.0.0"
       }
     },
@@ -5074,30 +5354,9 @@
       "requires": {
         "argv": "0.0.2",
         "ignore-walk": "3.0.4",
-        "js-yaml": "3.14.1",
+        "js-yaml": "^4.1.0",
         "teeny-request": "7.1.1",
         "urlgrey": "1.0.0"
-      },
-      "dependencies": {
-        "argparse": {
-          "version": "1.0.10",
-          "resolved": 
"https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";,
-          "integrity": 
"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
-          "dev": true,
-          "requires": {
-            "sprintf-js": "~1.0.2"
-          }
-        },
-        "js-yaml": {
-          "version": "3.14.1",
-          "resolved": 
"https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz";,
-          "integrity": 
"sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
-          "dev": true,
-          "requires": {
-            "argparse": "^1.0.7",
-            "esprima": "^4.0.0"
-          }
-        }
       }
     },
     "color-convert": {
@@ -5181,10 +5440,9 @@
       "dev": true
     },
     "diff": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz";,
-      "integrity": 
"sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==",
-      "dev": true
+      "version": "8.0.3",
+      "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.3.tgz";,
+      "integrity": 
"sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ=="
     },
     "dir-glob": {
       "version": "3.0.1",
@@ -5205,14 +5463,14 @@
       }
     },
     "duplexify": {
-      "version": "4.1.2",
-      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz";,
-      "integrity": 
"sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",
+      "version": "4.1.3",
+      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz";,
+      "integrity": 
"sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==",
       "requires": {
         "end-of-stream": "^1.4.1",
         "inherits": "^2.0.3",
         "readable-stream": "^3.1.1",
-        "stream-shift": "^1.0.0"
+        "stream-shift": "^1.0.2"
       }
     },
     "eastasianwidth": {
@@ -5441,12 +5699,6 @@
         "eslint-visitor-keys": "^3.3.0"
       }
     },
-    "esprima": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";,
-      "integrity": 
"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
-      "dev": true
-    },
     "esquery": {
       "version": "1.4.0",
       "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz";,
@@ -5536,12 +5788,13 @@
     "fast-text-encoding": {
       "version": "1.0.3",
       "resolved": 
"https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz";,
-      "integrity": 
"sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig=="
+      "integrity": 
"sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig==",
+      "dev": true
     },
     "fast-url-parser": {
       "version": "1.1.3",
       "resolved": 
"https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz";,
-      "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=",
+      "integrity": 
"sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==",
       "dev": true,
       "requires": {
         "punycode": "^1.3.2"
@@ -5606,9 +5859,9 @@
       }
     },
     "flatted": {
-      "version": "3.2.5",
-      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz";,
-      "integrity": 
"sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==",
+      "version": "3.4.1",
+      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.1.tgz";,
+      "integrity": 
"sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==",
       "dev": true
     },
     "foreground-child": {
@@ -5642,6 +5895,7 @@
       "version": "4.3.3",
       "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz";,
       "integrity": 
"sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==",
+      "dev": true,
       "requires": {
         "abort-controller": "^3.0.0",
         "extend": "^3.0.2",
@@ -5654,6 +5908,7 @@
       "version": "4.3.1",
       "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz";,
       "integrity": 
"sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
+      "dev": true,
       "requires": {
         "gaxios": "^4.0.0",
         "json-bigint": "^1.0.0"
@@ -5719,6 +5974,7 @@
       "version": "7.14.1",
       "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz";,
       "integrity": 
"sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==",
+      "dev": true,
       "requires": {
         "arrify": "^2.0.0",
         "base64-js": "^1.3.0",
@@ -5732,88 +5988,110 @@
       }
     },
     "google-gax": {
-      "version": "2.30.3",
-      "resolved": 
"https://registry.npmjs.org/google-gax/-/google-gax-2.30.3.tgz";,
-      "integrity": 
"sha512-Zsd6hbJBMvAcJS3cYpAsmupvfsxygFR2meUZJcGeR7iUqYHCR/1Hf2aQNB9srrlXQMm91pNiUvW0Kz6Qld8QkA==",
+      "version": "4.0.4",
+      "resolved": 
"https://registry.npmjs.org/google-gax/-/google-gax-4.0.4.tgz";,
+      "integrity": 
"sha512-Yoey/ABON2HaTUIRUt5tTQAvwQ6E/2etSyFXwHNVcYtIiYDpKix7G4oorZdkp17gFiYovzRCRhRZYrfdCgRK9Q==",
       "requires": {
-        "@grpc/grpc-js": "~1.6.0",
-        "@grpc/proto-loader": "0.6.9",
+        "@grpc/grpc-js": "~1.9.0",
+        "@grpc/proto-loader": "^0.7.0",
         "@types/long": "^4.0.0",
         "abort-controller": "^3.0.0",
         "duplexify": "^4.0.0",
-        "fast-text-encoding": "^1.0.3",
-        "google-auth-library": "^7.14.0",
-        "is-stream-ended": "^0.1.4",
+        "google-auth-library": "^9.0.0",
         "node-fetch": "^2.6.1",
         "object-hash": "^3.0.0",
-        "proto3-json-serializer": "^0.1.8",
-        "protobufjs": "6.11.2",
-        "retry-request": "^4.0.0"
+        "proto3-json-serializer": "^2.0.0",
+        "protobufjs": "7.2.5",
+        "retry-request": "^6.0.0"
       },
       "dependencies": {
         "@grpc/grpc-js": {
-          "version": "1.6.12",
-          "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.12.tgz";,
-          "integrity": 
"sha512-JmvQ03OTSpVd9JTlj/K3IWHSz4Gk/JMLUTtW7Zb0KvO1LcOYGATh5cNuRYzCAeDR3O8wq+q8FZe97eO9MBrkUw==",
+          "version": "1.9.15",
+          "resolved": 
"https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.9.15.tgz";,
+          "integrity": 
"sha512-nqE7Hc0AzI+euzUwDAy0aY5hCp10r734gMGRdU+qOPX0XSceI2ULrcXB5U2xSc5VkWwalCj4M7GzCAygZl2KoQ==",
           "requires": {
-            "@grpc/proto-loader": "^0.7.0",
+            "@grpc/proto-loader": "^0.7.8",
             "@types/node": ">=12.12.47"
-          },
-          "dependencies": {
-            "@grpc/proto-loader": {
-              "version": "0.7.7",
-              "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz";,
-              "integrity": 
"sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==",
-              "requires": {
-                "@types/long": "^4.0.1",
-                "lodash.camelcase": "^4.3.0",
-                "long": "^4.0.0",
-                "protobufjs": "^7.0.0",
-                "yargs": "^17.7.2"
-              }
-            },
-            "protobufjs": {
-              "version": "7.5.4",
-              "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
-              "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
-              "requires": {
-                "@protobufjs/aspromise": "^1.1.2",
-                "@protobufjs/base64": "^1.1.2",
-                "@protobufjs/codegen": "^2.0.4",
-                "@protobufjs/eventemitter": "^1.1.0",
-                "@protobufjs/fetch": "^1.1.0",
-                "@protobufjs/float": "^1.0.2",
-                "@protobufjs/inquire": "^1.1.0",
-                "@protobufjs/path": "^1.1.2",
-                "@protobufjs/pool": "^1.1.0",
-                "@protobufjs/utf8": "^1.1.0",
-                "@types/node": ">=13.7.0",
-                "long": "^5.0.0"
-              },
-              "dependencies": {
-                "long": {
-                  "version": "5.2.3",
-                  "resolved": 
"https://registry.npmjs.org/long/-/long-5.2.3.tgz";,
-                  "integrity": 
"sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q=="
-                }
-              }
-            }
           }
         },
-        "cliui": {
-          "version": "8.0.1",
-          "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
-          "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+        "@grpc/proto-loader": {
+          "version": "0.7.15",
+          "resolved": 
"https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.15.tgz";,
+          "integrity": 
"sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==",
+          "requires": {
+            "lodash.camelcase": "^4.3.0",
+            "long": "^5.0.0",
+            "protobufjs": "^7.2.5",
+            "yargs": "^17.7.2"
+          }
+        },
+        "agent-base": {
+          "version": "7.1.4",
+          "resolved": 
"https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz";,
+          "integrity": 
"sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ=="
+        },
+        "gaxios": {
+          "version": "6.7.1",
+          "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz";,
+          "integrity": 
"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==",
+          "requires": {
+            "extend": "^3.0.2",
+            "https-proxy-agent": "^7.0.1",
+            "is-stream": "^2.0.0",
+            "node-fetch": "^2.6.9",
+            "uuid": "^9.0.1"
+          }
+        },
+        "gcp-metadata": {
+          "version": "6.1.1",
+          "resolved": 
"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz";,
+          "integrity": 
"sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
+          "requires": {
+            "gaxios": "^6.1.1",
+            "google-logging-utils": "^0.0.2",
+            "json-bigint": "^1.0.0"
+          }
+        },
+        "google-auth-library": {
+          "version": "9.15.1",
+          "resolved": 
"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz";,
+          "integrity": 
"sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
+          "requires": {
+            "base64-js": "^1.3.0",
+            "ecdsa-sig-formatter": "^1.0.11",
+            "gaxios": "^6.1.1",
+            "gcp-metadata": "^6.1.0",
+            "gtoken": "^7.0.0",
+            "jws": "^4.0.0"
+          }
+        },
+        "gtoken": {
+          "version": "7.1.0",
+          "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz";,
+          "integrity": 
"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
+          "requires": {
+            "gaxios": "^6.0.0",
+            "jws": "^4.0.0"
+          }
+        },
+        "https-proxy-agent": {
+          "version": "7.0.6",
+          "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz";,
+          "integrity": 
"sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
           "requires": {
-            "string-width": "^4.2.0",
-            "strip-ansi": "^6.0.1",
-            "wrap-ansi": "^7.0.0"
+            "agent-base": "^7.1.2",
+            "debug": "4"
           }
         },
+        "long": {
+          "version": "5.3.2",
+          "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+          "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA=="
+        },
         "protobufjs": {
-          "version": "6.11.2",
-          "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz";,
-          "integrity": 
"sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==",
+          "version": "7.2.5",
+          "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.5.tgz";,
+          "integrity": 
"sha512-gGXRSXvxQ7UiPgfw8gevrfRWcTlSbOFg+p/N+JVJEK5VhueL2miT6qTymqAmjr1Q5WbOCyJbyrk6JfWKwlFn6A==",
           "requires": {
             "@protobufjs/aspromise": "^1.1.2",
             "@protobufjs/base64": "^1.1.2",
@@ -5825,36 +6103,36 @@
             "@protobufjs/path": "^1.1.2",
             "@protobufjs/pool": "^1.1.0",
             "@protobufjs/utf8": "^1.1.0",
-            "@types/long": "^4.0.1",
             "@types/node": ">=13.7.0",
-            "long": "^4.0.0"
+            "long": "^5.0.0"
           }
         },
-        "yargs": {
-          "version": "17.7.2",
-          "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
-          "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+        "retry-request": {
+          "version": "6.0.0",
+          "resolved": 
"https://registry.npmjs.org/retry-request/-/retry-request-6.0.0.tgz";,
+          "integrity": 
"sha512-24kaFMd3wCnT3n4uPnsQh90ZSV8OISpfTFXJ00Wi+/oD2OPrp63EQ8hznk6rhxdlpwx2QBhQSDz2Fg46ki852g==",
           "requires": {
-            "cliui": "^8.0.1",
-            "escalade": "^3.1.1",
-            "get-caller-file": "^2.0.5",
-            "require-directory": "^2.1.1",
-            "string-width": "^4.2.3",
-            "y18n": "^5.0.5",
-            "yargs-parser": "^21.1.1"
+            "debug": "^4.1.1",
+            "extend": "^3.0.2"
           }
         },
-        "yargs-parser": {
-          "version": "21.1.1",
-          "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
-          "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw=="
+        "uuid": {
+          "version": "9.0.1",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz";,
+          "integrity": 
"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
         }
       }
     },
+    "google-logging-utils": {
+      "version": "0.0.2",
+      "resolved": 
"https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-0.0.2.tgz";,
+      "integrity": 
"sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ=="
+    },
     "google-p12-pem": {
       "version": "3.1.4",
       "resolved": 
"https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz";,
       "integrity": 
"sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==",
+      "dev": true,
       "requires": {
         "node-forge": "^1.3.1"
       }
@@ -5863,6 +6141,7 @@
       "version": "5.3.2",
       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz";,
       "integrity": 
"sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==",
+      "dev": true,
       "requires": {
         "gaxios": "^4.0.0",
         "google-p12-pem": "^3.1.3",
@@ -5910,13 +6189,18 @@
       "integrity": 
"sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
       "dev": true
     },
+    "heap-js": {
+      "version": "2.7.1",
+      "resolved": "https://registry.npmjs.org/heap-js/-/heap-js-2.7.1.tgz";,
+      "integrity": 
"sha512-EQfezRg0NCZGNlhlDR3Evrw1FVL2G3LhU7EgPoxufQKruNBSYA8MiRPHeWbU+36o+Fhel0wMwM+sLEiBAlNLJA=="
+    },
     "http-proxy-agent": {
       "version": "4.0.1",
       "resolved": 
"https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz";,
       "integrity": 
"sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==",
       "dev": true,
       "requires": {
-        "@tootallnate/once": "1",
+        "@tootallnate/once": "^3.0.1",
         "agent-base": "6",
         "debug": "4"
       }
@@ -5925,6 +6209,7 @@
       "version": "5.0.0",
       "resolved": 
"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz";,
       "integrity": 
"sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==",
+      "dev": true,
       "requires": {
         "agent-base": "6",
         "debug": "4"
@@ -6067,7 +6352,7 @@
         "esprima": "2.7.x",
         "glob": "^5.0.15",
         "handlebars": "^4.0.1",
-        "js-yaml": "3.x",
+        "js-yaml": "^4.1.0",
         "mkdirp": "0.5.x",
         "nopt": "3.x",
         "once": "1.x",
@@ -6077,15 +6362,6 @@
         "wordwrap": "^1.0.0"
       },
       "dependencies": {
-        "argparse": {
-          "version": "1.0.10",
-          "resolved": 
"https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";,
-          "integrity": 
"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
-          "dev": true,
-          "requires": {
-            "sprintf-js": "~1.0.2"
-          }
-        },
         "esprima": {
           "version": "2.7.3",
           "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz";,
@@ -6111,24 +6387,6 @@
           "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
           "dev": true
         },
-        "js-yaml": {
-          "version": "3.14.2",
-          "resolved": 
"https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz";,
-          "integrity": 
"sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
-          "dev": true,
-          "requires": {
-            "argparse": "^1.0.7",
-            "esprima": "^4.0.0"
-          },
-          "dependencies": {
-            "esprima": {
-              "version": "4.0.1",
-              "resolved": 
"https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";,
-              "integrity": 
"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
-              "dev": true
-            }
-          }
-        },
         "supports-color": {
           "version": "3.2.3",
           "resolved": 
"https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz";,
@@ -6246,7 +6504,7 @@
     "lodash.camelcase": {
       "version": "4.3.0",
       "resolved": 
"https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz";,
-      "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY="
+      "integrity": 
"sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA=="
     },
     "lodash.isfunction": {
       "version": "3.0.9",
@@ -6288,6 +6546,7 @@
       "version": "6.0.0",
       "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz";,
       "integrity": 
"sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+      "dev": true,
       "requires": {
         "yallist": "^4.0.0"
       }
@@ -6365,7 +6624,7 @@
         "browser-stdout": "^1.3.1",
         "chokidar": "^4.0.1",
         "debug": "^4.3.5",
-        "diff": "^7.0.0",
+        "diff": "^8.0.3",
         "escape-string-regexp": "^4.0.0",
         "find-up": "^5.0.0",
         "glob": "^10.4.5",
@@ -6376,7 +6635,7 @@
         "minimatch": "^9.0.5",
         "ms": "^2.1.3",
         "picocolors": "^1.1.1",
-        "serialize-javascript": "^6.0.2",
+        "serialize-javascript": "^7.0.4",
         "strip-json-comments": "^3.1.1",
         "supports-color": "^8.1.1",
         "workerpool": "^9.2.0",
@@ -6394,17 +6653,6 @@
             "balanced-match": "^1.0.0"
           }
         },
-        "cliui": {
-          "version": "8.0.1",
-          "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz";,
-          "integrity": 
"sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
-          "dev": true,
-          "requires": {
-            "string-width": "^4.2.0",
-            "strip-ansi": "^6.0.1",
-            "wrap-ansi": "^7.0.0"
-          }
-        },
         "glob": {
           "version": "10.5.0",
           "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz";,
@@ -6427,27 +6675,6 @@
           "requires": {
             "brace-expansion": "^2.0.2"
           }
-        },
-        "yargs": {
-          "version": "17.7.2",
-          "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
-          "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
-          "dev": true,
-          "requires": {
-            "cliui": "^8.0.1",
-            "escalade": "^3.1.1",
-            "get-caller-file": "^2.0.5",
-            "require-directory": "^2.1.1",
-            "string-width": "^4.2.3",
-            "y18n": "^5.0.5",
-            "yargs-parser": "^21.1.1"
-          }
-        },
-        "yargs-parser": {
-          "version": "21.1.1",
-          "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
-          "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
-          "dev": true
         }
       }
     },
@@ -6469,9 +6696,9 @@
       "dev": true
     },
     "node-fetch": {
-      "version": "2.6.7",
-      "resolved": 
"https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz";,
-      "integrity": 
"sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+      "version": "2.7.0",
+      "resolved": 
"https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz";,
+      "integrity": 
"sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
       "requires": {
         "whatwg-url": "^5.0.0"
       }
@@ -6479,7 +6706,8 @@
     "node-forge": {
       "version": "1.3.2",
       "resolved": 
"https://registry.npmjs.org/node-forge/-/node-forge-1.3.2.tgz";,
-      "integrity": 
"sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw=="
+      "integrity": 
"sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw==",
+      "dev": true
     },
     "nopt": {
       "version": "3.0.6",
@@ -6656,11 +6884,37 @@
       "dev": true
     },
     "proto3-json-serializer": {
-      "version": "0.1.9",
-      "resolved": 
"https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.9.tgz";,
-      "integrity": 
"sha512-A60IisqvnuI45qNRygJjrnNjX2TMdQGMY+57tR3nul3ZgO2zXkR9OGR8AXxJhkqx84g0FTnrfi3D5fWMSdANdQ==",
+      "version": "2.0.2",
+      "resolved": 
"https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-2.0.2.tgz";,
+      "integrity": 
"sha512-SAzp/O4Yh02jGdRc+uIrGoe87dkN/XtwxfZ4ZyafJHymd79ozp5VG5nyZ7ygqPM5+cpLDjjGnYFUkngonyDPOQ==",
       "requires": {
-        "protobufjs": "^6.11.2"
+        "protobufjs": "^7.2.5"
+      },
+      "dependencies": {
+        "long": {
+          "version": "5.3.2",
+          "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz";,
+          "integrity": 
"sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA=="
+        },
+        "protobufjs": {
+          "version": "7.5.4",
+          "resolved": 
"https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.4.tgz";,
+          "integrity": 
"sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==",
+          "requires": {
+            "@protobufjs/aspromise": "^1.1.2",
+            "@protobufjs/base64": "^1.1.2",
+            "@protobufjs/codegen": "^2.0.4",
+            "@protobufjs/eventemitter": "^1.1.0",
+            "@protobufjs/fetch": "^1.1.0",
+            "@protobufjs/float": "^1.0.2",
+            "@protobufjs/inquire": "^1.1.0",
+            "@protobufjs/path": "^1.1.2",
+            "@protobufjs/pool": "^1.1.0",
+            "@protobufjs/utf8": "^1.1.0",
+            "@types/node": ">=13.7.0",
+            "long": "^5.0.0"
+          }
+        }
       }
     },
     "protobufjs": {
@@ -6686,7 +6940,7 @@
     "punycode": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";,
-      "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
+      "integrity": 
"sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
       "dev": true
     },
     "queue-microtask": {
@@ -6703,15 +6957,6 @@
         "linked-list-typescript": "^1.0.11"
       }
     },
-    "randombytes": {
-      "version": "2.1.0",
-      "resolved": 
"https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz";,
-      "integrity": 
"sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
-      "dev": true,
-      "requires": {
-        "safe-buffer": "^5.1.0"
-      }
-    },
     "randomstring": {
       "version": "1.1.5",
       "resolved": 
"https://registry.npmjs.org/randomstring/-/randomstring-1.1.5.tgz";,
@@ -6763,6 +7008,7 @@
       "version": "4.2.2",
       "resolved": 
"https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz";,
       "integrity": 
"sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==",
+      "dev": true,
       "requires": {
         "debug": "^4.1.1",
         "extend": "^3.0.2"
@@ -6809,13 +7055,10 @@
       "integrity": 
"sha512-FJkTECOkJ1jiRdy/BF24lR9AU+siChyYEYrLNy1ZPSz5bas4ZxslM/Fm0VwActiL0zTo1UA5XE2NRubM78+i4g=="
     },
     "serialize-javascript": {
-      "version": "6.0.2",
-      "resolved": 
"https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz";,
-      "integrity": 
"sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
-      "dev": true,
-      "requires": {
-        "randombytes": "^2.1.0"
-      }
+      "version": "7.0.4",
+      "resolved": 
"https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.4.tgz";,
+      "integrity": 
"sha512-DuGdB+Po43Q5Jxwpzt1lhyFSYKryqoNjQSA9M92tyw0lyHIOur+XCalOUe0KTJpyqzT8+fQ5A0Jf7vCx/NKmIg==",
+      "dev": true
     },
     "shebang-command": {
       "version": "2.0.0",
@@ -6865,12 +7108,6 @@
         "amdefine": ">=0.0.4"
       }
     },
-    "sprintf-js": {
-      "version": "1.0.3",
-      "resolved": 
"https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";,
-      "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
-      "dev": true
-    },
     "stream-events": {
       "version": "1.0.5",
       "resolved": 
"https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz";,
@@ -6881,9 +7118,9 @@
       }
     },
     "stream-shift": {
-      "version": "1.0.1",
-      "resolved": 
"https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz";,
-      "integrity": 
"sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ=="
+      "version": "1.0.3",
+      "resolved": 
"https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz";,
+      "integrity": 
"sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ=="
     },
     "string_decoder": {
       "version": "1.3.0",
@@ -7010,18 +7247,10 @@
         "acorn-walk": "^8.1.1",
         "arg": "^4.1.0",
         "create-require": "^1.1.0",
-        "diff": "^4.0.1",
+        "diff": "^8.0.3",
         "make-error": "^1.1.1",
         "v8-compile-cache-lib": "^3.0.0",
         "yn": "3.1.1"
-      },
-      "dependencies": {
-        "diff": {
-          "version": "4.0.4",
-          "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz";,
-          "integrity": 
"sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==",
-          "peer": true
-        }
       }
     },
     "tslib": {
@@ -7258,26 +7487,27 @@
     "yallist": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz";,
-      "integrity": 
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+      "integrity": 
"sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+      "dev": true
     },
     "yargs": {
-      "version": "16.2.0",
-      "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz";,
-      "integrity": 
"sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+      "version": "17.7.2",
+      "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz";,
+      "integrity": 
"sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
       "requires": {
-        "cliui": "^7.0.2",
+        "cliui": "^8.0.1",
         "escalade": "^3.1.1",
         "get-caller-file": "^2.0.5",
         "require-directory": "^2.1.1",
-        "string-width": "^4.2.0",
+        "string-width": "^4.2.3",
         "y18n": "^5.0.5",
-        "yargs-parser": "^20.2.2"
+        "yargs-parser": "^21.1.1"
       }
     },
     "yargs-parser": {
-      "version": "20.2.4",
-      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz";,
-      "integrity": 
"sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA=="
+      "version": "21.1.1",
+      "resolved": 
"https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz";,
+      "integrity": 
"sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw=="
     },
     "yargs-unparser": {
       "version": "2.0.0",
diff --git a/sdks/typescript/package.json b/sdks/typescript/package.json
index 27bf912bdf0..dcd3413682b 100644
--- a/sdks/typescript/package.json
+++ b/sdks/typescript/package.json
@@ -36,8 +36,8 @@
     "lint": "eslint . --ext .ts"
   },
   "dependencies": {
-    "@google-cloud/pubsub": "^2.19.4",
-    "@grpc/grpc-js": "~1.4.6",
+    "@google-cloud/pubsub": "^4.2.0",
+    "@grpc/grpc-js": "^1.14.3",
     "@protobuf-ts/grpc-transport": "^2.1.0",
     "@protobuf-ts/plugin": "^2.1.0",
     "bson": "^4.6.0",
@@ -61,5 +61,11 @@
     "./runners": "./dist/src/apache_beam/index.js",
     "./transforms": "./dist/src/apache_beam/transforms/index.js",
     "./*": "./dist/src/apache_beam/*.js"
+  },
+  "overrides": {
+    "js-yaml": "^4.1.0",
+    "serialize-javascript": "^7.0.4",
+    "@tootallnate/once": "^3.0.1",
+    "diff": "^8.0.3"
   }
 }
diff --git a/sdks/typescript/test/primitives_test.ts 
b/sdks/typescript/test/primitives_test.ts
index c5ab36f5de7..b3f35cce1fb 100644
--- a/sdks/typescript/test/primitives_test.ts
+++ b/sdks/typescript/test/primitives_test.ts
@@ -323,13 +323,11 @@ export function suite(runner: beam.Runner = 
directRunner()) {
         })
         .apply(beam.groupBy("lastName"));
 
-      assert.deepEqual(
-        p.context.getPCollectionCoder(res),
-        new KVCoder(
-          new GeneralObjectCoder(),
-          new IterableCoder(new GeneralObjectCoder())
-        )
-      );
+      const coder: any = p.context.getPCollectionCoder(res);
+      assert.equal(coder.constructor.name, "KVCoder");
+      assert.equal(coder.keyCoder.constructor.name, "GeneralObjectCoder");
+      assert.equal(coder.valueCoder.constructor.name, "IterableCoder");
+      assert.equal(coder.valueCoder.elementCoder.constructor.name, 
"GeneralObjectCoder");
     });
   });
 }

Reply via email to