@arcblock/did-connect-service 4.1.37 → 4.1.39

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 (111) hide show
  1. package/dist/_generated/asset-bytes.js +1 -1
  2. package/dist/_generated/asset-manifest.js +5 -5
  3. package/dist/_generated/header-bundle-string.d.ts +1 -1
  4. package/dist/_generated/header-bundle-string.d.ts.map +1 -1
  5. package/dist/_generated/header-bundle-string.js +1 -1
  6. package/dist/_generated/header-bundle-string.js.map +1 -1
  7. package/dist/_generated/login-bundle-string.d.ts +1 -1
  8. package/dist/_generated/login-bundle-string.d.ts.map +1 -1
  9. package/dist/_generated/login-bundle-string.js +1 -1
  10. package/dist/_generated/login-bundle-string.js.map +1 -1
  11. package/dist/assets/{admin-extra.979f5e56.js → admin-extra.c7a0720f.js} +3 -3
  12. package/dist/assets/{admin.f5f577f9.css → admin.ab0009f2.css} +22 -2
  13. package/dist/assets/{header.94d9e46b.js → header.8703ab26.js} +5 -5
  14. package/dist/assets/login.60fd0777.js +731 -0
  15. package/dist/assets/{login.7b12c6dc.css → login.a9c8b434.css} +11 -0
  16. package/dist/handler-errors.d.ts +868 -3
  17. package/dist/handler-errors.d.ts.map +1 -1
  18. package/dist/handler-errors.js +1067 -26
  19. package/dist/handler-errors.js.map +1 -1
  20. package/dist/handlers/access-key-connect-handler.d.ts.map +1 -1
  21. package/dist/handlers/access-key-connect-handler.js +20 -11
  22. package/dist/handlers/access-key-connect-handler.js.map +1 -1
  23. package/dist/handlers/access-key-handler.d.ts.map +1 -1
  24. package/dist/handlers/access-key-handler.js +18 -7
  25. package/dist/handlers/access-key-handler.js.map +1 -1
  26. package/dist/handlers/account-merge-handler.d.ts +2 -0
  27. package/dist/handlers/account-merge-handler.d.ts.map +1 -1
  28. package/dist/handlers/account-merge-handler.js +34 -29
  29. package/dist/handlers/account-merge-handler.js.map +1 -1
  30. package/dist/handlers/admin-instance-handler.d.ts.map +1 -1
  31. package/dist/handlers/admin-instance-handler.js +21 -17
  32. package/dist/handlers/admin-instance-handler.js.map +1 -1
  33. package/dist/handlers/auth-handler.d.ts.map +1 -1
  34. package/dist/handlers/auth-handler.js +14 -10
  35. package/dist/handlers/auth-handler.js.map +1 -1
  36. package/dist/handlers/blocklet-js-handler.d.ts.map +1 -1
  37. package/dist/handlers/blocklet-js-handler.js +2 -1
  38. package/dist/handlers/blocklet-js-handler.js.map +1 -1
  39. package/dist/handlers/branding-handler.d.ts +1 -0
  40. package/dist/handlers/branding-handler.d.ts.map +1 -1
  41. package/dist/handlers/branding-handler.js +15 -8
  42. package/dist/handlers/branding-handler.js.map +1 -1
  43. package/dist/handlers/did-connect-handler.d.ts +1 -0
  44. package/dist/handlers/did-connect-handler.d.ts.map +1 -1
  45. package/dist/handlers/did-connect-handler.js +40 -18
  46. package/dist/handlers/did-connect-handler.js.map +1 -1
  47. package/dist/handlers/email-login-handler.d.ts +81 -0
  48. package/dist/handlers/email-login-handler.d.ts.map +1 -1
  49. package/dist/handlers/email-login-handler.js +124 -23
  50. package/dist/handlers/email-login-handler.js.map +1 -1
  51. package/dist/handlers/federation-admin-handler.js +2 -2
  52. package/dist/handlers/federation-admin-handler.js.map +1 -1
  53. package/dist/handlers/oauth-handler.d.ts +1 -0
  54. package/dist/handlers/oauth-handler.d.ts.map +1 -1
  55. package/dist/handlers/oauth-handler.js +42 -53
  56. package/dist/handlers/oauth-handler.js.map +1 -1
  57. package/dist/handlers/passkey-handler.d.ts +1 -0
  58. package/dist/handlers/passkey-handler.d.ts.map +1 -1
  59. package/dist/handlers/passkey-handler.js +51 -37
  60. package/dist/handlers/passkey-handler.js.map +1 -1
  61. package/dist/handlers/team-handler.d.ts +2 -0
  62. package/dist/handlers/team-handler.d.ts.map +1 -1
  63. package/dist/handlers/team-handler.js +57 -35
  64. package/dist/handlers/team-handler.js.map +1 -1
  65. package/dist/locale.d.ts +40 -4
  66. package/dist/locale.d.ts.map +1 -1
  67. package/dist/locale.js +109 -34
  68. package/dist/locale.js.map +1 -1
  69. package/dist/pages/admin/i18n.d.ts.map +1 -1
  70. package/dist/pages/admin/i18n.js +1411 -6
  71. package/dist/pages/admin/i18n.js.map +1 -1
  72. package/dist/pages/admin/index.d.ts.map +1 -1
  73. package/dist/pages/admin/index.js +9 -5
  74. package/dist/pages/admin/index.js.map +1 -1
  75. package/dist/pages/admin/styles.d.ts +1 -1
  76. package/dist/pages/admin/styles.d.ts.map +1 -1
  77. package/dist/pages/admin/styles.js +22 -2
  78. package/dist/pages/admin/styles.js.map +1 -1
  79. package/dist/pages/admin/tab-branding.d.ts.map +1 -1
  80. package/dist/pages/admin/tab-branding.js +4 -6
  81. package/dist/pages/admin/tab-branding.js.map +1 -1
  82. package/dist/pages/admin-instances-page.d.ts +218 -0
  83. package/dist/pages/admin-instances-page.d.ts.map +1 -1
  84. package/dist/pages/admin-instances-page.js +133 -24
  85. package/dist/pages/admin-instances-page.js.map +1 -1
  86. package/dist/pages/error-page.d.ts +37 -0
  87. package/dist/pages/error-page.d.ts.map +1 -1
  88. package/dist/pages/error-page.js +33 -1
  89. package/dist/pages/error-page.js.map +1 -1
  90. package/dist/pages/gen-access-key-page.d.ts +126 -0
  91. package/dist/pages/gen-access-key-page.d.ts.map +1 -1
  92. package/dist/pages/gen-access-key-page.js +72 -20
  93. package/dist/pages/gen-access-key-page.js.map +1 -1
  94. package/dist/pages/homepage.d.ts +98 -0
  95. package/dist/pages/homepage.d.ts.map +1 -1
  96. package/dist/pages/homepage.js +66 -15
  97. package/dist/pages/homepage.js.map +1 -1
  98. package/dist/pages/invite-page.d.ts +90 -0
  99. package/dist/pages/invite-page.d.ts.map +1 -1
  100. package/dist/pages/invite-page.js +66 -17
  101. package/dist/pages/invite-page.js.map +1 -1
  102. package/dist/pages/login-page.d.ts +8 -0
  103. package/dist/pages/login-page.d.ts.map +1 -1
  104. package/dist/pages/login-page.js +12 -2
  105. package/dist/pages/login-page.js.map +1 -1
  106. package/dist/pages/oauth-callback-page.d.ts +52 -1
  107. package/dist/pages/oauth-callback-page.d.ts.map +1 -1
  108. package/dist/pages/oauth-callback-page.js +85 -8
  109. package/dist/pages/oauth-callback-page.js.map +1 -1
  110. package/package.json +3 -3
  111. package/dist/assets/login.566f858e.js +0 -720
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import { checkLoginAccess } from "../access/login-access-check.js";
17
17
  import { NATIVE_OAUTH_CALLBACK_PATH } from "../constants.js";
