@portaidentity/server 1.8.0 → 1.10.0

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 (47) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/auth/token-repository.d.ts +9 -3
  3. package/dist/auth/token-repository.d.ts.map +1 -1
  4. package/dist/auth/token-repository.js +17 -8
  5. package/dist/auth/token-repository.js.map +1 -1
  6. package/dist/clients/repository.d.ts +6 -0
  7. package/dist/clients/repository.d.ts.map +1 -1
  8. package/dist/clients/repository.js +3 -0
  9. package/dist/clients/repository.js.map +1 -1
  10. package/dist/clients/service.d.ts.map +1 -1
  11. package/dist/clients/service.js +9 -2
  12. package/dist/clients/service.js.map +1 -1
  13. package/dist/clients/types.d.ts +13 -0
  14. package/dist/clients/types.d.ts.map +1 -1
  15. package/dist/clients/types.js +1 -0
  16. package/dist/clients/types.js.map +1 -1
  17. package/dist/oidc/configuration.d.ts.map +1 -1
  18. package/dist/oidc/configuration.js +3 -0
  19. package/dist/oidc/configuration.js.map +1 -1
  20. package/dist/portability/import-repository.d.ts.map +1 -1
  21. package/dist/portability/import-repository.js +2 -1
  22. package/dist/portability/import-repository.js.map +1 -1
  23. package/dist/portability/import-user-client-writers.d.ts.map +1 -1
  24. package/dist/portability/import-user-client-writers.js +6 -3
  25. package/dist/portability/import-user-client-writers.js.map +1 -1
  26. package/dist/portability/plan-support.d.ts.map +1 -1
  27. package/dist/portability/plan-support.js +2 -1
  28. package/dist/portability/plan-support.js.map +1 -1
  29. package/dist/portability/repository.d.ts.map +1 -1
  30. package/dist/portability/repository.js +4 -2
  31. package/dist/portability/repository.js.map +1 -1
  32. package/dist/portability/schema.d.ts +2 -0
  33. package/dist/portability/schema.d.ts.map +1 -1
  34. package/dist/portability/schema.js +1 -0
  35. package/dist/portability/schema.js.map +1 -1
  36. package/dist/portability/types.d.ts +1 -0
  37. package/dist/portability/types.d.ts.map +1 -1
  38. package/dist/portability/types.js.map +1 -1
  39. package/dist/routes/clients.d.ts.map +1 -1
  40. package/dist/routes/clients.js +2 -0
  41. package/dist/routes/clients.js.map +1 -1
  42. package/dist/routes/interactions.js +97 -53
  43. package/dist/routes/interactions.js.map +1 -1
  44. package/dist/routes/invitation.js +18 -4
  45. package/dist/routes/invitation.js.map +1 -1
  46. package/migrations/032_client_require_consent.sql +15 -0
  47. package/package.json +1 -1
@@ -730,12 +730,82 @@ async function handleSendMagicLink(ctx, provider, dependencies) {
730
730
  await renderErrorPage(ctx, 'errors.interaction_expired');
731
731
  }
732
732
  }
