dsh-coding-subscription-oauth 0.5.8 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/CHANGELOG.md +217 -188
  2. package/CONTRIBUTING.md +120 -120
  3. package/INSTALL.md +241 -209
  4. package/LICENSE +19 -19
  5. package/NOTICE +11 -11
  6. package/README.de.md +298 -294
  7. package/README.es.md +299 -295
  8. package/README.fr.md +299 -295
  9. package/README.ja.md +299 -295
  10. package/README.ko.md +299 -295
  11. package/README.md +313 -307
  12. package/README.pt-BR.md +299 -295
  13. package/README.ru.md +299 -295
  14. package/README.zh-CN.md +311 -305
  15. package/compatibility/dsh-bom.json +30 -0
  16. package/cordis.patch.yml +13 -13
  17. package/docs/00-project-rules.md +195 -195
  18. package/docs/02-architecture.md +134 -129
  19. package/docs/02-architecture.zh-CN.md +134 -129
  20. package/lib/adapter.d.ts.map +1 -1
  21. package/lib/alias-adapter.d.ts +3 -1
  22. package/lib/alias-adapter.d.ts.map +1 -1
  23. package/lib/auth-routes.d.ts +8 -15
  24. package/lib/auth-routes.d.ts.map +1 -1
  25. package/lib/bin.js +746 -1402
  26. package/lib/bin.js.map +4 -4
  27. package/lib/capability-routes.d.ts +3 -3
  28. package/lib/capability-routes.d.ts.map +1 -1
  29. package/lib/capability-settings.d.ts +5 -4
  30. package/lib/capability-settings.d.ts.map +1 -1
  31. package/lib/client.js +27 -8
  32. package/lib/client.js.map +4 -4
  33. package/lib/compatibility.d.ts +46 -0
  34. package/lib/compatibility.d.ts.map +1 -0
  35. package/lib/dsh-host-adapter.d.ts +18 -0
  36. package/lib/dsh-host-adapter.d.ts.map +1 -0
  37. package/lib/gateway-auth.d.ts +1 -2
  38. package/lib/gateway-auth.d.ts.map +1 -1
  39. package/lib/gateway-routes.d.ts +3 -4
  40. package/lib/gateway-routes.d.ts.map +1 -1
  41. package/lib/gateway.d.ts +4 -0
  42. package/lib/gateway.d.ts.map +1 -1
  43. package/lib/ids.d.ts +3 -32
  44. package/lib/ids.d.ts.map +1 -1
  45. package/lib/imagine-routes.d.ts +2 -0
  46. package/lib/imagine-routes.d.ts.map +1 -1
  47. package/lib/index.d.ts +19 -4
  48. package/lib/index.d.ts.map +1 -1
  49. package/lib/index.js +26627 -1047
  50. package/lib/index.js.map +4 -4
  51. package/lib/invariant.js.map +1 -1
  52. package/lib/oauth-import-routes.d.ts +3 -4
  53. package/lib/oauth-import-routes.d.ts.map +1 -1
  54. package/lib/proxy.d.ts +3 -16
  55. package/lib/proxy.d.ts.map +1 -1
  56. package/lib/web-origin.d.ts +28 -4
  57. package/lib/web-origin.d.ts.map +1 -1
  58. package/lib/web-routes.d.ts.map +1 -1
  59. package/media/en/settings_accounts.png +0 -0
  60. package/media/en/settings_capabilities.png +0 -0
  61. package/media/en/settings_gateway.png +0 -0
  62. package/media/settings_accounts.png +0 -0
  63. package/media/settings_capabilities.png +0 -0
  64. package/media/settings_gateway.png +0 -0
  65. package/media/settings_overview.png +0 -0
  66. package/media/zh-CN/settings_accounts.png +0 -0
  67. package/media/zh-CN/settings_capabilities.png +0 -0
  68. package/media/zh-CN/settings_gateway.png +0 -0
  69. package/package.json +211 -174
  70. package/patches/dsh-agy@0.1.2.patch +25 -25
  71. package/scripts/release.mjs +186 -170
  72. package/scripts/smoke-deployed-routes.mjs +146 -146
  73. package/scripts/verify-deployed-catalog.mjs +87 -87
  74. package/src/adapter.ts +329 -268
  75. package/src/alias-adapter.ts +141 -147
  76. package/src/auth-routes.ts +921 -871
  77. package/src/auth.ts +67 -67
  78. package/src/bin.ts +350 -350
  79. package/src/capability-routes.ts +279 -275
  80. package/src/capability-runtime.ts +313 -313
  81. package/src/capability-settings.ts +658 -657
  82. package/src/capability-tools.ts +666 -666
  83. package/src/catalog.ts +271 -271
  84. package/src/client/GrokBuildSettings.tsx +770 -718
  85. package/src/client/api.ts +88 -88
  86. package/src/client/components/AboutTab.tsx +30 -30
  87. package/src/client/components/AccountsTab.tsx +241 -224
  88. package/src/client/components/Badge.tsx +33 -33
  89. package/src/client/components/CapabilitiesTab.tsx +265 -227
  90. package/src/client/components/CliPullPreview.tsx +116 -107
  91. package/src/client/components/CopyButton.tsx +57 -57
  92. package/src/client/components/GatewayTab.tsx +469 -409
  93. package/src/client/components/NoticeBanner.tsx +46 -46
  94. package/src/client/components/ProgressBar.tsx +53 -53
  95. package/src/client/components/ProviderCard.tsx +606 -502
  96. package/src/client/components/SettingsTabs.tsx +75 -75
  97. package/src/client/components/ToggleSwitch.tsx +71 -62
  98. package/src/client/constants.ts +224 -206
  99. package/src/client/display.ts +61 -61
  100. package/src/client/dshClientAdapter.ts +127 -0
  101. package/src/client/gatewaySnippets.ts +37 -36
  102. package/src/client/index.tsx +156 -37
  103. package/src/client/locales.ts +535 -491
  104. package/src/client/microStyles.ts +52 -33
  105. package/src/client/parsers.ts +396 -386
  106. package/src/client/styles.ts +325 -307
  107. package/src/client/types.ts +197 -185
  108. package/src/codex-http.ts +447 -447
  109. package/src/codex-images.ts +485 -485
  110. package/src/codex-model-capabilities.ts +320 -320
  111. package/src/codex-search.ts +245 -245
  112. package/src/codex-usage.ts +263 -263
  113. package/src/compatibility.ts +55 -0
  114. package/src/dsh-host-adapter.ts +173 -0
  115. package/src/gateway-anthropic-messages.ts +84 -84
  116. package/src/gateway-auth.ts +102 -100
  117. package/src/gateway-backend.ts +274 -274
  118. package/src/gateway-body.ts +49 -49
  119. package/src/gateway-config.ts +76 -76
  120. package/src/gateway-http.ts +104 -104
  121. package/src/gateway-openai-chat.ts +124 -124
  122. package/src/gateway-openai-responses.ts +53 -53
  123. package/src/gateway-parse.ts +224 -224
  124. package/src/gateway-protocol.ts +52 -52
  125. package/src/gateway-routes.ts +158 -152
  126. package/src/gateway.ts +258 -242
  127. package/src/grok-errors.ts +24 -24
  128. package/src/grok-imagine.ts +1627 -1627
  129. package/src/grok-import.ts +151 -151
  130. package/src/http-json.ts +82 -82
  131. package/src/ids.ts +59 -45
  132. package/src/imagine-routes.ts +463 -461
  133. package/src/index.ts +729 -592
  134. package/src/invariant.ts +17 -17
  135. package/src/kimi-errors.ts +26 -26
  136. package/src/media-store.ts +927 -927
  137. package/src/oauth-import-routes.ts +324 -314
  138. package/src/oauth-providers.ts +152 -152
  139. package/src/oauth-session.ts +183 -183
  140. package/src/oauth-sources.ts +1104 -1104
  141. package/src/oauth.ts +620 -620
  142. package/src/provider.ts +128 -128
  143. package/src/proxy.ts +11 -99
  144. package/src/redact.ts +72 -72
  145. package/src/session.ts +218 -218
  146. package/src/store.ts +217 -217
  147. package/src/web-origin.ts +296 -60
  148. package/src/web-routes.ts +38 -75
package/lib/bin.js CHANGED
@@ -38,9 +38,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
38
38
  mod
39
39
  ));
40
40
 