18
+ import { handlerError, localizeKnownHandlerError } from "../handler-errors.js";
18
19
  import { ensureInstanceMembership } from "../identity/auto-membership.js";
19
20
  import { deriveDID } from "../identity/federation.js";
20
21
  import { fetchGravatarUrl } from "../identity/gravatar.js";
@@ -22,6 +23,7 @@ import { requireJsonContentType } from "../identity/json-content-type.js";
22
23
  import { verifyJWT } from "../identity/jwt.js";
23
24
  import { appendSessionCookieDomain } from "../identity/session-cookie.js";
24
25
  import { issueSessionTokens } from "../identity/session-tokens.js";
26
+ import { detectLocale, loadEnabledLocales } from "../locale.js";
25
27
  import { consoleLogger } from "../logger.js";
26
28
  import { AppleAdapter } from "../oauth-adapters/apple.js";
27
29
  import { Auth0Adapter } from "../oauth-adapters/auth0.js";
@@ -30,7 +32,7 @@ import { FacebookAdapter } from "../oauth-adapters/facebook.js";
30
32
  import { GitHubAdapter } from "../oauth-adapters/github.js";
31
33
  import { GoogleAdapter } from "../oauth-adapters/google.js";
32
34
  import { TwitterAdapter } from "../oauth-adapters/twitter.js";
33
- import { renderOAuthCallbackPage } from "../pages/oauth-callback-page.js";
35
+ import { oauthCallbackCopy, renderOAuthCallbackErrorHTML, renderOAuthCallbackPage } from "../pages/oauth-callback-page.js";
34
36
  import { completeMergeProof, extractMergeChallenge } from "./account-merge-handler.js";
35
37
  import { downloadAndStoreAvatar } from "./avatar-handler.js";
36
38
  import { unbindAllOfProvider } from "./unbind-account.js";
@@ -68,6 +70,9 @@ export class OAuthHandler {
68
70
  this.options = options;
69
71
  this.logger = options.logger ?? consoleLogger;
70
72
  }
73
+ async localeFor(request, instanceDid) {
74
+ return detectLocale(request, await loadEnabledLocales(this.options.store, instanceDid));
75
+ }
71
76
  /** Register additional adapters (for Phase 2e providers). */
72
77
  static registerAdapter(adapter) {
73
78
  ADAPTERS[adapter.name] = adapter;
@@ -99,7 +104,7 @@ export class OAuthHandler {
99
104
  // GET or POST /oauth/callback/:provider
100
105
  const callbackMatch = path.match(/^\/\.well-known\/service\/oauth\/callback\/([a-z0-9_-]+)$/);
101
106
  if (callbackMatch && (method === "GET" || method === "POST")) {
102
- return this.handleCallback(request, callbackMatch[1]);
107
+ return this.handleCallback(request, callbackMatch[1], effDid);
103
108
  }
104
109
  // POST /api/oauth/login
105
110
  if (path === "/.well-known/service/api/oauth/login" && method === "POST") {
@@ -188,9 +193,11 @@ export class OAuthHandler {
188
193
  return new Response(html, { headers: { "Content-Type": "text/html; charset=utf-8" } });
189
194
  }
190
195
  /** GET/POST /oauth/callback/:provider — handle OAuth callback. */
191
- async handleCallback(request, _provider) {
196
+ async handleCallback(request, _provider, instanceDid) {
192
197
  const url = new URL(request.url);
193
198
  const origin = this.resolveOrigin(request);
199
+ const locale = detectLocale(request, await loadEnabledLocales(this.options.store, instanceDid));
200
+ const copy = oauthCallbackCopy(locale);
194
201
  // For POST callbacks (Apple), read form body
195
202
  let code;
196
203
  let stateParam;
@@ -212,10 +219,10 @@ export class OAuthHandler {
212
219
  provider: _provider,
213
220
  error,
214
221
  });
215
- return renderCallbackError(origin, error);
222
+ return renderCallbackError(origin, error, locale);
216
223
  }
217
224
  if (!code || !stateParam) {
218
- return renderCallbackError(origin, "Missing code or state");
225
+ return renderCallbackError(origin, copy.missingCodeOrState, locale);
219
226
  }
220
227
  // Validate CSRF state — decode base64 first, then parse JSON
221
228
  let statePayload;
@@ -229,7 +236,7 @@ export class OAuthHandler {
229
236
  statePayload = JSON.parse(stateParam);
230
237
  }
231
238
  catch {
232
- return renderCallbackError(origin, "Invalid state");
239
+ return renderCallbackError(origin, copy.invalidState, locale);
233
240
  }
234
241
  }
235
242
  const stored = await this.options.store.cacheGet(`oauth-state:${statePayload.nonce}`);
@@ -239,14 +246,14 @@ export class OAuthHandler {
239
246
  mod: "oauth",
240
247
  provider: _provider,
241
248
  });
242
- return renderCallbackError(origin, "Invalid or expired OAuth state");
249
+ return renderCallbackError(origin, copy.invalidOrExpired, locale);
243
250
  }