733
+ /**
734
+ * Report whether the authorization request carries an explicit `prompt=consent`.
735
+ *
736
+ * @param params - Authorization request parameters from the interaction
737
+ * @returns `true` when the client explicitly requested consent
738
+ */
739
+ function requestedExplicitConsent(params) {
740
+ const prompt = typeof params.prompt === 'string' ? params.prompt : '';
741
+ return prompt.split(' ').includes('consent');
742
+ }
743
+ /**
744
+ * Report whether the interaction has no scope, claim, or resource left to grant.
745
+ *
746
+ * @param details - The interaction prompt details listing what is missing
747
+ * @returns `true` when nothing remains to consent to
748
+ */
749
+ function nothingMissing(details) {
750
+ const missingScopes = details.missingOIDCScope ?? [];
751
+ const missingClaims = details.missingOIDCClaims ?? [];
752
+ const missingResources = details.missingResourceScopes ?? {};
753
+ return ([...missingScopes].length === 0 &&
754
+ [...missingClaims].length === 0 &&
755
+ Object.values(missingResources).every((scopes) => [...scopes].length === 0));
756
+ }
757
+ /**
758
+ * Persist a consent grant covering the interaction's missing scopes and finish.
759
+ *
760
+ * Grants exactly what the provider listed as missing plus `offline_access` when
761
+ * requested (the provider treats it as a consent signal and may omit it from
762
+ * `missingOIDCScope`, but the grant must include it for a refresh token).
763
+ *
764
+ * @param ctx - Koa context with organization state
765
+ * @param provider - OIDC provider instance
766
+ * @param interaction - Current interaction details
767
+ * @param description - Audit description for the recorded grant
768
+ */
769
+ async function grantConsentAndFinish(ctx, provider, interaction, description) {
770
+ const params = interaction.params;
771
+ const details = interaction.prompt.details;
772
+ const clientId = params.client_id;
773
+ const grant = new provider.Grant({ accountId: interaction.session?.accountId, clientId });
774
+ if (details.missingOIDCScope) {
775
+ grant.addOIDCScope([...details.missingOIDCScope].join(' '));
776
+ }
777
+ if (details.missingOIDCClaims) {
778
+ grant.addOIDCClaims([...details.missingOIDCClaims]);
779
+ }
780
+ if (details.missingResourceScopes) {
781
+ for (const [indicator, scopes] of Object.entries(details.missingResourceScopes)) {
782
+ grant.addResourceScope(indicator, [...scopes].join(' '));
783
+ }
784
+ }
785
+ const requestedScope = params.scope ?? '';
786
+ if (requestedScope.includes('offline_access')) {
787
+ grant.addOIDCScope('offline_access');
788
+ }
789
+ const grantId = await grant.save();
790
+ writeAuditLog({
791
+ organizationId: ctx.state.organization.id,
792
+ userId: interaction.session?.accountId,
793
+ eventType: 'user.consent.granted',
794
+ eventCategory: 'authentication',
795
+ description,
796
+ });
797
+ await provider.interactionFinished(ctx.req, ctx.res, { consent: { grantId } }, { mergeWithLastSubmission: true });
798
+ }
733
799
  /**
734
800
  * Show the consent page for an OIDC interaction.
735
801
  *
736
- * If the client belongs to the same organization (first-party app),
737
- * auto-consents by immediately finishing the interaction. Otherwise,
738
- * renders the consent page with requested scopes and client info.
802
+ * The decision is trust-driven rather than organization-driven:
803
+ * - Nothing is missing → finish without rendering and reuse or create the
804
+ * grant. An explicit `prompt=consent` is ignored so a user who already
805
+ * consented is never asked again.
806
+ * - Something is missing → render the consent page when the client requires
807
+ * consent (`requireConsent`) or explicitly requested `prompt=consent`;
808
+ * otherwise auto-consent the trusted first-party client.
739
809
  *
740
810
  * @param ctx - Koa context with organization state
741
811
  * @param provider - OIDC provider instance
@@ -747,61 +817,35 @@ async function showConsent(ctx, provider) {
747
817
  // Resolve organization from the interaction's client_id
748
818
  await resolveOrganizationForInteraction(ctx, params.client_id, interaction.uid);
749
819
  const org = ctx.state.organization;
750
- // Resolve locale for the consent page
751
- const uiLocales = params.ui_locales;
752
- const acceptLanguage = ctx.get('Accept-Language') || undefined;
753
- const locale = await resolveLocale(uiLocales, acceptLanguage, org.defaultLocale);
754
- const t = getTranslationFunction(locale, org.slug);
755
- // Auto-consent for first-party apps: if the client metadata includes
756
- // the org ID matching the current tenant, skip the consent screen
757
820
  const clientId = params.client_id;
758
821
  const client = await provider.Client.find(clientId);
759
- if (client) {
760
- // Check if this is a first-party client (belongs to the same org)
761
- const clientOrgId = client.metadata()?.organizationId;
762
- if (clientOrgId && clientOrgId === org.id) {
763
- // Auto-consent: finish interaction immediately with consent grant
764
- const grant = new provider.Grant({ accountId: interaction.session?.accountId, clientId });
765
- // Use prompt.details to grant exactly what the provider requires
766
- const details = prompt.details;
767
- if (details.missingOIDCScope) {
768
- const scopes = details.missingOIDCScope;
769
- grant.addOIDCScope([...scopes].join(' '));
770
- }
771
- if (details.missingOIDCClaims) {
772
- const claims = details.missingOIDCClaims;
773
- grant.addOIDCClaims([...claims]);
774
- }
775
- if (details.missingResourceScopes) {
776
- for (const [indicator, scopes] of Object.entries(details.missingResourceScopes)) {
777
- grant.addResourceScope(indicator, [...scopes].join(' '));
778
- }
779
- }
780
- // Explicitly grant offline_access if requested — node-oidc-provider
781
- // treats it as a consent signal and may not include it in missingOIDCScope,
782
- // but the Grant must include it for a refresh_token to be issued.
783
- const requestedScope = params.scope ?? '';
784
- if (requestedScope.includes('offline_access')) {
785
- grant.addOIDCScope('offline_access');
786
- }
787
- const grantId = await grant.save();
788
- const result = {
789
- consent: { grantId },
790
- };
791
- writeAuditLog({
792
- organizationId: org.id,
793
- userId: interaction.session?.accountId,
794
- eventType: 'user.consent.granted',
795
- eventCategory: 'authentication',
796
- description: `Auto-consent granted for first-party client ${clientId}`,
797
- });
798
- await provider.interactionFinished(ctx.req, ctx.res, result, {
799
- mergeWithLastSubmission: true,
800
- });
822
+ const requiresConsent = client?.metadata()?.requireConsent === true;
823
+ const details = prompt.details;
824
+ // Nothing left to grant: finish without rendering, even under prompt=consent.
825
+ // Reuse the provider's resolved grant; creating a new grant here would
826
+ // replace it with an empty one and drop the scopes the user already
827
+ // approved, which would make the provider prompt again.
828
+ if (nothingMissing(details)) {
829
+ const existingGrantId = interaction.grantId;
830
+ if (existingGrantId !== undefined) {
831
+ await provider.interactionFinished(ctx.req, ctx.res, { consent: { grantId: existingGrantId } }, { mergeWithLastSubmission: true });
801
832
  return;
802
833
  }
834
+ await grantConsentAndFinish(ctx, provider, interaction, `Consent already granted for client ${clientId}`);
835
+ return;
836
+ }
837
+ // A new scope, claim, or resource is requested. Ask only when the client
838
+ // requires consent or explicitly requested it; trusted clients auto-consent.
839
+ const explicitConsent = requestedExplicitConsent(params);
840
+ if (!requiresConsent && !explicitConsent) {
841
+ await grantConsentAndFinish(ctx, provider, interaction, `Auto-consent granted for first-party client ${clientId}`);
842
+ return;
803
843
  }
804
- // Third-party client: show the consent page
844
+ // Resolve locale for the consent page
845
+ const uiLocales = params.ui_locales;
846
+ const acceptLanguage = ctx.get('Accept-Language') || undefined;
847
+ const locale = await resolveLocale(uiLocales, acceptLanguage, org.defaultLocale);
848
+ const t = getTranslationFunction(locale, org.slug);
805
849
  const csrfToken = generateCsrfToken();
806
850
  setCsrfCookie(ctx, csrfToken);
807
851
  const requestedScopes = (params.scope ?? '').split(' ').filter(Boolean);
@@ -1 +1 @@
1
- {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../src/routes/interactions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AAGjC,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,EACX,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAE7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AA2DzF,MAAM,8BAA8B,GAAgD;IAClF,iBAAiB;IACjB,eAAe;IACf,iBAAiB;IACjB,aAAa;IACb,sBAAsB;IACtB,0BAA0B;IAC1B,wBAAwB;IACxB,4BAA4B;IAC5B,cAAc;IACd,cAAc;IACd,aAAa;IACb,sBAAsB;IACtB,UAAU;IACV,2BAA2B;IAC3B,mBAAmB;IACnB,qBAAqB;IACrB,WAAW;IACX,sBAAsB;IACtB,aAAa;CACd,CAAC;AAEF,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,iCAAiC,CACxC,MAAe,EACf,GAA8C;IAE9C,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,QAAQ,GACZ,MACD,EAAE,QAAQ,EAAE,EAAE,CAAC;IAChB,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,yBAAyB,CAAC,CAAC;IAClD,wEAAwE;IACxE,MAAM,UAAU,GAAyB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,GAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5F,OAAO,mBAAmB,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAuB,EACvB,MAAc,EACd,SAAiB,EACjB,OAAe;IAEf,OAAO;QACL,QAAQ,EAAE,MAAM,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAChE,MAAM;QACN,SAAS;QACT,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAY,EACZ,QAAgB,EAChB,OAAwB,EACxB,UAAU,GAAG,GAAG,EAChB,QAAQ,GAAsB,UAAU;IAExC,GAAG,CAAC,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC/D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC;IACxB,GAAG,CAAC,IAAI,GAAG,WAAW,CAAC;IACvB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,GAAuB,EACvB,QAAgB,EAChB,cAAuB;IAEvB,uDAAuD;IACvD,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO;IAEnC,wEAAwE;IACxE,mFAAmF;IACnF,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,QAAQ,EAAE,CAAC,GAAG,CAAC,mBAAmB,cAAc,EAAE,CAAC,CAAC;YAC9E,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;gBACnD,IAAI,GAAG,EAAE,CAAC;oBACR,GAAG,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC;oBAC7B,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;QAC1D,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC7D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC;AAC/B,CAAC;AAUD;;;;;;;;GAQG;AACH,KAAK,UAAU,qCAAqC,CAClD,cAAsB;IAEtB,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,cAAc,GAAG,MAAM,QAAQ,EAAE,CAAC,GAAG,CAAC,mBAAmB,cAAc,EAAE,CAAC,CAAC;IACjF,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC/D,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnE,OAAO,EAAE,SAAS,EAAE,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,YAAY,EAAE,CAAC;AACzE,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,gCAAgC,CACvC,mBAA2B,EAC3B,cAAsB,EACtB,aAAsB,EACtB,yBAAkC,EAClC,YAA0B;IAE1B,IACE,mBAAmB,KAAK,cAAc;QACtC,cAAc,CAAC,MAAM,GAAG,CAAC;QACzB,cAAc,CAAC,MAAM,GAAG,GAAG;QAC3B,OAAO,aAAa,KAAK,QAAQ;QACjC,aAAa,CAAC,MAAM,GAAG,CAAC;QACxB,yBAAyB,KAAK,YAAY,CAAC,EAAE,EAC7C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC;AAC7D,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAAkB,EAClB,uBAAuB,GAAgD,8BAA8B;IAErG,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IAEtD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7B,IAAI,CAAC;YACH,MAAM,IAAI,EAAE,CAAC;QACf,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,gCAAgC,CAAC;oBAC/B,OAAO,EAAE,GAAG,CAAC,GAAG;oBAChB,UAAU,EAAE,8BAA8B;iBAC3C,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,qDAAqD;IACrD,4EAA4E;IAC5E,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,SAAS,CAAC,GAAyB,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,wDAAwD;IACxD,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACvC,MAAM,YAAY,CAAC,GAAyB,EAAE,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,4DAA4D;IAC5D,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC5C,MAAM,mBAAmB,CAAC,GAAyB,EAAE,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,oDAAoD;IACpD,4EAA4E;IAC5E,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACxC,MAAM,WAAW,CAAC,GAAyB,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,kEAAkE;IAClE,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACzC,MAAM,cAAc,CAAC,GAAyB,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,sDAAsD;IACtD,4EAA4E;IAC5E,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACtC,MAAM,gBAAgB,CAAC,GAAyB,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8FAA8F;AAC9F,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtF,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,GAAG,CAAC;AAClG,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,SAAS,CAAC,GAAuB,EAAE,QAAkB;IAClE,0EAA0E;IAC1E,8DAA8D;IAC9D,uEAAuE;IACvE,0DAA0D;IAC1D,0EAA0E;IAC1E,YAAY,EAAE,CAAC;IAEf,0EAA0E;IAC1E,+BAA+B;IAC/B,0EAA0E;IAC1E,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,qBAAqB,GAAG,MAAM,qCAAqC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1F,MAAM,OAAO,GAAG,qBAAqB;YACnC,CAAC,CAAC,MAAM,uBAAuB,CAAC,GAAG,EAAE,qBAAqB,CAAC,SAAS,CAAC;YACrE,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,OAAO,IAAI,qBAAqB,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,qBAAqB,CAAC,YAAY,CAAC;YAE/C,6EAA6E;YAC7E,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG;oBACb,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE;iBACrC,CAAC;gBAEF,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;oBAC3D,uBAAuB,EAAE,KAAK;iBAC/B,CAAC,CAAC;gBACH,OAAO,CAAC,oDAAoD;YAC9D,CAAC;YAAC,MAAM,CAAC;gBACP,+EAA+E;gBAC/E,4CAA4C;gBAC5C,MAAM,CAAC,IAAI,CACT,EAAE,KAAK,EAAE,kCAAkC,EAAE,EAC7C,kEAAkE,CACnE,CAAC;gBAEF,MAAM,0BAA0B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC3C,OAAO;YACT,CAAC;QACH,CAAC;QACD,yDAAyD;IAC3D,CAAC;IAED,0EAA0E;IAC1E,oBAAoB;IACpB,0EAA0E;IAC1E,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;QAEvC,yDAAyD;QACzD,sEAAsE;QACtE,8DAA8D;QAC9D,MAAM,iCAAiC,CAAC,GAAG,EAAE,MAAM,CAAC,SAAmB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QAE1F,8DAA8D;QAC9D,yEAAyE;QACzE,uEAAuE;QACvE,mEAAmE;QACnE,qCAAqC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,wEAAwE;QACxE,MAAM,SAAS,GAAG,MAAM,CAAC,UAAgC,CAAC;QAC1D,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QAEjF,uDAAuD;QACvD,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnD,0CAA0C;QAC1C,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACtC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAE9B,8CAA8C;QAC9C,EAAE;QACF,0EAA0E;QAC1E,uEAAuE;QACvE,4EAA4E;QAC5E,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE3D,kEAAkE;QAClE,gDAAgD;QAChD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAmB,CAAC,CAAC;QAC1E,MAAM,UAAU,GACb,UAAU,EAAE,QAAQ,EAAE,EAAE,WAAsB,IAAK,MAAM,CAAC,SAAoB,CAAC;QAElF,uEAAuE;QACvE,2EAA2E;QAC3E,2EAA2E;QAC3E,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,UAAU;YACjC,CAAC,CAAC,iCAAiC,CAAC,UAAU,EAAE,GAAG,CAAC;YACpD,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAE5B,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE9D,MAAM,OAAO,GAAoB;YAC/B,GAAG,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;YACD,WAAW,EAAE;gBACX,GAAG,EAAE,WAAW,CAAC,GAAG;gBACpB,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,MAAM,EAAE,MAAiC;gBACzC,MAAM,EAAE,EAAE,UAAU,EAAE;aACvB;YACD,KAAK,EAAE,SAAS,IAAI,EAAE;YACtB,SAAS;YACT,uDAAuD;YACvD,YAAY;YACZ,aAAa;YACb,WAAW,EAAE,YAAY,IAAI,aAAa;YAC1C,YAAY,EAAE,gBAAgB;SAC/B,CAAC;QAEF,wEAAwE;QACxE,MAAM,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,6BAA6B,CAAC,CAAC;QAC5E,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,0BAA0B,CACvC,GAAuB,EACvB,GAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC,SAAS,EACT,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,EACvC,GAAG,CAAC,aAAa,CAClB,CAAC;IACF,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEtC,MAAM,OAAO,GAAoB;QAC/B,QAAQ,EAAE,MAAM,wBAAwB,CAAC,GAAG,CAAC;QAC7C,MAAM;QACN,CAAC;QACD,SAAS;QACT,OAAO,EAAE,GAAG,CAAC,IAAI;KAClB,CAAC;IAEF,MAAM,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,YAAY,CACzB,GAAuB,EACvB,QAAkB,EAClB,YAAyD;IAEzD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAA8B,CAAC;IACxD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,YAAY,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAE7D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAExE,wDAAwD;QACxD,MAAM,iCAAiC,CACrC,GAAG,EACH,WAAW,CAAC,MAAM,CAAC,SAAmB,EACtC,WAAW,CAAC,GAAG,CAChB,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,oCAAoC;QACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,SAAS,EACT,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,EACvC,GAAG,CAAC,aAAa,CAClB,CAAC;QACF,MAAM,CAAC,GAAG,YAAY,CAAC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEhE,mDAAmD;QACnD,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,sCAAsC,CAAC,CAAC;YACtF,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,qBAAqB,CAAC,EACxB,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,EAAE;QACF,+CAA+C;QAC/C,yEAAyE;QACzE,8DAA8D;QAC9D,2EAA2E;QAC3E,uEAAuE;QACvE,8BAA8B;QAC9B,0EAA0E;QAC1E,EAAE;QACF,0EAA0E;QAC1E,8CAA8C;QAC9C,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAmB,CAAC,CAAC;QAC9F,MAAM,qBAAqB,GAAG,kBAAkB;YAC9C,CAAC,CAAC,iCAAiC,CAAC,kBAAkB,EAAE,GAAG,CAAC;YAC5D,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAE5B,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,mCAAmC,CAAC,CAAC;YAE9F,YAAY,CAAC,aAAa,CAAC;gBACzB,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,SAAS,EAAE,gCAAgC;gBAC3C,aAAa,EAAE,UAAU;gBACzB,WAAW,EAAE,uDAAuD;gBACpE,SAAS,EAAE,GAAG,CAAC,EAAE;gBACjB,QAAQ,EAAE;oBACR,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS;oBACtC,eAAe,EAAE,UAAU;oBAC3B,gBAAgB,EAAE,qBAAqB;iBACxC;aACF,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,8BAA8B,CAAC,EACjC,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,2BAA2B;QAC3B,MAAM,YAAY,GAAG,YAAY,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChF,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,wBAAwB,EAAE,CAAC;QACtE,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;QAEzF,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;YAE3D,6BAA6B;YAC7B,YAAY,CAAC,aAAa,CAAC;gBACzB,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,SAAS,EAAE,kBAAkB;gBAC7B,aAAa,EAAE,UAAU;gBACzB,WAAW,EAAE,2BAA2B;gBACxC,SAAS,EAAE,GAAG,CAAC,EAAE;aAClB,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,4BAA4B,CAAC,EAC/B,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,yFAAyF;QACzF,0FAA0F;QAC1F,2CAA2C;QAC3C,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,2BAA2B,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACnF,MAAM,YAAY,GAChB,YAAY,EAAE,MAAM,KAAK,QAAQ,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACtF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAC1D,YAAY,EAAE,EAAE,IAAI,IAAI,EACxB,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAE1E,KAAK,YAAY,CAAC,aAAa,CAAC;gBAC9B,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,SAAS,EAAE,4BAA4B;gBACvC,aAAa,EAAE,UAAU;gBACzB,WAAW,EAAE,yBAAyB;gBACtC,SAAS,EAAE,GAAG,CAAC,EAAE;gBACjB,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE;aACjF,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,qBAAqB,CAAC,EACxB,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC;QAE1B,oDAAoD;QACpD,MAAM,YAAY,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAEhD,gEAAgE;QAChE,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChF,MAAM,eAAe,GAAG,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE5D,IAAI,iBAAiB,EAAE,CAAC;YACtB,0EAA0E;YAC1E,MAAM,QAAQ,CAAC,iBAAiB,CAC9B,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,GAAG,EACP;gBACE,SAAS,EAAE;oBACT,gBAAgB,EAAE,IAAI,CAAC,EAAE;oBACzB,MAAM,EAAE,eAAe,IAAI,OAAO;oBAClC,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB;aACF,EACD,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAClC,CAAC;YAEF,yFAAyF;YACzF,gGAAgG;YAChG,IAAI,IAAI,CAAC,gBAAgB,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;gBACzD,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC/D,gDAAgD;oBAChD,gBAAgB,CACd;wBACE,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,UAAU,EAAE,IAAI,CAAC,UAAU;qBAC5B,EACD,GAAG,EACH,OAAO,EACP,EAAE,EACF,MAAM,CACP,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,6BAA6B,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;YAED,aAAa,CAAC;gBACZ,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,SAAS,EAAE,uBAAuB;gBAClC,aAAa,EAAE,gBAAgB;gBAC/B,WAAW,EAAE,mCAAmC,eAAe,IAAI,gBAAgB,GAAG;gBACtF,SAAS,EAAE,GAAG,CAAC,EAAE;aAClB,CAAC,CAAC;YAEH,wEAAwE;YACxE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,GAAG,CAAC,QAAQ,CAAC,gBAAgB,WAAW,CAAC,GAAG,aAAa,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,4EAA4E;gBAC5E,GAAG,CAAC,QAAQ,CAAC,gBAAgB,WAAW,CAAC,GAAG,mBAAmB,CAAC,CAAC;YACnE,CAAC;YACD,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,MAAM,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAExC,mCAAmC;QACnC,YAAY,CAAC,aAAa,CAAC;YACzB,cAAc,EAAE,GAAG,CAAC,EAAE;YACtB,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,SAAS,EAAE,qBAAqB;YAChC,aAAa,EAAE,gBAAgB;YAC/B,WAAW,EAAE,2BAA2B;YACxC,SAAS,EAAE,GAAG,CAAC,EAAE;SAClB,CAAC,CAAC;QAEH,sDAAsD;QACtD,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE;SAC9B,CAAC;QAEF,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;YAC3D,uBAAuB,EAAE,KAAK;SAC/B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,yBAAyB,CAAC,CAAC;QAC9E,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,mBAAmB,CAChC,GAAuB,EACvB,QAAkB,EAClB,YAAyD;IAEzD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAA8B,CAAC;IACxD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,YAAY,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAE7D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAExE,wDAAwD;QACxD,MAAM,iCAAiC,CACrC,GAAG,EACH,WAAW,CAAC,MAAM,CAAC,SAAmB,EACtC,WAAW,CAAC,GAAG,CAChB,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,oCAAoC;QACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAC7C,SAAS,EACT,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,EACvC,GAAG,CAAC,aAAa,CAClB,CAAC;QACF,MAAM,CAAC,GAAG,YAAY,CAAC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEhE,2CAA2C;QAC3C,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CACT,EAAE,KAAK,EAAE,0BAA0B,EAAE,EACrC,gDAAgD,CACjD,CAAC;YACF,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,qBAAqB,CAAC,EACxB,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAM,sBAAsB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CACvD,WAAW,CAAC,MAAM,CAAC,SAAmB,CACvC,CAAC;QACF,MAAM,yBAAyB,GAAG,sBAAsB;YACtD,CAAC,CAAC,iCAAiC,CAAC,sBAAsB,EAAE,GAAG,CAAC;YAChE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAE5B,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CACT;gBACE,KAAK,EAAE,4BAA4B;gBACnC,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS;aACvC,EACD,0DAA0D,CAC3D,CAAC;YAEF,YAAY,CAAC,aAAa,CAAC;gBACzB,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,SAAS,EAAE,gCAAgC;gBAC3C,aAAa,EAAE,UAAU;gBACzB,WAAW,EAAE,yDAAyD;gBACtE,SAAS,EAAE,GAAG,CAAC,EAAE;gBACjB,QAAQ,EAAE;oBACR,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS;oBACtC,eAAe,EAAE,YAAY;oBAC7B,gBAAgB,EAAE,yBAAyB;iBAC5C;aACF,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,8BAA8B,CAAC,EACjC,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG,gCAAgC,CACxD,GAAG,CAAC,MAAM,CAAC,GAAG,EACd,WAAW,CAAC,GAAG,EACf,WAAW,CAAC,MAAM,CAAC,SAAS,EAC5B,sBAAsB,EAAE,QAAQ,EAAE,CAAC,cAAc,EACjD,GAAG,CACJ,CAAC;QACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,EAAE,+BAA+B,CAAC,CAAC;YACzF,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,4BAA4B,CAAC,EAC/B,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,2CAA2C;QAC3C,MAAM,YAAY,GAAG,YAAY,CAAC,0BAA0B,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,4BAA4B,EAAE,CAAC;QAC1E,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;QAEzF,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;YAE3D,YAAY,CAAC,aAAa,CAAC;gBACzB,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,SAAS,EAAE,uBAAuB;gBAClC,aAAa,EAAE,UAAU;gBACzB,WAAW,EAAE,gCAAgC;gBAC7C,SAAS,EAAE,GAAG,CAAC,EAAE;aAClB,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,4BAA4B,CAAC,EAC/B,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,sBAAsB,CAAC;gBACxC,OAAO,EAAE,YAAY;gBACrB,cAAc,EAAE,iBAAiB,CAAC,cAAc;gBAChD,KAAK;gBACL,cAAc,EAAE,iBAAiB,CAAC,cAAc;gBAChD,WAAW,EAAE,aAAa;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,8BAA8B,CAAC,CAAC;YACrF,MAAM,oBAAoB,CACxB,GAAG,EACH,QAAQ,EACR,WAAW,EACX,CAAC,EACD,MAAM,EACN,KAAK,EACL,CAAC,CAAC,4BAA4B,CAAC,EAC/B,GAAG,EACH,YAAY,CACb,CAAC;YACF,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,MAAM,SAAS,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;QACnD,MAAM,OAAO,GAAoB;YAC/B,GAAG,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;YACD,KAAK;YACL,QAAQ,EAAE,gBAAgB,WAAW,CAAC,GAAG,EAAE;SAC5C,CAAC;QAEF,MAAM,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACxF,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,2BAA2B,CAAC,CAAC;QAClF,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,WAAW,CAAC,GAAuB,EAAE,QAAkB;IACpE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;QAEvC,wDAAwD;QACxD,MAAM,iCAAiC,CAAC,GAAG,EAAE,MAAM,CAAC,SAAmB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1F,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,sCAAsC;QACtC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAgC,CAAC;QAC1D,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QACjF,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnD,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAmB,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,MAAM,EAAE,CAAC;YACX,kEAAkE;YAClE,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,cAAoC,CAAC;YAC5E,IAAI,WAAW,IAAI,WAAW,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC;gBAC1C,kEAAkE;gBAClE,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAE1F,iEAAiE;gBACjE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAkC,CAAC;gBAE1D,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAoC,CAAC;oBAC5D,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5C,CAAC;gBACD,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;oBAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAqC,CAAC;oBAC7D,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;gBACnC,CAAC;gBACD,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;oBAClC,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAC9C,OAAO,CAAC,qBAAyD,CAClE,EAAE,CAAC;wBACF,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3D,CAAC;gBACH,CAAC;gBAED,oEAAoE;gBACpE,4EAA4E;gBAC5E,kEAAkE;gBAClE,MAAM,cAAc,GAAI,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAC;gBACtD,IAAI,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC9C,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;gBACvC,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;gBAEnC,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,EAAE,OAAO,EAAE;iBACrB,CAAC;gBAEF,aAAa,CAAC;oBACZ,cAAc,EAAE,GAAG,CAAC,EAAE;oBACtB,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS;oBACtC,SAAS,EAAE,sBAAsB;oBACjC,aAAa,EAAE,gBAAgB;oBAC/B,WAAW,EAAE,+CAA+C,QAAQ,EAAE;iBACvE,CAAC,CAAC;gBAEH,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;oBAC3D,uBAAuB,EAAE,IAAI;iBAC9B,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACtC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9B,MAAM,eAAe,GAAG,CAAE,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEpF,MAAM,OAAO,GAAoB;YAC/B,GAAG,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;YACD,WAAW,EAAE;gBACX,GAAG,EAAE,WAAW,CAAC,GAAG;gBACpB,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,MAAM,EAAE,MAAiC;gBACzC,MAAM,EAAE,EAAE,UAAU,EAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,WAAsB,IAAI,QAAQ,EAAE;aAChF;YACD,MAAM,EAAE,eAAe;YACvB,UAAU,EAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,WAAsB,IAAI,QAAQ;SACpE,CAAC;QAEF,MAAM,gBAAgB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,+BAA+B,CAAC,CAAC;QAChF,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,cAAc,CAAC,GAAuB,EAAE,QAAkB;IACvE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAA8B,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,sBAAsB;IAEtD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAExE,wDAAwD;QACxD,MAAM,iCAAiC,CACrC,GAAG,EACH,WAAW,CAAC,MAAM,CAAC,SAAmB,EACtC,WAAW,CAAC,GAAG,CAChB,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,oBAAoB;QACpB,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,wCAAwC,CAAC,CAAC;YAC1F,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;YACjB,GAAG,CAAC,IAAI,GAAG,oBAAoB,CAAC;YAChC,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,oDAAoD;YACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,SAAmB,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC;gBAC/B,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS;gBACzC,QAAQ;aACT,CAAC,CAAC;YAEH,iEAAiE;YACjE,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAkC,CAAC;YAEtE,4BAA4B;YAC5B,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAoC,CAAC;gBAC5D,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,CAAC;YAED,4BAA4B;YAC5B,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAqC,CAAC;gBAC7D,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACnC,CAAC;YAED,gCAAgC;YAChC,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;gBAClC,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAC9C,OAAO,CAAC,qBAAyD,CAClE,EAAE,CAAC;oBACF,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,6EAA6E;YAC7E,MAAM,cAAc,GAAI,WAAW,CAAC,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAC;YAClE,IAAI,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAC9C,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YAEnC,aAAa,CAAC;gBACZ,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS;gBACtC,SAAS,EAAE,sBAAsB;gBACjC,aAAa,EAAE,gBAAgB;gBAC/B,WAAW,EAAE,8BAA8B,QAAQ,EAAE;aACtD,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG;gBACb,OAAO,EAAE,EAAE,OAAO,EAAE;aACrB,CAAC;YAEF,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;gBAC3D,uBAAuB,EAAE,IAAI;aAC9B,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,eAAe;YACf,aAAa,CAAC;gBACZ,cAAc,EAAE,GAAG,CAAC,EAAE;gBACtB,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS;gBACtC,SAAS,EAAE,qBAAqB;gBAChC,aAAa,EAAE,gBAAgB;gBAC/B,WAAW,EAAE,6BAA6B,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE;aACzE,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG;gBACb,KAAK,EAAE,eAAe;gBACtB,iBAAiB,EAAE,qBAAqB;aACzC,CAAC;YAEF,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;gBAC3D,uBAAuB,EAAE,KAAK;aAC/B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,2BAA2B,CAAC,CAAC;QAClF,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,gBAAgB,CAAC,GAAuB,EAAE,QAAkB;IACzE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAExE,wDAAwD;QACxD,MAAM,iCAAiC,CACrC,GAAG,EACH,WAAW,CAAC,MAAM,CAAC,SAAmB,EACtC,WAAW,CAAC,GAAG,CAChB,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAEnC,aAAa,CAAC;YACZ,cAAc,EAAE,GAAG,CAAC,EAAE;YACtB,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS;YACtC,SAAS,EAAE,qBAAqB;YAChC,aAAa,EAAE,gBAAgB;YAC/B,WAAW,EAAE,6BAA6B;SAC3C,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,eAAe;YACtB,iBAAiB,EAAE,8BAA8B;SAClD,CAAC;QAEF,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE;YAC3D,uBAAuB,EAAE,KAAK;SAC/B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,EAAE,0BAA0B,CAAC,CAAC;QAChF,MAAM,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,uCAAuC;AACvC,8EAA8E;AAE9E;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,oBAAoB,CACjC,GAAuB,EACvB,QAAkB,EAClB,WAAuF,EACvF,CAA6D,EAC7D,MAAc,EACd,KAAa,EACb,YAAoB,EACpB,UAAU,GAAG,GAAG,EAChB,YAAY,GAAgD,8BAA8B;IAE1F,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;IACnC,MAAM,SAAS,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;IACnD,YAAY,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAE3C,6DAA6D;IAC7D,0DAA0D;IAC1D,MAAM,QAAQ,GAAI,WAAW,CAAC,MAAM,CAAC,SAAoB,IAAI,EAAE,CAAC;IAChE,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,UAAU,GAAI,UAAU,EAAE,QAAQ,EAAE,EAAE,WAAsB,IAAI,QAAQ,CAAC;IAE/E,sEAAsE;IACtE,0EAA0E;IAC1E,wEAAwE;IACxE,2BAA2B;IAC3B,MAAM,gBAAgB,GAAG,UAAU;QACjC,CAAC,CAAC,iCAAiC,CAAC,UAAU,EAAE,GAAG,CAAC;QACpD,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAE5B,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE9D,MAAM,OAAO,GAAoB;QAC/B,GAAG,CAAC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;QACD,WAAW,EAAE;YACX,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI;YAC/B,MAAM,EAAE,WAAW,CAAC,MAAiC;YACrD,MAAM,EAAE,EAAE,UAAU,EAAE;SACvB;QACD,KAAK;QACL,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;QAC9B,iEAAiE;QACjE,sEAAsE;QACtE,YAAY;QACZ,aAAa;QACb,WAAW,EAAE,YAAY,IAAI,aAAa;QAC1C,YAAY,EAAE,gBAAgB;KAC/B,CAAC;IAEF,MAAM,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;AACrF,CAAC;AAED,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E;;;;;;GAMG;AACH,KAAK,UAAU,eAAe,CAAC,GAAY,EAAE,QAAgB;IAC3D,IAAI,CAAC;QACH,MAAM,GAAG,GAAI,GAAG,CAAC,KAAyC,CAAC,YAAY,CAAC;QACxE,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,IAAI,SAAS,CAAC;QACvC,MAAM,MAAM,GAAG,GAAG;YAChB,CAAC,CAAC,MAAM,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC;YAC5F,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,CAAC,GAAG,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;QAEtC,MAAM,OAAO,GAAoB;YAC/B,QAAQ,EAAE,GAAG;gBACX,CAAC,CAAC,MAAM,wBAAwB,CAAC,GAAG,CAAC;gBACrC,CAAC,CAAC;oBACE,OAAO,EAAE,IAAI;oBACb,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,SAAS;oBACvB,WAAW,EAAE,OAAO;oBACpB,SAAS,EAAE,IAAI;oBACf,YAAY,EAAE,EAAE;iBACjB;YACL,MAAM;YACN,CAAC;YACD,SAAS;YACT,OAAO;YACP,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC;SAC1B,CAAC;QAEF,MAAM,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;QAC7D,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,+BAA+B,CAAC,CAAC;QAC5F,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;QACjB,GAAG,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACjC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../src/routes/interactions.ts"],"names":[],"mappings":"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"}
@@ -94,9 +94,16 @@ async function showAcceptInvite(ctx) {
94
94
  const t = getTranslationFunction(locale, org.slug);
95
95
  // Validate the invitation token
96
96
  const tokenHash = hashToken(tokenPlaintext);
97
- const tokenRecord = await findValidInvitationToken(tokenHash);
97
+ const tokenRecord = await findValidInvitationToken(tokenHash, org.id);
98
98
  if (!tokenRecord) {
99
- // Token is invalid, expired, or already used — show expired page
99
+ // Token is invalid, expired, already used, or belongs to another tenant — record the rejection and show expired page
100
+ writeAuditLog({
101
+ organizationId: org.id,
102
+ eventType: 'user.invite.failed',
103
+ eventCategory: 'security',
104
+ description: 'Invitation acceptance failed: invalid or expired token',
105
+ ipAddress: ctx.ip,
106
+ });
100
107
  const csrfToken = generateCsrfToken();
101
108
  setCsrfCookie(ctx, csrfToken);
102
109
  const context = {
@@ -154,9 +161,16 @@ async function processAcceptInvite(ctx) {
154
161
  }
155
162
  // Step 2: Re-validate the invitation token
156
163
  const tokenHash = hashToken(tokenPlaintext);
157
- const tokenRecord = await findValidInvitationToken(tokenHash);
164
+ const tokenRecord = await findValidInvitationToken(tokenHash, org.id);
158
165
  if (!tokenRecord) {
159
- // Token expired between page load and form submission
166
+ // Token expired or was issued by another tenant between page load and form submission — record the rejection
167
+ writeAuditLog({
168
+ organizationId: org.id,
169
+ eventType: 'user.invite.failed',
170
+ eventCategory: 'security',
171
+ description: 'Invitation acceptance failed: invalid or expired token',
172
+ ipAddress: ctx.ip,
173
+ });
160
174
  const csrfToken = generateCsrfToken();
161
175
  setCsrfCookie(ctx, csrfToken);
162
176
  const context = {
@@ -1 +1 @@
1
- {"version":3,"file":"invitation.js","sourceRoot":"","sources":["../../src/routes/invitation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invitation.js","sourceRoot":"","sources":["../../src/routes/invitation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ -- Up Migration
2
+
3
+ -- Per-client consent requirement.
4
+ --
5
+ -- Every client is bound to one organization. A client that must ask the end
6
+ -- user for consent (an external or partner application) sets this flag, and
7
+ -- the consent gate in the interaction handler renders the consent page instead
8
+ -- of auto-consenting. Existing clients default to false, which preserves the
9
+ -- first-party auto-consent behavior.
10
+ ALTER TABLE clients
11
+ ADD COLUMN require_consent BOOLEAN NOT NULL DEFAULT FALSE;
12
+
13
+ -- Down Migration
14
+
15
+ ALTER TABLE clients DROP COLUMN require_consent;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@portaidentity/server",
3
- "version": "1.8.0",
3
+ "version": "1.10.0",
4
4
  "description": "Multi-tenant OIDC provider built on node-oidc-provider, Koa, and TypeScript",
5
5
  "type": "module",
6
6
  "license": "MIT",