41
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/symbols.js
41
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/symbols.js
42
42
  var require_symbols = __commonJS({
43
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/symbols.js"(exports, module) {
43
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/symbols.js"(exports, module) {
44
44
  "use strict";
45
45
  module.exports = {
46
46
  kClose: /* @__PURE__ */ Symbol("close"),
@@ -118,9 +118,9 @@ var require_symbols = __commonJS({
118
118
  }
119
119
  });
120
120
 
121
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/timers.js
121
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/timers.js
122
122
  var require_timers = __commonJS({
123
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/timers.js"(exports, module) {
123
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/timers.js"(exports, module) {
124
124
  "use strict";
125
125
  var fastNow = 0;
126
126
  var RESOLUTION_MS = 1e3;
@@ -347,9 +347,9 @@ var require_timers = __commonJS({
347
347
  }
348
348
  });
349
349
 
350
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/errors.js
350
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/errors.js
351
351
  var require_errors = __commonJS({
352
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/errors.js"(exports, module) {
352
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/errors.js"(exports, module) {
353
353
  "use strict";
354
354
  var kUndiciError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR");
355
355
  var UndiciError = class extends Error {
@@ -756,9 +756,9 @@ var require_errors = __commonJS({
756
756
  }
757
757
  });
758
758
 
759
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/constants.js
759
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/constants.js
760
760
  var require_constants = __commonJS({
761
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/constants.js"(exports, module) {
761
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/constants.js"(exports, module) {
762
762
  "use strict";
763
763
  var wellknownHeaderNames = (
764
764
  /** @type {const} */
@@ -884,9 +884,9 @@ var require_constants = __commonJS({
884
884
  }
885
885
  });
886
886
 
887
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/tree.js
887
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/tree.js
888
888
  var require_tree = __commonJS({
889
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/tree.js"(exports, module) {
889
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/tree.js"(exports, module) {
890
890
  "use strict";
891
891
  var {
892
892
  wellknownHeaderNames,
@@ -1026,9 +1026,9 @@ var require_tree = __commonJS({
1026
1026
  }
1027
1027
  });
1028
1028
 
1029
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/util.js
1029
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/util.js
1030
1030
  var require_util = __commonJS({
1031
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/util.js"(exports, module) {
1031
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/util.js"(exports, module) {
1032
1032
  "use strict";
1033
1033
  var assert = __require("node:assert");
1034
1034
  var { kDestroyed, kBodyUsed, kListeners, kBody } = require_symbols();
@@ -1847,9 +1847,9 @@ var require_util = __commonJS({
1847
1847
  }
1848
1848
  });
1849
1849
 
1850
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/stats.js
1850
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/stats.js
1851
1851
  var require_stats = __commonJS({
1852
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/stats.js"(exports, module) {
1852
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/stats.js"(exports, module) {
1853
1853
  "use strict";
1854
1854
  var {
1855
1855
  kConnected,
@@ -1881,9 +1881,9 @@ var require_stats = __commonJS({
1881
1881
  }
1882
1882
  });
1883
1883
 
1884
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/diagnostics.js
1884
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/diagnostics.js
1885
1885
  var require_diagnostics = __commonJS({
1886
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/diagnostics.js"(exports, module) {
1886
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/diagnostics.js"(exports, module) {
1887
1887
  "use strict";
1888
1888
  var diagnosticsChannel = __require("node:diagnostics_channel");
1889
1889
  var util = __require("node:util");
@@ -2098,9 +2098,9 @@ var require_diagnostics = __commonJS({
2098
2098
  }
2099
2099
  });
2100
2100
 
2101
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/request.js
2101
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/request.js
2102
2102
  var require_request = __commonJS({
2103
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/request.js"(exports, module) {
2103
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/request.js"(exports, module) {
2104
2104
  "use strict";
2105
2105
  var {
2106
2106
  InvalidArgumentError,
@@ -2126,18 +2126,6 @@ var require_request = __commonJS({
2126
2126
  var { channels } = require_diagnostics();
2127
2127
  var { headerNameLowerCasedRecord } = require_constants();
2128
2128
  var invalidPathRegex = /[^\u0021-\u00ff]/;
2129
- function isValidContentLengthHeaderValue(val) {
2130
- if (typeof val !== "string" || val.length === 0) {
2131
- return false;
2132
- }
2133
- for (let i = 0; i < val.length; i++) {
2134
- const charCode = val.charCodeAt(i);
2135
- if (charCode < 48 || charCode > 57) {
2136
- return false;
2137
- }
2138
- }
2139
- return true;
2140
- }
2141
2129
  var kHandler = /* @__PURE__ */ Symbol("handler");
2142
2130
  var Request = class {
2143
2131
  constructor(origin, {
@@ -2412,11 +2400,7 @@ var require_request = __commonJS({
2412
2400
  } else if (typeof val[i] === "object") {
2413
2401
  throw new InvalidArgumentError(`invalid ${key} header`);
2414
2402
  } else {
2415
- const str = `${val[i]}`;
2416
- if (!isValidHeaderValue(str)) {
2417
- throw new InvalidArgumentError(`invalid ${key} header`);
2418
- }
2419
- arr.push(str);
2403
+ arr.push(`${val[i]}`);
2420
2404
  }
2421
2405
  }
2422
2406
  val = arr;
@@ -2428,9 +2412,6 @@ var require_request = __commonJS({
2428
2412
  val = "";
2429
2413
  } else {
2430
2414
  val = `${val}`;
2431
- if (!isValidHeaderValue(val)) {
2432
- throw new InvalidArgumentError(`invalid ${key} header`);
2433
- }
2434
2415
  }
2435
2416
  if (headerName === "host") {
2436
2417
  if (request.host !== null) {
@@ -2444,10 +2425,10 @@ var require_request = __commonJS({
2444
2425
  if (request.contentLength !== null) {
2445
2426
  throw new InvalidArgumentError("duplicate content-length header");
2446
2427
  }
2447
- if (!isValidContentLengthHeaderValue(val)) {
2428
+ request.contentLength = parseInt(val, 10);
2429
+ if (!Number.isFinite(request.contentLength)) {
2448
2430
  throw new InvalidArgumentError("invalid content-length header");
2449
2431
  }
2450
- request.contentLength = parseInt(val, 10);
2451
2432
  } else if (request.contentType === null && headerName === "content-type") {
2452
2433
  request.contentType = val;
2453
2434
  request.headers.push(key, val);
@@ -2477,9 +2458,9 @@ var require_request = __commonJS({
2477
2458
  }
2478
2459
  });
2479
2460
 
2480
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/wrap-handler.js
2461
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/wrap-handler.js
2481
2462
  var require_wrap_handler = __commonJS({
2482
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/wrap-handler.js"(exports, module) {
2463
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/wrap-handler.js"(exports, module) {
2483
2464
  "use strict";
2484
2465
  var { InvalidArgumentError } = require_errors();
2485
2466
  module.exports = class WrapHandler {
@@ -2560,9 +2541,9 @@ var require_wrap_handler = __commonJS({
2560
2541
  }
2561
2542
  });
2562
2543
 
2563
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/dispatcher.js
2544
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/dispatcher.js
2564
2545
  var require_dispatcher = __commonJS({
2565
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/dispatcher.js"(exports, module) {
2546
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/dispatcher.js"(exports, module) {
2566
2547
  "use strict";
2567
2548
  var EventEmitter = __require("node:events");
2568
2549
  var WrapHandler = require_wrap_handler();
@@ -2602,9 +2583,9 @@ var require_dispatcher = __commonJS({
2602
2583
  }
2603
2584
  });
2604
2585
 
2605
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/unwrap-handler.js
2586
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/unwrap-handler.js
2606
2587
  var require_unwrap_handler = __commonJS({
2607
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/unwrap-handler.js"(exports, module) {
2588
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/unwrap-handler.js"(exports, module) {
2608
2589
  "use strict";
2609
2590
  var { parseHeaders } = require_util();
2610
2591
  var { InvalidArgumentError } = require_errors();
@@ -2615,8 +2596,6 @@ var require_unwrap_handler = __commonJS({
2615
2596
  #aborted = false;
2616
2597
  #abort;
2617
2598
  [kResume] = null;
2618
- rawHeaders = null;
2619
- rawTrailers = null;
2620
2599
  constructor(abort) {
2621
2600
  this.#abort = abort;
2622
2601
  }
@@ -2663,12 +2642,10 @@ var require_unwrap_handler = __commonJS({
2663
2642
  return this.#handler.onResponseStarted?.();
2664
2643
  }
2665
2644
  onUpgrade(statusCode, rawHeaders, socket) {
2666
- this.#controller.rawHeaders = rawHeaders;
2667
2645
  this.#handler.onRequestUpgrade?.(this.#controller, statusCode, parseHeaders(rawHeaders), socket);
2668
2646
  }
2669
2647
  onHeaders(statusCode, rawHeaders, resume, statusMessage) {
2670
2648
  this.#controller[kResume] = resume;
2671
- this.#controller.rawHeaders = rawHeaders;
2672
2649
  this.#handler.onResponseStart?.(this.#controller, statusCode, parseHeaders(rawHeaders), statusMessage);
2673
2650
  return !this.#controller.paused;
2674
2651
  }
@@ -2677,7 +2654,6 @@ var require_unwrap_handler = __commonJS({
2677
2654
  return !this.#controller.paused;
2678
2655
  }
2679
2656
  onComplete(rawTrailers) {
2680
- this.#controller.rawTrailers = rawTrailers;
2681
2657
  this.#handler.onResponseEnd?.(this.#controller, parseHeaders(rawTrailers));
2682
2658
  }
2683
2659
  onError(err) {
@@ -2690,9 +2666,9 @@ var require_unwrap_handler = __commonJS({
2690
2666
  }
2691
2667
  });
2692
2668
 
2693
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/dispatcher-base.js
2669
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/dispatcher-base.js
2694
2670
  var require_dispatcher_base = __commonJS({
2695
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/dispatcher-base.js"(exports, module) {
2671
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/dispatcher-base.js"(exports, module) {
2696
2672
  "use strict";
2697
2673
  var Dispatcher2 = require_dispatcher();
2698
2674
  var UnwrapHandler = require_unwrap_handler();
@@ -2704,7 +2680,6 @@ var require_dispatcher_base = __commonJS({
2704
2680
  var { kDestroy, kClose, kClosed, kDestroyed, kDispatch } = require_symbols();
2705
2681
  var kOnDestroyed = /* @__PURE__ */ Symbol("onDestroyed");
2706
2682
  var kOnClosed = /* @__PURE__ */ Symbol("onClosed");
2707
- var kWebSocketOptions = /* @__PURE__ */ Symbol("webSocketOptions");
2708
2683
  var DispatcherBase = class extends Dispatcher2 {
2709
2684
  /** @type {boolean} */
2710
2685
  [kDestroyed] = false;
@@ -2714,23 +2689,6 @@ var require_dispatcher_base = __commonJS({
2714
2689
  [kClosed] = false;
2715
2690
  /** @type {Array<Function>|null} */
2716
2691
  [kOnClosed] = null;
2717
- /**
2718
- * @param {import('../../types/dispatcher').DispatcherOptions} [opts]
2719
- */
2720
- constructor(opts) {
2721
- super();
2722
- this[kWebSocketOptions] = opts?.webSocket ?? {};
2723
- }
2724
- /**
2725
- * @returns {import('../../types/dispatcher').WebSocketOptions}
2726
- */
2727
- get webSocketOptions() {
2728
- return {
2729
- maxFragments: this[kWebSocketOptions].maxFragments ?? 131072,
2730
- maxPayloadSize: this[kWebSocketOptions].maxPayloadSize ?? 128 * 1024 * 1024
2731
- // 128 MB default
2732
- };
2733
- }
2734
2692
  /** @returns {boolean} */
2735
2693
  get destroyed() {
2736
2694
  return this[kDestroyed];
@@ -2842,9 +2800,9 @@ var require_dispatcher_base = __commonJS({
2842
2800
  }
2843
2801
  });
2844
2802
 
2845
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/connect.js
2803
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/connect.js
2846
2804
  var require_connect = __commonJS({
2847
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/connect.js"(exports, module) {
2805
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/connect.js"(exports, module) {
2848
2806
  "use strict";
2849
2807
  var net = __require("node:net");
2850
2808
  var assert = __require("node:assert");
@@ -2873,20 +2831,6 @@ var require_connect = __commonJS({
2873
2831
  if (this._maxCachedSessions === 0) {
2874
2832
  return;
2875
2833
  }
2876
- if (this._sessionCache.has(sessionKey)) {
2877
- this._sessionCache.delete(sessionKey);
2878
- } else if (this._sessionCache.size >= this._maxCachedSessions) {
2879
- for (const [key, ref] of this._sessionCache) {
2880
- if (ref.deref() === void 0) {
2881
- this._sessionCache.delete(key);
2882
- return;
2883
- }
2884
- }
2885
- const oldest = this._sessionCache.keys().next();
2886
- if (!oldest.done) {
2887
- this._sessionCache.delete(oldest.value);
2888
- }
2889
- }
2890
2834
  this._sessionCache.set(sessionKey, new WeakRef(session));
2891
2835
  this._sessionRegistry.register(session, sessionKey);
2892
2836
  }
@@ -2968,9 +2912,9 @@ var require_connect = __commonJS({
2968
2912
  }
2969
2913
  });
2970
2914
 
2971
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/utils.js
2915
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/utils.js
2972
2916
  var require_utils = __commonJS({
2973
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/utils.js"(exports) {
2917
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/utils.js"(exports) {
2974
2918
  "use strict";
2975
2919
  Object.defineProperty(exports, "__esModule", { value: true });
2976
2920
  exports.enumToMap = enumToMap;
@@ -2984,9 +2928,9 @@ var require_utils = __commonJS({
2984
2928
  }
2985
2929
  });
2986
2930
 
2987
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/constants.js
2931
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/constants.js
2988
2932
  var require_constants2 = __commonJS({
2989
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/constants.js"(exports) {
2933
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/constants.js"(exports) {
2990
2934
  "use strict";
2991
2935
  Object.defineProperty(exports, "__esModule", { value: true });
2992
2936
  exports.SPECIAL_HEADERS = exports.MINOR = exports.MAJOR = exports.HTAB_SP_VCHAR_OBS_TEXT = exports.QUOTED_STRING = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.HEX = exports.URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.STATUSES_HTTP = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.HEADER_STATE = exports.FINISH = exports.STATUSES = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0;
@@ -3607,9 +3551,9 @@ var require_constants2 = __commonJS({
3607
3551
  }
3608
3552
  });
3609
3553
 
3610
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/llhttp-wasm.js
3554
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/llhttp-wasm.js
3611
3555
  var require_llhttp_wasm = __commonJS({
3612
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/llhttp-wasm.js"(exports, module) {
3556
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/llhttp-wasm.js"(exports, module) {
3613
3557
  "use strict";
3614
3558
  var { Buffer: Buffer3 } = __require("node:buffer");
3615
3559
  var wasmBase64 = "AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==";
@@ -3622,9 +3566,9 @@ var require_llhttp_wasm = __commonJS({
3622
3566
  }
3623
3567
  });
3624
3568
 
3625
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js
3569
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js
3626
3570
  var require_llhttp_simd_wasm = __commonJS({
3627
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js"(exports, module) {
3571
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js"(exports, module) {
3628
3572
  "use strict";
3629
3573
  var { Buffer: Buffer3 } = __require("node:buffer");
3630
3574
  var wasmBase64 = "AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCACDuMBAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISMkJScoKZ4DmwOaA5EDigODA4AD/QL7AvgC8gLxAu8C7QLoAucC5gLlAuQC3ALbAtoC2QLYAtcC1gLVAs8CzgLMAssCygLJAsgCxwLGAsQCwwK+ArwCugK5ArgCtwK2ArUCtAKzArICsQKwAq4CrQKpAqgCpwKmAqUCpAKjAqICoQKgAp8CmAKQAowCiwKKAoEC/gH9AfwB+wH6AfkB+AH3AfUB8wHwAesB6QHoAecB5gHlAeQB4wHiAeEB4AHfAd4B3QHcAdoB2QHYAdcB1gHVAdQB0wHSAdEB0AHPAc4BzQHMAcsBygHJAcgBxwHGAcUBxAHDAcIBwQHAAb8BvgG9AbwBuwG6AbkBuAG3AbYBtQG0AbMBsgGxAbABrwGuAa0BrAGrAaoBqQGoAacBpgGlAaQBowGiAZ8BngGZAZgBlwGWAZUBlAGTAZIBkQGQAY8BjQGMAYcBhgGFAYQBgwGCAX18e3p5dnV0UFFSU1RVCyABIARHDXJB/QEhAgy+AwsgASAERw2YAUHbASECDL0DCyABIARHDfEBQY4BIQIMvAMLIAEgBEcN/AFBhAEhAgy7AwsgASAERw2KAkH/ACECDLoDCyABIARHDZECQf0AIQIMuQMLIAEgBEcNlAJB+wAhAgy4AwsgASAERw0eQR4hAgy3AwsgASAERw0ZQRghAgy2AwsgASAERw3KAkHNACECDLUDCyABIARHDdUCQcYAIQIMtAMLIAEgBEcN1gJBwwAhAgyzAwsgASAERw3cAkE4IQIMsgMLIAMtADBBAUYNrQMMiQMLQQAhAAJAAkACQCADLQAqRQ0AIAMtACtFDQAgAy8BMiICQQJxRQ0BDAILIAMvATIiAkEBcUUNAQtBASEAIAMtAChBAUYNACADLwE0IgZB5ABrQeQASQ0AIAZBzAFGDQAgBkGwAkYNACACQcAAcQ0AQQAhACACQYgEcUGABEYNACACQShxQQBHIQALIANBADsBMiADQQA6ADECQCAARQRAIANBADoAMSADLQAuQQRxDQEMsQMLIANCADcDIAsgA0EAOgAxIANBAToANgxIC0EAIQACQCADKAI4IgJFDQAgAigCMCICRQ0AIAMgAhEAACEACyAARQ1IIABBFUcNYiADQQQ2AhwgAyABNgIUIANB0hs2AhAgA0EVNgIMQQAhAgyvAwsgASAERgRAQQYhAgyvAwsgAS0AAEEKRw0ZIAFBAWohAQwaCyADQgA3AyBBEiECDJQDCyABIARHDYoDQSMhAgysAwsgASAERgRAQQchAgysAwsCQAJAIAEtAABBCmsOBAEYGAAYCyABQQFqIQFBECECDJMDCyABQQFqIQEgA0Evai0AAEEBcQ0XQQAhAiADQQA2AhwgAyABNgIUIANBmSA2AhAgA0EZNgIMDKsDCyADIAMpAyAiDCAEIAFrrSIKfSILQgAgCyAMWBs3AyAgCiAMWg0YQQghAgyqAwsgASAERwRAIANBCTYCCCADIAE2AgRBFCECDJEDC0EJIQIMqQMLIAMpAyBQDa4CDEMLIAEgBEYEQEELIQIMqAMLIAEtAABBCkcNFiABQQFqIQEMFwsgA0Evai0AAEEBcUUNGQwmC0EAIQACQCADKAI4IgJFDQAgAigCUCICRQ0AIAMgAhEAACEACyAADRkMQgtBACEAAkAgAygCOCICRQ0AIAIoAlAiAkUNACADIAIRAAAhAAsgAA0aDCQLQQAhAAJAIAMoAjgiAkUNACACKAJQIgJFDQAgAyACEQAAIQALIAANGwwyCyADQS9qLQAAQQFxRQ0cDCILQQAhAAJAIAMoAjgiAkUNACACKAJUIgJFDQAgAyACEQAAIQALIAANHAxCC0EAIQACQCADKAI4IgJFDQAgAigCVCICRQ0AIAMgAhEAACEACyAADR0MIAsgASAERgRAQRMhAgygAwsCQCABLQAAIgBBCmsOBB8jIwAiCyABQQFqIQEMHwtBACEAAkAgAygCOCICRQ0AIAIoAlQiAkUNACADIAIRAAAhAAsgAA0iDEILIAEgBEYEQEEWIQIMngMLIAEtAABBwMEAai0AAEEBRw0jDIMDCwJAA0AgAS0AAEGwO2otAAAiAEEBRwRAAkAgAEECaw4CAwAnCyABQQFqIQFBISECDIYDCyAEIAFBAWoiAUcNAAtBGCECDJ0DCyADKAIEIQBBACECIANBADYCBCADIAAgAUEBaiIBEDQiAA0hDEELQQAhAAJAIAMoAjgiAkUNACACKAJUIgJFDQAgAyACEQAAIQALIAANIwwqCyABIARGBEBBHCECDJsDCyADQQo2AgggAyABNgIEQQAhAAJAIAMoAjgiAkUNACACKAJQIgJFDQAgAyACEQAAIQALIAANJUEkIQIMgQMLIAEgBEcEQANAIAEtAABBsD1qLQAAIgBBA0cEQCAAQQFrDgUYGiaCAyUmCyAEIAFBAWoiAUcNAAtBGyECDJoDC0EbIQIMmQMLA0AgAS0AAEGwP2otAAAiAEEDRwRAIABBAWsOBQ8RJxMmJwsgBCABQQFqIgFHDQALQR4hAgyYAwsgASAERwRAIANBCzYCCCADIAE2AgRBByECDP8CC0EfIQIMlwMLIAEgBEYEQEEgIQIMlwMLAkAgAS0AAEENaw4ULj8/Pz8/Pz8/Pz8/Pz8/Pz8/PwA/C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAyWAwsgA0EvaiECA0AgASAERgRAQSEhAgyXAwsCQAJAAkAgAS0AACIAQQlrDhgCACkpASkpKSkpKSkpKSkpKSkpKSkpKQInCyABQQFqIQEgA0Evai0AAEEBcUUNCgwYCyABQQFqIQEMFwsgAUEBaiEBIAItAABBAnENAAtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwMlQMLIAMtAC5BgAFxRQ0BC0EAIQACQCADKAI4IgJFDQAgAigCXCICRQ0AIAMgAhEAACEACyAARQ3mAiAAQRVGBEAgA0EkNgIcIAMgATYCFCADQZsbNgIQIANBFTYCDEEAIQIMlAMLQQAhAiADQQA2AhwgAyABNgIUIANBkA42AhAgA0EUNgIMDJMDC0EAIQIgA0EANgIcIAMgATYCFCADQb4gNgIQIANBAjYCDAySAwsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEgDKdqIgEQMiIARQ0rIANBBzYCHCADIAE2AhQgAyAANgIMDJEDCyADLQAuQcAAcUUNAQtBACEAAkAgAygCOCICRQ0AIAIoAlgiAkUNACADIAIRAAAhAAsgAEUNKyAAQRVGBEAgA0EKNgIcIAMgATYCFCADQesZNgIQIANBFTYCDEEAIQIMkAMLQQAhAiADQQA2AhwgAyABNgIUIANBkww2AhAgA0ETNgIMDI8DC0EAIQIgA0EANgIcIAMgATYCFCADQYIVNgIQIANBAjYCDAyOAwtBACECIANBADYCHCADIAE2AhQgA0HdFDYCECADQRk2AgwMjQMLQQAhAiADQQA2AhwgAyABNgIUIANB5h02AhAgA0EZNgIMDIwDCyAAQRVGDT1BACECIANBADYCHCADIAE2AhQgA0HQDzYCECADQSI2AgwMiwMLIAMoAgQhAEEAIQIgA0EANgIEIAMgACABEDMiAEUNKCADQQ02AhwgAyABNgIUIAMgADYCDAyKAwsgAEEVRg06QQAhAiADQQA2AhwgAyABNgIUIANB0A82AhAgA0EiNgIMDIkDCyADKAIEIQBBACECIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDCgLIANBDjYCHCADIAA2AgwgAyABQQFqNgIUDIgDCyAAQRVGDTdBACECIANBADYCHCADIAE2AhQgA0HQDzYCECADQSI2AgwMhwMLIAMoAgQhAEEAIQIgA0EANgIEIAMgACABEDMiAEUEQCABQQFqIQEMJwsgA0EPNgIcIAMgADYCDCADIAFBAWo2AhQMhgMLQQAhAiADQQA2AhwgAyABNgIUIANB4hc2AhAgA0EZNgIMDIUDCyAAQRVGDTNBACECIANBADYCHCADIAE2AhQgA0HWDDYCECADQSM2AgwMhAMLIAMoAgQhAEEAIQIgA0EANgIEIAMgACABEDQiAEUNJSADQRE2AhwgAyABNgIUIAMgADYCDAyDAwsgAEEVRg0wQQAhAiADQQA2AhwgAyABNgIUIANB1gw2AhAgA0EjNgIMDIIDCyADKAIEIQBBACECIANBADYCBCADIAAgARA0IgBFBEAgAUEBaiEBDCULIANBEjYCHCADIAA2AgwgAyABQQFqNgIUDIEDCyADQS9qLQAAQQFxRQ0BC0EXIQIM5gILQQAhAiADQQA2AhwgAyABNgIUIANB4hc2AhAgA0EZNgIMDP4CCyAAQTtHDQAgAUEBaiEBDAwLQQAhAiADQQA2AhwgAyABNgIUIANBkhg2AhAgA0ECNgIMDPwCCyAAQRVGDShBACECIANBADYCHCADIAE2AhQgA0HWDDYCECADQSM2AgwM+wILIANBFDYCHCADIAE2AhQgAyAANgIMDPoCCyADKAIEIQBBACECIANBADYCBCADIAAgARA0IgBFBEAgAUEBaiEBDPUCCyADQRU2AhwgAyAANgIMIAMgAUEBajYCFAz5AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzzAgsgA0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==";
@@ -3637,9 +3581,9 @@ var require_llhttp_simd_wasm = __commonJS({
3637
3581
  }
3638
3582
  });
3639
3583
 
3640
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/constants.js
3584
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/constants.js
3641
3585
  var require_constants3 = __commonJS({
3642
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/constants.js"(exports, module) {
3586
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/constants.js"(exports, module) {
3643
3587
  "use strict";
3644
3588
  var corsSafeListedMethods = (
3645
3589
  /** @type {const} */
@@ -3861,9 +3805,9 @@ var require_constants3 = __commonJS({
3861
3805
  }
3862
3806
  });
3863
3807
 
3864
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/global.js
3808
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/global.js
3865
3809
  var require_global = __commonJS({
3866
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/global.js"(exports, module) {
3810
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/global.js"(exports, module) {
3867
3811
  "use strict";
3868
3812
  var globalOrigin = /* @__PURE__ */ Symbol.for("undici.globalOrigin.1");
3869
3813
  function getGlobalOrigin() {
@@ -3897,9 +3841,9 @@ var require_global = __commonJS({
3897
3841
  }
3898
3842
  });
3899
3843
 
3900
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/encoding/index.js
3844
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/encoding/index.js
3901
3845
  var require_encoding = __commonJS({
3902
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/encoding/index.js"(exports, module) {
3846
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/encoding/index.js"(exports, module) {
3903
3847
  "use strict";
3904
3848
  var textDecoder = new TextDecoder();
3905
3849
  function utf8DecodeBytes(buffer) {
@@ -3918,9 +3862,9 @@ var require_encoding = __commonJS({
3918
3862
  }
3919
3863
  });
3920
3864
 
3921
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/infra/index.js
3865
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/infra/index.js
3922
3866
  var require_infra = __commonJS({
3923
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/infra/index.js"(exports, module) {
3867
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/infra/index.js"(exports, module) {
3924
3868
  "use strict";
3925
3869
  var assert = __require("node:assert");
3926
3870
  var { utf8DecodeBytes } = require_encoding();
@@ -4031,9 +3975,9 @@ var require_infra = __commonJS({
4031
3975
  }
4032
3976
  });
4033
3977
 
4034
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/data-url.js
3978
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/data-url.js
4035
3979
  var require_data_url = __commonJS({
4036
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/data-url.js"(exports, module) {
3980
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/data-url.js"(exports, module) {
4037
3981
  "use strict";
4038
3982
  var assert = __require("node:assert");
4039
3983
  var { forgivingBase64, collectASequenceOfCodePoints, collectASequenceOfCodePointsFast, isomorphicDecode, removeASCIIWhitespace, removeChars } = require_infra();
@@ -4310,9 +4254,9 @@ var require_data_url = __commonJS({
4310
4254
  }
4311
4255
  });
4312
4256
 
4313
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/runtime-features.js
4257
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/runtime-features.js
4314
4258
  var require_runtime_features = __commonJS({
4315
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/runtime-features.js"(exports, module) {
4259
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/runtime-features.js"(exports, module) {
4316
4260
  "use strict";
4317
4261
  var lazyLoaders = {
4318
4262
  __proto__: null,
@@ -4412,9 +4356,9 @@ var require_runtime_features = __commonJS({
4412
4356
  }
4413
4357
  });
4414
4358
 
4415
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/webidl/index.js
4359
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/webidl/index.js
4416
4360
  var require_webidl = __commonJS({
4417
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/webidl/index.js"(exports, module) {
4361
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/webidl/index.js"(exports, module) {
4418
4362
  "use strict";
4419
4363
  var assert = __require("node:assert");
4420
4364
  var { types, inspect } = __require("node:util");
@@ -4554,7 +4498,7 @@ var require_webidl = __commonJS({
4554
4498
  lowerBound = 0;
4555
4499
  upperBound = Math.pow(2, bitLength) - 1;
4556
4500
  } else {
4557
- lowerBound = -Math.pow(2, bitLength - 1);
4501
+ lowerBound = Math.pow(-2, bitLength) - 1;
4558
4502
  upperBound = Math.pow(2, bitLength - 1) - 1;
4559
4503
  }
4560
4504
  let x = Number(V);
@@ -4591,7 +4535,7 @@ var require_webidl = __commonJS({
4591
4535
  }
4592
4536
  x = webidl.util.IntegerPart(x);
4593
4537
  x = x % Math.pow(2, bitLength);
4594
- if (signedness === "signed" && x >= Math.pow(2, bitLength - 1)) {
4538
+ if (signedness === "signed" && x >= Math.pow(2, bitLength) - 1) {
4595
4539
  return x - Math.pow(2, bitLength);
4596
4540
  }
4597
4541
  return x;
@@ -5014,9 +4958,9 @@ var require_webidl = __commonJS({
5014
4958
  }
5015
4959
  });
5016
4960
 
5017
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/util.js
4961
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/util.js
5018
4962
  var require_util2 = __commonJS({
5019
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/util.js"(exports, module) {
4963
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/util.js"(exports, module) {
5020
4964
  "use strict";
5021
4965
  var { Transform } = __require("node:stream");
5022
4966
  var zlib = __require("node:zlib");
@@ -5781,9 +5725,9 @@ var require_util2 = __commonJS({
5781
5725
  }
5782
5726
  });
5783
5727
 
5784
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/formdata.js
5728
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/formdata.js
5785
5729
  var require_formdata = __commonJS({
5786
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/formdata.js"(exports, module) {
5730
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/formdata.js"(exports, module) {
5787
5731
  "use strict";
5788
5732
  var { iteratorMixin } = require_util2();
5789
5733
  var { kEnumerableProperty } = require_util();
@@ -5943,9 +5887,9 @@ var require_formdata = __commonJS({
5943
5887
  }
5944
5888
  });
5945
5889
 
5946
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/formdata-parser.js
5890
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/formdata-parser.js
5947
5891
  var require_formdata_parser = __commonJS({
5948
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/formdata-parser.js"(exports, module) {
5892
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/formdata-parser.js"(exports, module) {
5949
5893
  "use strict";
5950
5894
  var { bufferToLowerCasedHeaderName } = require_util();
5951
5895
  var { HTTP_TOKEN_CODEPOINTS } = require_data_url();
@@ -6109,7 +6053,7 @@ var require_formdata_parser = __commonJS({
6109
6053
  );
6110
6054
  value = decoder.decode(tokenValue);
6111
6055
  }
6112
- return { name: attrNameStr, value, extended: isExtended };
6056
+ return { name: attrNameStr, value };
6113
6057
  }
6114
6058
  function parseMultipartFormDataHeaders(input, position) {
6115
6059
  let name = null;
@@ -6144,7 +6088,6 @@ var require_formdata_parser = __commonJS({
6144
6088
  switch (bufferToLowerCasedHeaderName(headerName)) {
6145
6089
  case "content-disposition": {
6146
6090
  name = filename = null;
6147
- let filenameIsExtended = false;
6148
6091
  const dispositionType = collectASequenceOfBytes(
6149
6092
  (char) => isToken(char),
6150
6093
  input,
@@ -6153,7 +6096,7 @@ var require_formdata_parser = __commonJS({
6153
6096
  if (dispositionType.toString("ascii").toLowerCase() !== "form-data") {
6154
6097
  throw parsingError("expected form-data for content-disposition header");
6155
6098
  }
6156
- while (position.position < input.length && (input[position.position] !== 13 || input[position.position + 1] !== 10)) {
6099
+ while (position.position < input.length && input[position.position] !== 13 && input[position.position + 1] !== 10) {
6157
6100
  const attribute = parseContentDispositionAttribute(input, position);
6158
6101
  if (!attribute) {
6159
6102
  break;
@@ -6161,12 +6104,7 @@ var require_formdata_parser = __commonJS({
6161
6104
  if (attribute.name === "name") {
6162
6105
  name = attribute.value;
6163
6106
  } else if (attribute.name === "filename") {
6164
- if (attribute.extended) {
6165
- filename = attribute.value;
6166
- filenameIsExtended = true;
6167
- } else if (!filenameIsExtended) {
6168
- filename = attribute.value;
6169
- }
6107
+ filename = attribute.value;
6170
6108
  }
6171
6109
  }
6172
6110
  if (name === null) {
@@ -6202,7 +6140,7 @@ var require_formdata_parser = __commonJS({
6202
6140
  );
6203
6141
  }
6204
6142
  }
6205
- if (input[position.position] !== 13 || input[position.position + 1] !== 10) {
6143
+ if (input[position.position] !== 13 && input[position.position + 1] !== 10) {
6206
6144
  throw parsingError("expected CRLF");
6207
6145
  } else {
6208
6146
  position.position += 2;
@@ -6273,9 +6211,9 @@ var require_formdata_parser = __commonJS({
6273
6211
  }
6274
6212
  });
6275
6213
 
6276
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/promise.js
6214
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/promise.js
6277
6215
  var require_promise = __commonJS({
6278
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/promise.js"(exports, module) {
6216
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/promise.js"(exports, module) {
6279
6217
  "use strict";
6280
6218
  function createDeferredPromise() {
6281
6219
  let res;
@@ -6292,9 +6230,9 @@ var require_promise = __commonJS({
6292
6230
  }
6293
6231
  });
6294
6232
 
6295
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/body.js
6233
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/body.js
6296
6234
  var require_body = __commonJS({
6297
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/body.js"(exports, module) {
6235
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/body.js"(exports, module) {
6298
6236
  "use strict";
6299
6237
  var util = require_util();
6300
6238
  var {
@@ -6575,9 +6513,9 @@ Content-Type: ${value.type || "application/octet-stream"}\r
6575
6513
  }
6576
6514
  });
6577
6515
 
6578
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client-h1.js
6516
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client-h1.js
6579
6517
  var require_client_h1 = __commonJS({
6580
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client-h1.js"(exports, module) {
6518
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client-h1.js"(exports, module) {
6581
6519
  "use strict";
6582
6520
  var assert = __require("node:assert");
6583
6521
  var util = require_util();
@@ -6587,7 +6525,6 @@ var require_client_h1 = __commonJS({
6587
6525
  RequestContentLengthMismatchError,
6588
6526
  ResponseContentLengthMismatchError,
6589
6527
  RequestAbortedError,
6590
- InvalidArgumentError,
6591
6528
  HeadersTimeoutError,
6592
6529
  HeadersOverflowError,
6593
6530
  SocketError,
@@ -6634,18 +6571,15 @@ var require_client_h1 = __commonJS({
6634
6571
  var EMPTY_BUF = Buffer.alloc(0);
6635
6572
  var FastBuffer = Buffer[Symbol.species];
6636
6573
  var removeAllListeners = util.removeAllListeners;
6637
- var kIdleSocketValidation = /* @__PURE__ */ Symbol("kIdleSocketValidation");
6638
- var kIdleSocketValidationTimeout = /* @__PURE__ */ Symbol("kIdleSocketValidationTimeout");
6639
- var kSocketUsed = /* @__PURE__ */ Symbol("kSocketUsed");
6640
6574
  var extractBody;
6641
6575
  function lazyllhttp() {
6642
6576
  const llhttpWasmData = process.env.JEST_WORKER_ID ? require_llhttp_wasm() : void 0;
6643
6577
  let mod;
6644
6578
  let useWasmSIMD = process.arch !== "ppc64";
6645
6579
  if (process.env.UNDICI_NO_WASM_SIMD === "1") {
6646
- useWasmSIMD = false;
6647
- } else if (process.env.UNDICI_NO_WASM_SIMD === "0") {
6648
6580
  useWasmSIMD = true;
6581
+ } else if (process.env.UNDICI_NO_WASM_SIMD === "0") {
6582
+ useWasmSIMD = false;
6649
6583
  }
6650
6584
  if (useWasmSIMD) {
6651
6585
  try {
@@ -6763,7 +6697,6 @@ var require_client_h1 = __commonJS({
6763
6697
  this.client = client;
6764
6698
  this.socket = socket;
6765
6699
  this.timeout = null;
6766
- this.timeoutWeakRef = new WeakRef(this);
6767
6700
  this.timeoutValue = null;
6768
6701
  this.timeoutType = null;
6769
6702
  this.statusCode = 0;
@@ -6789,9 +6722,9 @@ var require_client_h1 = __commonJS({
6789
6722
  }
6790
6723
  if (delay) {
6791
6724
  if (type & USE_FAST_TIMER) {
6792
- this.timeout = timers.setFastTimeout(onParserTimeout, delay, this.timeoutWeakRef);
6725
+ this.timeout = timers.setFastTimeout(onParserTimeout, delay, new WeakRef(this));
6793
6726
  } else {
6794
- this.timeout = setTimeout(onParserTimeout, delay, this.timeoutWeakRef);
6727
+ this.timeout = setTimeout(onParserTimeout, delay, new WeakRef(this));
6795
6728
  this.timeout?.unref();
6796
6729
  }
6797
6730
  }
@@ -6863,47 +6796,19 @@ var require_client_h1 = __commonJS({
6863
6796
  this.paused = true;
6864
6797
  socket.unshift(data);
6865
6798
  } else {
6866
- throw this.createError(ret, data);
6799
+ const ptr = llhttp.llhttp_get_error_reason(this.ptr);
6800
+ let message = "";
6801
+ if (ptr) {
6802
+ const len = new Uint8Array(llhttp.memory.buffer, ptr).indexOf(0);
6803
+ message = "Response does not match the HTTP/1.1 protocol (" + Buffer.from(llhttp.memory.buffer, ptr, len).toString() + ")";
6804
+ }
6805
+ throw new HTTPParserError(message, constants2.ERROR[ret], data);
6867
6806
  }
6868
6807
  }
6869
6808
  } catch (err) {
6870
6809
  util.destroy(socket, err);
6871
6810
  }
6872
6811
  }
6873
- finish() {
6874
- assert(currentParser === null);
6875
- assert(this.ptr != null);
6876
- assert(!this.paused);
6877
- const { llhttp } = this;
6878
- let ret;
6879
- try {
6880
- currentParser = this;
6881
- ret = llhttp.llhttp_finish(this.ptr);
6882
- } finally {
6883
- currentParser = null;
6884
- }
6885
- if (ret === constants2.ERROR.OK) {
6886
- return null;
6887
- }
6888
- if (ret === constants2.ERROR.PAUSED || ret === constants2.ERROR.PAUSED_UPGRADE) {
6889
- this.paused = true;
6890
- return null;
6891
- }
6892
- return this.createError(ret, EMPTY_BUF);
6893
- }
6894
- createError(ret, data) {
6895
- const { llhttp, contentLength, bytesRead } = this;
6896
- if (contentLength && bytesRead !== parseInt(contentLength, 10)) {
6897
- return new ResponseContentLengthMismatchError();
6898
- }
6899
- const ptr = llhttp.llhttp_get_error_reason(this.ptr);
6900
- let message = "";
6901
- if (ptr) {
6902
- const len = new Uint8Array(llhttp.memory.buffer, ptr).indexOf(0);
6903
- message = "Response does not match the HTTP/1.1 protocol (" + Buffer.from(llhttp.memory.buffer, ptr, len).toString() + ")";
6904
- }
6905
- return new HTTPParserError(message, constants2.ERROR[ret], data);
6906
- }
6907
6812
  destroy() {
6908
6813
  assert(currentParser === null);
6909
6814
  assert(this.ptr != null);
@@ -6931,10 +6836,6 @@ var require_client_h1 = __commonJS({
6931
6836
  if (socket.destroyed) {
6932
6837
  return -1;
6933
6838
  }
6934
- if (client[kRunning] === 0) {
6935
- util.destroy(socket, new SocketError("bad response", util.getSocketInfo(socket)));
6936
- return -1;
6937
- }
6938
6839
  const request = client[kQueue][client[kRunningIdx]];
6939
6840
  if (!request) {
6940
6841
  return -1;
@@ -7037,10 +6938,6 @@ var require_client_h1 = __commonJS({
7037
6938
  if (socket.destroyed) {
7038
6939
  return -1;
7039
6940
  }
7040
- if (client[kRunning] === 0) {
7041
- util.destroy(socket, new SocketError("bad response", util.getSocketInfo(socket)));
7042
- return -1;
7043
- }
7044
6941
  const request = client[kQueue][client[kRunningIdx]];
7045
6942
  if (!request) {
7046
6943
  return -1;
@@ -7174,7 +7071,6 @@ var require_client_h1 = __commonJS({
7174
7071
  }
7175
7072
  request.onComplete(headers);
7176
7073
  client[kQueue][client[kRunningIdx]++] = null;
7177
- socket[kSocketUsed] = client[kPending] === 0;
7178
7074
  if (socket[kWriting]) {
7179
7075
  assert(client[kRunning] === 0);
7180
7076
  util.destroy(socket, new InformationalError("reset"));
@@ -7228,9 +7124,6 @@ var require_client_h1 = __commonJS({
7228
7124
  socket[kWriting] = false;
7229
7125
  socket[kReset] = false;
7230
7126
  socket[kBlocking] = false;
7231
- socket[kIdleSocketValidation] = 0;
7232
- socket[kIdleSocketValidationTimeout] = null;
7233
- socket[kSocketUsed] = false;
7234
7127
  socket[kParser] = new Parser(client, socket, llhttpInstance);
7235
7128
  util.addListener(socket, "error", onHttpSocketError);
7236
7129
  util.addListener(socket, "readable", onHttpSocketReadable);
@@ -7270,7 +7163,7 @@ var require_client_h1 = __commonJS({
7270
7163
  * @returns {boolean}
7271
7164
  */
7272
7165
  busy(request) {
7273
- if (socket[kWriting] || socket[kReset] || socket[kBlocking] || socket[kIdleSocketValidation] === 1) {
7166
+ if (socket[kWriting] || socket[kReset] || socket[kBlocking]) {
7274
7167
  return true;
7275
7168
  }
7276
7169
  if (request) {
@@ -7292,11 +7185,7 @@ var require_client_h1 = __commonJS({
7292
7185
  assert(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
7293
7186
  const parser = this[kParser];
7294
7187
  if (err.code === "ECONNRESET" && parser.statusCode && !parser.shouldKeepAlive) {
7295
- const parserErr = parser.finish();
7296
- if (parserErr) {
7297
- this[kError] = parserErr;
7298
- this[kClient][kOnError](parserErr);
7299
- }
7188
+ parser.onMessageComplete();
7300
7189
  return;
7301
7190
  }
7302
7191
  this[kError] = err;
@@ -7308,20 +7197,16 @@ var require_client_h1 = __commonJS({
7308
7197
  function onHttpSocketEnd() {
7309
7198
  const parser = this[kParser];
7310
7199
  if (parser.statusCode && !parser.shouldKeepAlive) {
7311
- const parserErr = parser.finish();
7312
- if (parserErr) {
7313
- util.destroy(this, parserErr);
7314
- }
7200
+ parser.onMessageComplete();
7315
7201
  return;
7316
7202
  }
7317
7203
  util.destroy(this, new SocketError("other side closed", util.getSocketInfo(this)));
7318
7204
  }
7319
7205
  function onHttpSocketClose() {
7320
7206
  const parser = this[kParser];
7321
- clearIdleSocketValidation(this);
7322
7207
  if (parser) {
7323
7208
  if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) {
7324
- this[kError] = parser.finish() || this[kError];
7209
+ parser.onMessageComplete();
7325
7210
  }
7326
7211
  this[kParser].destroy();
7327
7212
  this[kParser] = null;
@@ -7350,24 +7235,6 @@ var require_client_h1 = __commonJS({
7350
7235
  function onSocketClose() {
7351
7236
  this[kClosed] = true;
7352
7237
  }
7353
- function clearIdleSocketValidation(socket) {
7354
- if (socket[kIdleSocketValidationTimeout]) {
7355
- clearTimeout(socket[kIdleSocketValidationTimeout]);
7356
- socket[kIdleSocketValidationTimeout] = null;
7357
- }
7358
- socket[kIdleSocketValidation] = 0;
7359
- }
7360
- function scheduleIdleSocketValidation(client, socket) {
7361
- socket[kIdleSocketValidation] = 1;
7362
- socket[kIdleSocketValidationTimeout] = setTimeout(() => {
7363
- socket[kIdleSocketValidationTimeout] = null;
7364
- socket[kIdleSocketValidation] = 2;
7365
- if (client[kSocket] === socket && !socket.destroyed) {
7366
- client[kResume]();
7367
- }
7368
- }, 0);
7369
- socket[kIdleSocketValidationTimeout].unref?.();
7370
- }
7371
7238
  function resumeH1(client) {
7372
7239
  const socket = client[kSocket];
7373
7240
  if (socket && !socket.destroyed) {
@@ -7380,29 +7247,6 @@ var require_client_h1 = __commonJS({
7380
7247
  socket.ref();
7381
7248
  socket[kNoRef] = false;
7382
7249
  }
7383
- if (client[kRunning] === 0 && client[kPending] > 0 && socket[kSocketUsed]) {
7384
- if (socket[kIdleSocketValidation] === 0) {
7385
- scheduleIdleSocketValidation(client, socket);
7386
- socket[kParser].readMore();
7387
- if (socket.destroyed) {
7388
- return;
7389
- }
7390
- return;
7391
- }
7392
- if (socket[kIdleSocketValidation] === 1) {
7393
- socket[kParser].readMore();
7394
- if (socket.destroyed) {
7395
- return;
7396
- }
7397
- return;
7398
- }
7399
- }
7400
- if (client[kRunning] === 0) {
7401
- socket[kParser].readMore();
7402
- if (socket.destroyed) {
7403
- return;
7404
- }
7405
- }
7406
7250
  if (client[kSize] === 0) {
7407
7251
  if (socket[kParser].timeoutType !== TIMEOUT_KEEP_ALIVE) {
7408
7252
  socket[kParser].setTimeout(client[kKeepAliveTimeoutValue], TIMEOUT_KEEP_ALIVE);
@@ -7433,16 +7277,8 @@ var require_client_h1 = __commonJS({
7433
7277
  }
7434
7278
  body = bodyStream.stream;
7435
7279
  contentLength = bodyStream.length;
7436
- } else if (util.isBlobLike(body) && request.contentType == null) {
7437
- const contentType = body.type;
7438
- if (contentType) {
7439
- const contentTypeValue = `${contentType}`;
7440
- if (!util.isValidHeaderValue(contentTypeValue)) {
7441
- util.errorRequest(client, request, new InvalidArgumentError("invalid content-type header"));
7442
- return false;
7443
- }
7444
- headers.push("content-type", contentTypeValue);
7445
- }
7280
+ } else if (util.isBlobLike(body) && request.contentType == null && body.type) {
7281
+ headers.push("content-type", body.type);
7446
7282
  }
7447
7283
  if (body && typeof body.read === "function") {
7448
7284
  body.read(0);
@@ -7463,7 +7299,6 @@ var require_client_h1 = __commonJS({
7463
7299
  process.emitWarning(new RequestContentLengthMismatchError());
7464
7300
  }
7465
7301
  const socket = client[kSocket];
7466
- clearIdleSocketValidation(socket);
7467
7302
  const abort = (err) => {
7468
7303
  if (request.aborted || request.completed) {
7469
7304
  return;
@@ -7844,9 +7679,9 @@ ${len.toString(16)}\r
7844
7679
  }
7845
7680
  });
7846
7681
 
7847
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client-h2.js
7682
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client-h2.js
7848
7683
  var require_client_h2 = __commonJS({
7849
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client-h2.js"(exports, module) {
7684
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client-h2.js"(exports, module) {
7850
7685
  "use strict";
7851
7686
  var assert = __require("node:assert");
7852
7687
  var { pipeline } = __require("node:stream");
@@ -8571,9 +8406,9 @@ var require_client_h2 = __commonJS({
8571
8406
  }
8572
8407
  });
8573
8408
 
8574
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client.js
8409
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client.js
8575
8410
  var require_client = __commonJS({
8576
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/client.js"(exports, module) {
8411
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/client.js"(exports, module) {
8577
8412
  "use strict";
8578
8413
  var assert = __require("node:assert");
8579
8414
  var net = __require("node:net");
@@ -8679,8 +8514,7 @@ var require_client = __commonJS({
8679
8514
  useH2c,
8680
8515
  initialWindowSize,
8681
8516
  connectionWindowSize,
8682
- pingInterval,
8683
- webSocket
8517
+ pingInterval
8684
8518
  } = {}) {
8685
8519
  if (keepAlive !== void 0) {
8686
8520
  throw new InvalidArgumentError("unsupported keepAlive, use pipelining=0 instead");
@@ -8758,7 +8592,7 @@ var require_client = __commonJS({
8758
8592
  if (pingInterval != null && (typeof pingInterval !== "number" || !Number.isInteger(pingInterval) || pingInterval < 0)) {
8759
8593
  throw new InvalidArgumentError("pingInterval must be a positive integer, greater or equal to 0");
8760
8594
  }
8761
- super({ webSocket });
8595
+ super();
8762
8596
  if (typeof connect2 !== "function") {
8763
8597
  connect2 = buildConnector({
8764
8598
  ...tls,
@@ -8770,13 +8604,9 @@ var require_client = __commonJS({
8770
8604
  ...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
8771
8605
  ...connect2
8772
8606
  });
8773
- } else {
8607
+ } else if (socketPath != null) {
8774
8608
  const customConnect = connect2;
8775
- connect2 = (opts, callback) => customConnect({
8776
- ...opts,
8777
- ...socketPath != null ? { socketPath } : null,
8778
- ...allowH2 != null ? { allowH2 } : null
8779
- }, callback);
8609
+ connect2 = (opts, callback) => customConnect({ ...opts, socketPath }, callback);
8780
8610
  }
8781
8611
  this[kUrl] = util.parseOrigin(url);
8782
8612
  this[kConnector] = connect2;
@@ -9098,9 +8928,9 @@ var require_client = __commonJS({
9098
8928
  }
9099
8929
  });
9100
8930
 
9101
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/fixed-queue.js
8931
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/fixed-queue.js
9102
8932
  var require_fixed_queue = __commonJS({
9103
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/fixed-queue.js"(exports, module) {
8933
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/fixed-queue.js"(exports, module) {
9104
8934
  "use strict";
9105
8935
  var kSize = 2048;
9106
8936
  var kMask = kSize - 1;
@@ -9169,9 +8999,9 @@ var require_fixed_queue = __commonJS({
9169
8999
  }
9170
9000
  });
9171
9001
 
9172
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/pool-base.js
9002
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/pool-base.js
9173
9003
  var require_pool_base = __commonJS({
9174
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/pool-base.js"(exports, module) {
9004
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/pool-base.js"(exports, module) {
9175
9005
  "use strict";
9176
9006
  var { PoolStats } = require_stats();
9177
9007
  var DispatcherBase = require_dispatcher_base();
@@ -9345,9 +9175,9 @@ var require_pool_base = __commonJS({
9345
9175
  }
9346
9176
  });
9347
9177
 
9348
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/pool.js
9178
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/pool.js
9349
9179
  var require_pool = __commonJS({
9350
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/pool.js"(exports, module) {
9180
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/pool.js"(exports, module) {
9351
9181
  "use strict";
9352
9182
  var {
9353
9183
  PoolBase,
@@ -9405,7 +9235,7 @@ var require_pool = __commonJS({
9405
9235
  ...connect
9406
9236
  });
9407
9237
  }
9408
- super(options);
9238
+ super();
9409
9239
  this[kConnections] = connections || null;
9410
9240
  this[kUrl] = util.parseOrigin(origin);
9411
9241
  this[kOptions] = { ...util.deepClone(options), connect, allowH2, clientTtl, socketPath };
@@ -9447,9 +9277,9 @@ var require_pool = __commonJS({
9447
9277
  }
9448
9278
  });
9449
9279
 
9450
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/balanced-pool.js
9280
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/balanced-pool.js
9451
9281
  var require_balanced_pool = __commonJS({
9452
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/balanced-pool.js"(exports, module) {
9282
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/balanced-pool.js"(exports, module) {
9453
9283
  "use strict";
9454
9284
  var {
9455
9285
  BalancedPoolMissingUpstreamError,
@@ -9491,7 +9321,7 @@ var require_balanced_pool = __commonJS({
9491
9321
  if (typeof factory !== "function") {
9492
9322
  throw new InvalidArgumentError("factory must be a function.");
9493
9323
  }
9494
- super(opts);
9324
+ super();
9495
9325
  this[kOptions] = { ...util.deepClone(opts) };
9496
9326
  this[kOptions].interceptors = opts.interceptors ? { ...opts.interceptors } : void 0;
9497
9327
  this[kIndex] = -1;
@@ -9595,9 +9425,9 @@ var require_balanced_pool = __commonJS({
9595
9425
  }
9596
9426
  });
9597
9427
 
9598
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/round-robin-pool.js
9428
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/round-robin-pool.js
9599
9429
  var require_round_robin_pool = __commonJS({
9600
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/round-robin-pool.js"(exports, module) {
9430
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/round-robin-pool.js"(exports, module) {
9601
9431
  "use strict";
9602
9432
  var {
9603
9433
  PoolBase,
@@ -9712,9 +9542,9 @@ var require_round_robin_pool = __commonJS({
9712
9542
  }
9713
9543
  });
9714
9544
 
9715
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/agent.js
9545
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/agent.js
9716
9546
  var require_agent = __commonJS({
9717
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/agent.js"(exports, module) {
9547
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/agent.js"(exports, module) {
9718
9548
  "use strict";
9719
9549
  var { InvalidArgumentError, MaxOriginsReachedError } = require_errors();
9720
9550
  var { kClients, kRunning, kClose, kDestroy, kDispatch, kUrl } = require_symbols();
@@ -9743,7 +9573,7 @@ var require_agent = __commonJS({
9743
9573
  if (typeof maxOrigins !== "number" || Number.isNaN(maxOrigins) || maxOrigins <= 0) {
9744
9574
  throw new InvalidArgumentError("maxOrigins must be a number greater than 0");
9745
9575
  }
9746
- super(options);
9576
+ super();
9747
9577
  if (connect && typeof connect !== "function") {
9748
9578
  connect = { ...connect };
9749
9579
  }
@@ -9845,9 +9675,9 @@ var require_agent = __commonJS({
9845
9675
  }
9846
9676
  });
9847
9677
 
9848
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/socks5-utils.js
9678
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/socks5-utils.js
9849
9679
  var require_socks5_utils = __commonJS({
9850
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/socks5-utils.js"(exports, module) {
9680
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/socks5-utils.js"(exports, module) {
9851
9681
  "use strict";
9852
9682
  var { Buffer: Buffer3 } = __require("node:buffer");
9853
9683
  var net = __require("node:net");
@@ -9880,37 +9710,28 @@ var require_socks5_utils = __commonJS({
9880
9710
  }
9881
9711
  function parseIPv6(address) {
9882
9712
  const buffer = Buffer3.alloc(16);
9883
- let normalizedAddress = address;
9884
- if (address.includes(".")) {
9885
- const lastColonIndex = address.lastIndexOf(":");
9886
- const ipv4Part = address.slice(lastColonIndex + 1);
9887
- if (net.isIPv4(ipv4Part)) {
9888
- const octets = ipv4Part.split(".").map(Number);
9889
- const high = (octets[0] << 8 | octets[1]).toString(16);
9890
- const low = (octets[2] << 8 | octets[3]).toString(16);
9891
- normalizedAddress = `${address.slice(0, lastColonIndex)}:${high}:${low}`;
9892
- }
9893
- }
9894
- const doubleColonIndex = normalizedAddress.indexOf("::");
9713
+ const parts = address.split(":");
9714
+ let partIndex = 0;
9715
+ let bufferIndex = 0;
9716
+ const doubleColonIndex = address.indexOf("::");
9895
9717
  if (doubleColonIndex !== -1) {
9896
- const before = normalizedAddress.slice(0, doubleColonIndex);
9897
- const after = normalizedAddress.slice(doubleColonIndex + 2);
9898
- const beforeParts = before === "" ? [] : before.split(":");
9899
- const afterParts = after === "" ? [] : after.split(":");
9900
- let bufferIndex = 0;
9901
- for (const part of beforeParts) {
9902
- buffer.writeUInt16BE(parseInt(part, 16), bufferIndex);
9903
- bufferIndex += 2;
9904
- }
9905
- bufferIndex = 16 - afterParts.length * 2;
9906
- for (const part of afterParts) {
9907
- buffer.writeUInt16BE(parseInt(part, 16), bufferIndex);
9908
- bufferIndex += 2;
9718
+ const nonEmptyParts = parts.filter((p) => p.length > 0).length;
9719
+ const skipParts = 8 - nonEmptyParts;
9720
+ for (let i = 0; i < parts.length; i++) {
9721
+ if (parts[i] === "" && i === doubleColonIndex / 3) {
9722
+ bufferIndex += skipParts * 2;
9723
+ } else if (parts[i] !== "") {
9724
+ const value = parseInt(parts[i], 16);
9725
+ buffer.writeUInt16BE(value, bufferIndex);
9726
+ bufferIndex += 2;
9727
+ }
9909
9728
  }
9910
9729
  } else {
9911
- const parts = normalizedAddress.split(":");
9912
- for (let i = 0; i < parts.length; i++) {
9913
- buffer.writeUInt16BE(parseInt(parts[i], 16), i * 2);
9730
+ for (const part of parts) {
9731
+ if (part === "") continue;
9732
+ const value = parseInt(part, 16);
9733
+ buffer.writeUInt16BE(value, partIndex * 2);
9734
+ partIndex++;
9914
9735
  }
9915
9736
  }
9916
9737
  return buffer;
@@ -10006,9 +9827,9 @@ var require_socks5_utils = __commonJS({
10006
9827
  }
10007
9828
  });
10008
9829
 
10009
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/socks5-client.js
9830
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/socks5-client.js
10010
9831
  var require_socks5_client = __commonJS({
10011
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/core/socks5-client.js"(exports, module) {
9832
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/core/socks5-client.js"(exports, module) {
10012
9833
  "use strict";
10013
9834
  var { EventEmitter } = __require("node:events");
10014
9835
  var { Buffer: Buffer3 } = __require("node:buffer");
@@ -10016,7 +9837,6 @@ var require_socks5_client = __commonJS({
10016
9837
  var { debuglog } = __require("node:util");
10017
9838
  var { parseAddress } = require_socks5_utils();
10018
9839
  var debug = debuglog("undici:socks5");
10019
- var EMPTY_BUFFER = Buffer3.alloc(0);
10020
9840
  var SOCKS_VERSION = 5;
10021
9841
  var AUTH_METHODS = {
10022
9842
  NO_AUTH: 0,
@@ -10049,7 +9869,6 @@ var require_socks5_client = __commonJS({
10049
9869
  INITIAL: "initial",
10050
9870
  HANDSHAKING: "handshaking",
10051
9871
  AUTHENTICATING: "authenticating",
10052
- AUTHENTICATED: "authenticated",
10053
9872
  CONNECTING: "connecting",
10054
9873
  CONNECTED: "connected",
10055
9874
  ERROR: "error",
@@ -10064,18 +9883,15 @@ var require_socks5_client = __commonJS({
10064
9883
  this.socket = socket;
10065
9884
  this.options = options;
10066
9885
  this.state = STATES.INITIAL;
10067
- this.buffer = EMPTY_BUFFER;
10068
- this.onSocketData = this.onData.bind(this);
10069
- this.onSocketError = this.onError.bind(this);
10070
- this.onSocketClose = this.onClose.bind(this);
9886
+ this.buffer = Buffer3.alloc(0);
10071
9887
  this.authMethods = [];
10072
9888
  if (options.username && options.password) {
10073
9889
  this.authMethods.push(AUTH_METHODS.USERNAME_PASSWORD);
10074
9890
  }
10075
9891
  this.authMethods.push(AUTH_METHODS.NO_AUTH);
10076
- this.socket.on("data", this.onSocketData);
10077
- this.socket.on("error", this.onSocketError);
10078
- this.socket.on("close", this.onSocketClose);
9892
+ this.socket.on("data", this.onData.bind(this));
9893
+ this.socket.on("error", this.onError.bind(this));
9894
+ this.socket.on("close", this.onClose.bind(this));
10079
9895
  }
10080
9896
  /**
10081
9897
  * Handle incoming data from the socket
@@ -10124,10 +9940,6 @@ var require_socks5_client = __commonJS({
10124
9940
  this.socket.destroy();
10125
9941
  }
10126
9942
  }
10127
- markAuthenticated() {
10128
- this.state = STATES.AUTHENTICATED;
10129
- this.emit("authenticated");
10130
- }
10131
9943
  /**
10132
9944
  * Start the SOCKS5 handshake
10133
9945
  */
@@ -10163,7 +9975,7 @@ var require_socks5_client = __commonJS({
10163
9975
  this.buffer = this.buffer.subarray(2);
10164
9976
  debug("server selected auth method", method);
10165
9977
  if (method === AUTH_METHODS.NO_AUTH) {
10166
- this.markAuthenticated();
9978
+ this.emit("authenticated");
10167
9979
  } else if (method === AUTH_METHODS.USERNAME_PASSWORD) {
10168
9980
  this.state = STATES.AUTHENTICATING;
10169
9981
  this.sendAuthRequest();
@@ -10210,7 +10022,7 @@ var require_socks5_client = __commonJS({
10210
10022
  }
10211
10023
  this.buffer = this.buffer.subarray(2);
10212
10024
  debug("authentication successful");
10213
- this.markAuthenticated();
10025
+ this.emit("authenticated");
10214
10026
  }
10215
10027
  /**
10216
10028
  * Send CONNECT command
@@ -10218,11 +10030,8 @@ var require_socks5_client = __commonJS({
10218
10030
  * @param {number} port - Target port
10219
10031
  */
10220
10032
  connect(address, port) {
10221
- if (this.state === STATES.CONNECTING || this.state === STATES.CONNECTED) {
10222
- throw new InvalidArgumentError("Connection already in progress");
10223
- }
10224
- if (this.state !== STATES.AUTHENTICATED) {
10225
- throw new InvalidArgumentError("Client must be authenticated before CONNECT");
10033
+ if (this.state === STATES.CONNECTED) {
10034
+ throw new InvalidArgumentError("Already connected");
10226
10035
  }
10227
10036
  debug("connecting to", address, port);
10228
10037
  this.state = STATES.CONNECTING;
@@ -10296,9 +10105,8 @@ var require_socks5_client = __commonJS({
10296
10105
  offset += 16;
10297
10106
  }
10298
10107
  const boundPort = this.buffer.readUInt16BE(offset);
10299
- this.buffer = EMPTY_BUFFER;
10108
+ this.buffer = this.buffer.subarray(responseLength);
10300
10109
  this.state = STATES.CONNECTED;
10301
- this.socket.removeListener("data", this.onSocketData);
10302
10110
  debug("connected, bound address:", boundAddress, "port:", boundPort);
10303
10111
  this.emit("connected", { address: boundAddress, port: boundPort });
10304
10112
  }
@@ -10339,15 +10147,16 @@ var require_socks5_client = __commonJS({
10339
10147
  }
10340
10148
  });
10341
10149
 
10342
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js
10150
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js
10343
10151
  var require_socks5_proxy_agent = __commonJS({
10344
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js"(exports, module) {
10152
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js"(exports, module) {
10345
10153
  "use strict";
10154
+ var net = __require("node:net");
10346
10155
  var { URL: URL2 } = __require("node:url");
10347
10156
  var tls;
10348
10157
  var DispatcherBase = require_dispatcher_base();
10349
10158
  var { InvalidArgumentError } = require_errors();
10350
- var { Socks5Client, STATES } = require_socks5_client();
10159
+ var { Socks5Client } = require_socks5_client();
10351
10160
  var { kDispatch, kClose, kDestroy } = require_symbols();
10352
10161
  var Pool = require_pool();
10353
10162
  var buildConnector = require_connect();
@@ -10356,10 +10165,8 @@ var require_socks5_proxy_agent = __commonJS({
10356
10165
  var kProxyUrl = /* @__PURE__ */ Symbol("proxy url");
10357
10166
  var kProxyHeaders = /* @__PURE__ */ Symbol("proxy headers");
10358
10167
  var kProxyAuth = /* @__PURE__ */ Symbol("proxy auth");
10359
- var kProxyProtocol = /* @__PURE__ */ Symbol("proxy protocol");
10360
- var kPools = /* @__PURE__ */ Symbol("pools");
10168
+ var kPool = /* @__PURE__ */ Symbol("pool");
10361
10169
  var kConnector = /* @__PURE__ */ Symbol("connector");
10362
- var kRequestTls = /* @__PURE__ */ Symbol("request tls settings");
10363
10170
  var experimentalWarningEmitted = false;
10364
10171
  var Socks5ProxyAgent = class extends DispatcherBase {
10365
10172
  constructor(proxyUrl, options = {}) {
@@ -10380,8 +10187,6 @@ var require_socks5_proxy_agent = __commonJS({
10380
10187
  }
10381
10188
  this[kProxyUrl] = url;
10382
10189
  this[kProxyHeaders] = options.headers || {};
10383
- this[kProxyProtocol] = options.proxyTls ? "https:" : "http:";
10384
- this[kRequestTls] = options.requestTls;
10385
10190
  this[kProxyAuth] = {
10386
10191
  username: options.username || (url.username ? decodeURIComponent(url.username) : null),
10387
10192
  password: options.password || (url.password ? decodeURIComponent(url.password) : null)
@@ -10390,7 +10195,7 @@ var require_socks5_proxy_agent = __commonJS({
10390
10195
  ...options.proxyTls,
10391
10196
  servername: options.proxyTls?.servername || url.hostname
10392
10197
  });
10393
- this[kPools] = /* @__PURE__ */ new Map();
10198
+ this[kPool] = null;
10394
10199
  }
10395
10200
  /**
10396
10201
  * Create a SOCKS5 connection to the proxy
@@ -10400,18 +10205,20 @@ var require_socks5_proxy_agent = __commonJS({
10400
10205
  const proxyPort = parseInt(this[kProxyUrl].port) || 1080;
10401
10206
  debug("creating SOCKS5 connection to", proxyHost, proxyPort);
10402
10207
  const socket = await new Promise((resolve6, reject) => {
10403
- this[kConnector]({
10404
- hostname: proxyHost,
10208
+ const onConnect = () => {
10209
+ socket2.removeListener("error", onError);
10210
+ resolve6(socket2);
10211
+ };
10212
+ const onError = (err) => {
10213
+ socket2.removeListener("connect", onConnect);
10214
+ reject(err);
10215
+ };
10216
+ const socket2 = net.connect({
10405
10217
  host: proxyHost,
10406
- port: proxyPort,
10407
- protocol: this[kProxyProtocol]
10408
- }, (err, socket2) => {
10409
- if (err) {
10410
- reject(err);
10411
- } else {
10412
- resolve6(socket2);
10413
- }
10218
+ port: proxyPort
10414
10219
  });
10220
+ socket2.once("connect", onConnect);
10221
+ socket2.once("error", onError);
10415
10222
  });
10416
10223
  const socks5Client = new Socks5Client(socket, this[kProxyAuth]);
10417
10224
  socks5Client.on("error", (err) => {
@@ -10433,7 +10240,7 @@ var require_socks5_proxy_agent = __commonJS({
10433
10240
  socks5Client.removeListener("authenticated", onAuthenticated);
10434
10241
  reject(err);
10435
10242
  };
10436
- if (socks5Client.state === STATES.AUTHENTICATED) {
10243
+ if (socks5Client.state === "authenticated") {
10437
10244
  clearTimeout(timeout);
10438
10245
  resolve6();
10439
10246
  } else {
@@ -10465,14 +10272,12 @@ var require_socks5_proxy_agent = __commonJS({
10465
10272
  /**
10466
10273
  * Dispatch a request through the SOCKS5 proxy
10467
10274
  */
10468
- [kDispatch](opts, handler) {
10275
+ async [kDispatch](opts, handler) {
10469
10276
  const { origin } = opts;
10470
10277
  debug("dispatching request to", origin, "via SOCKS5");
10471
10278
  try {
10472
- const originKey = String(origin);
10473
- let pool = this[kPools].get(originKey);
10474
- if (!pool || pool.destroyed || pool.closed) {
10475
- pool = new Pool(origin, {
10279
+ if (!this[kPool] || this[kPool].destroyed || this[kPool].closed) {
10280
+ this[kPool] = new Pool(origin, {
10476
10281
  pipelining: opts.pipelining,
10477
10282
  connections: opts.connections,
10478
10283
  connect: async (connectOpts, callback) => {
@@ -10489,9 +10294,9 @@ var require_socks5_proxy_agent = __commonJS({
10489
10294
  }
10490
10295
  debug("upgrading to TLS");
10491
10296
  finalSocket = tls.connect({
10492
- ...this[kRequestTls],
10493
10297
  socket,
10494
- servername: this[kRequestTls]?.servername || targetHost
10298
+ servername: targetHost,
10299
+ ...connectOpts.tls || {}
10495
10300
  });
10496
10301
  await new Promise((resolve6, reject) => {
10497
10302
  finalSocket.once("secureConnect", resolve6);
@@ -10505,46 +10310,35 @@ var require_socks5_proxy_agent = __commonJS({
10505
10310
  }
10506
10311
  }
10507
10312
  });
10508
- this[kPools].set(originKey, pool);
10509
10313
  }
10510
- return pool[kDispatch](opts, handler);
10314
+ return this[kPool][kDispatch](opts, handler);
10511
10315
  } catch (err) {
10512
10316
  debug("dispatch error:", err);
10513
- if (typeof handler.onResponseError === "function") {
10514
- handler.onResponseError(null, err);
10515
- return false;
10516
- } else if (typeof handler.onError === "function") {
10317
+ if (typeof handler.onError === "function") {
10517
10318
  handler.onError(err);
10518
- return false;
10519
10319
  } else {
10520
10320
  throw err;
10521
10321
  }
10522
10322
  }
10523
10323
  }
10524
10324
  async [kClose]() {
10525
- const closePromises = [];
10526
- for (const pool of this[kPools].values()) {
10527
- closePromises.push(pool.close());
10325
+ if (this[kPool]) {
10326
+ await this[kPool].close();
10528
10327
  }
10529
- this[kPools].clear();
10530
- await Promise.all(closePromises);
10531
10328
  }
10532
10329
  async [kDestroy](err) {
10533
- const destroyPromises = [];
10534
- for (const pool of this[kPools].values()) {
10535
- destroyPromises.push(pool.destroy(err));
10330
+ if (this[kPool]) {
10331
+ await this[kPool].destroy(err);
10536
10332
  }
10537
- this[kPools].clear();
10538
- await Promise.all(destroyPromises);
10539
10333
  }
10540
10334
  };
10541
10335
  module.exports = Socks5ProxyAgent;
10542
10336
  }
10543
10337
  });
10544
10338
 
10545
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/proxy-agent.js
10339
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/proxy-agent.js
10546
10340
  var require_proxy_agent = __commonJS({
10547
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/proxy-agent.js"(exports, module) {
10341
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/proxy-agent.js"(exports, module) {
10548
10342
  "use strict";
10549
10343
  var { kProxy, kClose, kDestroy, kDispatch } = require_symbols();
10550
10344
  var Agent = require_agent();
@@ -10660,8 +10454,7 @@ var require_proxy_agent = __commonJS({
10660
10454
  factory: agentFactory,
10661
10455
  username: opts.username || username,
10662
10456
  password: opts.password || password,
10663
- proxyTls: opts.proxyTls,
10664
- requestTls: opts.requestTls
10457
+ proxyTls: opts.proxyTls
10665
10458
  });
10666
10459
  }
10667
10460
  if (!this[kTunnelProxy] && protocol2 === "http:" && this[kProxy].protocol === "http:") {
@@ -10799,9 +10592,9 @@ var require_proxy_agent = __commonJS({
10799
10592
  }
10800
10593
  });
10801
10594
 
10802
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js
10595
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js
10803
10596
  var require_env_http_proxy_agent = __commonJS({
10804
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js"(exports, module) {
10597
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js"(exports, module) {
10805
10598
  "use strict";
10806
10599
  var DispatcherBase = require_dispatcher_base();
10807
10600
  var { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = require_symbols();
@@ -10922,9 +10715,9 @@ var require_env_http_proxy_agent = __commonJS({
10922
10715
  }
10923
10716
  });
10924
10717
 
10925
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/retry-handler.js
10718
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/retry-handler.js
10926
10719
  var require_retry_handler = __commonJS({
10927
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/retry-handler.js"(exports, module) {
10720
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/retry-handler.js"(exports, module) {
10928
10721
  "use strict";
10929
10722
  var assert = __require("node:assert");
10930
10723
  var { kRetryHandlerDefaultRetry } = require_symbols();
@@ -10939,23 +10732,6 @@ var require_retry_handler = __commonJS({
10939
10732
  const retryTime = new Date(retryAfter).getTime();
10940
10733
  return isNaN(retryTime) ? 0 : retryTime - Date.now();
10941
10734
  }
10942
- function validatePartialResponseContentLength(headers, range, statusCode, retryCount) {
10943
- const contentLength = headers["content-length"];
10944
- if (contentLength == null) {
10945
- return;
10946
- }
10947
- if (!Number.isFinite(range.start) || !Number.isFinite(range.end)) {
10948
- return;
10949
- }
10950
- const length = Number(contentLength);
10951
- const expectedLength = range.end - range.start + 1;
10952
- if (!Number.isFinite(length) || length !== expectedLength) {
10953
- throw new RequestRetryError("Content-Length mismatch", statusCode, {
10954
- headers,
10955
- data: { count: retryCount }
10956
- });
10957
- }
10958
- }
10959
10735
  var RetryHandler = class _RetryHandler {
10960
10736
  constructor(opts, { dispatch, handler }) {
10961
10737
  const { retryOptions, ...dispatchOpts } = opts;
@@ -11124,7 +10900,6 @@ var require_retry_handler = __commonJS({
11124
10900
  data: { count: this.retryCount }
11125
10901
  });
11126
10902
  }
11127
- validatePartialResponseContentLength(headers, contentRange, statusCode, this.retryCount);
11128
10903
  const { start, size, end = size ? size - 1 : null } = contentRange;
11129
10904
  assert(this.start === start, "content-range mismatch");
11130
10905
  assert(this.end == null || this.end === end, "content-range mismatch");
@@ -11143,7 +10918,6 @@ var require_retry_handler = __commonJS({
11143
10918
  );
11144
10919
  return;
11145
10920
  }
11146
- validatePartialResponseContentLength(headers, range, statusCode, this.retryCount);
11147
10921
  const { start, size, end = size ? size - 1 : null } = range;
11148
10922
  assert(
11149
10923
  start != null && Number.isFinite(start),
@@ -11250,9 +11024,9 @@ var require_retry_handler = __commonJS({
11250
11024
  }
11251
11025
  });
11252
11026
 
11253
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/retry-agent.js
11027
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/retry-agent.js
11254
11028
  var require_retry_agent = __commonJS({
11255
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/retry-agent.js"(exports, module) {
11029
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/retry-agent.js"(exports, module) {
11256
11030
  "use strict";
11257
11031
  var Dispatcher2 = require_dispatcher();
11258
11032
  var RetryHandler = require_retry_handler();
@@ -11285,9 +11059,9 @@ var require_retry_agent = __commonJS({
11285
11059
  }
11286
11060
  });
11287
11061
 
11288
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/h2c-client.js
11062
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/h2c-client.js
11289
11063
  var require_h2c_client = __commonJS({
11290
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/dispatcher/h2c-client.js"(exports, module) {
11064
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/dispatcher/h2c-client.js"(exports, module) {
11291
11065
  "use strict";
11292
11066
  var { InvalidArgumentError } = require_errors();
11293
11067
  var Client = require_client();
@@ -11301,7 +11075,7 @@ var require_h2c_client = __commonJS({
11301
11075
  "h2c-client: Only h2c protocol is supported"
11302
11076
  );
11303
11077
  }
11304
- const { maxConcurrentStreams, pipelining, ...opts } = clientOpts ?? {};
11078
+ const { connect, maxConcurrentStreams, pipelining, ...opts } = clientOpts ?? {};
11305
11079
  let defaultMaxConcurrentStreams = 100;
11306
11080
  let defaultPipelining = 100;
11307
11081
  if (maxConcurrentStreams != null && Number.isInteger(maxConcurrentStreams) && maxConcurrentStreams > 0) {
@@ -11328,9 +11102,9 @@ var require_h2c_client = __commonJS({
11328
11102
  }
11329
11103
  });
11330
11104
 
11331
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/readable.js
11105
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/readable.js
11332
11106
  var require_readable = __commonJS({
11333
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/readable.js"(exports, module) {
11107
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/readable.js"(exports, module) {
11334
11108
  "use strict";
11335
11109
  var assert = __require("node:assert");
11336
11110
  var { Readable } = __require("node:stream");
@@ -11730,9 +11504,9 @@ var require_readable = __commonJS({
11730
11504
  }
11731
11505
  });
11732
11506
 
11733
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-request.js
11507
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-request.js
11734
11508
  var require_api_request = __commonJS({
11735
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-request.js"(exports, module) {
11509
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-request.js"(exports, module) {
11736
11510
  "use strict";
11737
11511
  var assert = __require("node:assert");
11738
11512
  var { AsyncResource } = __require("node:async_hooks");
@@ -11751,7 +11525,7 @@ var require_api_request = __commonJS({
11751
11525
  if (typeof callback !== "function") {
11752
11526
  throw new InvalidArgumentError("invalid callback");
11753
11527
  }
11754
- if (highWaterMark != null && (!Number.isFinite(highWaterMark) || highWaterMark < 0)) {
11528
+ if (highWaterMark && (typeof highWaterMark !== "number" || highWaterMark < 0)) {
11755
11529
  throw new InvalidArgumentError("invalid highWaterMark");
11756
11530
  }
11757
11531
  if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
@@ -11908,9 +11682,9 @@ var require_api_request = __commonJS({
11908
11682
  }
11909
11683
  });
11910
11684
 
11911
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/abort-signal.js
11685
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/abort-signal.js
11912
11686
  var require_abort_signal = __commonJS({
11913
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/abort-signal.js"(exports, module) {
11687
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/abort-signal.js"(exports, module) {
11914
11688
  "use strict";
11915
11689
  var { addAbortListener } = require_util();
11916
11690
  var { RequestAbortedError } = require_errors();
@@ -11960,9 +11734,9 @@ var require_abort_signal = __commonJS({
11960
11734
  }
11961
11735
  });
11962
11736
 
11963
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-stream.js
11737
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-stream.js
11964
11738
  var require_api_stream = __commonJS({
11965
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-stream.js"(exports, module) {
11739
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-stream.js"(exports, module) {
11966
11740
  "use strict";
11967
11741
  var assert = __require("node:assert");
11968
11742
  var { finished } = __require("node:stream");
@@ -12121,9 +11895,9 @@ var require_api_stream = __commonJS({
12121
11895
  }
12122
11896
  });
12123
11897
 
12124
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-pipeline.js
11898
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-pipeline.js
12125
11899
  var require_api_pipeline = __commonJS({
12126
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-pipeline.js"(exports, module) {
11900
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-pipeline.js"(exports, module) {
12127
11901
  "use strict";
12128
11902
  var {
12129
11903
  Readable,
@@ -12322,9 +12096,9 @@ var require_api_pipeline = __commonJS({
12322
12096
  }
12323
12097
  });
12324
12098
 
12325
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-upgrade.js
12099
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-upgrade.js
12326
12100
  var require_api_upgrade = __commonJS({
12327
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-upgrade.js"(exports, module) {
12101
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-upgrade.js"(exports, module) {
12328
12102
  "use strict";
12329
12103
  var { InvalidArgumentError, SocketError } = require_errors();
12330
12104
  var { AsyncResource } = __require("node:async_hooks");
@@ -12416,9 +12190,9 @@ var require_api_upgrade = __commonJS({
12416
12190
  }
12417
12191
  });
12418
12192
 
12419
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-connect.js
12193
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-connect.js
12420
12194
  var require_api_connect = __commonJS({
12421
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/api-connect.js"(exports, module) {
12195
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/api-connect.js"(exports, module) {
12422
12196
  "use strict";
12423
12197
  var assert = __require("node:assert");
12424
12198
  var { AsyncResource } = __require("node:async_hooks");
@@ -12507,9 +12281,9 @@ var require_api_connect = __commonJS({
12507
12281
  }
12508
12282
  });
12509
12283
 
12510
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/index.js
12284
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/index.js
12511
12285
  var require_api = __commonJS({
12512
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/api/index.js"(exports, module) {
12286
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/api/index.js"(exports, module) {
12513
12287
  "use strict";
12514
12288
  module.exports.request = require_api_request();
12515
12289
  module.exports.stream = require_api_stream();
@@ -12519,9 +12293,9 @@ var require_api = __commonJS({
12519
12293
  }
12520
12294
  });
12521
12295
 
12522
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-errors.js
12296
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-errors.js
12523
12297
  var require_mock_errors = __commonJS({
12524
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-errors.js"(exports, module) {
12298
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-errors.js"(exports, module) {
12525
12299
  "use strict";
12526
12300
  var { UndiciError } = require_errors();
12527
12301
  var kMockNotMatchedError = /* @__PURE__ */ Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");
@@ -12545,9 +12319,9 @@ var require_mock_errors = __commonJS({
12545
12319
  }
12546
12320
  });
12547
12321
 
12548
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-symbols.js
12322
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-symbols.js
12549
12323
  var require_mock_symbols = __commonJS({
12550
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-symbols.js"(exports, module) {
12324
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-symbols.js"(exports, module) {
12551
12325
  "use strict";
12552
12326
  module.exports = {
12553
12327
  kAgent: /* @__PURE__ */ Symbol("agent"),
@@ -12582,9 +12356,9 @@ var require_mock_symbols = __commonJS({
12582
12356
  }
12583
12357
  });
12584
12358
 
12585
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-utils.js
12359
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-utils.js
12586
12360
  var require_mock_utils = __commonJS({
12587
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-utils.js"(exports, module) {
12361
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-utils.js"(exports, module) {
12588
12362
  "use strict";
12589
12363
  var { MockNotMatchedError } = require_mock_errors();
12590
12364
  var {
@@ -12959,9 +12733,9 @@ var require_mock_utils = __commonJS({
12959
12733
  }
12960
12734
  });
12961
12735
 
12962
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-interceptor.js
12736
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-interceptor.js
12963
12737
  var require_mock_interceptor = __commonJS({
12964
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-interceptor.js"(exports, module) {
12738
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-interceptor.js"(exports, module) {
12965
12739
  "use strict";
12966
12740
  var { getResponseData, buildKey, addMockDispatch } = require_mock_utils();
12967
12741
  var {
@@ -13123,9 +12897,9 @@ var require_mock_interceptor = __commonJS({
13123
12897
  }
13124
12898
  });
13125
12899
 
13126
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-client.js
12900
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-client.js
13127
12901
  var require_mock_client = __commonJS({
13128
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-client.js"(exports, module) {
12902
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-client.js"(exports, module) {
13129
12903
  "use strict";
13130
12904
  var { promisify } = __require("node:util");
13131
12905
  var Client = require_client();
@@ -13184,19 +12958,19 @@ var require_mock_client = __commonJS({
13184
12958
  }
13185
12959
  });
13186
12960
 
13187
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-call-history.js
12961
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-call-history.js
13188
12962
  var require_mock_call_history = __commonJS({
13189
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-call-history.js"(exports, module) {
12963
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-call-history.js"(exports, module) {
13190
12964
  "use strict";
13191
12965
  var { kMockCallHistoryAddLog } = require_mock_symbols();
13192
12966
  var { InvalidArgumentError } = require_errors();
13193
- function handleFilterCallsWithOptions(criteria, options, handler, store, allLogs) {
12967
+ function handleFilterCallsWithOptions(criteria, options, handler, store) {
13194
12968
  switch (options.operator) {
13195
12969
  case "OR":
13196
- store.push(...handler(criteria, allLogs));
12970
+ store.push(...handler(criteria));
13197
12971
  return store;
13198
12972
  case "AND":
13199
- return handler(criteria, store);
12973
+ return handler.call({ logs: store }, criteria);
13200
12974
  default:
13201
12975
  throw new InvalidArgumentError("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");
13202
12976
  }
@@ -13215,14 +12989,14 @@ var require_mock_call_history = __commonJS({
13215
12989
  return finalOptions;
13216
12990
  }
13217
12991
  function makeFilterCalls(parameterName) {
13218
- return (parameterValue, logs) => {
12992
+ return (parameterValue) => {
13219
12993
  if (typeof parameterValue === "string" || parameterValue == null) {
13220
- return logs.filter((log) => {
12994
+ return this.logs.filter((log) => {
13221
12995
  return log[parameterName] === parameterValue;
13222
12996
  });
13223
12997
  }
13224
12998
  if (parameterValue instanceof RegExp) {
13225
- return logs.filter((log) => {
12999
+ return this.logs.filter((log) => {
13226
13000
  return parameterValue.test(log[parameterName]);
13227
13001
  });
13228
13002
  }
@@ -13327,30 +13101,30 @@ var require_mock_call_history = __commonJS({
13327
13101
  return this.logs;
13328
13102
  }
13329
13103
  const finalOptions = { operator: "OR", ...buildAndValidateFilterCallsOptions(options) };
13330
- let maybeDuplicatedLogsFiltered = finalOptions.operator === "AND" ? this.logs : [];
13104
+ let maybeDuplicatedLogsFiltered = [];
13331
13105
  if ("protocol" in criteria) {
13332
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.protocol, finalOptions, this.filterCallsByProtocol, maybeDuplicatedLogsFiltered, this.logs);
13106
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.protocol, finalOptions, this.filterCallsByProtocol, maybeDuplicatedLogsFiltered);
13333
13107
  }
13334
13108
  if ("host" in criteria) {
13335
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.host, finalOptions, this.filterCallsByHost, maybeDuplicatedLogsFiltered, this.logs);
13109
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.host, finalOptions, this.filterCallsByHost, maybeDuplicatedLogsFiltered);
13336
13110
  }
13337
13111
  if ("port" in criteria) {
13338
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.port, finalOptions, this.filterCallsByPort, maybeDuplicatedLogsFiltered, this.logs);
13112
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.port, finalOptions, this.filterCallsByPort, maybeDuplicatedLogsFiltered);
13339
13113
  }
13340
13114
  if ("origin" in criteria) {
13341
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.origin, finalOptions, this.filterCallsByOrigin, maybeDuplicatedLogsFiltered, this.logs);
13115
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.origin, finalOptions, this.filterCallsByOrigin, maybeDuplicatedLogsFiltered);
13342
13116
  }
13343
13117
  if ("path" in criteria) {
13344
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.path, finalOptions, this.filterCallsByPath, maybeDuplicatedLogsFiltered, this.logs);
13118
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.path, finalOptions, this.filterCallsByPath, maybeDuplicatedLogsFiltered);
13345
13119
  }
13346
13120
  if ("hash" in criteria) {
13347
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.hash, finalOptions, this.filterCallsByHash, maybeDuplicatedLogsFiltered, this.logs);
13121
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.hash, finalOptions, this.filterCallsByHash, maybeDuplicatedLogsFiltered);
13348
13122
  }
13349
13123
  if ("fullUrl" in criteria) {
13350
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.fullUrl, finalOptions, this.filterCallsByFullUrl, maybeDuplicatedLogsFiltered, this.logs);
13124
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.fullUrl, finalOptions, this.filterCallsByFullUrl, maybeDuplicatedLogsFiltered);
13351
13125
  }
13352
13126
  if ("method" in criteria) {
13353
- maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.method, finalOptions, this.filterCallsByMethod, maybeDuplicatedLogsFiltered, this.logs);
13127
+ maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.method, finalOptions, this.filterCallsByMethod, maybeDuplicatedLogsFiltered);
13354
13128
  }
13355
13129
  const uniqLogsFiltered = [...new Set(maybeDuplicatedLogsFiltered)];
13356
13130
  return uniqLogsFiltered;
@@ -13384,9 +13158,9 @@ var require_mock_call_history = __commonJS({
13384
13158
  }
13385
13159
  });
13386
13160
 
13387
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-pool.js
13161
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-pool.js
13388
13162
  var require_mock_pool = __commonJS({
13389
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-pool.js"(exports, module) {
13163
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-pool.js"(exports, module) {
13390
13164
  "use strict";
13391
13165
  var { promisify } = __require("node:util");
13392
13166
  var Pool = require_pool();
@@ -13445,9 +13219,9 @@ var require_mock_pool = __commonJS({
13445
13219
  }
13446
13220
  });
13447
13221
 
13448
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/pending-interceptors-formatter.js
13222
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/pending-interceptors-formatter.js
13449
13223
  var require_pending_interceptors_formatter = __commonJS({
13450
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/pending-interceptors-formatter.js"(exports, module) {
13224
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/pending-interceptors-formatter.js"(exports, module) {
13451
13225
  "use strict";
13452
13226
  var { Transform } = __require("node:stream");
13453
13227
  var { Console } = __require("node:console");
@@ -13486,9 +13260,9 @@ var require_pending_interceptors_formatter = __commonJS({
13486
13260
  }
13487
13261
  });
13488
13262
 
13489
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-agent.js
13263
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-agent.js
13490
13264
  var require_mock_agent = __commonJS({
13491
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/mock-agent.js"(exports, module) {
13265
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/mock-agent.js"(exports, module) {
13492
13266
  "use strict";
13493
13267
  var { kClients } = require_symbols();
13494
13268
  var Agent = require_agent();
@@ -13670,9 +13444,9 @@ ${pendingInterceptorsFormatter.format(pending)}`.trim()
13670
13444
  }
13671
13445
  });
13672
13446
 
13673
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-utils.js
13447
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-utils.js
13674
13448
  var require_snapshot_utils = __commonJS({
13675
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-utils.js"(exports, module) {
13449
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-utils.js"(exports, module) {
13676
13450
  "use strict";
13677
13451
  var { InvalidArgumentError } = require_errors();
13678
13452
  var { runtimeFeatures } = require_runtime_features();
@@ -13756,9 +13530,9 @@ var require_snapshot_utils = __commonJS({
13756
13530
  }
13757
13531
  });
13758
13532
 
13759
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-recorder.js
13533
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-recorder.js
13760
13534
  var require_snapshot_recorder = __commonJS({
13761
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-recorder.js"(exports, module) {
13535
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-recorder.js"(exports, module) {
13762
13536
  "use strict";
13763
13537
  var { writeFile, readFile: readFile4, mkdir: mkdir4 } = __require("node:fs/promises");
13764
13538
  var { dirname: dirname4, resolve: resolve6 } = __require("node:path");
@@ -14132,9 +13906,9 @@ var require_snapshot_recorder = __commonJS({
14132
13906
  }
14133
13907
  });
14134
13908
 
14135
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-agent.js
13909
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-agent.js
14136
13910
  var require_snapshot_agent = __commonJS({
14137
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-agent.js"(exports, module) {
13911
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/mock/snapshot-agent.js"(exports, module) {
14138
13912
  "use strict";
14139
13913
  var Agent = require_agent();
14140
13914
  var MockAgent = require_mock_agent();
@@ -14419,12 +14193,11 @@ var require_snapshot_agent = __commonJS({
14419
14193
  }
14420
14194
  });
14421
14195
 
14422
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/global.js
14196
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/global.js
14423
14197
  var require_global2 = __commonJS({
14424
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/global.js"(exports, module) {
14198
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/global.js"(exports, module) {
14425
14199
  "use strict";
14426
- var globalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.2");
14427
- var legacyGlobalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.1");
14200
+ var globalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.1");
14428
14201
  var { InvalidArgumentError } = require_errors();
14429
14202
  var Agent = require_agent();
14430
14203
  if (getGlobalDispatcher2() === void 0) {
@@ -14440,15 +14213,9 @@ var require_global2 = __commonJS({
14440
14213
  enumerable: false,
14441
14214
  configurable: false
14442
14215
  });
14443
- Object.defineProperty(globalThis, legacyGlobalDispatcher, {
14444
- value: agent,
14445
- writable: true,
14446
- enumerable: false,
14447
- configurable: false
14448
- });
14449
14216
  }
14450
14217
  function getGlobalDispatcher2() {
14451
- return globalThis[legacyGlobalDispatcher];
14218
+ return globalThis[globalDispatcher];
14452
14219
  }
14453
14220
  var installedExports = (
14454
14221
  /** @type {const} */
@@ -14473,9 +14240,9 @@ var require_global2 = __commonJS({
14473
14240
  }
14474
14241
  });
14475
14242
 
14476
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/decorator-handler.js
14243
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/decorator-handler.js
14477
14244
  var require_decorator_handler = __commonJS({
14478
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/decorator-handler.js"(exports, module) {
14245
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/decorator-handler.js"(exports, module) {
14479
14246
  "use strict";
14480
14247
  var assert = __require("node:assert");
14481
14248
  var WrapHandler = require_wrap_handler();
@@ -14529,9 +14296,9 @@ var require_decorator_handler = __commonJS({
14529
14296
  }
14530
14297
  });
14531
14298
 
14532
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/redirect-handler.js
14299
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/redirect-handler.js
14533
14300
  var require_redirect_handler = __commonJS({
14534
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/redirect-handler.js"(exports, module) {
14301
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/redirect-handler.js"(exports, module) {
14535
14302
  "use strict";
14536
14303
  var util = require_util();
14537
14304
  var { kBodyUsed } = require_symbols();
@@ -14689,9 +14456,9 @@ var require_redirect_handler = __commonJS({
14689
14456
  }
14690
14457
  });
14691
14458
 
14692
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/redirect.js
14459
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/redirect.js
14693
14460
  var require_redirect = __commonJS({
14694
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/redirect.js"(exports, module) {
14461
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/redirect.js"(exports, module) {
14695
14462
  "use strict";
14696
14463
  var RedirectHandler = require_redirect_handler();
14697
14464
  function createRedirectInterceptor({ maxRedirections: defaultMaxRedirections } = {}) {
@@ -14711,9 +14478,9 @@ var require_redirect = __commonJS({
14711
14478
  }
14712
14479
  });
14713
14480
 
14714
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/response-error.js
14481
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/response-error.js
14715
14482
  var require_response_error = __commonJS({
14716
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/response-error.js"(exports, module) {
14483
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/response-error.js"(exports, module) {
14717
14484
  "use strict";
14718
14485
  var DecoratorHandler = require_decorator_handler();
14719
14486
  var { ResponseError } = require_errors();
@@ -14793,9 +14560,9 @@ var require_response_error = __commonJS({
14793
14560
  }
14794
14561
  });
14795
14562
 
14796
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/retry.js
14563
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/retry.js
14797
14564
  var require_retry = __commonJS({
14798
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/retry.js"(exports, module) {
14565
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/retry.js"(exports, module) {
14799
14566
  "use strict";
14800
14567
  var RetryHandler = require_retry_handler();
14801
14568
  module.exports = (globalOpts) => {
@@ -14817,9 +14584,9 @@ var require_retry = __commonJS({
14817
14584
  }
14818
14585
  });
14819
14586
 
14820
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/dump.js
14587
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/dump.js
14821
14588
  var require_dump = __commonJS({
14822
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/dump.js"(exports, module) {
14589
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/dump.js"(exports, module) {
14823
14590
  "use strict";
14824
14591
  var { InvalidArgumentError, RequestAbortedError } = require_errors();
14825
14592
  var DecoratorHandler = require_decorator_handler();
@@ -14903,9 +14670,9 @@ var require_dump = __commonJS({
14903
14670
  }
14904
14671
  });
14905
14672
 
14906
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/dns.js
14673
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/dns.js
14907
14674
  var require_dns = __commonJS({
14908
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/dns.js"(exports, module) {
14675
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/dns.js"(exports, module) {
14909
14676
  "use strict";
14910
14677
  var { isIP } = __require("node:net");
14911
14678
  var { lookup } = __require("node:dns");
@@ -15342,134 +15109,22 @@ var require_dns = __commonJS({
15342
15109
  }
15343
15110
  });
15344
15111
 
15345
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/cache.js
15112
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/cache.js
15346
15113
  var require_cache = __commonJS({
15347
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/cache.js"(exports, module) {
15114
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/cache.js"(exports, module) {
15348
15115
  "use strict";
15349
15116
  var {
15350
15117
  safeHTTPMethods,
15351
15118
  pathHasQueryOrFragment,
15352
- hasSafeIterator,
15353
- isValidHTTPToken
15119
+ hasSafeIterator
15354
15120
  } = require_util();
15355
15121
  var { serializePathWithQuery } = require_util();
15356
- var MAX_DELTA_SECONDS = 2147483647;
15357
- var RESTRICTIVE_DIRECTIVE_NAMES = ["no-store", "private", "no-cache"];
15358
- var kInvalidCacheControlDirectives = /* @__PURE__ */ Symbol("invalid cache-control directives");
15359
- function trimOWS(value) {
15360
- return value.replace(/^[\t ]+|[\t ]+$/g, "");
15361
- }
15362
- function arrayIncludes(array, value) {
15363
- for (let i = 0; i < array.length; i++) {
15364
- if (array[i] === value) {
15365
- return true;
15366
- }
15367
- }
15368
- return false;
15369
- }
15370
- function trimOWSStart(value) {
15371
- return value.replace(/^[\t ]+/, "");
15372
- }
15373
- function trimOWSEnd(value) {
15374
- return value.replace(/[\t ]+$/, "");
15375
- }
15376
- function findUnescapedQuote(value, start) {
15377
- let escaped = false;
15378
- for (let i = start; i < value.length; i++) {
15379
- if (escaped) {
15380
- escaped = false;
15381
- } else if (value[i] === "\\") {
15382
- escaped = true;
15383
- } else if (value[i] === '"') {
15384
- return i;
15385
- }
15386
- }
15387
- return -1;
15388
- }
15389
- function splitCacheControlHeaderValue(value) {
15390
- const directives = [];
15391
- let start = 0;
15392
- let quoteStart = -1;
15393
- let inQuote = false;
15394
- let escaped = false;
15395
- for (let i = 0; i < value.length; i++) {
15396
- if (inQuote) {
15397
- if (escaped) {
15398
- escaped = false;
15399
- } else if (value[i] === "\\") {
15400
- escaped = true;
15401
- } else if (value[i] === '"') {
15402
- inQuote = false;
15403
- quoteStart = -1;
15404
- }
15405
- } else if (value[i] === '"') {
15406
- inQuote = true;
15407
- quoteStart = i;
15408
- } else if (value[i] === ",") {
15409
- directives.push({ value: value.substring(start, i), fromMalformedQuote: false });
15410
- start = i + 1;
15411
- }
15412
- }
15413
- if (!inQuote) {
15414
- directives.push({ value: value.substring(start), fromMalformedQuote: false });
15415
- return directives;
15416
- }
15417
- const tail = value.substring(start);
15418
- const quoteOffset = quoteStart - start;
15419
- let tailStart = 0;
15420
- for (let i = 0; i < tail.length; i++) {
15421
- if (tail[i] === ",") {
15422
- directives.push({
15423
- value: tail.substring(tailStart, i),
15424
- fromMalformedQuote: tailStart > quoteOffset
15425
- });
15426
- tailStart = i + 1;
15427
- }
15428
- }
15429
- directives.push({
15430
- value: tail.substring(tailStart),
15431
- fromMalformedQuote: tailStart > quoteOffset
15432
- });
15433
- return directives;
15434
- }
15435
- function markInvalidCacheControlDirective(directives, key) {
15436
- let invalidDirectives = directives[kInvalidCacheControlDirectives];
15437
- if (invalidDirectives === void 0) {
15438
- invalidDirectives = /* @__PURE__ */ new Set();
15439
- Object.defineProperty(directives, kInvalidCacheControlDirectives, {
15440
- value: invalidDirectives
15441
- });
15442
- }
15443
- invalidDirectives.add(key);
15444
- }
15445
- function hasInvalidCacheControlDirective(directives, key) {
15446
- return directives[kInvalidCacheControlDirectives]?.has(key) === true;
15447
- }
15448
- function getMalformedRestrictiveDirectiveName(key) {
15449
- for (const directiveName of RESTRICTIVE_DIRECTIVE_NAMES) {
15450
- if (key.startsWith(directiveName) && key.length > directiveName.length && !isValidHTTPToken(key[directiveName.length])) {
15451
- return directiveName;
15452
- }
15453
- }
15454
- let tokenOnlyKey = "";
15455
- let hasInvalidTokenChar = false;
15456
- for (let i = 0; i < key.length; i++) {
15457
- if (isValidHTTPToken(key[i])) {
15458
- tokenOnlyKey += key[i];
15459
- } else {
15460
- hasInvalidTokenChar = true;
15461
- }
15462
- }
15463
- if (hasInvalidTokenChar && arrayIncludes(RESTRICTIVE_DIRECTIVE_NAMES, tokenOnlyKey)) {
15464
- return tokenOnlyKey;
15465
- }
15466
- }
15467
15122
  function makeCacheKey(opts) {
15468
15123
  if (!opts.origin) {
15469
15124
  throw new Error("opts.origin is undefined");
15470
15125
  }
15471
15126
  let fullPath = opts.path || "/";
15472
- if (opts.query && !pathHasQueryOrFragment(fullPath)) {
15127
+ if (opts.query && !pathHasQueryOrFragment(opts.path)) {
15473
15128
  fullPath = serializePathWithQuery(fullPath, opts.query);
15474
15129
  }
15475
15130
  return {
@@ -15479,18 +15134,6 @@ var require_cache = __commonJS({
15479
15134
  headers: opts.headers
15480
15135
  };
15481
15136
  }
15482
- function appendHeader(headers, key, val) {
15483
- const headerName = key.toLowerCase();
15484
- const current = headers[headerName];
15485
- const values = Array.isArray(val) ? val : [val];
15486
- if (current === void 0) {
15487
- headers[headerName] = Array.isArray(val) ? val.slice() : val;
15488
- } else if (Array.isArray(current)) {
15489
- current.push(...values);
15490
- } else {
15491
- headers[headerName] = [current, ...values];
15492
- }
15493
- }
15494
15137
  function normalizeHeaders(opts) {
15495
15138
  let headers;
15496
15139
  if (opts.headers == null) {
@@ -15506,11 +15149,11 @@ var require_cache = __commonJS({
15506
15149
  if (typeof key !== "string" || typeof val !== "string") {
15507
15150
  throw new Error("opts.headers is not a valid header map");
15508
15151
  }
15509
- appendHeader(headers, key, val);
15152
+ headers[key.toLowerCase()] = val;
15510
15153
  }
15511
15154
  } else {
15512
15155
  for (const key of Object.keys(opts.headers)) {
15513
- appendHeader(headers, key, opts.headers[key]);
15156
+ headers[key.toLowerCase()] = opts.headers[key];
15514
15157
  }
15515
15158
  }
15516
15159
  } else {
@@ -15555,32 +15198,25 @@ var require_cache = __commonJS({
15555
15198
  }
15556
15199
  function parseCacheControlHeader(header) {
15557
15200
  const output = {};
15558
- const invalidNumericDirectives = /* @__PURE__ */ new Set();
15559
- const invalidNoArgumentDirectives = /* @__PURE__ */ new Set();
15560
- const directives = splitCacheControlHeaderValue(Array.isArray(header) ? header.join(",") : header);
15201
+ let directives;
15202
+ if (Array.isArray(header)) {
15203
+ directives = [];
15204
+ for (const directive of header) {
15205
+ directives.push(...directive.split(","));
15206
+ }
15207
+ } else {
15208
+ directives = header.split(",");
15209
+ }
15561
15210
  for (let i = 0; i < directives.length; i++) {
15562
- const directiveRecord = directives[i];
15563
- const directive = directiveRecord.value.toLowerCase();
15564
- const fromMalformedQuote = directiveRecord.fromMalformedQuote;
15211
+ const directive = directives[i].toLowerCase();
15565
15212
  const keyValueDelimiter = directive.indexOf("=");
15566
15213
  let key;
15567
15214
  let value;
15568
- let keyHasTrailingWhitespace = false;
15569
- let valueHasLeadingWhitespace = false;
15570
15215
  if (keyValueDelimiter !== -1) {
15571
- const rawKey = directive.substring(0, keyValueDelimiter);
15572
- const rawValue = directive.substring(keyValueDelimiter + 1);
15573
- keyHasTrailingWhitespace = trimOWSEnd(rawKey) !== rawKey;
15574
- valueHasLeadingWhitespace = trimOWSStart(rawValue) !== rawValue;
15575
- key = trimOWS(rawKey);
15576
- value = trimOWSStart(rawValue);
15216
+ key = directive.substring(0, keyValueDelimiter).trimStart();
15217
+ value = directive.substring(keyValueDelimiter + 1);
15577
15218
  } else {
15578
- key = trimOWS(directive);
15579
- }
15580
- const malformedRestrictiveDirectiveName = getMalformedRestrictiveDirectiveName(key);
15581
- if (malformedRestrictiveDirectiveName !== void 0) {
15582
- output[malformedRestrictiveDirectiveName] = true;
15583
- continue;
15219
+ key = directive.trim();
15584
15220
  }
15585
15221
  switch (key) {
15586
15222
  case "min-fresh":
@@ -15589,85 +15225,45 @@ var require_cache = __commonJS({
15589
15225
  case "s-maxage":
15590
15226
  case "stale-while-revalidate":
15591
15227
  case "stale-if-error": {
15592
- if (fromMalformedQuote || invalidNumericDirectives.has(key)) {
15593
- continue;
15594
- }
15595
- if (value === void 0 || keyHasTrailingWhitespace || valueHasLeadingWhitespace) {
15596
- delete output[key];
15597
- invalidNumericDirectives.add(key);
15598
- markInvalidCacheControlDirective(output, key);
15228
+ if (value === void 0 || value[0] === " ") {
15599
15229
  continue;
15600
15230
  }
15601
15231
  if (value.length >= 2 && value[0] === '"' && value[value.length - 1] === '"') {
15602
15232
  value = value.substring(1, value.length - 1);
15603
15233
  }
15604
- if (!/^[0-9]+$/.test(value)) {
15605
- delete output[key];
15606
- invalidNumericDirectives.add(key);
15607
- markInvalidCacheControlDirective(output, key);
15234
+ const parsedValue = parseInt(value, 10);
15235
+ if (parsedValue !== parsedValue) {
15608
15236
  continue;
15609
15237
  }
15610
- const parsedValue = Math.min(parseInt(value, 10), MAX_DELTA_SECONDS);
15611
- if (key === "min-fresh") {
15612
- if (!(key in output) || output[key] < parsedValue) {
15613
- output[key] = parsedValue;
15614
- }
15615
- } else if (!(key in output) || output[key] > parsedValue) {
15616
- output[key] = parsedValue;
15238
+ if (key === "max-age" && key in output && output[key] >= parsedValue) {
15239
+ continue;
15617
15240
  }
15241
+ output[key] = parsedValue;
15618
15242
  break;
15619
15243
  }
15620
15244
  case "private":
15621
15245
  case "no-cache": {
15622
- if (fromMalformedQuote) {
15623
- output[key] = true;
15624
- break;
15625
- }
15626
- if (value !== void 0 && value.length === 0) {
15627
- output[key] = true;
15628
- break;
15629
- }
15630
15246
  if (value) {
15631
15247
  if (value[0] === '"') {
15632
- value = trimOWSEnd(value);
15633
- let fieldList = "";
15634
- let lastQuotedPart = i;
15635
- let foundEndingQuote = false;
15636
- const closingQuote = findUnescapedQuote(value, 1);
15637
- if (closingQuote !== -1) {
15638
- fieldList = value.substring(1, closingQuote);
15639
- foundEndingQuote = true;
15640
- } else {
15641
- const fieldListParts = [value.substring(1)];
15248
+ const headers = [value.substring(1)];
15249
+ let foundEndingQuote = value[value.length - 1] === '"';
15250
+ if (!foundEndingQuote) {
15642
15251
  for (let j = i + 1; j < directives.length; j++) {
15643
- const nextPart = trimOWS(directives[j].value);
15644
- const closingQuote2 = findUnescapedQuote(nextPart, 0);
15645
- lastQuotedPart = j;
15646
- if (closingQuote2 !== -1) {
15647
- fieldListParts.push(nextPart.substring(0, closingQuote2));
15252
+ const nextPart = directives[j];
15253
+ const nextPartLength = nextPart.length;
15254
+ headers.push(nextPart.trim());
15255
+ if (nextPartLength !== 0 && nextPart[nextPartLength - 1] === '"') {
15648
15256
  foundEndingQuote = true;
15649
15257
  break;
15650
15258
  }
15651
- fieldListParts.push(nextPart);
15652
15259
  }
15653
- fieldList = fieldListParts.join(",");
15654
- }
15655
- if (!foundEndingQuote) {
15656
- output[key] = true;
15657
- break;
15658
15260
  }
15659
- i = lastQuotedPart;
15660
- const headers = fieldList.split(",");
15661
- let validFieldNames = true;
15662
- for (let j = 0; j < headers.length; j++) {
15663
- headers[j] = trimOWS(headers[j]);
15664
- if (!isValidHTTPToken(headers[j])) {
15665
- validFieldNames = false;
15261
+ if (foundEndingQuote) {
15262
+ let lastHeader = headers[headers.length - 1];
15263
+ if (lastHeader[lastHeader.length - 1] === '"') {
15264
+ lastHeader = lastHeader.substring(0, lastHeader.length - 1);
15265
+ headers[headers.length - 1] = lastHeader;
15666
15266
  }
15667
- }
15668
- if (!validFieldNames) {
15669
- output[key] = true;
15670
- } else if (output[key] !== true) {
15671
15267
  if (key in output) {
15672
15268
  output[key] = output[key].concat(headers);
15673
15269
  } else {
@@ -15675,15 +15271,10 @@ var require_cache = __commonJS({
15675
15271
  }
15676
15272
  }
15677
15273
  } else {
15678
- const fieldName = trimOWS(value);
15679
- if (!isValidHTTPToken(fieldName)) {
15680
- output[key] = true;
15681
- } else if (output[key] !== true) {
15682
- if (key in output) {
15683
- output[key] = output[key].concat(fieldName);
15684
- } else {
15685
- output[key] = [fieldName];
15686
- }
15274
+ if (key in output) {
15275
+ output[key] = output[key].concat(value);
15276
+ } else {
15277
+ output[key] = [value];
15687
15278
  }
15688
15279
  }
15689
15280
  break;
@@ -15691,76 +15282,39 @@ var require_cache = __commonJS({
15691
15282
  }
15692
15283
  // eslint-disable-next-line no-fallthrough
15693
15284
  case "public":
15285
+ case "no-store":
15694
15286
  case "must-revalidate":
15695
15287
  case "proxy-revalidate":
15696
15288
  case "immutable":
15697
15289
  case "no-transform":
15698
15290
  case "must-understand":
15699
15291
  case "only-if-cached":
15700
- if (fromMalformedQuote || invalidNoArgumentDirectives.has(key)) {
15701
- continue;
15702
- }
15703
- if (value !== void 0) {
15704
- delete output[key];
15705
- invalidNoArgumentDirectives.add(key);
15292
+ if (value) {
15706
15293
  continue;
15707
15294
  }
15708
15295
  output[key] = true;
15709
15296
  break;
15710
- case "no-store":
15711
- output[key] = true;
15712
- break;
15713
15297
  default:
15714
15298
  continue;
15715
15299
  }
15716
15300
  }
15717
15301
  return output;
15718
15302
  }
15719
- function splitVaryHeader(varyHeader) {
15720
- const values = Array.isArray(varyHeader) ? varyHeader : [varyHeader];
15721
- const output = [];
15722
- for (let i = 0; i < values.length; i++) {
15723
- const parts = values[i].split(",");
15724
- for (let j = 0; j < parts.length; j++) {
15725
- output.push(parts[j]);
15726
- }
15727
- }
15728
- return output;
15729
- }
15730
- function hasVaryStar(varyHeader) {
15731
- const values = splitVaryHeader(varyHeader);
15732
- for (let i = 0; i < values.length; i++) {
15733
- if (trimOWS(values[i]).indexOf("*") !== -1) {
15734
- return true;
15735
- }
15736
- }
15737
- return false;
15738
- }
15739
15303
  function parseVaryHeader(varyHeader, headers) {
15740
- if (hasVaryStar(varyHeader)) {
15304
+ if (typeof varyHeader === "string" && varyHeader.includes("*")) {
15741
15305
  return headers;
15742
15306
  }
15743
15307
  const output = (
15744
15308
  /** @type {Record<string, string | string[] | null>} */
15745
15309
  {}
15746
15310
  );
15747
- const varyingHeaders = splitVaryHeader(varyHeader);
15311
+ const varyingHeaders = typeof varyHeader === "string" ? varyHeader.split(",") : varyHeader;
15748
15312
  for (const header of varyingHeaders) {
15749
- const trimmedHeader = trimOWS(header).toLowerCase();
15750
- if (trimmedHeader.length === 0) {
15751
- continue;
15752
- }
15753
- if (!isValidHTTPToken(trimmedHeader)) {
15754
- return void 0;
15755
- }
15756
- const headerValue = headers[trimmedHeader];
15757
- output[trimmedHeader] = Array.isArray(headerValue) ? headerValue.slice() : headerValue ?? null;
15313
+ const trimmedHeader = header.trim().toLowerCase();
15314
+ output[trimmedHeader] = headers[trimmedHeader] ?? null;
15758
15315
  }
15759
15316
  return output;
15760
15317
  }
15761
- function isInvalidOrWildcardVaryHeader(varyHeader) {
15762
- return hasVaryStar(varyHeader) || parseVaryHeader(varyHeader, {}) === void 0;
15763
- }
15764
15318
  function isEtagUsable(etag) {
15765
15319
  if (etag.length <= 2) {
15766
15320
  return false;
@@ -15791,23 +15345,24 @@ var require_cache = __commonJS({
15791
15345
  throw new TypeError(`${name} needs to have at least one method`);
15792
15346
  }
15793
15347
  for (const method of methods) {
15794
- if (!arrayIncludes(safeHTTPMethods, method)) {
15348
+ if (!safeHTTPMethods.includes(method)) {
15795
15349
  throw new TypeError(`element of ${name}-array needs to be one of following values: ${safeHTTPMethods.join(", ")}, got ${method}`);
15796
15350
  }
15797
15351
  }
15798
15352
  }
15799
15353
  function makeDeduplicationKey(cacheKey, excludeHeaders) {
15800
- const headers = {};
15354
+ let key = `${cacheKey.origin}:${cacheKey.method}:${cacheKey.path}`;
15801
15355
  if (cacheKey.headers) {
15802
15356
  const sortedHeaders = Object.keys(cacheKey.headers).sort();
15803
15357
  for (const header of sortedHeaders) {
15804
15358
  if (excludeHeaders?.has(header.toLowerCase())) {
15805
15359
  continue;
15806
15360
  }
15807
- headers[header] = cacheKey.headers[header];
15361
+ const value = cacheKey.headers[header];
15362
+ key += `:${header}=${Array.isArray(value) ? value.join(",") : value}`;
15808
15363
  }
15809
15364
  }
15810
- return JSON.stringify([cacheKey.origin, cacheKey.method, cacheKey.path, headers]);
15365
+ return key;
15811
15366
  }
15812
15367
  module.exports = {
15813
15368
  makeCacheKey,
@@ -15815,10 +15370,7 @@ var require_cache = __commonJS({
15815
15370
  assertCacheKey,
15816
15371
  assertCacheValue,
15817
15372
  parseCacheControlHeader,
15818
- hasInvalidCacheControlDirective,
15819
15373
  parseVaryHeader,
15820
- hasVaryStar,
15821
- isInvalidOrWildcardVaryHeader,
15822
15374
  isEtagUsable,
15823
15375
  assertCacheMethods,
15824
15376
  assertCacheStore,
@@ -15827,9 +15379,9 @@ var require_cache = __commonJS({
15827
15379
  }
15828
15380
  });
15829
15381
 
15830
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/date.js
15382
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/date.js
15831
15383
  var require_date = __commonJS({
15832
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/util/date.js"(exports, module) {
15384
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/util/date.js"(exports, module) {
15833
15385
  "use strict";
15834
15386
  function parseHttpDate(date) {
15835
15387
  switch (date[3]) {
@@ -15841,13 +15393,6 @@ var require_date = __commonJS({
15841
15393
  return parseRfc850Date(date);
15842
15394
  }
15843
15395
  }
15844
- function makeDate(year, monthIdx, day, hour, minute, second, weekday) {
15845
- const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
15846
- if (year >= 0 && year <= 99) {
15847
- result.setUTCFullYear(year);
15848
- }
15849
- return result.getUTCFullYear() === year && result.getUTCMonth() === monthIdx && result.getUTCDate() === day && result.getUTCHours() === hour && result.getUTCMinutes() === minute && result.getUTCSeconds() === second && result.getUTCDay() === weekday ? result : void 0;
15850
- }
15851
15396
  function parseImfDate(date) {
15852
15397
  if (date.length !== 29 || date[4] !== " " || date[7] !== " " || date[11] !== " " || date[16] !== " " || date[19] !== ":" || date[22] !== ":" || date[25] !== " " || date[26] !== "G" || date[27] !== "M" || date[28] !== "T") {
15853
15398
  return void 0;
@@ -16008,7 +15553,8 @@ var require_date = __commonJS({
16008
15553
  }
16009
15554
  second = (code1 - 48) * 10 + (code2 - 48);
16010
15555
  }
16011
- return makeDate(year, monthIdx, day, hour, minute, second, weekday);
15556
+ const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
15557
+ return result.getUTCDay() === weekday ? result : void 0;
16012
15558
  }
16013
15559
  function parseAscTimeDate(date) {
16014
15560
  if (date.length !== 24 || date[7] !== " " || date[10] !== " " || date[19] !== " ") {
@@ -16170,7 +15716,8 @@ var require_date = __commonJS({
16170
15716
  return void 0;
16171
15717
  }
16172
15718
  const year = (yearDigit1 - 48) * 1e3 + (yearDigit2 - 48) * 100 + (yearDigit3 - 48) * 10 + (yearDigit4 - 48);
16173
- return makeDate(year, monthIdx, day, hour, minute, second, weekday);
15719
+ const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
15720
+ return result.getUTCDay() === weekday ? result : void 0;
16174
15721
  }
16175
15722
  function parseRfc850Date(date) {
16176
15723
  let commaIndex = -1;
@@ -16319,7 +15866,8 @@ var require_date = __commonJS({
16319
15866
  }
16320
15867
  second = (code1 - 48) * 10 + (code2 - 48);
16321
15868
  }
16322
- return makeDate(year, monthIdx, day, hour, minute, second, weekday);
15869
+ const result = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
15870
+ return result.getUTCDay() === weekday ? result : void 0;
16323
15871
  }
16324
15872
  module.exports = {
16325
15873
  parseHttpDate
@@ -16327,17 +15875,14 @@ var require_date = __commonJS({
16327
15875
  }
16328
15876
  });
16329
15877
 
16330
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/cache-handler.js
15878
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/cache-handler.js
16331
15879
  var require_cache_handler = __commonJS({
16332
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/cache-handler.js"(exports, module) {
15880
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/cache-handler.js"(exports, module) {
16333
15881
  "use strict";
16334
15882
  var util = require_util();
16335
15883
  var {
16336
15884
  parseCacheControlHeader,
16337
- hasInvalidCacheControlDirective,
16338
15885
  parseVaryHeader,
16339
- hasVaryStar,
16340
- isInvalidOrWildcardVaryHeader,
16341
15886
  isEtagUsable
16342
15887
  } = require_cache();
16343
15888
  var { parseHttpDate } = require_date();
@@ -16361,78 +15906,6 @@ var require_cache_handler = __commonJS({
16361
15906
  206
16362
15907
  ];
16363
15908
  var MAX_RESPONSE_AGE = 2147483647e3;
16364
- function trimOWS(value) {
16365
- return value.replace(/^[\t ]+|[\t ]+$/g, "");
16366
- }
16367
- function arrayIncludes(array, value) {
16368
- for (let i = 0; i < array.length; i++) {
16369
- if (array[i] === value) {
16370
- return true;
16371
- }
16372
- }
16373
- return false;
16374
- }
16375
- function appendConnectionHeaderTokens(headersToRemove, connectionHeader) {
16376
- const values = Array.isArray(connectionHeader) ? connectionHeader : [connectionHeader];
16377
- for (let i = 0; i < values.length; i++) {
16378
- const tokens = values[i].split(",");
16379
- for (let j = 0; j < tokens.length; j++) {
16380
- headersToRemove.push(trimOWS(tokens[j]).toLowerCase());
16381
- }
16382
- }
16383
- }
16384
- function getSameOriginPath(cacheKey, location) {
16385
- if (typeof location !== "string") {
16386
- return void 0;
16387
- }
16388
- let originUrl;
16389
- let requestUrl;
16390
- let locationUrl;
16391
- try {
16392
- originUrl = new URL(cacheKey.origin);
16393
- requestUrl = new URL(cacheKey.path, originUrl);
16394
- locationUrl = new URL(location, requestUrl);
16395
- } catch {
16396
- return void 0;
16397
- }
16398
- if (locationUrl.origin !== originUrl.origin) {
16399
- return void 0;
16400
- }
16401
- return locationUrl.pathname + locationUrl.search;
16402
- }
16403
- function deleteCachedUri(store, cacheKey, path) {
16404
- deleteCachedValue(store, {
16405
- ...cacheKey,
16406
- path
16407
- });
16408
- for (let i = 0; i < util.safeHTTPMethods.length; i++) {
16409
- const method = util.safeHTTPMethods[i];
16410
- if (method !== cacheKey.method) {
16411
- deleteCachedValue(store, {
16412
- ...cacheKey,
16413
- method,
16414
- path
16415
- });
16416
- }
16417
- }
16418
- }
16419
- function deleteLocationTargets(store, cacheKey, headerValue) {
16420
- if (headerValue === void 0) {
16421
- return;
16422
- }
16423
- const values = Array.isArray(headerValue) ? headerValue : [headerValue];
16424
- for (let i = 0; i < values.length; i++) {
16425
- const path = getSameOriginPath(cacheKey, values[i]);
16426
- if (path !== void 0) {
16427
- deleteCachedUri(store, cacheKey, path);
16428
- }
16429
- }
16430
- }
16431
- function invalidateUnsafeRequest(store, cacheKey, resHeaders) {
16432
- deleteCachedUri(store, cacheKey, cacheKey.path);
16433
- deleteLocationTargets(store, cacheKey, resHeaders.location);
16434
- deleteLocationTargets(store, cacheKey, resHeaders["content-location"]);
16435
- }
16436
15909
  var CacheHandler = class {
16437
15910
  /**
16438
15911
  * @type {import('../../types/cache-interceptor.d.ts').default.CacheKey}
@@ -16492,49 +15965,35 @@ var require_cache_handler = __commonJS({
16492
15965
  statusMessage
16493
15966
  );
16494
15967
  const handler = this;
16495
- if (!arrayIncludes(util.safeHTTPMethods, this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
16496
- invalidateUnsafeRequest(this.#store, this.#cacheKey, resHeaders);
15968
+ if (!util.safeHTTPMethods.includes(this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
15969
+ try {
15970
+ this.#store.delete(this.#cacheKey)?.catch?.(noop);
15971
+ } catch {
15972
+ }
16497
15973
  return downstreamOnHeaders();
16498
15974
  }
16499
15975
  const cacheControlHeader = resHeaders["cache-control"];
16500
- const heuristicallyCacheable = resHeaders["last-modified"] && arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, statusCode);
15976
+ const heuristicallyCacheable = resHeaders["last-modified"] && HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode);
16501
15977
  if (!cacheControlHeader && !resHeaders["expires"] && !heuristicallyCacheable && !this.#cacheByDefault) {
16502
- if (statusCode === 304 && resHeaders.vary && isInvalidOrWildcardVaryHeader(resHeaders.vary)) {
16503
- deleteCachedValue(this.#store, this.#cacheKey);
16504
- }
16505
15978
  return downstreamOnHeaders();
16506
15979
  }
16507
15980
  const cacheControlDirectives = cacheControlHeader ? parseCacheControlHeader(cacheControlHeader) : {};
16508
15981
  if (!canCacheResponse(this.#cacheType, statusCode, resHeaders, cacheControlDirectives, this.#cacheKey.headers)) {
16509
- if (statusCode === 304 && (cacheControlHeader || revalidationResponseDisallowsCachedReuse(this.#cacheType, resHeaders, cacheControlDirectives))) {
16510
- deleteCachedValue(this.#store, this.#cacheKey);
16511
- }
16512
15982
  return downstreamOnHeaders();
16513
15983
  }
16514
15984
  const now = Date.now();
16515
- const resAge = Object.hasOwn(resHeaders, "age") ? getAge(resHeaders.age) : void 0;
16516
- if (resAge !== void 0 && resAge >= MAX_RESPONSE_AGE) {
16517
- deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
16518
- return downstreamOnHeaders();
16519
- }
16520
- const resDate = Object.hasOwn(resHeaders, "date") ? getDate(resHeaders.date) : void 0;
16521
- if (resDate === null) {
16522
- deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
15985
+ const resAge = resHeaders.age ? getAge(resHeaders.age) : void 0;
15986
+ if (resAge && resAge >= MAX_RESPONSE_AGE) {
16523
15987
  return downstreamOnHeaders();
16524
15988
  }
16525
- const apparentAge = resDate ? Math.max(0, now - resDate.getTime()) : 0;
16526
- const currentAge = Math.max(apparentAge, resAge ?? 0);
15989
+ const resDate = typeof resHeaders.date === "string" ? parseHttpDate(resHeaders.date) : void 0;
16527
15990
  const staleAt = determineStaleAt(this.#cacheType, now, resAge, resHeaders, resDate, cacheControlDirectives) ?? this.#cacheByDefault;
16528
- if (staleAt === void 0 || currentAge >= staleAt) {
16529
- if (cacheControlHeader || staleAt !== void 0) {
16530
- deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
16531
- }
15991
+ if (staleAt === void 0 || resAge && resAge > staleAt) {
16532
15992
  return downstreamOnHeaders();
16533
15993
  }
16534
- const baseTime = now - currentAge;
15994
+ const baseTime = resDate ? resDate.getTime() : now;
16535
15995
  const absoluteStaleAt = staleAt + baseTime;
16536
15996
  if (now >= absoluteStaleAt) {
16537
- deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
16538
15997
  return downstreamOnHeaders();
16539
15998
  }
16540
15999
  let varyDirectives;
@@ -16544,8 +16003,7 @@ var require_cache_handler = __commonJS({
16544
16003
  return downstreamOnHeaders();
16545
16004
  }
16546
16005
  }
16547
- const cachedAt = baseTime;
16548
- const deleteAt = determineDeleteAt(baseTime, now, cacheControlDirectives, absoluteStaleAt);
16006
+ const deleteAt = determineDeleteAt(baseTime, cacheControlDirectives, absoluteStaleAt);
16549
16007
  const strippedHeaders = stripNecessaryHeaders(resHeaders, cacheControlDirectives);
16550
16008
  const value = {
16551
16009
  statusCode,
@@ -16553,7 +16011,7 @@ var require_cache_handler = __commonJS({
16553
16011
  headers: strippedHeaders,
16554
16012
  vary: varyDirectives,
16555
16013
  cacheControlDirectives,
16556
- cachedAt,
16014
+ cachedAt: resAge ? now - resAge : now,
16557
16015
  staleAt: absoluteStaleAt,
16558
16016
  deleteAt
16559
16017
  };
@@ -16565,7 +16023,6 @@ var require_cache_handler = __commonJS({
16565
16023
  value.statusCode = cachedValue.statusCode;
16566
16024
  value.statusMessage = cachedValue.statusMessage;
16567
16025
  value.etag = cachedValue.etag;
16568
- value.vary = varyDirectives ?? cachedValue.vary;
16569
16026
  value.headers = { ...cachedValue.headers, ...strippedHeaders };
16570
16027
  downstreamOnHeaders();
16571
16028
  this.#writeStream = this.#store.createWriteStream(this.#cacheKey, value);
@@ -16656,25 +16113,11 @@ var require_cache_handler = __commonJS({
16656
16113
  this.#handler.onResponseError?.(controller, err);
16657
16114
  }
16658
16115
  };
16659
- function deleteCachedValue(store, cacheKey) {
16660
- try {
16661
- store.delete(cacheKey)?.catch?.(noop);
16662
- } catch {
16663
- }
16664
- }
16665
- function deleteCachedValueIfNotModified(statusCode, store, cacheKey) {
16666
- if (statusCode === 304) {
16667
- deleteCachedValue(store, cacheKey);
16668
- }
16669
- }
16670
- function revalidationResponseDisallowsCachedReuse(cacheType, resHeaders, cacheControlDirectives) {
16671
- return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true || (resHeaders.vary ? isInvalidOrWildcardVaryHeader(resHeaders.vary) : false);
16672
- }
16673
16116
  function canCacheResponse(cacheType, statusCode, resHeaders, cacheControlDirectives, reqHeaders) {
16674
- if (statusCode < 200 || arrayIncludes(NOT_UNDERSTOOD_STATUS_CODES, statusCode)) {
16117
+ if (statusCode < 200 || NOT_UNDERSTOOD_STATUS_CODES.includes(statusCode)) {
16675
16118
  return false;
16676
16119
  }
16677
- if (!arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, statusCode) && !resHeaders["expires"] && !cacheControlDirectives.public && cacheControlDirectives["max-age"] === void 0 && // RFC 9111: a private response directive, if the cache is not shared
16120
+ if (!HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode) && !resHeaders["expires"] && !cacheControlDirectives.public && cacheControlDirectives["max-age"] === void 0 && // RFC 9111: a private response directive, if the cache is not shared
16678
16121
  !(cacheControlDirectives.private && cacheType === "private") && !(cacheControlDirectives["s-maxage"] !== void 0 && cacheType === "shared")) {
16679
16122
  return false;
16680
16123
  }
@@ -16684,98 +16127,60 @@ var require_cache_handler = __commonJS({
16684
16127
  if (cacheType === "shared" && cacheControlDirectives.private === true) {
16685
16128
  return false;
16686
16129
  }
16687
- if (resHeaders.vary && hasVaryStar(resHeaders.vary)) {
16130
+ if (resHeaders.vary?.includes("*")) {
16688
16131
  return false;
16689
16132
  }
16690
- if (reqHeaders != null && Object.hasOwn(reqHeaders, "authorization")) {
16133
+ if (reqHeaders?.authorization) {
16691
16134
  if (!cacheControlDirectives.public && !cacheControlDirectives["s-maxage"] && !cacheControlDirectives["must-revalidate"]) {
16692
16135
  return false;
16693
16136
  }
16694
16137
  if (typeof reqHeaders.authorization !== "string") {
16695
16138
  return false;
16696
16139
  }
16697
- if (Array.isArray(cacheControlDirectives["no-cache"]) && arrayIncludes(cacheControlDirectives["no-cache"], "authorization")) {
16140
+ if (Array.isArray(cacheControlDirectives["no-cache"]) && cacheControlDirectives["no-cache"].includes("authorization")) {
16698
16141
  return false;
16699
16142
  }
16700
- if (Array.isArray(cacheControlDirectives["private"]) && arrayIncludes(cacheControlDirectives["private"], "authorization")) {
16143
+ if (Array.isArray(cacheControlDirectives["private"]) && cacheControlDirectives["private"].includes("authorization")) {
16701
16144
  return false;
16702
16145
  }
16703
16146
  }
16704
16147
  return true;
16705
16148
  }
16706
- function getDate(dateHeader) {
16707
- let dateValue = dateHeader;
16708
- if (Array.isArray(dateValue)) {
16709
- if (dateValue.length !== 1) {
16710
- return null;
16711
- }
16712
- dateValue = dateValue[0];
16713
- }
16714
- if (typeof dateValue !== "string") {
16715
- return null;
16716
- }
16717
- return parseHttpDate(dateValue);
16718
- }
16719
16149
  function getAge(ageHeader) {
16720
- let ageValue = ageHeader;
16721
- if (Array.isArray(ageValue)) {
16722
- if (ageValue.length !== 1) {
16723
- return MAX_RESPONSE_AGE;
16724
- }
16725
- ageValue = ageValue[0];
16726
- }
16727
- if (typeof ageValue !== "string" || !/^[\t ]*[0-9]+[\t ]*$/.test(ageValue)) {
16728
- return MAX_RESPONSE_AGE;
16729
- }
16730
- const age = BigInt(ageValue.replace(/^[\t ]+|[\t ]+$/g, ""));
16731
- if (age >= BigInt(MAX_RESPONSE_AGE / 1e3)) {
16732
- return MAX_RESPONSE_AGE;
16733
- }
16734
- return Number(age) * 1e3;
16150
+ const age = parseInt(Array.isArray(ageHeader) ? ageHeader[0] : ageHeader);
16151
+ return isNaN(age) ? void 0 : age * 1e3;
16735
16152
  }
16736
16153
  function determineStaleAt(cacheType, now, age, resHeaders, responseDate, cacheControlDirectives) {
16737
16154
  if (cacheType === "shared") {
16738
- if (hasInvalidCacheControlDirective(cacheControlDirectives, "s-maxage")) {
16739
- return 0;
16740
- }
16741
16155
  const sMaxAge = cacheControlDirectives["s-maxage"];
16742
16156
  if (sMaxAge !== void 0) {
16743
- return sMaxAge * 1e3;
16157
+ return sMaxAge > 0 ? sMaxAge * 1e3 : void 0;
16744
16158
  }
16745
16159
  }
16746
- if (hasInvalidCacheControlDirective(cacheControlDirectives, "max-age")) {
16747
- return 0;
16748
- }
16749
16160
  const maxAge = cacheControlDirectives["max-age"];
16750
16161
  if (maxAge !== void 0) {
16751
- return maxAge * 1e3;
16162
+ return maxAge > 0 ? maxAge * 1e3 : void 0;
16752
16163
  }
16753
- if (Object.hasOwn(resHeaders, "expires")) {
16754
- if (typeof resHeaders.expires !== "string") {
16755
- return 0;
16756
- }
16164
+ if (typeof resHeaders.expires === "string") {
16757
16165
  const expiresDate = parseHttpDate(resHeaders.expires);
16758
- if (!expiresDate) {
16759
- return 0;
16760
- }
16761
- if (now >= expiresDate.getTime()) {
16762
- return 0;
16763
- }
16764
- if (responseDate) {
16765
- if (responseDate >= expiresDate) {
16766
- return 0;
16166
+ if (expiresDate) {
16167
+ if (now >= expiresDate.getTime()) {
16168
+ return void 0;
16767
16169
  }
16768
- const freshnessLifetime = expiresDate.getTime() - responseDate.getTime();
16769
- if (age !== void 0 && age >= freshnessLifetime) {
16770
- return 0;
16170
+ if (responseDate) {
16171
+ if (responseDate >= expiresDate) {
16172
+ return void 0;
16173
+ }
16174
+ if (age !== void 0 && age > expiresDate - responseDate) {
16175
+ return void 0;
16176
+ }
16771
16177
  }
16772
- return freshnessLifetime;
16178
+ return expiresDate.getTime() - now;
16773
16179
  }
16774
- return expiresDate.getTime() - now;
16775
16180
  }
16776
16181
  if (typeof resHeaders["last-modified"] === "string") {
16777
- const lastModified = parseHttpDate(resHeaders["last-modified"]);
16778
- if (lastModified) {
16182
+ const lastModified = new Date(resHeaders["last-modified"]);
16183
+ if (isValidDate(lastModified)) {
16779
16184
  if (lastModified.getTime() >= now) {
16780
16185
  return void 0;
16781
16186
  }
@@ -16784,11 +16189,11 @@ var require_cache_handler = __commonJS({
16784
16189
  }
16785
16190
  }
16786
16191
  if (cacheControlDirectives.immutable) {
16787
- return 31536e6;
16192
+ return 31536e3;
16788
16193
  }
16789
16194
  return void 0;
16790
16195
  }
16791
- function determineDeleteAt(baseTime, cachedAt, cacheControlDirectives, staleAt) {
16196
+ function determineDeleteAt(now, cacheControlDirectives, staleAt) {
16792
16197
  let staleWhileRevalidate = -Infinity;
16793
16198
  let staleIfError = -Infinity;
16794
16199
  let immutable = -Infinity;
@@ -16799,12 +16204,11 @@ var require_cache_handler = __commonJS({
16799
16204
  staleIfError = staleAt + cacheControlDirectives["stale-if-error"] * 1e3;
16800
16205
  }
16801
16206
  if (cacheControlDirectives.immutable && staleWhileRevalidate === -Infinity && staleIfError === -Infinity) {
16802
- immutable = cachedAt + 31536e6;
16207
+ immutable = now + 31536e6;
16803
16208
  }
16804
16209
  if (staleWhileRevalidate === -Infinity && staleIfError === -Infinity && immutable === -Infinity) {
16805
- const freshnessLifetime = staleAt - baseTime;
16806
- const datePrecisionPadding = Math.min(Math.max(cachedAt - baseTime, 0), 1e3);
16807
- return staleAt + freshnessLifetime + datePrecisionPadding;
16210
+ const freshnessLifetime = staleAt - now;
16211
+ return staleAt + freshnessLifetime;
16808
16212
  }
16809
16213
  return Math.max(staleAt, staleWhileRevalidate, staleIfError, immutable);
16810
16214
  }
@@ -16822,7 +16226,11 @@ var require_cache_handler = __commonJS({
16822
16226
  "age"
16823
16227
  ];
16824
16228
  if (resHeaders["connection"]) {
16825
- appendConnectionHeaderTokens(headersToRemove, resHeaders["connection"]);
16229
+ if (Array.isArray(resHeaders["connection"])) {
16230
+ headersToRemove.push(...resHeaders["connection"].map((header) => header.trim()));
16231
+ } else {
16232
+ headersToRemove.push(...resHeaders["connection"].split(",").map((header) => header.trim()));
16233
+ }
16826
16234
  }
16827
16235
  if (Array.isArray(cacheControlDirectives["no-cache"])) {
16828
16236
  headersToRemove.push(...cacheControlDirectives["no-cache"]);
@@ -16832,20 +16240,23 @@ var require_cache_handler = __commonJS({
16832
16240
  }
16833
16241
  let strippedHeaders;
16834
16242
  for (const headerName of headersToRemove) {
16835
- if (Object.hasOwn(resHeaders, headerName)) {
16243
+ if (resHeaders[headerName]) {
16836
16244
  strippedHeaders ??= { ...resHeaders };
16837
16245
  delete strippedHeaders[headerName];
16838
16246
  }
16839
16247
  }
16840
16248
  return strippedHeaders ?? resHeaders;
16841
16249
  }
16250
+ function isValidDate(date) {
16251
+ return date instanceof Date && Number.isFinite(date.valueOf());
16252
+ }
16842
16253
  module.exports = CacheHandler;
16843
16254
  }
16844
16255
  });
16845
16256
 
16846
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/cache/memory-cache-store.js
16257
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/cache/memory-cache-store.js
16847
16258
  var require_memory_cache_store = __commonJS({
16848
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/cache/memory-cache-store.js"(exports, module) {
16259
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/cache/memory-cache-store.js"(exports, module) {
16849
16260
  "use strict";
16850
16261
  var { Writable } = __require("node:stream");
16851
16262
  var { EventEmitter } = __require("node:events");
@@ -17009,57 +16420,26 @@ var require_memory_cache_store = __commonJS({
17009
16420
  }
17010
16421
  };
17011
16422
  function findEntry(key, entries, now) {
17012
- for (let i = 0; i < entries.length; i++) {
17013
- const entry = entries[i];
17014
- if (entry.deleteAt > now && entry.method === key.method && varyMatches(key, entry)) {
17015
- return entry;
17016
- }
17017
- }
17018
- }
17019
- function varyMatches(key, entry) {
17020
- if (entry.vary == null) {
17021
- return true;
17022
- }
17023
- for (const headerName in entry.vary) {
17024
- if (Object.hasOwn(entry.vary, headerName) && !headerValueEquals(key.headers?.[headerName], entry.vary[headerName])) {
17025
- return false;
17026
- }
17027
- }
17028
- return true;
17029
- }
17030
- function headerValueEquals(lhs, rhs) {
17031
- if (lhs == null && rhs == null) {
17032
- return true;
17033
- }
17034
- if (lhs == null && rhs != null || lhs != null && rhs == null) {
17035
- return false;
17036
- }
17037
- if (Array.isArray(lhs) && Array.isArray(rhs)) {
17038
- if (lhs.length !== rhs.length) {
17039
- return false;
17040
- }
17041
- for (let i = 0; i < lhs.length; i++) {
17042
- if (lhs[i] !== rhs[i]) {
17043
- return false;
17044
- }
16423
+ return entries.find((entry) => entry.deleteAt > now && entry.method === key.method && (entry.vary == null || Object.keys(entry.vary).every((headerName) => {
16424
+ if (entry.vary[headerName] === null) {
16425
+ return key.headers[headerName] === void 0;
17045
16426
  }
17046
- return true;
17047
- }
17048
- return lhs === rhs;
16427
+ return entry.vary[headerName] === key.headers[headerName];
16428
+ })));
17049
16429
  }
17050
16430
  module.exports = MemoryCacheStore;
17051
16431
  }
17052
16432
  });
17053
16433
 
17054
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/cache-revalidation-handler.js
16434
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/cache-revalidation-handler.js
17055
16435
  var require_cache_revalidation_handler = __commonJS({
17056
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/cache-revalidation-handler.js"(exports, module) {
16436
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/cache-revalidation-handler.js"(exports, module) {
17057
16437
  "use strict";
17058
16438
  var assert = __require("node:assert");
17059
16439
  var CacheRevalidationHandler = class {
17060
16440
  #successful = false;
17061
16441
  /**
17062
- * @type {((success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => void) | null}
16442
+ * @type {((boolean, any) => void) | null}
17063
16443
  */
17064
16444
  #callback;
17065
16445
  /**
@@ -17072,7 +16452,7 @@ var require_cache_revalidation_handler = __commonJS({
17072
16452
  */
17073
16453
  #allowErrorStatusCodes;
17074
16454
  /**
17075
- * @param {(success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => void} callback Function to call if the cached value is valid
16455
+ * @param {(boolean) => void} callback Function to call if the cached value is valid
17076
16456
  * @param {import('../../types/dispatcher.d.ts').default.DispatchHandlers} handler
17077
16457
  * @param {boolean} allowErrorStatusCodes
17078
16458
  */
@@ -17094,7 +16474,7 @@ var require_cache_revalidation_handler = __commonJS({
17094
16474
  onResponseStart(controller, statusCode, headers, statusMessage) {
17095
16475
  assert(this.#callback != null);
17096
16476
  this.#successful = statusCode === 304 || this.#allowErrorStatusCodes && statusCode >= 500 && statusCode <= 504;
17097
- this.#callback(this.#successful, this.#context, statusCode, headers);
16477
+ this.#callback(this.#successful, this.#context);
17098
16478
  this.#callback = null;
17099
16479
  if (this.#successful) {
17100
16480
  return true;
@@ -17138,9 +16518,9 @@ var require_cache_revalidation_handler = __commonJS({
17138
16518
  }
17139
16519
  });
17140
16520
 
17141
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/cache.js
16521
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/cache.js
17142
16522
  var require_cache2 = __commonJS({
17143
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/cache.js"(exports, module) {
16523
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/cache.js"(exports, module) {
17144
16524
  "use strict";
17145
16525
  var assert = __require("node:assert");
17146
16526
  var { Readable } = __require("node:stream");
@@ -17148,9 +16528,8 @@ var require_cache2 = __commonJS({
17148
16528
  var CacheHandler = require_cache_handler();
17149
16529
  var MemoryCacheStore = require_memory_cache_store();
17150
16530
  var CacheRevalidationHandler = require_cache_revalidation_handler();
17151
- var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader, isInvalidOrWildcardVaryHeader } = require_cache();
16531
+ var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader } = require_cache();
17152
16532
  var { AbortError } = require_errors();
17153
- var { parseHttpDate } = require_date();
17154
16533
  function assertCacheOrigins(origins, name) {
17155
16534
  if (origins === void 0) return;
17156
16535
  if (!Array.isArray(origins)) {
@@ -17165,37 +16544,6 @@ var require_cache2 = __commonJS({
17165
16544
  }
17166
16545
  var nop = () => {
17167
16546
  };
17168
- function trimOWS(value) {
17169
- return value.replace(/^[\t ]+|[\t ]+$/g, "");
17170
- }
17171
- function arrayIncludes(array, value) {
17172
- for (let i = 0; i < array.length; i++) {
17173
- if (array[i] === value) {
17174
- return true;
17175
- }
17176
- }
17177
- return false;
17178
- }
17179
- function hasPragmaNoCache(headers) {
17180
- const pragma = headers?.pragma;
17181
- if (!pragma) {
17182
- return false;
17183
- }
17184
- const values = Array.isArray(pragma) ? pragma : [pragma];
17185
- for (let i = 0; i < values.length; i++) {
17186
- const value = values[i];
17187
- if (typeof value !== "string") {
17188
- continue;
17189
- }
17190
- const directives = value.split(",");
17191
- for (let j = 0; j < directives.length; j++) {
17192
- if (trimOWS(directives[j]).toLowerCase() === "no-cache") {
17193
- return true;
17194
- }
17195
- }
17196
- }
17197
- return false;
17198
- }
17199
16547
  function needsRevalidation(result, cacheControlDirectives, { headers = {} }) {
17200
16548
  if (cacheControlDirectives?.["no-cache"]) {
17201
16549
  return true;
@@ -17208,58 +16556,10 @@ var require_cache2 = __commonJS({
17208
16556
  }
17209
16557
  return false;
17210
16558
  }
17211
- function staleResponseRequiresRevalidation(result, cacheType) {
17212
- return result.cacheControlDirectives?.["must-revalidate"] === true || cacheType === "shared" && (result.cacheControlDirectives?.["proxy-revalidate"] === true || // https://www.rfc-editor.org/rfc/rfc9111.html#section-5.2.2.10
17213
- // s-maxage implies proxy-revalidate for shared caches.
17214
- result.cacheControlDirectives?.["s-maxage"] !== void 0);
17215
- }
17216
- function revalidationResponseDisallowsCachedReuse(cacheType, headers) {
17217
- if (headers.vary && isInvalidOrWildcardVaryHeader(headers.vary)) {
17218
- return true;
17219
- }
17220
- const cacheControl = headers["cache-control"];
17221
- if (!cacheControl) {
17222
- return false;
17223
- }
17224
- const cacheControlDirectives = parseCacheControlHeader(cacheControl);
17225
- return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true;
17226
- }
17227
- function revalidationResponseUpdatesCacheControl(headers) {
17228
- return headers["cache-control"] !== void 0;
17229
- }
17230
- function deleteCachedValue(store, cacheKey) {
17231
- try {
17232
- store.delete(cacheKey)?.catch?.(nop);
17233
- } catch {
17234
- }
17235
- }
17236
- function getUsableLastModified(headers) {
17237
- const lastModified = headers?.["last-modified"];
17238
- if (typeof lastModified === "string" && parseHttpDate(lastModified)) {
17239
- return lastModified;
17240
- }
17241
- }
17242
- function makeRevalidationHeaders(opts, result) {
17243
- const headers = {
17244
- ...opts.headers,
17245
- "if-modified-since": getUsableLastModified(result.headers) ?? new Date(result.cachedAt).toUTCString()
17246
- };
17247
- if (result.etag) {
17248
- headers["if-none-match"] = result.etag;
17249
- }
17250
- if (result.vary) {
17251
- for (const key in result.vary) {
17252
- if (result.vary[key] != null) {
17253
- headers[key] = result.vary[key];
17254
- }
17255
- }
17256
- }
17257
- return headers;
17258
- }
17259
- function isStale(result, cacheControlDirectives, cacheType) {
16559
+ function isStale(result, cacheControlDirectives) {
17260
16560
  const now = Date.now();
17261
16561
  if (now > result.staleAt) {
17262
- if (!staleResponseRequiresRevalidation(result, cacheType) && cacheControlDirectives?.["max-stale"]) {
16562
+ if (cacheControlDirectives?.["max-stale"]) {
17263
16563
  const gracePeriod = result.staleAt + cacheControlDirectives["max-stale"] * 1e3;
17264
16564
  return now > gracePeriod;
17265
16565
  }
@@ -17272,9 +16572,9 @@ var require_cache2 = __commonJS({
17272
16572
  }
17273
16573
  return false;
17274
16574
  }
17275
- function withinStaleWhileRevalidateWindow(result, cacheType) {
16575
+ function withinStaleWhileRevalidateWindow(result) {
17276
16576
  const staleWhileRevalidate = result.cacheControlDirectives?.["stale-while-revalidate"];
17277
- if (!staleWhileRevalidate || staleResponseRequiresRevalidation(result, cacheType)) {
16577
+ if (!staleWhileRevalidate) {
17278
16578
  return false;
17279
16579
  }
17280
16580
  const now = Date.now();
@@ -17374,17 +16674,32 @@ var require_cache2 = __commonJS({
17374
16674
  return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
17375
16675
  }
17376
16676
  const age = Math.round((now - result.cachedAt) / 1e3);
17377
- const requestMaxAgeExpired = reqCacheControl?.["max-age"] !== void 0 && age >= reqCacheControl["max-age"];
17378
- const stale = requestMaxAgeExpired || isStale(result, reqCacheControl, globalOpts.type);
17379
- const revalidate = requestMaxAgeExpired || needsRevalidation(result, reqCacheControl, opts);
16677
+ if (reqCacheControl?.["max-age"] && age >= reqCacheControl["max-age"]) {
16678
+ return dispatch(opts, handler);
16679
+ }
16680
+ const stale = isStale(result, reqCacheControl);
16681
+ const revalidate = needsRevalidation(result, reqCacheControl, opts);
17380
16682
  if (stale || revalidate) {
17381
16683
  if (util.isStream(opts.body) && util.bodyLength(opts.body) !== 0) {
17382
16684
  return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
17383
16685
  }
17384
- if (!revalidate && withinStaleWhileRevalidateWindow(result, globalOpts.type)) {
16686
+ if (!revalidate && withinStaleWhileRevalidateWindow(result)) {
17385
16687
  sendCachedValue(handler, opts, result, age, null, true);
17386
16688
  queueMicrotask(() => {
17387
- const headers2 = makeRevalidationHeaders(opts, result);
16689
+ const headers2 = {
16690
+ ...opts.headers,
16691
+ "if-modified-since": new Date(result.cachedAt).toUTCString()
16692
+ };
16693
+ if (result.etag) {
16694
+ headers2["if-none-match"] = result.etag;
16695
+ }
16696
+ if (result.vary) {
16697
+ for (const key in result.vary) {
16698
+ if (result.vary[key] != null) {
16699
+ headers2[key] = result.vary[key];
16700
+ }
16701
+ }
16702
+ }
17388
16703
  dispatch(
17389
16704
  {
17390
16705
  ...opts,
@@ -17410,33 +16725,32 @@ var require_cache2 = __commonJS({
17410
16725
  return true;
17411
16726
  }
17412
16727
  let withinStaleIfErrorThreshold = false;
17413
- if (!staleResponseRequiresRevalidation(result, globalOpts.type)) {
17414
- const staleIfErrorExpiry = result.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
17415
- if (staleIfErrorExpiry) {
17416
- withinStaleIfErrorThreshold = now < result.staleAt + staleIfErrorExpiry * 1e3;
16728
+ const staleIfErrorExpiry = result.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
16729
+ if (staleIfErrorExpiry) {
16730
+ withinStaleIfErrorThreshold = now < result.staleAt + staleIfErrorExpiry * 1e3;
16731
+ }
16732
+ const headers = {
16733
+ ...opts.headers,
16734
+ "if-modified-since": new Date(result.cachedAt).toUTCString()
16735
+ };
16736
+ if (result.etag) {
16737
+ headers["if-none-match"] = result.etag;
16738
+ }
16739
+ if (result.vary) {
16740
+ for (const key in result.vary) {
16741
+ if (result.vary[key] != null) {
16742
+ headers[key] = result.vary[key];
16743
+ }
17417
16744
  }
17418
16745
  }
17419
- const headers = makeRevalidationHeaders(opts, result);
17420
16746
  return dispatch(
17421
16747
  {
17422
16748
  ...opts,
17423
16749
  headers
17424
16750
  },
17425
16751
  new CacheRevalidationHandler(
17426
- (success, context, statusCode, headers2) => {
16752
+ (success, context) => {
17427
16753
  if (success) {
17428
- if (statusCode === 304) {
17429
- if (revalidationResponseDisallowsCachedReuse(globalOpts.type, headers2)) {
17430
- if (util.isStream(result.body)) {
17431
- result.body.on("error", nop).destroy();
17432
- }
17433
- deleteCachedValue(globalOpts.store, cacheKey);
17434
- return dispatch(opts, new CacheHandler(globalOpts, cacheKey, handler));
17435
- }
17436
- if (revalidationResponseUpdatesCacheControl(headers2)) {
17437
- deleteCachedValue(globalOpts.store, cacheKey);
17438
- }
17439
- }
17440
16754
  sendCachedValue(handler, opts, result, age, context, stale);
17441
16755
  } else if (util.isStream(result.body)) {
17442
16756
  result.body.on("error", nop).destroy();
@@ -17478,16 +16792,10 @@ var require_cache2 = __commonJS({
17478
16792
  cacheByDefault,
17479
16793
  type
17480
16794
  };
17481
- const safeMethodsToNotCache = [];
17482
- for (let i = 0; i < util.safeHTTPMethods.length; i++) {
17483
- const method = util.safeHTTPMethods[i];
17484
- if (!arrayIncludes(methods, method)) {
17485
- safeMethodsToNotCache.push(method);
17486
- }
17487
- }
16795
+ const safeMethodsToNotCache = util.safeHTTPMethods.filter((method) => methods.includes(method) === false);
17488
16796
  return (dispatch) => {
17489
16797
  return (opts2, handler) => {
17490
- if (!opts2.origin || arrayIncludes(safeMethodsToNotCache, opts2.method)) {
16798
+ if (!opts2.origin || safeMethodsToNotCache.includes(opts2.method)) {
17491
16799
  return dispatch(opts2, handler);
17492
16800
  }
17493
16801
  if (origins !== void 0) {
@@ -17513,7 +16821,7 @@ var require_cache2 = __commonJS({
17513
16821
  ...opts2,
17514
16822
  headers: normalizeHeaders(opts2)
17515
16823
  };
17516
- const reqCacheControl = opts2.headers?.["cache-control"] ? parseCacheControlHeader(opts2.headers["cache-control"]) : hasPragmaNoCache(opts2.headers) ? { "no-cache": true } : void 0;
16824
+ const reqCacheControl = opts2.headers?.["cache-control"] ? parseCacheControlHeader(opts2.headers["cache-control"]) : void 0;
17517
16825
  if (reqCacheControl?.["no-store"]) {
17518
16826
  return dispatch(opts2, handler);
17519
16827
  }
@@ -17546,9 +16854,9 @@ var require_cache2 = __commonJS({
17546
16854
  }
17547
16855
  });
17548
16856
 
17549
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/decompress.js
16857
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/decompress.js
17550
16858
  var require_decompress = __commonJS({
17551
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/decompress.js"(exports, module) {
16859
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/decompress.js"(exports, module) {
17552
16860
  "use strict";
17553
16861
  var { createInflate, createGunzip, createBrotliDecompress, createZstdDecompress } = __require("node:zlib");
17554
16862
  var { pipeline } = __require("node:stream");
@@ -17760,9 +17068,9 @@ var require_decompress = __commonJS({
17760
17068
  }
17761
17069
  });
17762
17070
 
17763
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/deduplication-handler.js
17071
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/deduplication-handler.js
17764
17072
  var require_deduplication_handler = __commonJS({
17765
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/handler/deduplication-handler.js"(exports, module) {
17073
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/handler/deduplication-handler.js"(exports, module) {
17766
17074
  "use strict";
17767
17075
  var { RequestAbortedError } = require_errors();
17768
17076
  var DEFAULT_MAX_BUFFER_SIZE = 5 * 1024 * 1024;
@@ -18119,9 +17427,9 @@ var require_deduplication_handler = __commonJS({
18119
17427
  }
18120
17428
  });
18121
17429
 
18122
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/deduplicate.js
17430
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/deduplicate.js
18123
17431
  var require_deduplicate = __commonJS({
18124
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/interceptor/deduplicate.js"(exports, module) {
17432
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/interceptor/deduplicate.js"(exports, module) {
18125
17433
  "use strict";
18126
17434
  var diagnosticsChannel = __require("node:diagnostics_channel");
18127
17435
  var util = require_util();
@@ -18204,9 +17512,9 @@ var require_deduplicate = __commonJS({
18204
17512
  }
18205
17513
  });
18206
17514
 
18207
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/cache/sqlite-cache-store.js
17515
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/cache/sqlite-cache-store.js
18208
17516
  var require_sqlite_cache_store = __commonJS({
18209
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/cache/sqlite-cache-store.js"(exports, module) {
17517
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/cache/sqlite-cache-store.js"(exports, module) {
18210
17518
  "use strict";
18211
17519
  var { Writable } = __require("node:stream");
18212
17520
  var { assertCacheKey, assertCacheValue } = require_cache();
@@ -18369,7 +17677,7 @@ var require_sqlite_cache_store = __commonJS({
18369
17677
  SELECT
18370
17678
  id
18371
17679
  FROM cacheInterceptorV${VERSION}
18372
- ORDER BY cachedAt ASC
17680
+ ORDER BY cachedAt DESC
18373
17681
  LIMIT ?
18374
17682
  )
18375
17683
  `);
@@ -18424,6 +17732,7 @@ var require_sqlite_cache_store = __commonJS({
18424
17732
  existingValue.id
18425
17733
  );
18426
17734
  } else {
17735
+ this.#prune();
18427
17736
  this.#insertValueQuery.run(
18428
17737
  url,
18429
17738
  key.method,
@@ -18438,7 +17747,6 @@ var require_sqlite_cache_store = __commonJS({
18438
17747
  value.cachedAt,
18439
17748
  value.staleAt
18440
17749
  );
18441
- this.#prune();
18442
17750
  }
18443
17751
  }
18444
17752
  /**
@@ -18526,7 +17834,7 @@ var require_sqlite_cache_store = __commonJS({
18526
17834
  const now = Date.now();
18527
17835
  for (const value of values) {
18528
17836
  if (now >= value.deleteAt && !canBeExpired) {
18529
- continue;
17837
+ return void 0;
18530
17838
  }
18531
17839
  let matches = true;
18532
17840
  if (value.vary) {
@@ -18556,21 +17864,16 @@ var require_sqlite_cache_store = __commonJS({
18556
17864
  if (lhs.length !== rhs.length) {
18557
17865
  return false;
18558
17866
  }
18559
- for (let i = 0; i < lhs.length; i++) {
18560
- if (lhs[i] !== rhs[i]) {
18561
- return false;
18562
- }
18563
- }
18564
- return true;
17867
+ return lhs.every((x, i) => x === rhs[i]);
18565
17868
  }
18566
17869
  return lhs === rhs;
18567
17870
  }
18568
17871
  }
18569
17872
  });
18570
17873
 
18571
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/headers.js
17874
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/headers.js
18572
17875
  var require_headers = __commonJS({
18573
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/headers.js"(exports, module) {
17876
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/headers.js"(exports, module) {
18574
17877
  "use strict";
18575
17878
  var { kConstruct } = require_symbols();
18576
17879
  var { kEnumerableProperty } = require_util();
@@ -19029,9 +18332,9 @@ var require_headers = __commonJS({
19029
18332
  }
19030
18333
  });
19031
18334
 
19032
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/response.js
18335
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/response.js
19033
18336
  var require_response = __commonJS({
19034
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/response.js"(exports, module) {
18337
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/response.js"(exports, module) {
19035
18338
  "use strict";
19036
18339
  var { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require_headers();
19037
18340
  var { extractBody, cloneBody, mixinBody, streamRegistry, bodyUnusable } = require_body();
@@ -19451,9 +18754,9 @@ var require_response = __commonJS({
19451
18754
  }
19452
18755
  });
19453
18756
 
19454
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/request.js
18757
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/request.js
19455
18758
  var require_request2 = __commonJS({
19456
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/request.js"(exports, module) {
18759
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/request.js"(exports, module) {
19457
18760
  "use strict";
19458
18761
  var { extractBody, mixinBody, cloneBody, bodyUnusable } = require_body();
19459
18762
  var { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = require_headers();
@@ -20207,9 +19510,9 @@ var require_request2 = __commonJS({
20207
19510
  }
20208
19511
  });
20209
19512
 
20210
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js
19513
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js
20211
19514
  var require_subresource_integrity = __commonJS({
20212
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js"(exports, module) {
19515
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js"(exports, module) {
20213
19516
  "use strict";
20214
19517
  var assert = __require("node:assert");
20215
19518
  var { runtimeFeatures } = require_runtime_features();
@@ -20346,9 +19649,9 @@ var require_subresource_integrity = __commonJS({
20346
19649
  }
20347
19650
  });
20348
19651
 
20349
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/index.js
19652
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/index.js
20350
19653
  var require_fetch = __commonJS({
20351
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/fetch/index.js"(exports, module) {
19654
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/index.js"(exports, module) {
20352
19655
  "use strict";
20353
19656
  var {
20354
19657
  makeNetworkError,
@@ -20850,7 +20153,7 @@ var require_fetch = __commonJS({
20850
20153
  cacheState = "";
20851
20154
  }
20852
20155
  let responseStatus = 0;
20853
- if (fetchParams.request.mode !== "navigate" || !response.hasCrossOriginRedirects) {
20156
+ if (fetchParams.request.mode !== "navigator" || !response.hasCrossOriginRedirects) {
20854
20157
  responseStatus = response.status;
20855
20158
  const mimeType = extractMimeType(response.headersList);
20856
20159
  if (mimeType !== "failure") {
@@ -21014,7 +20317,7 @@ var require_fetch = __commonJS({
21014
20317
  if (contentLength != null) {
21015
20318
  contentLengthHeaderValue = isomorphicEncode(`${contentLength}`);
21016
20319
  }
21017
- if (contentLengthHeaderValue != null && !httpRequest.headersList.contains("content-length", true)) {
20320
+ if (contentLengthHeaderValue != null) {
21018
20321
  httpRequest.headersList.append("content-length", contentLengthHeaderValue, true);
21019
20322
  }
21020
20323
  if (contentLength != null && httpRequest.keepalive) {
@@ -21490,9 +20793,9 @@ var require_fetch = __commonJS({
21490
20793
  }
21491
20794
  });
21492
20795
 
21493
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/util.js
20796
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/util.js
21494
20797
  var require_util3 = __commonJS({
21495
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/util.js"(exports, module) {
20798
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/util.js"(exports, module) {
21496
20799
  "use strict";
21497
20800
  var assert = __require("node:assert");
21498
20801
  var { URLSerializer } = require_data_url();
@@ -21520,9 +20823,9 @@ var require_util3 = __commonJS({
21520
20823
  }
21521
20824
  });
21522
20825
 
21523
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/cache.js
20826
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/cache.js
21524
20827
  var require_cache3 = __commonJS({
21525
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/cache.js"(exports, module) {
20828
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/cache.js"(exports, module) {
21526
20829
  "use strict";
21527
20830
  var assert = __require("node:assert");
21528
20831
  var { kConstruct } = require_symbols();
@@ -22069,9 +21372,9 @@ var require_cache3 = __commonJS({
22069
21372
  }
22070
21373
  });
22071
21374
 
22072
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/cachestorage.js
21375
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/cachestorage.js
22073
21376
  var require_cachestorage = __commonJS({
22074
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cache/cachestorage.js"(exports, module) {
21377
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cache/cachestorage.js"(exports, module) {
22075
21378
  "use strict";
22076
21379
  var { Cache } = require_cache3();
22077
21380
  var { webidl } = require_webidl();
@@ -22179,9 +21482,9 @@ var require_cachestorage = __commonJS({
22179
21482
  }
22180
21483
  });
22181
21484
 
22182
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/constants.js
21485
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/constants.js
22183
21486
  var require_constants4 = __commonJS({
22184
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/constants.js"(exports, module) {
21487
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/constants.js"(exports, module) {
22185
21488
  "use strict";
22186
21489
  var maxAttributeValueSize = 1024;
22187
21490
  var maxNameValuePairSize = 4096;
@@ -22192,9 +21495,9 @@ var require_constants4 = __commonJS({
22192
21495
  }
22193
21496
  });
22194
21497
 
22195
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/util.js
21498
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/util.js
22196
21499
  var require_util4 = __commonJS({
22197
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/util.js"(exports, module) {
21500
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/util.js"(exports, module) {
22198
21501
  "use strict";
22199
21502
  function isCTLExcludingHtab(value) {
22200
21503
  for (let i = 0; i < value.length; ++i) {
@@ -22257,48 +21560,14 @@ var require_util4 = __commonJS({
22257
21560
  for (let i = 0; i < path.length; ++i) {
22258
21561
  const code = path.charCodeAt(i);
22259
21562
  if (code < 32 || // exclude CTLs (0-31)
22260
- code > 126 || // exclude DEL and non-ascii
21563
+ code === 127 || // DEL
22261
21564
  code === 59) {
22262
21565
  throw new Error("Invalid cookie path");
22263
21566
  }
22264
21567
  }
22265
21568
  }
22266
- function isLetterOrDigit(code) {
22267
- return code >= 48 && code <= 57 || // 0-9
22268
- code >= 65 && code <= 90 || // A-Z
22269
- code >= 97 && code <= 122;
22270
- }
22271
21569
  function validateCookieDomain(domain) {
22272
- if (domain === " ") {
22273
- return;
22274
- }
22275
- if (domain.length > 255) {
22276
- throw new Error("Invalid cookie domain");
22277
- }
22278
- let labelLength = 0;
22279
- for (let i = 0; i < domain.length; ++i) {
22280
- const code = domain.charCodeAt(i);
22281
- if (code === 46) {
22282
- if (labelLength === 0) {
22283
- throw new Error("Invalid cookie domain");
22284
- }
22285
- if (domain.charCodeAt(i - 1) === 45) {
22286
- throw new Error("Invalid cookie domain");
22287
- }
22288
- labelLength = 0;
22289
- continue;
22290
- }
22291
- if (labelLength === 0 && !isLetterOrDigit(code)) {
22292
- throw new Error("Invalid cookie domain");
22293
- }
22294
- if (!isLetterOrDigit(code) && code !== 45) {
22295
- throw new Error("Invalid cookie domain");
22296
- }
22297
- if (++labelLength > 63) {
22298
- throw new Error("Invalid cookie domain");
22299
- }
22300
- }
22301
- if (labelLength === 0 || domain.charCodeAt(domain.length - 1) === 45) {
21570
+ if (domain.startsWith("-") || domain.endsWith(".") || domain.endsWith("-")) {
22302
21571
  throw new Error("Invalid cookie domain");
22303
21572
  }
22304
21573
  }
@@ -22381,11 +21650,7 @@ var require_util4 = __commonJS({
22381
21650
  throw new Error("Invalid unparsed");
22382
21651
  }
22383
21652
  const [key, ...value] = part.split("=");
22384
- const trimmedKey = key.trim();
22385
- const joinedValue = value.join("=");
22386
- validateCookieName(trimmedKey);
22387
- validateCookieValue(joinedValue);
22388
- out.push(`${trimmedKey}=${joinedValue}`);
21653
+ out.push(`${key.trim()}=${value.join("=")}`);
22389
21654
  }
22390
21655
  return out.join("; ");
22391
21656
  }
@@ -22400,14 +21665,15 @@ var require_util4 = __commonJS({
22400
21665
  }
22401
21666
  });
22402
21667
 
22403
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/parse.js
21668
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/parse.js
22404
21669
  var require_parse = __commonJS({
22405
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/parse.js"(exports, module) {
21670
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/parse.js"(exports, module) {
22406
21671
  "use strict";
22407
21672
  var { collectASequenceOfCodePointsFast } = require_infra();
22408
21673
  var { maxNameValuePairSize, maxAttributeValueSize } = require_constants4();
22409
21674
  var { isCTLExcludingHtab } = require_util4();
22410
21675
  var assert = __require("node:assert");
21676
+ var { unescape: qsUnescape } = __require("node:querystring");
22411
21677
  function parseSetCookie(header) {
22412
21678
  if (isCTLExcludingHtab(header)) {
22413
21679
  return null;
@@ -22441,7 +21707,7 @@ var require_parse = __commonJS({
22441
21707
  }
22442
21708
  return {
22443
21709
  name,
22444
- value,
21710
+ value: qsUnescape(value),
22445
21711
  ...parseUnparsedAttributes(unparsedAttributes)
22446
21712
  };
22447
21713
  }
@@ -22515,14 +21781,18 @@ var require_parse = __commonJS({
22515
21781
  } else if (attributeNameLowercase === "httponly") {
22516
21782
  cookieAttributeList.httpOnly = true;
22517
21783
  } else if (attributeNameLowercase === "samesite") {
21784
+ let enforcement = "Default";
22518
21785
  const attributeValueLowercase = attributeValue.toLowerCase();
22519
- if (attributeValueLowercase === "none") {
22520
- cookieAttributeList.sameSite = "None";
22521
- } else if (attributeValueLowercase === "strict") {
22522
- cookieAttributeList.sameSite = "Strict";
22523
- } else if (attributeValueLowercase === "lax") {
22524
- cookieAttributeList.sameSite = "Lax";
21786
+ if (attributeValueLowercase.includes("none")) {
21787
+ enforcement = "None";
21788
+ }
21789
+ if (attributeValueLowercase.includes("strict")) {
21790
+ enforcement = "Strict";
21791
+ }
21792
+ if (attributeValueLowercase.includes("lax")) {
21793
+ enforcement = "Lax";
22525
21794
  }
21795
+ cookieAttributeList.sameSite = enforcement;
22526
21796
  } else {
22527
21797
  cookieAttributeList.unparsed ??= [];
22528
21798
  cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`);
@@ -22536,9 +21806,9 @@ var require_parse = __commonJS({
22536
21806
  }
22537
21807
  });
22538
21808
 
22539
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/index.js
21809
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/index.js
22540
21810
  var require_cookies = __commonJS({
22541
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/cookies/index.js"(exports, module) {
21811
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/cookies/index.js"(exports, module) {
22542
21812
  "use strict";
22543
21813
  var { parseSetCookie } = require_parse();
22544
21814
  var { stringify } = require_util4();
@@ -22671,9 +21941,9 @@ var require_cookies = __commonJS({
22671
21941
  }
22672
21942
  });
22673
21943
 
22674
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/events.js
21944
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/events.js
22675
21945
  var require_events = __commonJS({
22676
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/events.js"(exports, module) {
21946
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/events.js"(exports, module) {
22677
21947
  "use strict";
22678
21948
  var { webidl } = require_webidl();
22679
21949
  var { kEnumerableProperty } = require_util();
@@ -22939,9 +22209,9 @@ var require_events = __commonJS({
22939
22209
  }
22940
22210
  });
22941
22211
 
22942
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/constants.js
22212
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/constants.js
22943
22213
  var require_constants5 = __commonJS({
22944
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/constants.js"(exports, module) {
22214
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/constants.js"(exports, module) {
22945
22215
  "use strict";
22946
22216
  var uid = "258EAFA5-E914-47DA-95CA-C5AB0DC85B11";
22947
22217
  var staticPropertyDescriptors = {
@@ -22995,9 +22265,9 @@ var require_constants5 = __commonJS({
22995
22265
  }
22996
22266
  });
22997
22267
 
22998
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/util.js
22268
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/util.js
22999
22269
  var require_util5 = __commonJS({
23000
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/util.js"(exports, module) {
22270
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/util.js"(exports, module) {
23001
22271
  "use strict";
23002
22272
  var { states, opcodes } = require_constants5();
23003
22273
  var { isUtf8 } = __require("node:buffer");
@@ -23172,9 +22442,9 @@ var require_util5 = __commonJS({
23172
22442
  }
23173
22443
  });
23174
22444
 
23175
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/frame.js
22445
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/frame.js
23176
22446
  var require_frame = __commonJS({
23177
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/frame.js"(exports, module) {
22447
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/frame.js"(exports, module) {
23178
22448
  "use strict";
23179
22449
  var { runtimeFeatures } = require_runtime_features();
23180
22450
  var { maxUnsigned16Bit, opcodes } = require_constants5();
@@ -23277,9 +22547,9 @@ var require_frame = __commonJS({
23277
22547
  }
23278
22548
  });
23279
22549
 
23280
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/connection.js
22550
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/connection.js
23281
22551
  var require_connection = __commonJS({
23282
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/connection.js"(exports, module) {
22552
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/connection.js"(exports, module) {
23283
22553
  "use strict";
23284
22554
  var { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = require_constants5();
23285
22555
  var { parseExtensions, isClosed, isClosing, isEstablished, isConnecting, validateCloseCodeAndReason } = require_util5();
@@ -23433,9 +22703,9 @@ var require_connection = __commonJS({
23433
22703
  }
23434
22704
  });
23435
22705
 
23436
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/permessage-deflate.js
22706
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/permessage-deflate.js
23437
22707
  var require_permessage_deflate = __commonJS({
23438
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/permessage-deflate.js"(exports, module) {
22708
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/permessage-deflate.js"(exports, module) {
23439
22709
  "use strict";
23440
22710
  var { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __require("node:zlib");
23441
22711
  var { isValidClientWindowBits } = require_util5();
@@ -23443,26 +22713,27 @@ var require_permessage_deflate = __commonJS({
23443
22713
  var tail = Buffer.from([0, 0, 255, 255]);
23444
22714
  var kBuffer = /* @__PURE__ */ Symbol("kBuffer");
23445
22715
  var kLength = /* @__PURE__ */ Symbol("kLength");
22716
+ var kDefaultMaxDecompressedSize = 4 * 1024 * 1024;
23446
22717
  var PerMessageDeflate = class {
23447
22718
  /** @type {import('node:zlib').InflateRaw} */
23448
22719
  #inflate;
23449
22720
  #options = {};
23450
- #maxPayloadSize = 0;
22721
+ /** @type {boolean} */
22722
+ #aborted = false;
22723
+ /** @type {Function|null} */
22724
+ #currentCallback = null;
23451
22725
  /**
23452
22726
  * @param {Map<string, string>} extensions
23453
22727
  */
23454
- constructor(extensions, options) {
22728
+ constructor(extensions) {
23455
22729
  this.#options.serverNoContextTakeover = extensions.has("server_no_context_takeover");
23456
22730
  this.#options.serverMaxWindowBits = extensions.get("server_max_window_bits");
23457
- this.#maxPayloadSize = options.maxPayloadSize;
23458
22731
  }
23459
- /**
23460
- * Decompress a compressed payload.
23461
- * @param {Buffer} chunk Compressed data
23462
- * @param {boolean} fin Final fragment flag
23463
- * @param {Function} callback Callback function
23464
- */
23465
22732
  decompress(chunk, fin, callback) {
22733
+ if (this.#aborted) {
22734
+ callback(new MessageSizeExceededError());
22735
+ return;
22736
+ }
23466
22737
  if (!this.#inflate) {
23467
22738
  let windowBits = Z_DEFAULT_WINDOWBITS;
23468
22739
  if (this.#options.serverMaxWindowBits) {
@@ -23481,11 +22752,20 @@ var require_permessage_deflate = __commonJS({
23481
22752
  this.#inflate[kBuffer] = [];
23482
22753
  this.#inflate[kLength] = 0;
23483
22754
  this.#inflate.on("data", (data) => {
22755
+ if (this.#aborted) {
22756
+ return;
22757
+ }
23484
22758
  this.#inflate[kLength] += data.length;
23485
- if (this.#maxPayloadSize > 0 && this.#inflate[kLength] > this.#maxPayloadSize) {
23486
- callback(new MessageSizeExceededError());
22759
+ if (this.#inflate[kLength] > kDefaultMaxDecompressedSize) {
22760
+ this.#aborted = true;
23487
22761
  this.#inflate.removeAllListeners();
22762
+ this.#inflate.destroy();
23488
22763
  this.#inflate = null;
22764
+ if (this.#currentCallback) {
22765
+ const cb = this.#currentCallback;
22766
+ this.#currentCallback = null;
22767
+ cb(new MessageSizeExceededError());
22768
+ }
23489
22769
  return;
23490
22770
  }
23491
22771
  this.#inflate[kBuffer].push(data);
@@ -23495,17 +22775,19 @@ var require_permessage_deflate = __commonJS({
23495
22775
  callback(err);
23496
22776
  });
23497
22777
  }
22778
+ this.#currentCallback = callback;
23498
22779
  this.#inflate.write(chunk);
23499
22780
  if (fin) {
23500
22781
  this.#inflate.write(tail);
23501
22782
  }
23502
22783
  this.#inflate.flush(() => {
23503
- if (!this.#inflate) {
22784
+ if (this.#aborted || !this.#inflate) {
23504
22785
  return;
23505
22786
  }
23506
22787
  const full = Buffer.concat(this.#inflate[kBuffer], this.#inflate[kLength]);
23507
22788
  this.#inflate[kBuffer].length = 0;
23508
22789
  this.#inflate[kLength] = 0;
22790
+ this.#currentCallback = null;
23509
22791
  callback(null, full);
23510
22792
  });
23511
22793
  }
@@ -23514,9 +22796,9 @@ var require_permessage_deflate = __commonJS({
23514
22796
  }
23515
22797
  });
23516
22798
 
23517
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/receiver.js
22799
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/receiver.js
23518
22800
  var require_receiver = __commonJS({
23519
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/receiver.js"(exports, module) {
22801
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/receiver.js"(exports, module) {
23520
22802
  "use strict";
23521
22803
  var { Writable } = __require("node:stream");
23522
22804
  var assert = __require("node:assert");
@@ -23546,23 +22828,16 @@ var require_receiver = __commonJS({
23546
22828
  #extensions;
23547
22829
  /** @type {import('./websocket').Handler} */
23548
22830
  #handler;
23549
- /** @type {number} */
23550
- #maxFragments;
23551
- /** @type {number} */
23552
- #maxPayloadSize;
23553
22831
  /**
23554
22832
  * @param {import('./websocket').Handler} handler
23555
22833
  * @param {Map<string, string>|null} extensions
23556
- * @param {{ maxFragments?: number, maxPayloadSize?: number }} [options]
23557
22834
  */
23558
- constructor(handler, extensions, options = {}) {
22835
+ constructor(handler, extensions) {
23559
22836
  super();
23560
22837
  this.#handler = handler;
23561
22838
  this.#extensions = extensions == null ? /* @__PURE__ */ new Map() : extensions;
23562
- this.#maxFragments = options.maxFragments ?? 0;
23563
- this.#maxPayloadSize = options.maxPayloadSize ?? 0;
23564
22839
  if (this.#extensions.has("permessage-deflate")) {
23565
- this.#extensions.set("permessage-deflate", new PerMessageDeflate(extensions, options));
22840
+ this.#extensions.set("permessage-deflate", new PerMessageDeflate(extensions));
23566
22841
  }
23567
22842
  }
23568
22843
  /**
@@ -23575,13 +22850,6 @@ var require_receiver = __commonJS({
23575
22850
  this.#loop = true;
23576
22851
  this.run(callback);
23577
22852
  }
23578
- #validatePayloadLength() {
23579
- if (this.#maxPayloadSize > 0 && !isControlFrame(this.#info.opcode) && this.#info.payloadLength + this.#fragmentsBytes > this.#maxPayloadSize) {
23580
- failWebsocketConnection(this.#handler, 1009, "Payload size exceeds maximum allowed size");
23581
- return false;
23582
- }
23583
- return true;
23584
- }
23585
22853
  /**
23586
22854
  * Runs whenever a new chunk is received.
23587
22855
  * Callback is called whenever there are no more chunks buffering,
@@ -23641,9 +22909,6 @@ var require_receiver = __commonJS({
23641
22909
  if (payloadLength <= 125) {
23642
22910
  this.#info.payloadLength = payloadLength;
23643
22911
  this.#state = parserStates.READ_DATA;
23644
- if (!this.#validatePayloadLength()) {
23645
- return;
23646
- }
23647
22912
  } else if (payloadLength === 126) {
23648
22913
  this.#state = parserStates.PAYLOADLENGTH_16;
23649
22914
  } else if (payloadLength === 127) {
@@ -23664,9 +22929,6 @@ var require_receiver = __commonJS({
23664
22929
  const buffer = this.consume(2);
23665
22930
  this.#info.payloadLength = buffer.readUInt16BE(0);
23666
22931
  this.#state = parserStates.READ_DATA;
23667
- if (!this.#validatePayloadLength()) {
23668
- return;
23669
- }
23670
22932
  } else if (this.#state === parserStates.PAYLOADLENGTH_64) {
23671
22933
  if (this.#byteOffset < 8) {
23672
22934
  return callback();
@@ -23680,9 +22942,6 @@ var require_receiver = __commonJS({
23680
22942
  }
23681
22943
  this.#info.payloadLength = lower;
23682
22944
  this.#state = parserStates.READ_DATA;
23683
- if (!this.#validatePayloadLength()) {
23684
- return;
23685
- }
23686
22945
  } else if (this.#state === parserStates.READ_DATA) {
23687
22946
  if (this.#byteOffset < this.#info.payloadLength) {
23688
22947
  return callback();
@@ -23693,43 +22952,30 @@ var require_receiver = __commonJS({
23693
22952
  this.#state = parserStates.INFO;
23694
22953
  } else {
23695
22954
  if (!this.#info.compressed) {
23696
- if (!this.writeFragments(body)) {
23697
- return;
23698
- }
22955
+ this.writeFragments(body);
23699
22956
  if (!this.#info.fragmented && this.#info.fin) {
23700
22957
  websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
23701
22958
  }
23702
22959
  this.#state = parserStates.INFO;
23703
22960
  } else {
23704
- this.#extensions.get("permessage-deflate").decompress(
23705
- body,
23706
- this.#info.fin,
23707
- (error, data) => {
23708
- if (error) {
23709
- const code = error instanceof MessageSizeExceededError ? 1009 : 1007;
23710
- failWebsocketConnection(this.#handler, code, error.message);
23711
- return;
23712
- }
23713
- if (!this.writeFragments(data)) {
23714
- return;
23715
- }
23716
- if (this.#maxPayloadSize > 0 && this.#fragmentsBytes > this.#maxPayloadSize) {
23717
- failWebsocketConnection(this.#handler, 1009, new MessageSizeExceededError().message);
23718
- return;
23719
- }
23720
- if (!this.#info.fin) {
23721
- this.#state = parserStates.INFO;
23722
- this.#loop = true;
23723
- this.run(callback);
23724
- return;
23725
- }
23726
- websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
23727
- this.#loop = true;
22961
+ this.#extensions.get("permessage-deflate").decompress(body, this.#info.fin, (error, data) => {
22962
+ if (error) {
22963
+ const code = error instanceof MessageSizeExceededError ? 1009 : 1007;
22964
+ failWebsocketConnection(this.#handler, code, error.message);
22965
+ return;
22966
+ }
22967
+ this.writeFragments(data);
22968
+ if (!this.#info.fin) {
23728
22969
  this.#state = parserStates.INFO;
22970
+ this.#loop = true;
23729
22971
  this.run(callback);
23730
- },
23731
- this.#fragmentsBytes
23732
- );
22972
+ return;
22973
+ }
22974
+ websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
22975
+ this.#loop = true;
22976
+ this.#state = parserStates.INFO;
22977
+ this.run(callback);
22978
+ });
23733
22979
  this.#loop = false;
23734
22980
  break;
23735
22981
  }
@@ -23777,13 +23023,8 @@ var require_receiver = __commonJS({
23777
23023
  }
23778
23024
  }
23779
23025
  writeFragments(fragment) {
23780
- if (this.#maxFragments > 0 && this.#fragments.length === this.#maxFragments) {
23781
- failWebsocketConnection(this.#handler, 1008, "Too many message fragments");
23782
- return false;
23783
- }
23784
23026
  this.#fragmentsBytes += fragment.length;
23785
23027
  this.#fragments.push(fragment);
23786
- return true;
23787
23028
  }
23788
23029
  consumeFragments() {
23789
23030
  const fragments = this.#fragments;
@@ -23873,9 +23114,9 @@ var require_receiver = __commonJS({
23873
23114
  }
23874
23115
  });
23875
23116
 
23876
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/sender.js
23117
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/sender.js
23877
23118
  var require_sender = __commonJS({
23878
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/sender.js"(exports, module) {
23119
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/sender.js"(exports, module) {
23879
23120
  "use strict";
23880
23121
  var { WebsocketFrameSend } = require_frame();
23881
23122
  var { opcodes, sendHints } = require_constants5();
@@ -23960,9 +23201,9 @@ var require_sender = __commonJS({
23960
23201
  }
23961
23202
  });
23962
23203
 
23963
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/websocket.js
23204
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/websocket.js
23964
23205
  var require_websocket = __commonJS({
23965
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/websocket.js"(exports, module) {
23206
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/websocket.js"(exports, module) {
23966
23207
  "use strict";
23967
23208
  var { isArrayBuffer } = __require("node:util/types");
23968
23209
  var { webidl } = require_webidl();
@@ -24250,13 +23491,7 @@ var require_websocket = __commonJS({
24250
23491
  */
24251
23492
  #onConnectionEstablished(response, parsedExtensions) {
24252
23493
  this.#handler.socket = response.socket;
24253
- const webSocketOptions = this.#handler.controller.dispatcher?.webSocketOptions;
24254
- const maxFragments = webSocketOptions?.maxFragments;
24255
- const maxPayloadSize = webSocketOptions?.maxPayloadSize;
24256
- const parser = new ByteParser(this.#handler, parsedExtensions, {
24257
- maxFragments,
24258
- maxPayloadSize
24259
- });
23494
+ const parser = new ByteParser(this.#handler, parsedExtensions);
24260
23495
  parser.on("drain", () => this.#handler.onParserDrain());
24261
23496
  parser.on("error", (err) => this.#handler.onParserError(err));
24262
23497
  this.#parser = parser;
@@ -24450,9 +23685,9 @@ var require_websocket = __commonJS({
24450
23685
  }
24451
23686
  });
24452
23687
 
24453
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/stream/websocketerror.js
23688
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/stream/websocketerror.js
24454
23689
  var require_websocketerror = __commonJS({
24455
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/stream/websocketerror.js"(exports, module) {
23690
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/stream/websocketerror.js"(exports, module) {
24456
23691
  "use strict";
24457
23692
  var { webidl } = require_webidl();
24458
23693
  var { validateCloseCodeAndReason } = require_util5();
@@ -24530,9 +23765,9 @@ var require_websocketerror = __commonJS({
24530
23765
  }
24531
23766
  });
24532
23767
 
24533
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/stream/websocketstream.js
23768
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/stream/websocketstream.js
24534
23769
  var require_websocketstream = __commonJS({
24535
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/websocket/stream/websocketstream.js"(exports, module) {
23770
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/websocket/stream/websocketstream.js"(exports, module) {
24536
23771
  "use strict";
24537
23772
  var { createDeferredPromise } = require_promise();
24538
23773
  var { environmentSettingsObject } = require_util2();
@@ -24700,12 +23935,7 @@ var require_websocketstream = __commonJS({
24700
23935
  /** @type {import('../websocket').Handler['onConnectionEstablished']} */
24701
23936
  #onConnectionEstablished(response, parsedExtensions) {
24702
23937
  this.#handler.socket = response.socket;
24703
- const maxFragments = this.#handler.controller.dispatcher?.webSocketOptions?.maxFragments;
24704
- const maxPayloadSize = this.#handler.controller.dispatcher?.webSocketOptions?.maxPayloadSize;
24705
- const parser = new ByteParser(this.#handler, parsedExtensions, {
24706
- maxFragments,
24707
- maxPayloadSize
24708
- });
23938
+ const parser = new ByteParser(this.#handler, parsedExtensions);
24709
23939
  parser.on("drain", () => this.#handler.onParserDrain());
24710
23940
  parser.on("error", (err) => this.#handler.onParserError(err));
24711
23941
  this.#parser = parser;
@@ -24716,6 +23946,12 @@ var require_websocketstream = __commonJS({
24716
23946
  start: (controller) => {
24717
23947
  this.#readableStreamController = controller;
24718
23948
  },
23949
+ pull(controller) {
23950
+ let chunk;
23951
+ while (controller.desiredSize > 0 && (chunk = response.socket.read()) !== null) {
23952
+ controller.enqueue(chunk);
23953
+ }
23954
+ },
24719
23955
  cancel: (reason) => this.#cancel(reason)
24720
23956
  });
24721
23957
  const writable = new WritableStream({
@@ -24742,7 +23978,7 @@ var require_websocketstream = __commonJS({
24742
23978
  try {
24743
23979
  chunk = utf8Decode(data);
24744
23980
  } catch {
24745
- failWebsocketConnection(this.#handler, 1007, "Received invalid UTF-8 in text frame.");
23981
+ failWebsocketConnection(this.#handler, "Received invalid UTF-8 in text frame.");
24746
23982
  return;
24747
23983
  }
24748
23984
  } else if (type === opcodes.BINARY) {
@@ -24841,9 +24077,9 @@ var require_websocketstream = __commonJS({
24841
24077
  }
24842
24078
  });
24843
24079
 
24844
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/util.js
24080
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/util.js
24845
24081
  var require_util6 = __commonJS({
24846
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/util.js"(exports, module) {
24082
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/util.js"(exports, module) {
24847
24083
  "use strict";
24848
24084
  function isValidLastEventId(value) {
24849
24085
  return value.indexOf("\0") === -1;
@@ -24862,9 +24098,9 @@ var require_util6 = __commonJS({
24862
24098
  }
24863
24099
  });
24864
24100
 
24865
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/eventsource-stream.js
24101
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/eventsource-stream.js
24866
24102
  var require_eventsource_stream = __commonJS({
24867
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/eventsource-stream.js"(exports, module) {
24103
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/eventsource-stream.js"(exports, module) {
24868
24104
  "use strict";
24869
24105
  var { Transform } = __require("node:stream");
24870
24106
  var { isASCIINumber, isValidLastEventId } = require_util6();
@@ -25093,9 +24329,9 @@ ${value}`;
25093
24329
  }
25094
24330
  });
25095
24331
 
25096
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/eventsource.js
24332
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/eventsource.js
25097
24333
  var require_eventsource = __commonJS({
25098
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/web/eventsource/eventsource.js"(exports, module) {
24334
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/eventsource/eventsource.js"(exports, module) {
25099
24335
  "use strict";
25100
24336
  var { pipeline } = __require("node:stream");
25101
24337
  var { fetching } = require_fetch();
@@ -25410,9 +24646,9 @@ var require_eventsource = __commonJS({
25410
24646
  }
25411
24647
  });
25412
24648
 
25413
- // node_modules/.pnpm/undici@7.29.0/node_modules/undici/index.js
24649
+ // node_modules/.pnpm/undici@7.24.8/node_modules/undici/index.js
25414
24650
  var require_undici = __commonJS({
25415
- "node_modules/.pnpm/undici@7.29.0/node_modules/undici/index.js"(exports, module) {
24651
+ "node_modules/.pnpm/undici@7.24.8/node_modules/undici/index.js"(exports, module) {
25416
24652
  "use strict";
25417
24653
  var Client = require_client();
25418
24654
  var Dispatcher2 = require_dispatcher();
@@ -25620,7 +24856,136 @@ import { readFile, stat } from "node:fs/promises";
25620
24856
  import { homedir } from "node:os";
25621
24857
  import { join, resolve } from "node:path";
25622
24858
 
25623
- // src/ids.ts
24859
+ // node_modules/.pnpm/dsh-coding-oauth-core@0.1.0/node_modules/dsh-coding-oauth-core/lib/proxy.js
24860
+ var import_undici = __toESM(require_undici(), 1);
24861
+ var DEFAULT_PROXIED_HOSTS = [
24862
+ "auth.x.ai",
24863
+ "cli-chat-proxy.grok.com",
24864
+ "auth.openai.com",
24865
+ "chatgpt.com",
24866
+ "claude.ai",
24867
+ "platform.claude.com",
24868
+ "api.anthropic.com",
24869
+ "accounts.google.com",
24870
+ "oauth2.googleapis.com",
24871
+ "cloudcode-pa.googleapis.com",
24872
+ "www.googleapis.com"
24873
+ ];
24874
+ var KIMI_PROXIED_HOSTS = ["auth.kimi.com", "api.kimi.com"];
24875
+ var CodingOAuthDispatcher = class extends import_undici.Dispatcher {
24876
+ proxied;
24877
+ fallback;
24878
+ hosts;
24879
+ constructor(proxied, fallback, hosts) {
24880
+ super();
24881
+ this.proxied = proxied;
24882
+ this.fallback = fallback;
24883
+ this.hosts = hosts;
24884
+ }
24885
+ dispatch(options, handler) {
24886
+ const origin = options.origin;
24887
+ const host = origin instanceof URL ? origin.hostname : typeof origin === "string" ? new URL(origin).hostname : "";
24888
+ return this.hosts.has(host) ? this.proxied.dispatch(options, handler) : this.fallback.dispatch(options, handler);
24889
+ }
24890
+ async close() {
24891
+ await this.proxied.close();
24892
+ }
24893
+ async destroy() {
24894
+ await this.proxied.destroy();
24895
+ }
24896
+ };
24897
+ var PROXY_ABI = "dsh.coding-oauth-core.proxy/v1";
24898
+ var PROXY_STORE_SYMBOL = /* @__PURE__ */ Symbol.for(`${PROXY_ABI}/store`);
24899
+ var legacyLease;
24900
+ function firstEnvironmentValue(names) {
24901
+ for (const name of names) {
24902
+ const value = process.env[name];
24903
+ if (value !== void 0 && value.length > 0)
24904
+ return value;
24905
+ }
24906
+ return void 0;
24907
+ }
24908
+ function proxyStore() {
24909
+ const host = globalThis;
24910
+ const existing = host[PROXY_STORE_SYMBOL];
24911
+ if (existing !== void 0) {
24912
+ const store = existing;
24913
+ if (store.abi !== PROXY_ABI)
24914
+ throw new Error("coding OAuth proxy ABI is incompatible");
24915
+ return store;
24916
+ }
24917
+ const created = { abi: PROXY_ABI };
24918
+ Object.defineProperty(host, PROXY_STORE_SYMBOL, {
24919
+ value: created,
24920
+ configurable: false,
24921
+ enumerable: false,
24922
+ writable: false
24923
+ });
24924
+ return created;
24925
+ }
24926
+ function acquireCodingOAuthProxy(explicit, options = {}) {
24927
+ const url = explicit ?? firstEnvironmentValue([
24928
+ "CODING_OAUTH_PROXY",
24929
+ "GROK_BUILD_PROXY",
24930
+ "HTTPS_PROXY",
24931
+ "https_proxy",
24932
+ "HTTP_PROXY",
24933
+ "http_proxy"
24934
+ ]);
24935
+ if (url === void 0)
24936
+ return { url: void 0, release: async () => void 0 };
24937
+ const hosts = new Set(DEFAULT_PROXIED_HOSTS);
24938
+ if (options.proxyKimi === true) {
24939
+ for (const host of KIMI_PROXIED_HOSTS)
24940
+ hosts.add(host);
24941
+ }
24942
+ const fingerprint = `${url}
24943
+ ${[...hosts].sort().join("\n")}`;
24944
+ const store = proxyStore();
24945
+ if (store.active !== void 0) {
24946
+ if (store.active.fingerprint !== fingerprint) {
24947
+ throw new Error("another coding OAuth owner already installed a different proxy policy");
24948
+ }
24949
+ store.active.refs += 1;
24950
+ return proxyLease(store, store.active);
24951
+ }
24952
+ const fallback = (0, import_undici.getGlobalDispatcher)();
24953
+ const dispatcher = new CodingOAuthDispatcher(new import_undici.ProxyAgent(url), fallback, hosts);
24954
+ const active = { dispatcher, fallback, fingerprint, url, refs: 1 };
24955
+ store.active = active;
24956
+ (0, import_undici.setGlobalDispatcher)(dispatcher);
24957
+ return proxyLease(store, active);
24958
+ }
24959
+ function proxyLease(store, active) {
24960
+ let released = false;
24961
+ return {
24962
+ url: active.url,
24963
+ async release() {
24964
+ if (released)
24965
+ return;
24966
+ released = true;
24967
+ active.refs -= 1;
24968
+ if (active.refs > 0 || store.active !== active)
24969
+ return;
24970
+ if ((0, import_undici.getGlobalDispatcher)() === active.dispatcher)
24971
+ (0, import_undici.setGlobalDispatcher)(active.fallback);
24972
+ delete store.active;
24973
+ await active.dispatcher.close();
24974
+ }
24975
+ };
24976
+ }
24977
+ function ensureCodingOAuthProxy(explicit, options = {}) {
24978
+ legacyLease ??= acquireCodingOAuthProxy(explicit, options);
24979
+ return legacyLease.url;
24980
+ }
24981
+ function codingOAuthProxyInEffect() {
24982
+ return proxyStore().active?.url;
24983
+ }
24984
+ function codingOAuthProxyUnreachableHint() {
24985
+ return codingOAuthProxyInEffect() === void 0 ? "" : "; check that CODING_OAUTH_PROXY is reachable";
24986
+ }
24987
+
24988
+ // node_modules/.pnpm/dsh-coding-oauth-core@0.1.0/node_modules/dsh-coding-oauth-core/lib/ids.js
25624
24989
  var XAI_PI_PROVIDER = "xai";
25625
24990
  var CODEX_PI_PROVIDER = "openai-codex";
25626
24991
  var KIMI_PI_PROVIDER = "kimi-coding";
@@ -25639,6 +25004,56 @@ var KIMI_CODE_OAUTH_MODELS_CACHE_FILENAME = ".kimi-code-oauth-models.json";
25639
25004
  var CLAUDE_CODE_OAUTH_MODELS_CACHE_FILENAME = ".claude-code-oauth-models.json";
25640
25005
  var DEFAULT_GROK_BUILD_MODEL = "grok-4.6";
25641
25006
 
25007
+ // node_modules/.pnpm/dsh-coding-oauth-core@0.1.0/node_modules/dsh-coding-oauth-core/lib/state-contract.js
25008
+ var GROK_BUILD_AUTH_STATUS_PATH = "/plugins/dsh-grok-build/auth/status";
25009
+ var GROK_BUILD_AUTH_LOGIN_PATH = "/plugins/dsh-grok-build/auth/login";
25010
+ var GROK_BUILD_AUTH_LOGIN_CODE_PATH = "/plugins/dsh-grok-build/auth/login/code";
25011
+ var GROK_BUILD_AUTH_LOGIN_CANCEL_PATH = "/plugins/dsh-grok-build/auth/login/cancel";
25012
+ var GROK_BUILD_AUTH_IMPORT_PATH = "/plugins/dsh-grok-build/auth/import";
25013
+ var GROK_BUILD_AUTH_LOGOUT_PATH = "/plugins/dsh-grok-build/auth/logout";
25014
+ var GROK_BUILD_AUTH_MODELS_PATH = "/plugins/dsh-grok-build/auth/models";
25015
+ var CODING_OAUTH_STATUS_PATH = "/plugins/dsh-grok-build/oauth/status";
25016
+ var CODING_OAUTH_LOGIN_PATH = "/plugins/dsh-grok-build/oauth/login";
25017
+ var CODING_OAUTH_LOGIN_CODE_PATH = "/plugins/dsh-grok-build/oauth/code";
25018
+ var CODING_OAUTH_LOGIN_CANCEL_PATH = "/plugins/dsh-grok-build/oauth/cancel";
25019
+ var CODING_OAUTH_LOGOUT_PATH = "/plugins/dsh-grok-build/oauth/logout";
25020
+ var CODING_OAUTH_MODELS_PATH = "/plugins/dsh-grok-build/oauth/models";
25021
+ var OAUTH_IMPORT_SOURCES_PATH = "/plugins/dsh-grok-build/oauth/sources";
25022
+ var OAUTH_IMPORT_PREVIEW_PATH = "/plugins/dsh-grok-build/oauth/sources/preview";
25023
+ var OAUTH_IMPORT_COMMIT_PATH = "/plugins/dsh-grok-build/oauth/sources/commit";
25024
+ var OAUTH_IMPORT_CANCEL_PATH = "/plugins/dsh-grok-build/oauth/sources/cancel";
25025
+ var CAPABILITY_SETTINGS_PATH = "/plugins/dsh-grok-build/capabilities";
25026
+ var CODEX_USAGE_PATH = "/plugins/dsh-grok-build/codex/usage";
25027
+ var IMAGINE_CREDENTIAL_STATUS_PATH = "/plugins/dsh-grok-build/imagine/credential-status";
25028
+ var GATEWAY_SETTINGS_PATH = "/plugins/dsh-grok-build/gateway";
25029
+ var GATEWAY_REVEAL_PATH = "/plugins/dsh-grok-build/gateway/reveal";
25030
+ var GATEWAY_ROTATE_PATH = "/plugins/dsh-grok-build/gateway/rotate";
25031
+ var CODING_OAUTH_MANAGEMENT_PATHS = Object.freeze([
25032
+ GROK_BUILD_AUTH_STATUS_PATH,
25033
+ GROK_BUILD_AUTH_LOGIN_PATH,
25034
+ GROK_BUILD_AUTH_LOGIN_CODE_PATH,
25035
+ GROK_BUILD_AUTH_LOGIN_CANCEL_PATH,
25036
+ GROK_BUILD_AUTH_IMPORT_PATH,
25037
+ GROK_BUILD_AUTH_LOGOUT_PATH,
25038
+ GROK_BUILD_AUTH_MODELS_PATH,
25039
+ CODING_OAUTH_STATUS_PATH,
25040
+ CODING_OAUTH_LOGIN_PATH,
25041
+ CODING_OAUTH_LOGIN_CODE_PATH,
25042
+ CODING_OAUTH_LOGIN_CANCEL_PATH,
25043
+ CODING_OAUTH_LOGOUT_PATH,
25044
+ CODING_OAUTH_MODELS_PATH,
25045
+ OAUTH_IMPORT_SOURCES_PATH,
25046
+ OAUTH_IMPORT_PREVIEW_PATH,
25047
+ OAUTH_IMPORT_COMMIT_PATH,
25048
+ OAUTH_IMPORT_CANCEL_PATH,
25049
+ CAPABILITY_SETTINGS_PATH,
25050
+ CODEX_USAGE_PATH,
25051
+ IMAGINE_CREDENTIAL_STATUS_PATH,
25052
+ GATEWAY_SETTINGS_PATH,
25053
+ GATEWAY_REVEAL_PATH,
25054
+ GATEWAY_ROTATE_PATH
25055
+ ]);
25056
+
25642
25057
  // src/grok-import.ts
25643
25058
  var DEFAULT_TOKEN_LIFETIME_MS = 60 * 60 * 1e3;
25644
25059
  function isENOENT(error) {
@@ -26148,77 +25563,6 @@ var GATEWAY_TOS_WARNING = "local API gateway is enabled; exposing a subscription
26148
25563
  import { Buffer as Buffer2 } from "node:buffer";
26149
25564
  import { createHash, randomBytes } from "node:crypto";
26150
25565
  import { createServer } from "node:http";
26151
-
26152
- // src/proxy.ts
26153
- var import_undici = __toESM(require_undici());
26154
- var DEFAULT_PROXIED_HOSTS = [
26155
- "auth.x.ai",
26156
- "cli-chat-proxy.grok.com",
26157
- "auth.openai.com",
26158
- "chatgpt.com",
26159
- "claude.ai",
26160
- "platform.claude.com",
26161
- "api.anthropic.com",
26162
- "accounts.google.com",
26163
- "oauth2.googleapis.com",
26164
- "cloudcode-pa.googleapis.com",
26165
- "www.googleapis.com"
26166
- ];
26167
- var KIMI_PROXIED_HOSTS = ["auth.kimi.com", "api.kimi.com"];
26168
- var CodingOAuthDispatcher = class extends import_undici.Dispatcher {
26169
- constructor(proxied, fallback, hosts) {
26170
- super();
26171
- this.proxied = proxied;
26172
- this.fallback = fallback;
26173
- this.hosts = hosts;
26174
- }
26175
- proxied;
26176
- fallback;
26177
- hosts;
26178
- dispatch(options, handler) {
26179
- const origin = options.origin;
26180
- const host = origin instanceof URL ? origin.hostname : typeof origin === "string" ? new URL(origin).hostname : "";
26181
- if (this.hosts.has(host)) return this.proxied.dispatch(options, handler);
26182
- return this.fallback.dispatch(options, handler);
26183
- }
26184
- async close() {
26185
- await this.proxied.close();
26186
- }
26187
- async destroy() {
26188
- await this.proxied.destroy();
26189
- }
26190
- };
26191
- var installedProxy;
26192
- var installed = false;
26193
- function firstEnv(names) {
26194
- for (const name of names) {
26195
- const value = process.env[name];
26196
- if (value !== void 0 && value.length > 0) return value;
26197
- }
26198
- return void 0;
26199
- }
26200
- function ensureCodingOAuthProxy(explicit, options = {}) {
26201
- if (installed) return installedProxy;
26202
- const url = explicit ?? firstEnv(["CODING_OAUTH_PROXY", "GROK_BUILD_PROXY", "HTTPS_PROXY", "https_proxy", "HTTP_PROXY", "http_proxy"]);
26203
- if (url === void 0) return void 0;
26204
- const hosts = new Set(DEFAULT_PROXIED_HOSTS);
26205
- if (options.proxyKimi === true) {
26206
- for (const host of KIMI_PROXIED_HOSTS) hosts.add(host);
26207
- }
26208
- const fallback = (0, import_undici.getGlobalDispatcher)();
26209
- (0, import_undici.setGlobalDispatcher)(new CodingOAuthDispatcher(new import_undici.ProxyAgent(url), fallback, hosts));
26210
- installed = true;
26211
- installedProxy = url;
26212
- return url;
26213
- }
26214
- function codingOAuthProxyInEffect() {
26215
- return installedProxy;
26216
- }
26217
- function codingOAuthProxyUnreachableHint() {
26218
- return installedProxy === void 0 ? "" : "; check that CODING_OAUTH_PROXY is reachable";
26219
- }
26220
-
26221
- // src/oauth.ts
26222
25566
  var GROK_BUILD_OAUTH_ISSUER = "https://auth.x.ai";
26223
25567
  var APPROVED_GROK_ISSUER_ORIGIN2 = "https://auth.x.ai";
26224
25568
  var DISCOVERY_MAX_BYTES = 64 * 1024;