244
251
  // Verify the callback state matches the originally stored state (integrity check).
245
252
  // This prevents tampering with returnUrl or provider between login redirect and callback.
246
253
  // Compare decoded JSON — stored is JSON string, callback state may be base64 or raw JSON.
247
254
  const storedPayload = JSON.parse(stored);
248
255
  if (storedPayload.provider !== statePayload.provider || storedPayload.returnUrl !== statePayload.returnUrl) {
249
- return renderCallbackError(origin, "State mismatch");
256
+ return renderCallbackError(origin, copy.stateMismatch, locale);
250
257
  }
251
258
  // Don't delete yet — COOP fallback (handleServerExchange) needs to re-validate.
252
259
  // Keep original state for handleServerExchange to verify integrity.
@@ -255,7 +262,7 @@ export class OAuthHandler {
255
262
  // For POST callbacks (Apple), embed code/state in the HTML since
256
263
  // they won't be available in location.search on the client.
257
264
  const callbackParams = request.method === "POST" ? { code, state: stateParam } : undefined;
258
- return new Response(renderOAuthCallbackPage(origin, callbackParams), {
265
+ return new Response(renderOAuthCallbackPage(origin, callbackParams, locale), {
259
266
  headers: { "Content-Type": "text/html", "Cache-Control": "no-store" },
260
267
  });
261
268
  }
@@ -569,7 +576,8 @@ export class OAuthHandler {
569
576
  const rejected = requireJsonContentType(request);
570
577
  if (rejected)
571
578
  return rejected;
572
- const result = await this.exchangeOAuthCode(request, instanceDid);
579
+ const locale = await this.localeFor(request, instanceDid);
580
+ const result = await this.exchangeOAuthCode(request, instanceDid, locale);
573
581
  if (result instanceof Response)
574
582
  return result;
575
583
  const { provider, profile, wallet } = result;
@@ -716,6 +724,7 @@ export class OAuthHandler {
716
724
  store,
717
725
  mergeChallenge: result.mergeChallenge,
718
726
  fromDid: primaryDid,
727
+ locale,
719
728
  ip: apiIp,
720
729
  instanceDid,
721
730
  });
@@ -758,17 +767,18 @@ export class OAuthHandler {
758
767
  const rejected = requireJsonContentType(request);
759
768
  if (rejected)
760
769
  return rejected;
770
+ const locale = await this.localeFor(request, instanceDid);
761
771
  const caller = await this.verifyCaller(request);
762
772
  if (!caller)
763
773
  return jsonResponse({ error: "Authentication required" }, 401);
764
- const result = await this.exchangeOAuthCode(request, instanceDid);
774
+ const result = await this.exchangeOAuthCode(request, instanceDid, locale);
765
775
  if (result instanceof Response)
766
776
  return result;
767
777
  const { provider, profile, wallet } = result;
768
778
  // Check if this OAuth account is already registered by another user
769
779
  const existingAccount = await this.options.store.getConnectedAccountByDid(wallet.address);
770
780
  if (existingAccount && existingAccount.userDid !== caller.did) {
771
- return jsonResponse({ error: "This account is already registered by another user" }, 409);
781
+ return jsonResponse({ error: handlerError("accountAlreadyRegistered", locale) }, 409);
772
782
  }
773
783
  // Same UNIQUE(provider, id) pair can live under a *different* CA.did
774
784
  // (legacy derivation). Bind must not upsert-over that row.
@@ -776,13 +786,13 @@ export class OAuthHandler {
776
786
  if (existingByPair && existingByPair.userDid !== caller.did) {
777
787
  const owner = await this.options.store.getUserByDidOrConnectedAccount(existingByPair.userDid);
778
788
  if (!owner || owner.did !== caller.did) {
779
- return jsonResponse({ error: "This account is already registered by another user" }, 409);
789
+ return jsonResponse({ error: handlerError("accountAlreadyRegistered", locale) }, 409);
780
790
  }
781
791
  }
782
792
  // Check if current user already has this provider connected
783
793
  const alreadyBound = await this.options.store.getConnectedAccountByProviderAndUser(provider, caller.did);
784
794
  if (alreadyBound) {
785
- return jsonResponse({ error: "Provider already connected" }, 409);
795
+ return jsonResponse({ error: handlerError("providerAlreadyConnected", locale) }, 409);
786
796
  }
787
797
  // Same identity, different label. `did` is derived from `profile.sub`
788
798
  // alone, so a provider emitting a sub that another provider already stored
@@ -797,7 +807,7 @@ export class OAuthHandler {
797
807
  // removal rules — relabelling one into an OAuth account would, for
798
808
  // example, put a Remove button on the user's primary wallet row.
799
809
  return jsonResponse({
800
- error: `This identity is already registered as your ${existingAccount.provider} account and cannot be converted automatically`,
810
+ error: handlerError("identityCannotConvert", locale, { provider: existingAccount.provider }),
801
811
  }, 409);
802
812
  }
803
813
  return await this.relabelBoundAccount(existingAccount.did, existingAccount.provider, { provider, profile, wallet }, caller.did, request, instanceDid);
@@ -868,6 +878,7 @@ export class OAuthHandler {
868
878
  const rejected = requireJsonContentType(request);
869
879
  if (rejected)
870
880
  return rejected;
881
+ const locale = await this.localeFor(request, instanceDid);
871
882
  const caller = await this.verifyCaller(request);
872
883
  if (!caller)
873
884
  return jsonResponse({ error: "Authentication required" }, 401);
@@ -876,21 +887,21 @@ export class OAuthHandler {
876
887
  body = await request.json();
877
888
  }
878
889
  catch {
879
- return jsonResponse({ error: "Invalid request body" }, 400);
890
+ return jsonResponse({ error: handlerError("invalidRequestBody", locale) }, 400);
880
891
  }
881
892
  const { provider } = body;
882
893
  if (!provider)
883
- return jsonResponse({ error: "Missing provider" }, 400);
894
+ return jsonResponse({ error: handlerError("missingProvider", locale) }, 400);
884
895
  // Own-property check: `ADAPTERS[provider]` is true for "__proto__" / "constructor".
885
896
  if (typeof provider !== "string" || !Object.hasOwn(ADAPTERS, provider)) {
886
- return jsonResponse({ error: "Invalid provider" }, 400);
897
+ return jsonResponse({ error: handlerError("invalidProvider", locale) }, 400);
887
898
  }
888
899
  // Drop every row of this provider, including leftovers whose CA.did is
889
900
  // not the currently derived DID. `.first()` left those behind and the
890
901
  // next login 500'd on UNIQUE(provider, id).
891
902
  const unbound = await unbindAllOfProvider(this.options.store, provider, caller.did);
892
903
  if (!unbound.ok)
893
- return jsonResponse({ error: unbound.error }, unbound.status);
904
+ return jsonResponse({ error: localizeKnownHandlerError(unbound.error, locale) }, unbound.status);
894
905
  await this.options.store.createAuditLog({
895
906
  action: "oauth.unbind",
896
907
  operatorDid: caller.did,
@@ -905,19 +916,19 @@ export class OAuthHandler {
905
916
  * Parse request body, resolve provider config/adapter, and exchange OAuth code.
906
917
  * Returns a Response on validation/exchange error, or the resolved result.
907
918
  */
908
- async exchangeOAuthCode(request, instanceDid) {
919
+ async exchangeOAuthCode(request, instanceDid, locale) {
909
920
  let body;
910
921
  try {
911
922
  body = await request.json();
912
923
  }
913
924
  catch {
914
- return jsonResponse({ error: "Invalid request body" }, 400);
925
+ return jsonResponse({ error: handlerError("invalidRequestBody", locale) }, 400);
915
926
  }
916
927
  const { provider, code, idToken, redirectUri } = body;
917
928
  // Web flow supplies an authorization `code`; native flows (e.g. Apple Sign
918
929
  // In on iOS) supply an `idToken` directly and have no code.
919
930
  if (!provider || (!code && !idToken)) {
920
- return jsonResponse({ error: "Missing provider or code" }, 400);
931
+ return jsonResponse({ error: handlerError("missingProviderOrCode", locale) }, 400);
921
932
  }
922
933
  // Federation: load provider config from Master's scope if this is a member
923
934
  let configDid = instanceDid;
@@ -928,17 +939,17 @@ export class OAuthHandler {
928
939
  }
929
940
  const config = await this.loadProviderConfig(provider, configDid);
930
941
  if (!config)
931
- return jsonResponse({ error: `Provider "${provider}" not configured` }, 404);
942
+ return jsonResponse({ error: handlerError("providerNotConfigured", locale, { provider }) }, 404);
932
943
  const adapter = ADAPTERS[provider];
933
944
  if (!adapter)
934
- return jsonResponse({ error: `Provider "${provider}" not supported` }, 404);
945
+ return jsonResponse({ error: handlerError("providerNotSupported", locale, { provider }) }, 404);
935
946
  const callbackUrl = redirectUri || this.getCallbackUrl(request, provider);
936
947
  let profile;
937
948
  try {
938
949
  if (idToken) {
939
950
  // Native id_token flow (no authorization code).
940
951
  if (!adapter.verifyIdToken) {
941
- return jsonResponse({ error: `Provider "${provider}" does not support native id_token login` }, 400);
952
+ return jsonResponse({ error: handlerError("providerNoNativeIdToken", locale, { provider }) }, 400);
942
953
  }
943
954
  profile = await adapter.verifyIdToken({ config, idToken, store: this.options.store });
944
955
  }
@@ -953,7 +964,8 @@ export class OAuthHandler {
953
964
  }
954
965
  catch (err) {
955
966
  const message = err instanceof Error ? err.message : "OAuth exchange failed";
956
- return jsonResponse({ error: message }, 400);
967
+ this.logger.warn({ message: "oauth code exchange failed", mod: "oauth", provider, err: message });
968
+ return jsonResponse({ error: handlerError("oauthExchangeFailed", locale) }, 400);
957
969
  }
958
970
  const wallet = await deriveDID(profile.sub, {
959
971
  appSk: this.options.appSk,
@@ -1064,32 +1076,9 @@ function jsonResponse(data, status = 200) {
1064
1076
  headers: { "Content-Type": "application/json", "Cache-Control": "private, no-store" },
1065
1077
  });
1066
1078
  }
1067
- /** Escape string for safe embedding inside <script> — prevents XSS breakout. */
1068
- function escapeForScript(s) {
1069
- return s.replace(/<\/(script)/gi, "<\\/$1");
1070
- }
1071
- function renderCallbackError(origin, error) {
1072
- const errorJson = escapeForScript(JSON.stringify(error));
1073
- const originJson = escapeForScript(JSON.stringify(origin));
1074
- const html = `<!DOCTYPE html>
1075
- <html><head><style>
1076
- body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0b;color:#9394a1;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:14px}
1077
- .wrap{text-align:center} .err{color:#f87171;margin-top:12px}
1078
- </style></head><body>
1079
- <div class="wrap"><div id="status">Completing sign in...</div><div class="err" id="err"></div></div>
1080
- <script>
1081
- if (window.opener) {
1082
- window.opener.postMessage({
1083
- type: 'authorization_response',
1084
- error: ${errorJson}
1085
- }, ${originJson});
1086
- setTimeout(function() { window.close(); }, 300);
1087
- } else {
1088
- document.getElementById('status').textContent = 'Sign in failed';
1089
- document.getElementById('err').textContent = ${errorJson};
1090
- }
1091
- </script>
1092
- </body></html>`;
1093
- return new Response(html, { headers: { "Content-Type": "text/html", "Cache-Control": "no-store" } });
1079
+ function renderCallbackError(origin, error, locale) {
1080
+ return new Response(renderOAuthCallbackErrorHTML(origin, error, locale), {
1081
+ headers: { "Content-Type": "text/html", "Cache-Control": "no-store" },
1082
+ });
1094
1083
  }
1095
1084
  //# sourceMappingURL=oauth-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-handler.js","sourceRoot":"","sources":["../../src/handlers/oauth-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAe,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAuB1D;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,OAAqB,EACrB,aAA6B;IAE7B,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,aAAa,KAAK,OAAO,CAAC,KAAK,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,+CAA+C;AAC/C,MAAM,QAAQ,GAAiC;IAC7C,MAAM,EAAE,IAAI,aAAa,EAAE;IAC3B,MAAM,EAAE,IAAI,aAAa,EAAE;IAC3B,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,OAAO,EAAE,IAAI,cAAc,EAAE;IAC7B,QAAQ,EAAE,IAAI,eAAe,EAAE;IAC/B,KAAK,EAAE,IAAI,YAAY,EAAE;IACzB,cAAc,EAAE,IAAI,kBAAkB,EAAE;CACzC,CAAC;AAEF,MAAM,OAAO,YAAY;IACf,OAAO,CAAsB;IAC7B,MAAM,CAAS;IAEvB,YAAY,OAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC;IAChD,CAAC;IAED,6DAA6D;IAC7D,MAAM,CAAC,eAAe,CAAC,OAAqB;QAC1C,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IACnC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,WAAoB;QAChD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,MAAM,GAAG,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC;QAErE,yBAAyB;QACzB,IAAI,IAAI,KAAK,wCAAwC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QAED,4CAA4C;QAC5C,wEAAwE;QACxE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,6DAA6D,CAC9D,IAAI,IAAI,CAAC,KAAK,CACb,wDAAwD,CACzD,CAAC;QACF,IAAI,UAAU,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAE,EAAE,MAAM,CAAC,CAAC;QAC3D,CAAC;QAED,oEAAoE;QACpE,uEAAuE;QACvE,IAAI,IAAI,KAAK,8CAA8C,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;QAED,wCAAwC;QACxC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAC9B,2DAA2D,CAC5D,CAAC;QACF,IAAI,aAAa,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAE,CAAC,CAAC;QACzD,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,KAAK,sCAAsC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,KAAK,qCAAqC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,KAAK,uCAAuC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IACpE,KAAK,CAAC,gBAAgB,CAAC,WAAmB;QAChD,sEAAsE;QACtE,IAAI,SAAS,GAAG,WAAW,CAAC;QAC5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACpF,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAC1F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAC1F,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU;gBAAE,SAAS,GAAG,UAAU,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;aACnC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAwC,CAAC;YACjE,OAAO;gBACL,IAAI;gBACJ,QAAQ,EAAG,GAAG,CAAC,QAAmB,IAAI,EAAE;gBACxC,OAAO,EAAG,GAAG,CAAC,OAAmB,IAAI,IAAI;gBACzC,KAAK,EAAG,GAAG,CAAC,KAAgB,IAAI,GAAG;aACpC,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC;aAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QACrD,OAAO,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,4EAA4E;IACpE,KAAK,CAAC,WAAW,CAAC,OAAgB,EAAE,QAAgB,EAAE,WAAmB;QAC/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,QAAQ,kBAAkB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,QAAQ,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE1F,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC;QAC7F,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE3D,sCAAsC;QACtC,qEAAqE;QACrE,6EAA6E;QAC7E,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEhC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,KAAK,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAEzE,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAC1C,MAAM;YACN,WAAW;YACX,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QAEH,6DAA6D;QAC7D,mEAAmE;QACnE,qDAAqD;QACrD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,IAAI,GAAG;;;;;;;;;;;wBAWO,YAAY;;6BAEP,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;eACrC,CAAC;QACZ,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,cAAc,CAAC,OAAgB,EAAE,SAAiB;QAC9D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE3C,6CAA6C;QAC7C,IAAI,IAAmB,CAAC;QACxB,IAAI,UAAyB,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC1C,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAkB,CAAC;YAC7C,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAkB,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,2BAA2B;QAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,wCAAwC;gBACjD,GAAG,EAAE,OAAO;gBACZ,QAAQ,EAAE,SAAS;gBACnB,KAAK;aACN,CAAC,CAAC;YACH,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO,mBAAmB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAC9D,CAAC;QAED,6DAA6D;QAC7D,IAAI,YAAsE,CAAC;QAC3E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;YAC5E,IAAI,CAAC;gBACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,mBAAmB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,mDAAmD;gBAC5D,GAAG,EAAE,OAAO;gBACZ,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;YACH,OAAO,mBAAmB,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;QACvE,CAAC;QACD,mFAAmF;QACnF,0FAA0F;QAC1F,0FAA0F;QAC1F,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;QACpE,IAAI,aAAa,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ,IAAI,aAAa,CAAC,SAAS,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;YAC3G,OAAO,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;QACD,gFAAgF;QAChF,oEAAoE;QACpE,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEpF,gDAAgD;QAChD,iEAAiE;QACjE,4DAA4D;QAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,OAAO,IAAI,QAAQ,CAAC,uBAAuB,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE;YACnE,OAAO,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE;SACtE,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,oBAAoB,CAAC,OAAgB,EAAE,WAAmB;QACtE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO,IAAI,QAAQ,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,YAAuE,CAAC;QAC5E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC;gBACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,QAAQ,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,IAAI,QAAQ,CAAC,wBAAwB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,QAAQ,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,qEAAqE;QACrE,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;YACpE,IAAI,aAAa,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ,IAAI,aAAa,CAAC,SAAS,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;gBAC3G,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC1E,OAAO,IAAI,QAAQ,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,QAAQ,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,QAAQ,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,QAAQ,CAAC,aAAa,QAAQ,kBAAkB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAE3F,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,QAAQ,CAAC,aAAa,QAAQ,iBAAiB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAE3F,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE3D,IAAI,OAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;gBACnC,MAAM;gBACN,IAAI;gBACJ,WAAW,EAAE,WAAW;gBACxB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;aAC1B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACnE,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,CAAC;QAED,oEAAoE;QACpE,2DAA2D;QAC3D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1C,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;SACpC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAEzB,uDAAuD;QACvD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAC5E,OAAO,EACP,QAAQ,EACR,OAAO,CAAC,GAAG,CACZ,CAAC;QACF,MAAM,SAAS,GAAG,CAAC,YAAY,CAAC;QAChC,MAAM,UAAU,GAAG,YAAY,EAAE,GAAG,IAAI,OAAO,CAAC;QAEhD,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAE/C,IAAI,SAAS,EAAE,CAAC;YACd,+DAA+D;YAC/D,MAAM,cAAc,GAAG,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;YAC7C,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,KAAK,CAAC,cAAc,CAAC;wBACzB,MAAM,EAAE,uBAAuB;wBAC/B,WAAW,EAAE,OAAO;wBACpB,QAAQ,EAAE,EAAE,MAAM,EAAE,SAAS,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,QAAQ,EAAE;wBAC5G,EAAE;wBACF,WAAW,EAAE,cAAc;qBAC5B,CAAC,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,SAAS,IAAI,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;oBACrE,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;oBAC1D,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;wBACxB,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,eAAe,EAAE,mBAAmB,EAAE;qBACjF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACxF,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,KAAK,CAAC,UAAU,CAAC;gBACrB,GAAG,EAAE,OAAO;gBACZ,EAAE,EAAE,MAAM;gBACV,QAAQ,EAAE,OAAO,CAAC,IAAI;gBACtB,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,MAAM;gBACN,cAAc,EAAE,QAAQ;gBACxB,EAAE;gBACF,MAAM,EAAE,QAAQ;gBAChB,aAAa,EAAE,WAAW,CAAC,aAAa,IAAI,CAAC;gBAC7C,SAAS,EAAE,OAAO;aACnB,CAAC,CAAC;YACH,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;YACD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;gBAClD,MAAM,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YACtD,sEAAsE;YACtE,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,aAAa,GAAgE;gBACjF,GAAG,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC;aAClD,CAAC;YACF,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM;gBAAE,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACnF,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,KAAK,CAAC,iBAAiB,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,MAAM,KAAK,CAAC,sBAAsB,CAAC;YACjC,GAAG,EAAE,aAAa;YAClB,EAAE,EAAE,MAAM;YACV,OAAO,EAAE,UAAU;YACnB,QAAQ;YACR,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;gBACvB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YACF,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QAEH,mEAAmE;QACnE,mDAAmD;QACnD,MAAM,cAAc,GAAG,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,aAAiC,CAAC;QACtC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC3E,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;YAC/D,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ,IAAI,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;gBACrG,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC;YACpC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,SAAS,IAAI,cAAc,EAAE,CAAC;YACjC,MAAM,wBAAwB,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,KAAK,CAAC,cAAc,CAAC;YACzB,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY;YAClD,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;YACxC,EAAE;YACF,WAAW,EAAE,cAAc;SAC5B,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAC1D,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7F,CAAC;QAED,qFAAqF;QACrF,2FAA2F;QAC3F,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,GAAG,CAAC;QAChD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC;QAChE,IAAI,YAAY,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAC/C,IAAI,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;gBACnC,MAAM,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;gBACrE,MAAM,SAAS,GAAG,GAAG,YAAY,yCAAyC,MAAM,EAAE,CAAC;gBACnF,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;oBACxB,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE;iBACvE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,MAAM,OAAO,GAAG,YAAY,IAAI,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,SAAS,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO,CAA+B,CAAC;QAEzE,uEAAuE;QACvE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACtE,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;gBACrB,SAAS,GAAG,UAAU,CAAC,IAAkC,CAAC;YAC5D,CAAC;iBAAM,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBAC1D,SAAS,GAAG,OAAO,CAAC;YACtB,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5D,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;gBACxB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,mBAAmB,EAAE;aACzE,CAAC,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAA4B;YAC1C,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,UAAU;YACf,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,MAAM;YACzB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,CAAC;YACN,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,IAAI,OAAO,EAAE,QAAQ;YAAE,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC9D,8EAA8E;QAC9E,iFAAiF;QACjF,gFAAgF;QAChF,8EAA8E;QAC9E,8CAA8C;QAC9C,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,MAAM,kBAAkB,CACpD,UAAU,EACV,UAAU,EACV,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAC9E,KAAK,CACN,CAAC;QAEF,sDAAsD;QACtD,wEAAwE;QACxE,gEAAgE;QAChE,oEAAoE;QACpE,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,uDAAuD;QACvD,yEAAyE;QACzE,wDAAwD;QACxD,EAAE;QACF,kBAAkB;QAClB,uEAAuE;QACvE,yEAAyE;QACzE,qCAAqC;QACrC,uEAAuE;QACvE,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,oEAAoE;QACpE,oEAAoE;QACpE,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,qEAAqE;QACrE,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;YAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAClD,gBAAgB,GAAG,EAAE,CAAC,MAAM,KAAK,aAAa;mBACzC,EAAE,CAAC,QAAQ,KAAK,QAAQ;mBACxB,EAAE,CAAC,QAAQ,KAAK,0BAA0B,CAAC;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,CAAC,4DAA4D,CAAC,CAAC;QAC5E,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACtC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;gBACxB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE;oBACP,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACtB,eAAe,EAAE,mBAAmB;oBACpC,iBAAiB,EAAE,aAAa;iBACjC;aACF,CAAC,CAAC;QACL,CAAC;QAED,4EAA4E;QAC5E,+EAA+E;QAC/E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC5D,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,GAAG,YAAY,UAAU,0BAA0B,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1H,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,MAAM,GAAG,yBAAyB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtF,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxB,MAAM,EAAE,GAAG;YACX,OAAO,EAAE;gBACP,QAAQ,EAAE,SAAS;gBACnB,YAAY,EAAE,MAAM;gBACpB,eAAe,EAAE,mBAAmB;aACrC;SACF,CAAC,CAAC;IACL,CAAC;IAED,4DAA4D;IACpD,KAAK,CAAC,cAAc,CAAC,OAAgB,EAAE,WAAmB;QAChE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClE,IAAI,MAAM,YAAY,QAAQ;YAAE,OAAO,MAAM,CAAC;QAE9C,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC7C,oFAAoF;QACpF,IAAI,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC1D,IAAI,KAAK;gBAAE,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;QAEhC,wBAAwB;QACxB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,MAAM,KAAK,CAAC,oBAAoB,CAC5E,OAAO,EACP,QAAQ,EACR,OAAO,CAAC,GAAG,CACZ,CAAC;QACF,MAAM,SAAS,GAAG,CAAC,YAAY,CAAC;QAChC,MAAM,UAAU,GAAG,YAAY,EAAE,GAAG,IAAI,OAAO,CAAC;QAEhD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;QACnE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAElD,qDAAqD;QACrD,IAAI,WAAmD,CAAC;QACxD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAC3D,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC5I,WAAW,GAAG,UAAU,CAAC,IAAkC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,6DAA6D;YAC7D,MAAM,cAAc,GAAG,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;YAC7C,IAAI,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,KAAK,CAAC,cAAc,CAAC;wBACzB,MAAM,EAAE,uBAAuB;wBAC/B,WAAW,EAAE,OAAO;wBACpB,QAAQ,EAAE,EAAE,MAAM,EAAE,SAAS,QAAQ,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,WAAW,EAAE;wBACzI,EAAE,EAAE,KAAK;wBACT,WAAW,EAAE,cAAc;qBAC5B,CAAC,CAAC;oBACH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,EAAE;wBACpE,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE;qBACtF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,wFAAwF;YACxF,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACxF,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,KAAK,CAAC,UAAU,CAAC;gBACrB,GAAG,EAAE,OAAO;gBACZ,EAAE,EAAE,MAAM;gBACV,QAAQ,EAAE,OAAO,CAAC,IAAI;gBACtB,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,MAAM;gBACN,cAAc,EAAE,QAAQ;gBACxB,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,WAAW;gBACnB,aAAa,EAAE,WAAW,CAAC,aAAa,IAAI,CAAC;gBAC7C,SAAS,EAAE,OAAO;aACnB,CAAC,CAAC;YAEH,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;YAED,wDAAwD;YACxD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACnE,MAAM,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1F,CAAC;iBAAM,IAAI,WAAW,EAAE,CAAC;gBACvB,gDAAgD;gBAChD,MAAM,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YAC5D,sEAAsE;YACtE,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,aAAa,GAAgE;gBACjF,GAAG,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC;aAClD,CAAC;YACF,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,MAAM;gBAAE,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACnF,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,KAAK,CAAC,iBAAiB,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,MAAM,KAAK,CAAC,sBAAsB,CAAC;YACjC,GAAG,EAAE,aAAa;YAClB,EAAE,EAAE,MAAM;YACV,OAAO,EAAE,UAAU;YACnB,QAAQ;YACR,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;gBACvB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YACF,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QAEH,mEAAmE;QACnE,MAAM,eAAe,GAAG,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE,CAAC;YAClC,MAAM,wBAAwB,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;QAClF,CAAC;QAED,kEAAkE;QAClE,oEAAoE;QAEpE,YAAY;QACZ,MAAM,KAAK,CAAC,cAAc,CAAC;YACzB,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY;YAClD,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YACtF,EAAE,EAAE,KAAK;YACT,WAAW,EAAE,eAAe;SAC7B,CAAC,CAAC;QAEH,qEAAqE;QACrE,IAAI,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAC1D,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7F,CAAC;QAED,4CAA4C;QAC5C,MAAM,OAAO,GAAG,YAAY,IAAI,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,YAAY,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO,CAA+B,CAAC;QAE5E,uEAAuE;QACvE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACtE,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;gBACrB,YAAY,GAAG,UAAU,CAAC,IAAkC,CAAC;YAC/D,CAAC;iBAAM,IAAI,YAAY,KAAK,OAAO,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;gBAChE,YAAY,GAAG,OAAO,CAAC;YACzB,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAC3E,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO,YAAY,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC;YACxC,KAAK;YACL,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,OAAO,EAAE,UAAU;YACnB,EAAE,EAAE,KAAK;YACT,WAAW;SACZ,CAAC,CAAC;QACH,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,UAAU,GAA4B;YAC1C,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,UAAU;YACf,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,MAAM;YACzB,IAAI,EAAE,YAAY;YAClB,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,CAAC;YACN,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,IAAI,OAAO,EAAE,QAAQ;YAAE,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC9D,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,MAAM,kBAAkB,CAClE,UAAU,EACV,UAAU,EACV,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAC9E,KAAK,CACN,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAC5D,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,GAAG,YAAY,UAAU,0BAA0B,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1H,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,MAAM,GAAG,yBAAyB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAEtF,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,mBAAmB;SACrC,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACrC,4EAA4E;QAC5E,qDAAqD;QACrD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,0CAA0C,UAAU,eAAe,CAAC,CAAC;QACpG,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE;YAClG,MAAM,EAAE,GAAG;YACX,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,UAAU,CAAC,OAAgB,EAAE,WAAmB;QAC5D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE5E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClE,IAAI,MAAM,YAAY,QAAQ;YAAE,OAAO,MAAM,CAAC;QAE9C,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE7C,oEAAoE;QACpE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1F,IAAI,eAAe,IAAI,eAAe,CAAC,OAAO,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC9D,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5F,CAAC;QACD,qEAAqE;QACrE,2DAA2D;QAC3D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC/F,IAAI,cAAc,IAAI,cAAc,CAAC,OAAO,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC5D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAC9F,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;gBACvC,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,EAAE,GAAG,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAChF,QAAQ,EACR,MAAM,CAAC,GAAG,CACX,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC;QAED,sEAAsE;QACtE,2EAA2E;QAC3E,qEAAqE;QACrE,yEAAyE;QACzE,uEAAuE;QACvE,2EAA2E;QAC3E,uDAAuD;QACvD,IAAI,eAAe,IAAI,eAAe,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACxC,wEAAwE;gBACxE,mEAAmE;gBACnE,iEAAiE;gBACjE,OAAO,YAAY,CACjB;oBACE,KAAK,EAAE,+CAA+C,eAAe,CAAC,QAAQ,gDAAgD;iBAC/H,EACD,GAAG,CACJ,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,eAAe,CAAC,GAAG,EACnB,eAAe,CAAC,QAAQ,EACxB,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,EAC7B,MAAM,CAAC,GAAG,EACV,OAAO,EACP,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;YAC9C,GAAG,EAAE,MAAM,CAAC,OAAO;YACnB,EAAE,EAAE,MAAM,CAAC,SAAS;YACpB,OAAO,EAAE,MAAM,CAAC,GAAG;YACnB,QAAQ;YACR,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;gBACvB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;YACF,KAAK,EAAE,MAAM,CAAC,GAAG;SAClB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC;YACtC,MAAM,EAAE,YAAY;YACpB,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE;YACtB,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS;YACxD,WAAW,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,mBAAmB,CAC/B,GAAW,EACX,gBAAwB,EACxB,IAAiG,EACjG,SAAiB,EACjB,OAAgB,EAChB,WAAmB;QAEnB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAE3C,MAAM,KAAK,CAAC,+BAA+B,CACzC,GAAG,EACH,QAAQ,EACR;YACE,EAAE,EAAE,MAAM,CAAC,SAAS;YACpB,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;gBACvB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC;SACH,EACD,SAAS,CACV,CAAC;QAEF,uEAAuE;QACvE,sEAAsE;QACtE,uEAAuE;QACvE,8CAA8C;QAC9C,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,IAAI,EAAE,cAAc,KAAK,gBAAgB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC;YACvE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,gBAAgB,CAAC,EAAE,CAAC;gBAC5D,MAAM,KAAK,CAAC,wBAAwB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,MAAM,KAAK,CAAC,cAAc,CAAC;YACzB,MAAM,EAAE,cAAc;YACtB,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE;YAC7C,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS;YACxD,WAAW,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,wEAAwE;IAChE,KAAK,CAAC,YAAY,CAAC,OAAgB,EAAE,WAAmB;QAC9D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE5E,IAAI,IAA2B,CAAC;QAChC,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,QAAQ;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,GAAG,CAAC,CAAC;QACvE,oFAAoF;QACpF,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YACvE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,uEAAuE;QACvE,sEAAsE;QACtE,4CAA4C;QAC5C,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAE/E,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC;YACtC,MAAM,EAAE,cAAc;YACtB,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE;YACtB,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS;YACxD,WAAW,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,4EAA4E;IAE5E;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAC7B,OAAgB,EAChB,WAAmB;QAWnB,IAAI,IAQH,CAAC;QACF,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QACtD,2EAA2E;QAC3E,4DAA4D;QAC5D,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QAED,2EAA2E;QAC3E,IAAI,SAAS,GAAG,WAAW,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAC1F,IAAI,UAAU;gBAAE,SAAS,GAAG,UAAU,CAAC,CAAC,uBAAuB;QACjE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,QAAQ,kBAAkB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO;YAAE,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,QAAQ,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;QAE1F,MAAM,WAAW,GAAG,WAAW,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE1E,IAAI,OAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,gDAAgD;gBAChD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;oBAC3B,OAAO,YAAY,CACjB,EAAE,KAAK,EAAE,aAAa,QAAQ,0CAA0C,EAAE,EAC1E,GAAG,CACJ,CAAC;gBACJ,CAAC;gBACD,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;oBACnC,MAAM;oBACN,IAAI,EAAE,IAAK;oBACX,WAAW,EAAE,WAAW;oBACxB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;iBAC1B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC;YAC7E,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1C,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;SACpC,CAAC,CAAC;QAEH,8DAA8D;QAC9D,IAAI,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAA2B,CAAC;gBACzE,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;oBACxB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oBAC/C,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;gBAC/D,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE5D,OAAO;YACL,QAAQ;YACR,OAAO;YACP,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;YACrD,YAAY;YACZ,cAAc;SACf,CAAC;IACJ,CAAC;IAED,+CAA+C;IACvC,KAAK,CAAC,cAAc,CAAC,WAAmB;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACpE,MAAM,OAAO,GAAwC,EAAE,CAAC;QACxD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,CAAC;oBACH,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,wDAAwD;IAChD,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,WAAmB;QACpE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,QAAQ,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,oFAAoF;IAC5E,cAAc,CAAC,OAAgB,EAAE,QAAgB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC7E,OAAO,GAAG,MAAM,uCAAuC,QAAQ,EAAE,CAAC;IACpE,CAAC;IAED,uFAAuF;IAC/E,aAAa,CAAC,OAAgB;QACpC,yEAAyE;QACzE,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,YAAY,CAAC,OAAgB,EAAE,IAAY,EAAE,OAAgB;QACnE,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAChE,IAAI,cAAc;YAAE,OAAO,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC;QAChE,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAClE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,gEAAgE;IACxD,KAAK,CAAC,YAAY,CAAC,OAAgB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,UAAU,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC/F,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAC9C,CAAC;CACF;AAED,SAAS,YAAY,CAAC,IAAa,EAAE,MAAM,GAAG,GAAG;IAC/C,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QACxC,MAAM;QACN,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE;KACtF,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAChF,SAAS,eAAe,CAAC,CAAS;IAChC,OAAO,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc,EAAE,KAAa;IACxD,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG;;;;;;;;;;iBAUE,SAAS;WACf,UAAU;;;;qDAIgC,SAAS;;;eAG/C,CAAC;IACd,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;AACvG,CAAC"}
1
+ {"version":3,"file":"oauth-handler.js","sourceRoot":"","sources":["../../src/handlers/oauth-handler.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ export declare class Auth {
40
40
  * internally matches /register (GET/POST) and /auth (GET/POST).
41
41
  */
42
42
  fetch(request: Request, instanceDid?: string): Promise<Response>;
43
+ private say;
43
44
  /** Verify JWT from cookie — hot path, pure crypto, no D1. */
44
45
  verify(request: Request): Promise<CallerIdentity | null>;
45
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"passkey-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/passkey-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAiBH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAgDrE;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,CAAC,CAuCR;AAED,qBAAa,IAAI;IACf,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAC,CAA0C;IACvD,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,EAAE,WAAW;IAWhC,qDAAqD;IACrD,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACG,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiCtE,6DAA6D;IACvD,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAiB9D;;;OAGG;IACG,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAiCxF;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAY7F,mFAAmF;IAC7E,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IA2GvM;;;;+DAI2D;YAC7C,qBAAqB;IAkDnC;;;yFAGqF;YACvE,sBAAsB;IAsDpC,6DAA6D;YAC/C,iBAAiB;IAsB/B;;;yFAGqF;YACvE,kBAAkB;YA8ClB,wBAAwB;YA4KxB,0BAA0B;IA4GxC,uFAAuF;IACvF,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ;IAyClC;;;;;;;;;OASG;YACW,4BAA4B;IAiC1C,0GAA0G;YAC5F,qBAAqB;IAoCnC,+FAA+F;YACjF,mBAAmB;IA6FjC,iEAAiE;YACnD,uBAAuB;IA6DrC,qEAAqE;YACvD,mBAAmB;YAoCnB,QAAQ;IAyCtB;;;OAGG;YACW,gBAAgB;IA8B9B,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,aAAa;CAWtB"}
1
+ {"version":3,"file":"passkey-handler.d.ts","sourceRoot":"","sources":["../../src/handlers/passkey-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAkBH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAgDrE;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,CAAC,CAuCR;AAED,qBAAa,IAAI;IACf,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAC,CAA0C;IACvD,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,EAAE,WAAW;IAWhC,qDAAqD;IACrD,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACG,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;YAiCxD,GAAG;IAWjB,6DAA6D;IACvD,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAiB9D;;;OAGG;IACG,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAiCxF;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAY7F,mFAAmF;IAC7E,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAgHvM;;;;+DAI2D;YAC7C,qBAAqB;IAkDnC;;;yFAGqF;YACvE,sBAAsB;IAqDpC,6DAA6D;YAC/C,iBAAiB;IAsB/B;;;yFAGqF;YACvE,kBAAkB;YA6ClB,wBAAwB;YA4KxB,0BAA0B;IA8GxC,uFAAuF;IACvF,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ;IAyClC;;;;;;;;;OASG;YACW,4BAA4B;IAiC1C,0GAA0G;YAC5F,qBAAqB;IAoCnC,+FAA+F;YACjF,mBAAmB;IA4FjC,iEAAiE;YACnD,uBAAuB;IAiErC,qEAAqE;YACvD,mBAAmB;YAoCnB,QAAQ;IAyCtB;;;OAGG;YACW,gBAAgB;IA8B9B,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,aAAa;CAWtB"}