@wildo-ai/saas-technical-doc 1.1.2 → 1.1.3

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 (96) hide show
  1. package/dist/esm/companion/application-documentation/application-connection-documentation.d.ts +25 -1
  2. package/dist/esm/companion/application-documentation/application-connection-documentation.d.ts.map +1 -1
  3. package/dist/esm/companion/application-documentation/application-connection-documentation.js +28 -1
  4. package/dist/esm/companion/application-documentation/application-connection-documentation.js.map +1 -1
  5. package/dist/esm/companion/application-documentation/application-domain-documentation.d.ts +133 -0
  6. package/dist/esm/companion/application-documentation/application-domain-documentation.d.ts.map +1 -0
  7. package/dist/esm/companion/application-documentation/application-domain-documentation.js +243 -0
  8. package/dist/esm/companion/application-documentation/application-domain-documentation.js.map +1 -0
  9. package/dist/esm/companion/application-documentation/application-integration-documentation.d.ts.map +1 -1
  10. package/dist/esm/companion/application-documentation/application-integration-documentation.js +23 -0
  11. package/dist/esm/companion/application-documentation/application-integration-documentation.js.map +1 -1
  12. package/dist/esm/companion/application-documentation/application-organization-role-documentation.d.ts +30 -0
  13. package/dist/esm/companion/application-documentation/application-organization-role-documentation.d.ts.map +1 -1
  14. package/dist/esm/companion/application-documentation/application-organization-role-documentation.js +38 -0
  15. package/dist/esm/companion/application-documentation/application-organization-role-documentation.js.map +1 -1
  16. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.d.ts +61 -1
  17. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.d.ts.map +1 -1
  18. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.js +255 -218
  19. package/dist/esm/companion/application-documentation/technical-documentation-engine-content-bundle.js.map +1 -1
  20. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.d.ts +2 -0
  21. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.d.ts.map +1 -1
  22. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.js +1 -0
  23. package/dist/esm/companion/application-documentation/technical-documentation-private-derivation.js.map +1 -1
  24. package/dist/esm/companion/application-documentation/technical-documentation-publication-policy.js +1 -1
  25. package/dist/esm/companion/application-documentation/technical-documentation-publication-policy.js.map +1 -1
  26. package/dist/esm/companion/index.d.ts +2 -1
  27. package/dist/esm/companion/index.d.ts.map +1 -1
  28. package/dist/esm/companion/index.js +2 -1
  29. package/dist/esm/companion/index.js.map +1 -1
  30. package/dist/esm/companion/manual-controller-route-projection.d.ts +112 -0
  31. package/dist/esm/companion/manual-controller-route-projection.d.ts.map +1 -0
  32. package/dist/esm/companion/manual-controller-route-projection.js +249 -0
  33. package/dist/esm/companion/manual-controller-route-projection.js.map +1 -0
  34. package/dist/esm/companion/openapi-generator.d.ts +16 -0
  35. package/dist/esm/companion/openapi-generator.d.ts.map +1 -1
  36. package/dist/esm/companion/openapi-generator.js +489 -26
  37. package/dist/esm/companion/openapi-generator.js.map +1 -1
  38. package/dist/esm/companion/operation-projection.schemas.d.ts +44 -0
  39. package/dist/esm/companion/operation-projection.schemas.d.ts.map +1 -1
  40. package/dist/esm/companion/operation-projection.schemas.js +37 -0
  41. package/dist/esm/companion/operation-projection.schemas.js.map +1 -1
  42. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.d.ts +7 -1
  43. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.d.ts.map +1 -1
  44. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.js +34 -18
  45. package/dist/esm/companion/rendering/technical-documentation-docusaurus-renderer.js.map +1 -1
  46. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.d.ts.map +1 -1
  47. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.js +8 -1
  48. package/dist/esm/companion/rendering/technical-documentation-managed-tree-validator.js.map +1 -1
  49. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.d.ts +0 -9
  50. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.d.ts.map +0 -1
  51. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.js +0 -111
  52. package/dist/esm/companion/rendering/technical-documentation-markdown-renderer.js.map +0 -1
  53. package/dist/esm/companion/rendering/technical-documentation-render-model.d.ts.map +1 -1
  54. package/dist/esm/companion/rendering/technical-documentation-render-model.js +30 -13
  55. package/dist/esm/companion/rendering/technical-documentation-render-model.js.map +1 -1
  56. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.d.ts +10 -0
  57. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.d.ts.map +1 -1
  58. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.js +10 -15
  59. package/dist/esm/companion/rendering/technical-documentation-search-index-renderer.js.map +1 -1
  60. package/dist/esm/companion/technical-documentation-capture-execution-port.d.ts +27 -1
  61. package/dist/esm/companion/technical-documentation-capture-execution-port.d.ts.map +1 -1
  62. package/dist/esm/companion/technical-documentation-capture-execution-port.js.map +1 -1
  63. package/dist/esm/companion/technical-documentation-diagram-definitions.d.ts +33 -0
  64. package/dist/esm/companion/technical-documentation-diagram-definitions.d.ts.map +1 -0
  65. package/dist/esm/companion/technical-documentation-diagram-definitions.js +54 -0
  66. package/dist/esm/companion/technical-documentation-diagram-definitions.js.map +1 -0
  67. package/dist/esm/companion/technical-documentation-diagram-materializer.d.ts +10 -18
  68. package/dist/esm/companion/technical-documentation-diagram-materializer.d.ts.map +1 -1
  69. package/dist/esm/companion/technical-documentation-diagram-materializer.js +9 -39
  70. package/dist/esm/companion/technical-documentation-diagram-materializer.js.map +1 -1
  71. package/dist/esm/config/wildo-tech-doc-config.schemas.d.ts +8 -4
  72. package/dist/esm/config/wildo-tech-doc-config.schemas.d.ts.map +1 -1
  73. package/dist/esm/config/wildo-tech-doc-config.schemas.js +8 -4
  74. package/dist/esm/config/wildo-tech-doc-config.schemas.js.map +1 -1
  75. package/dist/esm/content/application-consumer-documentation-content.techdoc.d.ts +42 -64
  76. package/dist/esm/content/application-consumer-documentation-content.techdoc.d.ts.map +1 -1
  77. package/dist/esm/content/application-consumer-documentation-content.techdoc.js +164 -925
  78. package/dist/esm/content/application-consumer-documentation-content.techdoc.js.map +1 -1
  79. package/dist/esm/runtime/DocsAuthContext.d.ts +16 -1
  80. package/dist/esm/runtime/DocsAuthContext.d.ts.map +1 -1
  81. package/dist/esm/runtime/DocsAuthContext.js +18 -2
  82. package/dist/esm/runtime/DocsAuthContext.js.map +1 -1
  83. package/dist/esm/runtime/frontend-provider-registry.techdoc.d.ts +35 -13
  84. package/dist/esm/runtime/frontend-provider-registry.techdoc.d.ts.map +1 -1
  85. package/dist/esm/runtime/frontend-provider-registry.techdoc.js +28 -19
  86. package/dist/esm/runtime/frontend-provider-registry.techdoc.js.map +1 -1
  87. package/dist/esm/runtime/index.d.ts +1 -0
  88. package/dist/esm/runtime/index.d.ts.map +1 -1
  89. package/dist/esm/runtime/index.js +1 -0
  90. package/dist/esm/runtime/index.js.map +1 -1
  91. package/dist/esm/runtime/use-docs-provider-sdks.d.ts +21 -0
  92. package/dist/esm/runtime/use-docs-provider-sdks.d.ts.map +1 -0
  93. package/dist/esm/runtime/use-docs-provider-sdks.js +49 -0
  94. package/dist/esm/runtime/use-docs-provider-sdks.js.map +1 -0
  95. package/dist/tsconfig.build.tsbuildinfo +1 -1
  96. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"file":"technical-documentation-engine-content-bundle.js","sourceRoot":"","sources":["../../../../../src/companion/application-documentation/technical-documentation-engine-content-bundle.ts"],"names":[],"mappings":"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","sourcesContent":["import { IMPLICIT_LEAD_SECTION_HEADING } from '../rendering/technical-documentation-markdown-links';\nimport {\n APPLICATION_CONNECTION_DOCUMENTATION_SOURCE_REF,\n ApplicationConnectionPresentation,\n ApplicationConnectionInlineValue,\n type ApplicationConnectionDocumentationFact,\n} from './application-connection-documentation';\nimport {\n APPLICATION_AUTHENTICATION_DOCUMENTATION_SOURCE_REF,\n ApplicationAuthenticationPresentation,\n type ApplicationAuthenticationDocumentationFact,\n} from './application-authentication-documentation';\nimport {\n APPLICATION_INTEGRATION_DOCUMENTATION_SOURCE_REF,\n ApplicationIntegrationPresentation,\n type ApplicationIntegrationDocumentationFact,\n} from './application-integration-documentation';\nimport {\n APPLICATION_ADMINISTRATION_DOCUMENTATION_SOURCE_REF,\n ApplicationAdministrationPresentation,\n type ApplicationAdministrationDocumentationFact,\n} from './application-administration-documentation';\nimport {\n canonicalizeTechnicalDocumentationJson,\n TechnicalDocumentationAccessClass,\n TechnicalDocumentationApiReferenceSection,\n TechnicalDocumentationApiReferenceTargetKind,\n TechnicalDocumentationApplicabilityEvidenceAxis,\n TechnicalDocumentationApplicabilityEvidenceStatus,\n TechnicalDocumentationEditorialStatus,\n TechnicalDocumentationEvidenceSubjectRef,\n TechnicalDocumentationLinkKind,\n TechnicalDocumentationReaderAudience,\n TechnicalDocumentationSourceClassification,\n TechnicalDocumentationSourceOwnership,\n TechnicalDocumentationUnitKind,\n createTechnicalDocumentationUnitV1,\n type TechnicalDocumentationApplicabilityRequirementV1,\n type TechnicalDocumentationApiReferenceTargetV1,\n type TechnicalDocumentationLinkV1,\n type TechnicalDocumentationSourceProvenanceV1,\n type TechnicalDocumentationUnitV1,\n} from '@wildo-ai/saas-specifications/technical-documentation';\nimport {\n EngineDocumentationSpecificationFamilyRef,\n type EngineDocumentationSpecificationCatalogEntryV1,\n type EngineDocumentationSpecificationCatalogV1,\n} from '@wildo-ai/saas-specifications/companion';\n\nimport type { LoadedApplicationConsumerDocumentationContentBundleV1 } from '../content/application-consumer-documentation-content-loader';\nimport {\n APPLICATION_CONSUMER_DOCUMENTATION_COMPANION_PROJECTION_SOURCE_PREFIX,\n APPLICATION_CONSUMER_DOCUMENTATION_CONSUMER_FACT_SOURCE_PREFIX,\n APPLICATION_CONSUMER_DOCUMENTATION_ENGINE_CONTENT_SOURCE_PREFIX,\n} from '../../content/application-consumer-documentation-content-manifest.schemas';\nimport { APPLICATION_ORGANIZATION_ROLES_DOCUMENTATION_SOURCE_REF } from './application-organization-role-documentation';\nimport {\n APPLICATION_ORGANIZATION_UNIT_RESOURCES_DOCUMENTATION_SOURCE_REF,\n type ApplicationOrganizationUnitResourcesDocumentationFact,\n} from './application-organization-unit-resource-documentation';\n\nexport interface EngineContentUnitDefinition {\n readonly kind: TechnicalDocumentationUnitKind;\n readonly readerAudiences: readonly TechnicalDocumentationReaderAudience[];\n readonly accessClass: TechnicalDocumentationAccessClass;\n readonly applicabilityRequirements: readonly TechnicalDocumentationApplicabilityRequirementV1[];\n readonly relatedUnitRefs: readonly string[];\n readonly apiReferenceTargets?: readonly { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 }[];\n}\n\ninterface RelatedUnitLinkTarget {\n readonly targetUnitRef: string;\n readonly title: string;\n readonly titleProvenance: TechnicalDocumentationSourceProvenanceV1;\n}\n\nconst PROVEN = [TechnicalDocumentationApplicabilityEvidenceStatus.PROVEN] as const;\n/**\n * Every page in the webhook journey describes the same conditional product\n * surface. Keep that condition at the journey boundary so a child task can\n * never be published after its landing has correctly failed applicability.\n */\nconst OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS = [\n {\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.OUTBOUND_M2M_DELIVERY,\n acceptableStatuses: [...PROVEN],\n },\n {\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.ENGINE_SUPPORT,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.OUTBOUND_M2M_SIGNATURE,\n acceptableStatuses: [...PROVEN],\n },\n] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.ORGANIZATION_SIEM_EXPORT,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst ORGANIZATION_SIEM_RECOVERY_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.ORGANIZATION_SIEM_DELIVERY_RECOVERY,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\n/** Billing is one operational journey; every page requires the admitted account and subscription surfaces. */\nconst ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.ORGANIZATION_BILLING_ADMINISTRATION,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.CONFIGURED_ACTIVATION,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.APPLICATION_MCP_TOOL_SURFACE,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst A2A_INTEGRATION_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.CONFIGURED_ACTIVATION,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.APPLICATION_A2A_AGENT_SURFACE,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst CONSUMER_FACT_TOKEN_PATTERN = /\\{\\{CONSUMER_FACT:([^#}]+)#([^}]+)\\}\\}/g;\nconst APPLICATION_ORGANIZATION_ROLES_TOKEN = '{{APPLICATION_ORGANIZATION_ROLES}}';\nconst APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN = '{{APPLICATION_ORGANIZATION_UNIT_RESOURCES}}';\n/** Inline, and deliberately repeatable: a page names the product as often as its prose needs it. */\nconst APPLICATION_NAME_TOKEN = '{{APPLICATION_NAME}}';\n/** Block, one per requested presentation — `{{APPLICATION_CONNECTION:baseUrls}}` and siblings. */\n// A selector may carry digits (`a2aAgentCard`), which an alphabetic-only class silently refuses:\n// the token then matches nothing and its page reads as declaring a projection it never used.\nconst APPLICATION_CONNECTION_TOKEN_PATTERN = /\\{\\{APPLICATION_CONNECTION:([A-Za-z0-9]+)\\}\\}/g;\n/** Inline connection values, for use inside a sample where a block cannot go. */\nconst APPLICATION_CONNECTION_VALUE_TOKEN_PATTERN = /\\{\\{APPLICATION_CONNECTION_VALUE:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape for the application's authentication policy. */\nconst APPLICATION_AUTHENTICATION_TOKEN_PATTERN = /\\{\\{APPLICATION_AUTHENTICATION:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape again for who may perform each administrative action. */\nconst APPLICATION_ADMINISTRATION_TOKEN_PATTERN = /\\{\\{APPLICATION_ADMINISTRATION:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape again for the tools and events this application publishes. */\nconst APPLICATION_INTEGRATION_TOKEN_PATTERN = /\\{\\{APPLICATION_INTEGRATION:([A-Za-z0-9]+)\\}\\}/g;\n\n/** Public, semantic role inventory supplied by the resolved application companion. */\nexport interface ApplicationOrganizationRolesDocumentationFact {\n readonly sourceRef: `${typeof APPLICATION_CONSUMER_DOCUMENTATION_COMPANION_PROJECTION_SOURCE_PREFIX}${string}`;\n readonly markdown: string;\n readonly sourceVersion: number;\n}\n\n/**\n * Build one semantic guide-to-reference link without embedding a Docusaurus\n * route. The verified OpenAPI link index resolves the resource only when the\n * application actually publishes it, so a task page cannot drift into a\n * second, hand-maintained endpoint catalogue.\n */\nfunction resourceApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: `technical-documentation:resource/${resourceIdentifier}`,\n };\n return Object.freeze({\n label,\n target,\n });\n}\n\nfunction applicationAdministrationResourceApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.APPLICATION_ADMINISTRATION_API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: `technical-documentation:resource/${resourceIdentifier}`,\n };\n return Object.freeze({\n label,\n target,\n });\n}\n\nfunction operationFamilyApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n operationFamilyIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.OPERATION_FAMILY,\n operationFamilyRef: `technical-documentation:resource/${resourceIdentifier}/operation-family/${operationFamilyIdentifier}`,\n };\n return Object.freeze({ label, target });\n}\n\nconst organizationMembersApiReferenceTarget = () => resourceApiReferenceTarget('Organization members API reference', 'organizationMembers');\nconst organizationUnitsApiReferenceTarget = () => resourceApiReferenceTarget('Organization units API reference', 'organizationUnits');\nconst organizationUnitMembersApiReferenceTarget = () => resourceApiReferenceTarget('Organization-unit members API reference', 'organizationUnitMembers');\nconst scimProvisioningConfigApiReferenceTarget = () => resourceApiReferenceTarget(\n 'SCIM provisioning configuration API reference',\n 'organizationScimProvisioningConfig',\n);\nconst auditLogsApiReferenceTarget = () => resourceApiReferenceTarget('Audit records API reference', 'auditLogs');\nconst organizationSiemExportConfigApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization SIEM export configuration API reference',\n 'organizationSiemExportConfig',\n);\nconst organizationSiemDeliveryDlqApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization SIEM delivery recovery API reference',\n 'organizationSiemDeliveryDlq',\n);\nconst organizationBillingAccountApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization billing account API reference',\n 'organizationBillingAccounts',\n);\nconst organizationSubscriptionsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization subscriptions API reference',\n 'organizationSubscriptions',\n);\nconst organizationInvoiceRefsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization invoice summaries API reference',\n 'organizationInvoiceRefs',\n);\nconst organizationUsageRecordsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization usage records API reference',\n 'organizationUsageRecords',\n);\n\n/**\n * The engine-owned editorial topology: each verified authored unit has one\n * consumer-documentation role and an explicit set of reader destinations.\n *\n * This is deliberately separate from Markdown. Markdown owns the narrative\n * and title; this map owns type, audience, publication posture and navigation\n * relationships, allowing the projector to reject a mismatched content set.\n */\nexport const ENGINE_CONTENT_UNIT_DEFINITIONS: Readonly<Record<string, EngineContentUnitDefinition>> = Object.freeze({\n 'technical-documentation:unit/application-orientation': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/authentication': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14: engine-generic API guidance is applicable because the application\n // declares an API, not because a live process was observed serving one.\n // The former RUNTIME_AUTHORIZATION requirement on APPLICATION_API could only ever be\n // satisfied by a runtime receipt, which no longer exists.\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/sign-in-and-mfa': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/complete-sign-in': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/mfa-enrollment-and-recovery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sign-in-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/troubleshoot-user-access',\n ],\n },\n 'technical-documentation:unit/single-sign-on': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-configure': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-rollout-and-recovery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/troubleshoot-user-access',\n ],\n },\n 'technical-documentation:unit/api-keys': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/api-keys-lifecycle',\n 'technical-documentation:unit/api-keys-troubleshoot',\n ],\n apiReferenceTargets: [{\n label: 'Organization API keys API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: 'technical-documentation:resource/organizationApiKeys',\n },\n }],\n },\n 'technical-documentation:unit/api-keys-create-and-store': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-lifecycle',\n 'technical-documentation:unit/first-request',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization API key', 'organizationApiKeys', 'create'),\n ],\n },\n 'technical-documentation:unit/api-keys-lifecycle': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/api-keys-troubleshoot',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Rotate an organization API key', 'organizationApiKeys', 'rotate'),\n operationFamilyApiReferenceTarget('Deactivate an organization API key', 'organizationApiKeys', 'deactivate'),\n operationFamilyApiReferenceTarget('Reactivate an organization API key', 'organizationApiKeys', 'reactivate'),\n operationFamilyApiReferenceTarget('Extend an organization API key expiry', 'organizationApiKeys', 'extend_expiry'),\n ],\n },\n 'technical-documentation:unit/api-keys-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/common-rest-api',\n ],\n apiReferenceTargets: [resourceApiReferenceTarget('Organization API keys API reference', 'organizationApiKeys')],\n },\n 'technical-documentation:unit/oauth-provider': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n },\n 'technical-documentation:unit/oauth-register-client': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n apiReferenceTargets: [\n applicationAdministrationResourceApiReferenceTarget('Organization OAuth clients API reference', 'organizationOAuthClients'),\n ],\n },\n 'technical-documentation:unit/oauth-authorize-delegated-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n },\n 'technical-documentation:unit/oauth-operate-and-revoke': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/api-keys-lifecycle',\n ],\n apiReferenceTargets: [\n applicationAdministrationResourceApiReferenceTarget('Organization OAuth clients API reference', 'organizationOAuthClients'),\n ],\n },\n 'technical-documentation:unit/user-administration': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/manage-users-manually': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/invite-and-onboard-user',\n 'technical-documentation:unit/change-user-access',\n 'technical-documentation:unit/suspend-or-remove-user',\n 'technical-documentation:unit/scim',\n ],\n },\n 'technical-documentation:unit/invite-and-onboard-user': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/suspend-or-remove-user',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Invite a member', 'organizationMembers', 'create'),\n operationFamilyApiReferenceTarget('Resend a pending invitation', 'organizationMembers', 'resend'),\n operationFamilyApiReferenceTarget('Revoke a pending invitation', 'organizationMembers', 'revoke'),\n ],\n },\n 'technical-documentation:unit/organization-roles': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/change-user-access',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [{\n label: 'Organization members API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: 'technical-documentation:resource/organizationMembers',\n },\n }],\n },\n 'technical-documentation:unit/change-user-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/suspend-or-remove-user',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Update an organization membership', 'organizationMembers', 'update'),\n organizationUnitMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/manage-organization-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/design-organization-unit-hierarchy',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/operate-organization-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization unit', 'organizationUnits', 'create'),\n organizationUnitsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/design-organization-unit-hierarchy': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/operate-organization-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization unit', 'organizationUnits', 'create'),\n operationFamilyApiReferenceTarget('Move an organization unit', 'organizationUnits', 'move'),\n ],\n },\n 'technical-documentation:unit/assign-organization-unit-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/design-organization-unit-hierarchy',\n 'technical-documentation:unit/organization-roles',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('List organization-unit members', 'organizationUnitMembers', 'list'),\n operationFamilyApiReferenceTarget('Assign an organization-unit member', 'organizationUnitMembers', 'create'),\n operationFamilyApiReferenceTarget('Change an organization-unit assignment', 'organizationUnitMembers', 'update'),\n operationFamilyApiReferenceTarget('Remove an organization-unit assignment', 'organizationUnitMembers', 'delete'),\n ],\n },\n 'technical-documentation:unit/operate-organization-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/scim-map-profile-and-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Move an organization unit', 'organizationUnits', 'move'),\n operationFamilyApiReferenceTarget('Archive an organization unit', 'organizationUnits', 'archive'),\n operationFamilyApiReferenceTarget('Restore an organization unit', 'organizationUnits', 'restore'),\n operationFamilyApiReferenceTarget('Delete an organization unit', 'organizationUnits', 'delete'),\n ],\n },\n 'technical-documentation:unit/suspend-or-remove-user': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Revoke a pending invitation', 'organizationMembers', 'revoke'),\n operationFamilyApiReferenceTarget('Suspend an organization membership', 'organizationMembers', 'suspend'),\n operationFamilyApiReferenceTarget('Reactivate an organization membership', 'organizationMembers', 'reactivate'),\n operationFamilyApiReferenceTarget('Remove an organization membership', 'organizationMembers', 'delete'),\n ],\n },\n 'technical-documentation:unit/review-users-and-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('List organization members', 'organizationMembers', 'list'),\n operationFamilyApiReferenceTarget('List organization-unit members', 'organizationUnitMembers', 'list'),\n ],\n },\n 'technical-documentation:unit/troubleshoot-user-access': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n },\n 'technical-documentation:unit/scim': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n ],\n },\n 'technical-documentation:unit/scim-protocol-and-payloads': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n ],\n },\n 'technical-documentation:unit/scim-configure': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n ],\n },\n 'technical-documentation:unit/scim-microsoft-entra': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-okta': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-ldap-and-active-directory': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-map-profile-and-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n organizationUnitsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-validate-and-roll-out': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-operate-and-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n operationFamilyApiReferenceTarget('Revoke a SCIM token', 'organizationScimTokens', 'revokeToken'),\n operationFamilyApiReferenceTarget('Rotate a SCIM token', 'organizationScimTokens', 'rotateToken'),\n ],\n },\n 'technical-documentation:unit/audit-and-siem': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/review-privileged-and-access-changes',\n 'technical-documentation:unit/export-audit-records',\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/siem-splunk',\n 'technical-documentation:unit/siem-microsoft-sentinel',\n 'technical-documentation:unit/siem-elastic',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/scim',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/investigate-audit-event': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/review-privileged-and-access-changes',\n 'technical-documentation:unit/export-audit-records',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/review-privileged-and-access-changes': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/review-users-and-access',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/export-audit-records': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Export audit records', 'auditLogs', 'exportAuditLogs'),\n ],\n },\n 'technical-documentation:unit/configure-siem-export': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/siem-splunk',\n 'technical-documentation:unit/siem-microsoft-sentinel',\n 'technical-documentation:unit/siem-elastic',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-splunk': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-microsoft-sentinel': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-elastic': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_RECOVERY_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/investigate-audit-event',\n ],\n apiReferenceTargets: [organizationSiemDeliveryDlqApiReferenceTarget()],\n },\n 'technical-documentation:unit/protect-and-retain-audit-evidence': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/export-audit-records',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/billing': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/understand-billing-plans-and-access',\n 'technical-documentation:unit/start-billing-subscription',\n 'technical-documentation:unit/change-or-end-billing-subscription',\n 'technical-documentation:unit/billing-records-and-usage',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/troubleshoot-billing-change',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n organizationBillingAccountApiReferenceTarget(),\n organizationSubscriptionsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/understand-billing-plans-and-access': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/start-billing-subscription',\n 'technical-documentation:unit/reconcile-billing-and-access',\n ],\n apiReferenceTargets: [organizationBillingAccountApiReferenceTarget()],\n },\n 'technical-documentation:unit/start-billing-subscription': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/understand-billing-plans-and-access',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/troubleshoot-billing-change',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Open an organization checkout', 'organizationBillingAccounts', 'open_checkout'),\n ],\n },\n 'technical-documentation:unit/change-or-end-billing-subscription': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/understand-billing-plans-and-access',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/troubleshoot-billing-change',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Change an organization subscription plan', 'organizationSubscriptions', 'change_plan'),\n operationFamilyApiReferenceTarget('Cancel an organization subscription', 'organizationSubscriptions', 'cancel'),\n operationFamilyApiReferenceTarget('Resume an organization subscription', 'organizationSubscriptions', 'resume'),\n ],\n },\n 'technical-documentation:unit/manage-invoices-and-payments': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/billing-records-and-usage',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/understand-metered-usage',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [\n organizationInvoiceRefsApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Open the authenticated billing portal', 'organizationBillingAccounts', 'open_portal'),\n ],\n },\n 'technical-documentation:unit/billing-records-and-usage': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/manage-invoices-and-payments',\n 'technical-documentation:unit/understand-metered-usage',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/troubleshoot-billing-change',\n ],\n apiReferenceTargets: [\n organizationInvoiceRefsApiReferenceTarget(),\n organizationUsageRecordsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/understand-metered-usage': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/billing-records-and-usage',\n 'technical-documentation:unit/manage-invoices-and-payments',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/troubleshoot-billing-change',\n ],\n apiReferenceTargets: [organizationUsageRecordsApiReferenceTarget()],\n },\n 'technical-documentation:unit/reconcile-billing-and-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/manage-invoices-and-payments',\n 'technical-documentation:unit/understand-metered-usage',\n 'technical-documentation:unit/troubleshoot-billing-change',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Read aggregated organization billing state', 'organizationBillingAccounts', 'get_state'),\n organizationSubscriptionsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/troubleshoot-billing-change': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_BILLING_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/billing',\n 'technical-documentation:unit/reconcile-billing-and-access',\n 'technical-documentation:unit/manage-invoices-and-payments',\n 'technical-documentation:unit/understand-metered-usage',\n ],\n apiReferenceTargets: [\n organizationBillingAccountApiReferenceTarget(),\n organizationSubscriptionsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/integrations': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/first-request',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/agent-interoperability',\n ],\n },\n 'technical-documentation:unit/automation-platforms': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/connect-n8n',\n 'technical-documentation:unit/connect-zapier',\n 'technical-documentation:unit/connect-make',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/connect-n8n': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/connect-zapier': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/connect-make': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/ai-coding-tools': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/connect-cursor',\n 'technical-documentation:unit/connect-codex',\n 'technical-documentation:unit/connect-claude-code',\n 'technical-documentation:unit/mcp-integrations',\n ],\n },\n 'technical-documentation:unit/connect-cursor': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/connect-codex': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/connect-claude-code': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/agent-interoperability': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/a2a-integrations',\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/mcp-integrations': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/agent-interoperability',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n },\n 'technical-documentation:unit/a2a-integrations': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: A2A_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/agent-interoperability',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/first-request': {\n kind: TechnicalDocumentationUnitKind.QUICKSTART,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14: engine-generic API guidance is applicable because the application\n // declares an API, not because a live process was observed serving one.\n // The former runtime-exposure requirement on APPLICATION_API (then named\n // `RUNTIME_EXPOSURE`, now `EXPOSED_API_SURFACE`) could only ever be satisfied\n // by a runtime receipt, which no longer exists. The webhook page retains\n // its own source-derived exposure gate because its contract is conditional.\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/integrations',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/common-rest-api',\n ],\n },\n 'technical-documentation:unit/common-rest-api': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/rest-api-conventions',\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/work-with-api-collections',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/rest-api-conventions': {\n kind: TechnicalDocumentationUnitKind.REFERENCE,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/send-api-request': {\n kind: TechnicalDocumentationUnitKind.QUICKSTART,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/work-with-api-collections',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/work-with-api-collections': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/write-and-reconcile-api-changes': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/troubleshoot-api-request',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/troubleshoot-api-request': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/api-keys-troubleshoot',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/webhooks': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14 gap RESOLVED 2026-08-08 — and the resolution was to STOP ASKING THE\n // TENANT QUESTION, not to find a build-time way to answer it.\n //\n // The deleted runtime collector reported `featureReady` for\n // `CoreFeature.M2M_WEBHOOK_DELIVERY`, which is `scopeBoundary: true` over\n // [APPLICATION, ORGANIZATIONS] — every organization opts in independently, so\n // that boolean was TENANT STATE gating whether a documentation PAGE exists.\n // That is a category error: the signature algorithm, payload envelope and\n // retry policy are code, identical for every tenant. Whether a given\n // organization has delivery switched on is an entitlement, and entitlements\n // belong in the prose (see the per-organization note in the unit body), not\n // in an applicability gate.\n //\n // What the gate asks instead is the question documentation can actually\n // answer: does THIS application expose the outbound-webhook surface at all?\n // That is source-derived — the resources must be registered and admitted by\n // the application's declared `apiDocResources` opt-in — and it fails closed\n // for an application that documents no webhook surface.\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n ],\n },\n 'technical-documentation:unit/configure-and-test-webhook-endpoint': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n ],\n },\n 'technical-documentation:unit/verify-webhook-delivery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/operate-webhook-deliveries': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/troubleshoot-webhook-deliveries': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n ],\n },\n});\n\ninterface MarkdownSection {\n readonly heading: string;\n readonly bodyMarkdown: string;\n}\n\nfunction parseEngineMarkdown(markdown: string, unitRef: string): { title: string; summary: string; sections: readonly MarkdownSection[] } {\n const lines = markdown.trim().split('\\n');\n const titleLine = lines.shift();\n if (titleLine === undefined || !titleLine.startsWith('# ')) throw new Error(`engine content ${unitRef} must begin with exactly one H1 title`);\n const title = titleLine.slice(2).trim();\n const sections: MarkdownSection[] = [];\n let heading: string = IMPLICIT_LEAD_SECTION_HEADING;\n let body: string[] = [];\n const flush = (): void => {\n const bodyMarkdown = body.join('\\n').trim();\n if (bodyMarkdown.length > 0) sections.push({ heading, bodyMarkdown });\n body = [];\n };\n for (const line of lines) {\n if (line.startsWith('## ')) {\n flush();\n heading = line.slice(3).trim();\n } else {\n body.push(line);\n }\n }\n flush();\n if (sections.length === 0) throw new Error(`engine content ${unitRef} must contain a non-empty Markdown body`);\n const firstParagraph = sections[0]!.bodyMarkdown.split(/\\n\\s*\\n/, 1)[0]!.replace(/\\s+/g, ' ').trim();\n // The first prose paragraph is deliberately the card/search summary. It is\n // rendered above the guide body by both output families, so retaining that\n // paragraph in the implicit `Overview` section would visibly say it twice.\n // An explicit H2 is not rewritten: its author chose a real section and may\n // intentionally need the opening paragraph in its body.\n const [firstSection, ...remainingSections] = sections;\n if (firstSection !== undefined && firstSection.heading === IMPLICIT_LEAD_SECTION_HEADING) {\n const overviewRemainder = firstSection.bodyMarkdown.replace(/^.*?(?:\\n\\s*\\n|$)/s, '').trim();\n return {\n title,\n summary: firstParagraph,\n sections: overviewRemainder.length === 0\n ? remainingSections\n : [{ heading: firstSection.heading, bodyMarkdown: overviewRemainder }, ...remainingSections],\n };\n }\n return { title, summary: firstParagraph, sections };\n}\n\n/**\n * A related-link label names the reader's destination, not the relationship.\n *\n * The renderer supplies the `Related` heading. Repeating a generic phrase in\n * every list item makes several different navigation choices visually\n * indistinguishable, while resolving the target's authored title preserves\n * the exact customer-facing vocabulary in one place.\n */\n/**\n * Resolves related destinations before output links or provenance are built.\n *\n * A related link projects the target's authored title into the source unit.\n * The title's engine-content identity is therefore an input to both the\n * source unit's output bytes and its digest; it must travel with the link\n * instead of being silently treated as presentation-only metadata.\n */\nfunction resolveRelatedUnitLinkTargets(\n unitRef: string,\n relatedUnitRefs: readonly string[],\n targetByUnitRef: ReadonlyMap<string, RelatedUnitLinkTarget>,\n): RelatedUnitLinkTarget[] {\n return relatedUnitRefs.map((targetUnitRef) => {\n const target = targetByUnitRef.get(targetUnitRef);\n if (target === undefined) throw new Error(`engine content ${unitRef} links to an unknown target ${targetUnitRef}`);\n return target;\n });\n}\n\nfunction relatedLinks(unitRef: string, relatedTargets: readonly RelatedUnitLinkTarget[]): TechnicalDocumentationLinkV1[] {\n const sourceSlug = unitRef.slice(unitRef.lastIndexOf('/') + 1);\n return relatedTargets.map((target) => {\n const targetSlug = target.targetUnitRef.slice(target.targetUnitRef.lastIndexOf('/') + 1);\n return {\n linkRef: `technical-documentation:link/${sourceSlug}-to-${targetSlug}`,\n kind: TechnicalDocumentationLinkKind.UNIT,\n label: target.title,\n targetUnitRef: target.targetUnitRef,\n targetRef: null,\n externalUrl: null,\n apiReferenceTarget: null,\n };\n });\n}\n\nfunction apiReferenceLinks(unitRef: string, targets: NonNullable<EngineContentUnitDefinition['apiReferenceTargets']>): TechnicalDocumentationLinkV1[] {\n const sourceSlug = unitRef.slice(unitRef.lastIndexOf('/') + 1);\n return targets.map((target, index) => ({\n linkRef: `technical-documentation:link/${sourceSlug}-api-reference-${index + 1}`,\n kind: TechnicalDocumentationLinkKind.API_REFERENCE,\n label: target.label,\n targetUnitRef: null,\n targetRef: null,\n externalUrl: null,\n apiReferenceTarget: target.target,\n }));\n}\n\n/**\n * Merges source provenance with the exact title authorities imported through\n * related links. A source reference has one semantic identity in a rendered\n * unit: accepting the same ref with divergent digests would make its output\n * digest ambiguous, so the projector rejects it before the unit schema's\n * canonicalization hides the conflict.\n */\nfunction mergeProvenance(\n ownProvenance: readonly TechnicalDocumentationSourceProvenanceV1[],\n relatedTargets: readonly RelatedUnitLinkTarget[],\n): TechnicalDocumentationSourceProvenanceV1[] {\n /*\n * Compares the WHOLE row, not one field, matching `canonicalizeTechnicalDocumentationRows` — the\n * idiom this subsystem uses everywhere else for \"two rows claim one key and disagree\".\n *\n * Measured, because the narrower version this replaced could not fail: it compared only\n * `sourceVersion`, and the two producers feeding this function cannot disagree on that. A\n * related target's `titleProvenance` is always an `ENGINE_CONTENT`-prefixed ref carrying\n * `contentBundleVersion`, and own-provenance for that same prefix carries `contentBundleVersion`\n * too — the curated-fact and companion-projection branches, which carry other versions, use\n * disjoint ref prefixes and can never collide with a title source. Widening to the full row does\n * not make today's two producers trip it either; it makes the check meaningful the day a third\n * producer is added, which is when a silent disagreement would actually cost something.\n *\n * The digest form that preceded both was reachable for the wrong reason: it compared\n * `identity.semanticDigest`, which is the CITING UNIT's identity rather than the source's, so two\n * units legitimately citing one shared engine-content source disagreed and it threw on a correct\n * input.\n */\n const provenanceBySourceRef = new Map<string, TechnicalDocumentationSourceProvenanceV1>();\n for (const provenance of [...ownProvenance, ...relatedTargets.map((target) => target.titleProvenance)]) {\n const existing = provenanceBySourceRef.get(provenance.sourceRef);\n if (existing !== undefined && canonicalizeTechnicalDocumentationJson(existing) !== canonicalizeTechnicalDocumentationJson(provenance)) {\n throw new Error(`engine content provenance source ${provenance.sourceRef} is cited with conflicting rows`);\n }\n provenanceBySourceRef.set(provenance.sourceRef, provenance);\n }\n return [...provenanceBySourceRef.values()].sort((left, right) => left.sourceRef.localeCompare(right.sourceRef, 'en-US'));\n}\n\nfunction consumerFactPresentation(entry: EngineDocumentationSpecificationCatalogEntryV1, selector: string): string {\n if (entry.specificationFamilyRef !== EngineDocumentationSpecificationFamilyRef.CONSUMER_FACT) {\n throw new Error(`documentation source ${entry.sourceRef} is not a curated consumer fact`);\n }\n if (entry.semanticDto === null || typeof entry.semanticDto !== 'object' || Array.isArray(entry.semanticDto)) {\n throw new Error(`consumer fact ${entry.sourceRef} has no object semantic DTO`);\n }\n const presentation = (entry.semanticDto as Readonly<Record<string, unknown>>)[selector];\n if (typeof presentation !== 'string' || presentation.trim().length === 0) {\n throw new Error(`consumer fact ${entry.sourceRef} has no ${selector} presentation`);\n }\n return presentation;\n}\n\n/**\n * Resolves only declared, explicitly curated consumer facts into an authored\n * engine-content unit. Arbitrary catalog entries are not eligible: that is the\n * safety boundary preventing raw specification fields from entering prose.\n */\nfunction resolveConsumerFactMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n catalog: EngineDocumentationSpecificationCatalogV1,\n): { markdown: string; entriesBySourceRef: ReadonlyMap<string, EngineDocumentationSpecificationCatalogEntryV1> } {\n const declaredFactRefs = declaredSourceRefs.filter((sourceRef) => sourceRef.startsWith(APPLICATION_CONSUMER_DOCUMENTATION_CONSUMER_FACT_SOURCE_PREFIX));\n const catalogEntriesBySourceRef = new Map(catalog.entries.map((entry) => [entry.sourceRef, entry]));\n const resolvedFactRefs = new Set<string>();\n const renderedMarkdown = markdown.replace(CONSUMER_FACT_TOKEN_PATTERN, (_token, sourceRef: string, selector: string) => {\n if (!declaredFactRefs.includes(sourceRef)) {\n throw new Error(`engine content references undeclared consumer fact ${sourceRef}`);\n }\n const entry = catalogEntriesBySourceRef.get(sourceRef);\n if (entry === undefined) throw new Error(`engine content references unavailable consumer fact ${sourceRef}`);\n resolvedFactRefs.add(sourceRef);\n return consumerFactPresentation(entry, selector);\n });\n if (renderedMarkdown.includes('{{CONSUMER_FACT:')) throw new Error('engine content contains an invalid consumer-fact token');\n if (resolvedFactRefs.size !== declaredFactRefs.length) {\n const missing = declaredFactRefs.filter((sourceRef) => !resolvedFactRefs.has(sourceRef));\n throw new Error(`engine content declares an unused consumer fact: ${missing.join(', ')}`);\n }\n return {\n markdown: renderedMarkdown,\n entriesBySourceRef: new Map([...resolvedFactRefs].map((sourceRef) => [sourceRef, catalogEntriesBySourceRef.get(sourceRef)!])),\n };\n}\n\n/**\n * Substitutes a companion projection that offers NAMED PRESENTATIONS, and optionally one inline\n * value repeated as often as the prose needs it.\n *\n * Shared by the connection and authentication projections because both have the same shape and the\n * same three failure modes: a page that uses a token without declaring the source, a page that\n * declares the source and uses no token, and a page that asks for a presentation the projection\n * does not offer. Each must fail the publication rather than render something plausible.\n */\nfunction resolveSelectorProjectionMarkdown<TFact extends { readonly sourceRef: string }>(input: {\n readonly markdown: string;\n readonly declaredSourceRefs: readonly string[];\n readonly sourceRef: string;\n readonly label: string;\n readonly fact: TFact | undefined;\n readonly selectorPattern: RegExp;\n readonly presentationFor: (fact: TFact, selector: string) => string | undefined;\n readonly inline?: { readonly token: string; readonly valueFor: (fact: TFact) => string };\n /** Single-string values substituted INSIDE a sample, where a block presentation cannot go. */\n readonly inlineSelector?: { readonly pattern: RegExp; readonly valueFor: (fact: TFact, selector: string) => string | undefined };\n}): { markdown: string; fact: TFact | undefined } {\n const { markdown, declaredSourceRefs, sourceRef, label, fact, selectorPattern, presentationFor, inline, inlineSelector } = input;\n const declaredRefs = declaredSourceRefs.filter((candidate) => candidate === sourceRef);\n const inlineCount = inline === undefined ? 0 : markdown.split(inline.token).length - 1;\n const selectorCount = [...markdown.matchAll(selectorPattern)].length;\n const inlineSelectorCount = inlineSelector === undefined ? 0 : [...markdown.matchAll(inlineSelector.pattern)].length;\n if (inlineCount === 0 && selectorCount === 0 && inlineSelectorCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused ${label} projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error(`engine content ${label} projection must declare and resolve exactly one matching companion source`);\n }\n const withInline = inline === undefined ? markdown : markdown.split(inline.token).join(inline.valueFor(fact));\n const withInlineSelectors = inlineSelector === undefined ? withInline : withInline.replace(inlineSelector.pattern, (_token, selector: string) => {\n const value = inlineSelector.valueFor(fact, selector);\n if (value === undefined || value.trim().length === 0) {\n throw new Error(`engine content requests an unknown or empty ${label} inline value: ${selector}`);\n }\n return value;\n });\n const rendered = withInlineSelectors.replace(selectorPattern, (_token, selector: string) => {\n const presentation = presentationFor(fact, selector);\n if (presentation === undefined) {\n throw new Error(`engine content requests an unknown ${label} presentation: ${selector}`);\n }\n if (presentation.trim().length === 0) {\n throw new Error(`${label} presentation ${selector} rendered empty; every presentation must say something true even when the subject is absent`);\n }\n return presentation;\n });\n return { markdown: rendered, fact };\n}\n\n/**\n * The application's own name and connection details. The name is inline and repeatable — a page\n * names the product as often as its prose needs it — while a connection table is a block.\n */\nfunction resolveApplicationConnectionMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationConnectionDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationConnectionDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_CONNECTION_DOCUMENTATION_SOURCE_REF,\n label: 'application-connection',\n fact,\n selectorPattern: APPLICATION_CONNECTION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationConnectionPresentation],\n inline: { token: APPLICATION_NAME_TOKEN, valueFor: (resolved) => resolved.applicationName },\n inlineSelector: {\n pattern: APPLICATION_CONNECTION_VALUE_TOKEN_PATTERN,\n valueFor: (resolved, selector) => resolved.inlineValues[selector as ApplicationConnectionInlineValue],\n },\n });\n}\n\n/** What this application actually asks of a person signing in. Presentations only. */\nfunction resolveApplicationAuthenticationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationAuthenticationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationAuthenticationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_AUTHENTICATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-authentication',\n fact,\n selectorPattern: APPLICATION_AUTHENTICATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationAuthenticationPresentation],\n });\n}\n\n/** The tools and events this application publishes. Presentations only. */\nfunction resolveApplicationIntegrationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationIntegrationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationIntegrationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_INTEGRATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-integration',\n fact,\n selectorPattern: APPLICATION_INTEGRATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationIntegrationPresentation],\n });\n}\n\n/** Who may perform each administrative action here. Presentations only. */\nfunction resolveApplicationAdministrationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationAdministrationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationAdministrationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_ADMINISTRATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-administration',\n fact,\n selectorPattern: APPLICATION_ADMINISTRATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationAdministrationPresentation],\n });\n}\n\nfunction resolveApplicationOrganizationRolesMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationOrganizationRolesDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationOrganizationRolesDocumentationFact | undefined } {\n const declaredRefs = declaredSourceRefs.filter((sourceRef) => sourceRef === APPLICATION_ORGANIZATION_ROLES_DOCUMENTATION_SOURCE_REF);\n const tokenCount = markdown.split(APPLICATION_ORGANIZATION_ROLES_TOKEN).length - 1;\n if (tokenCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused companion projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (tokenCount !== 1 || declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error('engine content organization-role projection must declare and resolve exactly one matching companion source');\n }\n if (fact.markdown.trim().length === 0) throw new Error('application organization-role projection has no Markdown presentation');\n return { markdown: markdown.replace(APPLICATION_ORGANIZATION_ROLES_TOKEN, fact.markdown), fact };\n}\n\nfunction resolveApplicationOrganizationUnitResourcesMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationOrganizationUnitResourcesDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationOrganizationUnitResourcesDocumentationFact | undefined } {\n const declaredRefs = declaredSourceRefs.filter((sourceRef) => sourceRef === APPLICATION_ORGANIZATION_UNIT_RESOURCES_DOCUMENTATION_SOURCE_REF);\n const tokenCount = markdown.split(APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN).length - 1;\n if (tokenCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused organization-unit resource projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (tokenCount !== 1 || declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error('engine content organization-unit resource projection must declare and resolve exactly one matching companion source');\n }\n if (fact.markdown.trim().length === 0) throw new Error('application organization-unit resource projection has no Markdown presentation');\n return { markdown: markdown.replace(APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN, fact.markdown), fact };\n}\n\n/**\n * The facts only the application knows, which the companion measures and passes in.\n *\n * A record rather than a positional list: each is optional because a page declares what it uses,\n * and the set grows as the documentation learns to say more about the application it ships with.\n */\nexport interface ApplicationDocumentationFacts {\n readonly organizationRoles?: ApplicationOrganizationRolesDocumentationFact;\n readonly organizationUnitResources?: ApplicationOrganizationUnitResourcesDocumentationFact;\n readonly connection?: ApplicationConnectionDocumentationFact;\n readonly authentication?: ApplicationAuthenticationDocumentationFact;\n readonly administration?: ApplicationAdministrationDocumentationFact;\n readonly integration?: ApplicationIntegrationDocumentationFact;\n}\n\n/**\n * Compiles verified engine content and the application's own facts (organization roles,\n * unit-aware resources, name and connection details) into private documentation.\n */\nexport function projectEngineApplicationConsumerContentBundle(\n bundle: LoadedApplicationConsumerDocumentationContentBundleV1,\n engineSpecificationCatalog: EngineDocumentationSpecificationCatalogV1,\n unitDefinitions: Readonly<Record<string, EngineContentUnitDefinition>> = ENGINE_CONTENT_UNIT_DEFINITIONS,\n applicationFacts: ApplicationDocumentationFacts = {},\n): TechnicalDocumentationUnitV1[] {\n const manifestRefs = bundle.manifest.units.map((unit) => unit.unitRef).sort();\n const definitionRefs = Object.keys(unitDefinitions).sort();\n if (manifestRefs.join('\\0') !== definitionRefs.join('\\0')) {\n throw new Error('engine content unit definitions do not exactly cover the verified application-consumer content bundle');\n }\n\n const parsedContentByUnitRef = new Map(bundle.manifest.units.map((identity) => {\n if (identity.managedPaths.length !== 1) throw new Error(`engine content unit ${identity.unitRef} must resolve to exactly one Markdown source`);\n const authoredMarkdown = new TextDecoder('utf-8', { fatal: true }).decode(bundle.readManagedBytes(identity.managedPaths[0]!));\n const resolvedConsumerFacts = resolveConsumerFactMarkdown(authoredMarkdown, identity.sourceRefs, engineSpecificationCatalog);\n const resolvedApplicationOrganizationRoles = resolveApplicationOrganizationRolesMarkdown(\n resolvedConsumerFacts.markdown,\n identity.sourceRefs,\n applicationFacts.organizationRoles,\n );\n const resolvedApplicationOrganizationUnitResources = resolveApplicationOrganizationUnitResourcesMarkdown(\n resolvedApplicationOrganizationRoles.markdown,\n identity.sourceRefs,\n applicationFacts.organizationUnitResources,\n );\n const resolvedApplicationConnection = resolveApplicationConnectionMarkdown(\n resolvedApplicationOrganizationUnitResources.markdown,\n identity.sourceRefs,\n applicationFacts.connection,\n );\n const resolvedApplicationAuthentication = resolveApplicationAuthenticationMarkdown(\n resolvedApplicationConnection.markdown,\n identity.sourceRefs,\n applicationFacts.authentication,\n );\n const resolvedApplicationAdministration = resolveApplicationAdministrationMarkdown(\n resolvedApplicationAuthentication.markdown,\n identity.sourceRefs,\n applicationFacts.administration,\n );\n const resolvedApplicationIntegration = resolveApplicationIntegrationMarkdown(\n resolvedApplicationAdministration.markdown,\n identity.sourceRefs,\n applicationFacts.integration,\n );\n return [identity.unitRef, {\n parsed: parseEngineMarkdown(resolvedApplicationIntegration.markdown, identity.unitRef),\n resolvedConsumerFacts,\n resolvedApplicationOrganizationRoles,\n resolvedApplicationOrganizationUnitResources,\n resolvedApplicationConnection,\n resolvedApplicationAuthentication,\n resolvedApplicationAdministration,\n resolvedApplicationIntegration,\n }] as const;\n }));\n const relatedTargetByUnitRef = new Map(bundle.manifest.units.map((identity) => {\n const content = parsedContentByUnitRef.get(identity.unitRef);\n if (content === undefined) throw new Error(`engine content ${identity.unitRef} has no parsed content`);\n const titleSourceRef = identity.sourceRefs.find((sourceRef) => sourceRef.startsWith(APPLICATION_CONSUMER_DOCUMENTATION_ENGINE_CONTENT_SOURCE_PREFIX));\n if (titleSourceRef === undefined) throw new Error(`engine content ${identity.unitRef} has no authored title source`);\n return [identity.unitRef, {\n targetUnitRef: identity.unitRef,\n title: content.parsed.title,\n titleProvenance: {\n sourceRef: titleSourceRef,\n ownership: TechnicalDocumentationSourceOwnership.ENGINE_GENERIC_CONTENT,\n classification: TechnicalDocumentationSourceClassification.PUBLIC,\n sourceVersion: bundle.identity.contentBundleVersion,\n sourceAnchorRef: null,\n },\n }] as const;\n }));\n\n return bundle.manifest.units.map((identity) => {\n const definition = unitDefinitions[identity.unitRef];\n if (definition === undefined) throw new Error(`unsupported engine application-consumer content unit ${identity.unitRef}`);\n const content = parsedContentByUnitRef.get(identity.unitRef);\n if (content === undefined) throw new Error(`engine content ${identity.unitRef} has no parsed content`);\n const { parsed, resolvedConsumerFacts, resolvedApplicationOrganizationRoles, resolvedApplicationOrganizationUnitResources, resolvedApplicationConnection, resolvedApplicationAuthentication, resolvedApplicationAdministration, resolvedApplicationIntegration } = content;\n const unitSlug = identity.unitRef.slice(identity.unitRef.lastIndexOf('/') + 1);\n const relatedTargets = resolveRelatedUnitLinkTargets(identity.unitRef, definition.relatedUnitRefs, relatedTargetByUnitRef);\n const ownProvenance = identity.sourceRefs.map((sourceRef) => {\n const fact = resolvedConsumerFacts.entriesBySourceRef.get(sourceRef);\n const applicationProjection = resolvedApplicationOrganizationRoles.fact?.sourceRef === sourceRef\n ? resolvedApplicationOrganizationRoles.fact\n : resolvedApplicationOrganizationUnitResources.fact?.sourceRef === sourceRef\n ? resolvedApplicationOrganizationUnitResources.fact\n : resolvedApplicationConnection.fact?.sourceRef === sourceRef\n ? resolvedApplicationConnection.fact\n : resolvedApplicationAuthentication.fact?.sourceRef === sourceRef\n ? resolvedApplicationAuthentication.fact\n : resolvedApplicationAdministration.fact?.sourceRef === sourceRef\n ? resolvedApplicationAdministration.fact\n : undefined;\n return {\n sourceRef,\n ownership: applicationProjection === undefined\n ? TechnicalDocumentationSourceOwnership.ENGINE_GENERIC_CONTENT\n : TechnicalDocumentationSourceOwnership.APPLICATION_COMPANION_PROJECTION,\n classification: TechnicalDocumentationSourceClassification.PUBLIC,\n /*\n * A companion projection carries its own version; a curated engine fact takes the\n * catalog projector's; authored engine content takes the content bundle's. All three\n * were sha256 values until 2026-08-27 and none of them was ever compared to anything\n * except another copy of itself.\n */\n sourceVersion: applicationProjection?.sourceVersion\n ?? (fact === undefined ? bundle.identity.contentBundleVersion : engineSpecificationCatalog.identity.projectorVersion),\n sourceAnchorRef: null,\n };\n });\n return createTechnicalDocumentationUnitV1({\n schemaVersion: 1,\n unitRef: identity.unitRef,\n unitVersion: 1,\n kind: definition.kind,\n readerAudiences: [...definition.readerAudiences],\n title: parsed.title,\n summary: parsed.summary,\n sections: parsed.sections.map((section, index) => ({\n sectionRef: `technical-documentation:section/${unitSlug}-${index + 1}`,\n heading: section.heading,\n bodyMarkdown: section.bodyMarkdown,\n })),\n links: [...relatedLinks(identity.unitRef, relatedTargets), ...apiReferenceLinks(identity.unitRef, definition.apiReferenceTargets ?? [])],\n provenance: mergeProvenance(ownProvenance, relatedTargets),\n applicabilityRequirements: [...definition.applicabilityRequirements],\n accessClass: definition.accessClass,\n editorialStatus: TechnicalDocumentationEditorialStatus.APPROVED,\n assetRequests: [],\n });\n }).sort((left, right) => left.unitRef.localeCompare(right.unitRef, 'en-US'));\n}\n"]}
1
+ {"version":3,"file":"technical-documentation-engine-content-bundle.js","sourceRoot":"","sources":["../../../../../src/companion/application-documentation/technical-documentation-engine-content-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,qDAAqD,CAAC;AACpG,OAAO,EACL,+CAA+C,GAIhD,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,mDAAmD,GAGpD,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,gDAAgD,GAGjD,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,2CAA2C,GAG5C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,mDAAmD,GAGpD,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,sCAAsC,EACtC,iCAAiC,EACjC,yCAAyC,EACzC,4CAA4C,EAC5C,+CAA+C,EAC/C,iDAAiD,EACjD,qCAAqC,EACrC,wCAAwC,EACxC,8BAA8B,EAC9B,oCAAoC,EACpC,0CAA0C,EAE1C,qCAAqC,EACrC,8BAA8B,EAC9B,kCAAkC,GAMnC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EACL,yCAAyC,GAG1C,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAEL,8DAA8D,EAC9D,+DAA+D,GAChE,MAAM,2EAA2E,CAAC;AACnF,mGAAmG;AACnG,8FAA8F;AAC9F,OAAO,EAAE,iEAAiE,EAAE,MAAM,gDAAgD,CAAC;AACnI,OAAO,EAAE,uDAAuD,EAAE,MAAM,+CAA+C,CAAC;AACxH,OAAO,EACL,gEAAgE,GAEjE,MAAM,wDAAwD,CAAC;AA6ChE,MAAM,MAAM,GAAG,CAAC,iDAAiD,CAAC,MAAM,CAAU,CAAC;AACnF;;;;GAIG;AACH,MAAM,2CAA2C,GAAG;IAClD;QACE,IAAI,EAAE,+CAA+C,CAAC,mBAAmB;QACzE,UAAU,EAAE,wCAAwC,CAAC,qBAAqB;QAC1E,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC;IACD;QACE,IAAI,EAAE,+CAA+C,CAAC,cAAc;QACpE,UAAU,EAAE,wCAAwC,CAAC,sBAAsB;QAC3E,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC;CAC6E,CAAC;AACjF,MAAM,mDAAmD,GAAG,CAAC;QAC3D,IAAI,EAAE,+CAA+C,CAAC,mBAAmB;QACzE,UAAU,EAAE,wCAAwC,CAAC,wBAAwB;QAC7E,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC,CAAgF,CAAC;AAClF,MAAM,qDAAqD,GAAG,CAAC;QAC7D,IAAI,EAAE,+CAA+C,CAAC,mBAAmB;QACzE,UAAU,EAAE,wCAAwC,CAAC,mCAAmC;QACxF,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC,CAAgF,CAAC;AAClF,MAAM,0CAA0C,GAAG,CAAC;QAClD,IAAI,EAAE,+CAA+C,CAAC,qBAAqB;QAC3E,UAAU,EAAE,wCAAwC,CAAC,4BAA4B;QACjF,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC,CAAgF,CAAC;AAClF,MAAM,0CAA0C,GAAG,CAAC;QAClD,IAAI,EAAE,+CAA+C,CAAC,qBAAqB;QAC3E,UAAU,EAAE,wCAAwC,CAAC,6BAA6B;QAClF,kBAAkB,EAAE,CAAC,GAAG,MAAM,CAAC;KAChC,CAAgF,CAAC;AAClF,MAAM,2BAA2B,GAAG,yCAAyC,CAAC;AAC9E,MAAM,oCAAoC,GAAG,oCAAoC,CAAC;AAClF,MAAM,6CAA6C,GAAG,6CAA6C,CAAC;AACpG,oGAAoG;AACpG,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AACtD,kGAAkG;AAClG,iGAAiG;AACjG,6FAA6F;AAC7F,MAAM,oCAAoC,GAAG,gDAAgD,CAAC;AAC9F,iFAAiF;AACjF,MAAM,0CAA0C,GAAG,sDAAsD,CAAC;AAC1G,8DAA8D;AAC9D,MAAM,wCAAwC,GAAG,oDAAoD,CAAC;AACtG,uEAAuE;AACvE,MAAM,wCAAwC,GAAG,oDAAoD,CAAC;AACtG,4EAA4E;AAC5E,MAAM,qCAAqC,GAAG,iDAAiD,CAAC;AAChG,MAAM,gCAAgC,GAAG,4CAA4C,CAAC;AAStF;;;;;GAKG;AACH,SAAS,0BAA0B,CACjC,KAAa,EACb,kBAA0B;IAE1B,MAAM,MAAM,GAA+C;QACzD,OAAO,EAAE,yCAAyC,CAAC,aAAa;QAChE,IAAI,EAAE,4CAA4C,CAAC,QAAQ;QAC3D,WAAW,EAAE,oCAAoC,kBAAkB,EAAE;KACtE,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK;QACL,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mDAAmD,CAC1D,KAAa,EACb,kBAA0B;IAE1B,MAAM,MAAM,GAA+C;QACzD,OAAO,EAAE,yCAAyC,CAAC,wCAAwC;QAC3F,IAAI,EAAE,4CAA4C,CAAC,QAAQ;QAC3D,WAAW,EAAE,oCAAoC,kBAAkB,EAAE;KACtE,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK;QACL,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iCAAiC,CACxC,KAAa,EACb,kBAA0B,EAC1B,yBAAiC;IAEjC,MAAM,MAAM,GAA+C;QACzD,OAAO,EAAE,yCAAyC,CAAC,aAAa;QAChE,IAAI,EAAE,4CAA4C,CAAC,gBAAgB;QACnE,kBAAkB,EAAE,oCAAoC,kBAAkB,qBAAqB,yBAAyB,EAAE;KAC3H,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,qCAAqC,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAAC,oCAAoC,EAAE,qBAAqB,CAAC,CAAC;AAC5I,MAAM,mCAAmC,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAAC,kCAAkC,EAAE,mBAAmB,CAAC,CAAC;AACtI,MAAM,yCAAyC,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAAC,yCAAyC,EAAE,yBAAyB,CAAC,CAAC;AACzJ,MAAM,wCAAwC,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAC/E,+CAA+C,EAC/C,oCAAoC,CACrC,CAAC;AACF,MAAM,2BAA2B,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAAC,6BAA6B,EAAE,WAAW,CAAC,CAAC;AACjH,MAAM,8CAA8C,GAAG,GAAG,EAAE,CAAC,0BAA0B,CACrF,sDAAsD,EACtD,8BAA8B,CAC/B,CAAC;AACF,MAAM,6CAA6C,GAAG,GAAG,EAAE,CAAC,0BAA0B,CACpF,mDAAmD,EACnD,6BAA6B,CAC9B,CAAC;AACF,MAAM,2CAA2C,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAClF,0CAA0C,EAC1C,2BAA2B,CAC5B,CAAC;AACF,MAAM,yCAAyC,GAAG,GAAG,EAAE,CAAC,0BAA0B,CAChF,8CAA8C,EAC9C,yBAAyB,CAC1B,CAAC;AACF,MAAM,0CAA0C,GAAG,GAAG,EAAE,CAAC,0BAA0B,CACjF,0CAA0C,EAC1C,0BAA0B,CAC3B,CAAC;AAEF;;;;;;;GAOG;AACH;;;;;;GAMG;AACH,MAAM,UAAU,oCAAoC,CAAC,kBAA0B;IAC7E,OAAO,wCAAwC,kBAAkB,EAAE,CAAC;AACtE,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,MAAM,gDAAgD,GAAG,uCAAuC,CAAC;AAExG;;;;;;;GAOG;AACH,MAAM,kCAAkC,GAAG,MAAM,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,8BAA8B,CAAC,SAAS;IAC9C,eAAe,EAAE;QACf,oCAAoC,CAAC,4BAA4B;QACjE,oCAAoC,CAAC,0BAA0B;QAC/D,oCAAoC,CAAC,8BAA8B;QACnE,oCAAoC,CAAC,0BAA0B;QAC/D,oCAAoC,CAAC,kCAAkC;KACxE;IACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;IACrD;;;;;OAKG;IACH,eAAe,EAAE,qCAAqC,CAAC,QAAQ;IAC/D;;;;;OAKG;IACH,aAAa,EAAE,EAAqD;CACrE,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAsE;IAC3H,CAAC,8BAA8B,CAAC,MAAM,CAAC,EACrC,4GAA4G;UAC1G,uHAAuH;CAC5H,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAA0D,MAAM,CAAC,MAAM,CAAC;IAClH,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,uCAAuC;YACvC,4CAA4C;SAC7C;KACF;IACD,4DAA4D,EAAE;QAC5D,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD;;;;;WAKG;QACH,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD;;;;WAIG;QACH,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,4CAA4C;YAC5C,uCAAuC;YACvC,iDAAiD;SAClD;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yEAAyE;QACzE,wEAAwE;QACxE,qFAAqF;QACrF,0DAA0D;QAC1D,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,8CAA8C;YAC9C,6CAA6C;YAC7C,uCAAuC;YACvC,6CAA6C;YAC7C,4CAA4C;SAC7C;KACF;IACD,8CAA8C,EAAE;QAC9C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,+CAA+C;YAC/C,0DAA0D;YAC1D,mDAAmD;SACpD;KACF;IACD,+CAA+C,EAAE;QAC/C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,8CAA8C;YAC9C,0DAA0D;YAC1D,mDAAmD;SACpD;KACF;IACD,0DAA0D,EAAE;QAC1D,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,mDAAmD;SACpD;KACF;IACD,mDAAmD,EAAE;QACnD,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,0DAA0D;YAC1D,uDAAuD;SACxD;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,4CAA4C;YAC5C,uDAAuD;YACvD,+CAA+C;SAChD;KACF;IACD,4CAA4C,EAAE;QAC5C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,uDAAuD;YACvD,+CAA+C;SAChD;KACF;IACD,uDAAuD,EAAE;QACvD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,4CAA4C;YAC5C,+CAA+C;SAChD;KACF;IACD,+CAA+C,EAAE;QAC/C,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,4CAA4C;YAC5C,uDAAuD;YACvD,uDAAuD;SACxD;KACF;IACD,uCAAuC,EAAE;QACvC,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,wDAAwD;YACxD,iDAAiD;YACjD,oDAAoD;SACrD;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,qCAAqC;gBAC5C,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,QAAQ;oBAC3D,WAAW,EAAE,sDAAsD;iBACpE;aACF,CAAC;KACH;IACD,wDAAwD,EAAE;QACxD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,uCAAuC;YACvC,iDAAiD;YACjD,4CAA4C;SAC7C;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,gCAAgC,EAAE,qBAAqB,EAAE,QAAQ,CAAC;SACrG;KACF;IACD,iDAAiD,EAAE;QACjD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,uCAAuC;YACvC,wDAAwD;YACxD,oDAAoD;SACrD;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,gCAAgC,EAAE,qBAAqB,EAAE,QAAQ,CAAC;YACpG,iCAAiC,CAAC,oCAAoC,EAAE,qBAAqB,EAAE,YAAY,CAAC;YAC5G,iCAAiC,CAAC,oCAAoC,EAAE,qBAAqB,EAAE,YAAY,CAAC;YAC5G,iCAAiC,CAAC,uCAAuC,EAAE,qBAAqB,EAAE,eAAe,CAAC;SACnH;KACF;IACD,oDAAoD,EAAE;QACpD,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,uCAAuC;YACvC,wDAAwD;YACxD,8CAA8C;SAC/C;QACD,mBAAmB,EAAE,CAAC,0BAA0B,CAAC,qCAAqC,EAAE,qBAAqB,CAAC,CAAC;KAChH;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,oDAAoD;YACpD,+DAA+D;YAC/D,uDAAuD;SACxD;KACF;IACD,oDAAoD,EAAE;QACpD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,+DAA+D;YAC/D,uDAAuD;SACxD;QACD,mBAAmB,EAAE;YACnB,mDAAmD,CAAC,0CAA0C,EAAE,0BAA0B,CAAC;SAC5H;KACF;IACD,+DAA+D,EAAE;QAC/D,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,oDAAoD;YACpD,uDAAuD;SACxD;KACF;IACD,uDAAuD,EAAE;QACvD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,oDAAoD;YACpD,+DAA+D;YAC/D,iDAAiD;SAClD;QACD,mBAAmB,EAAE;YACnB,mDAAmD,CAAC,0CAA0C,EAAE,0BAA0B,CAAC;SAC5H;KACF;IACD,kDAAkD,EAAE;QAClD,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,oDAAoD;YACpD,6CAA6C;YAC7C,mCAAmC;YACnC,6CAA6C;SAC9C;KACF;IACD,oDAAoD,EAAE;QACpD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,sDAAsD;YACtD,iDAAiD;YACjD,qDAAqD;YACrD,mCAAmC;SACpC;KACF;IACD,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,oDAAoD;YACpD,iDAAiD;YACjD,qDAAqD;SACtD;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,QAAQ,CAAC;YACrF,iCAAiC,CAAC,6BAA6B,EAAE,qBAAqB,EAAE,QAAQ,CAAC;YACjG,iCAAiC,CAAC,6BAA6B,EAAE,qBAAqB,EAAE,QAAQ,CAAC;SAClG;KACF;IACD,iDAAiD,EAAE;QACjD,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,iDAAiD;YACjD,wDAAwD;YACxD,6CAA6C;SAC9C;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,oCAAoC;gBAC3C,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,QAAQ;oBAC3D,WAAW,EAAE,sDAAsD;iBACpE;aACF,CAAC;KACH;IACD,iDAAiD,EAAE;QACjD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,iDAAiD;YACjD,qDAAqD;YACrD,wDAAwD;YACxD,6CAA6C;SAC9C;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,mCAAmC,EAAE,qBAAqB,EAAE,QAAQ,CAAC;YACvG,yCAAyC,EAAE;SAC5C;KACF;IACD,wDAAwD,EAAE;QACxD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,kDAAkD;YAClD,iEAAiE;YACjE,8DAA8D;YAC9D,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,6BAA6B,EAAE,mBAAmB,EAAE,QAAQ,CAAC;YAC/F,mCAAmC,EAAE;SACtC;KACF;IACD,iEAAiE,EAAE;QACjE,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,wDAAwD;YACxD,8DAA8D;YAC9D,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,6BAA6B,EAAE,mBAAmB,EAAE,QAAQ,CAAC;YAC/F,iCAAiC,CAAC,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,CAAC;SAC5F;KACF;IACD,8DAA8D,EAAE;QAC9D,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,wDAAwD;YACxD,iEAAiE;YACjE,iDAAiD;SAClD;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,gCAAgC,EAAE,yBAAyB,EAAE,MAAM,CAAC;YACtG,iCAAiC,CAAC,oCAAoC,EAAE,yBAAyB,EAAE,QAAQ,CAAC;YAC5G,iCAAiC,CAAC,wCAAwC,EAAE,yBAAyB,EAAE,QAAQ,CAAC;YAChH,iCAAiC,CAAC,wCAAwC,EAAE,yBAAyB,EAAE,QAAQ,CAAC;SACjH;KACF;IACD,yDAAyD,EAAE;QACzD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,wDAAwD;YACxD,8DAA8D;YAC9D,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,CAAC;YAC3F,iCAAiC,CAAC,8BAA8B,EAAE,mBAAmB,EAAE,SAAS,CAAC;YACjG,iCAAiC,CAAC,8BAA8B,EAAE,mBAAmB,EAAE,SAAS,CAAC;YACjG,iCAAiC,CAAC,6BAA6B,EAAE,mBAAmB,EAAE,QAAQ,CAAC;SAChG;KACF;IACD,qDAAqD,EAAE;QACrD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,oDAAoD;YACpD,mCAAmC;YACnC,6CAA6C;SAC9C;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,6BAA6B,EAAE,qBAAqB,EAAE,QAAQ,CAAC;YACjG,iCAAiC,CAAC,oCAAoC,EAAE,qBAAqB,EAAE,SAAS,CAAC;YACzG,iCAAiC,CAAC,uCAAuC,EAAE,qBAAqB,EAAE,YAAY,CAAC;YAC/G,iCAAiC,CAAC,mCAAmC,EAAE,qBAAqB,EAAE,QAAQ,CAAC;SACxG;KACF;IACD,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,kDAAkD;YAClD,iDAAiD;YACjD,wDAAwD;YACxD,6CAA6C;SAC9C;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,CAAC;YAC7F,iCAAiC,CAAC,gCAAgC,EAAE,yBAAyB,EAAE,MAAM,CAAC;SACvG;KACF;IACD,uDAAuD,EAAE;QACvD,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,kDAAkD;YAClD,8CAA8C;YAC9C,iDAAiD;YACjD,4DAA4D;SAC7D;KACF;IACD,mCAAmC,EAAE;QACnC,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,kDAAkD;YAClD,yDAAyD;YACzD,6CAA6C;YAC7C,mDAAmD;YACnD,wCAAwC;YACxC,6DAA6D;YAC7D,yDAAyD;YACzD,yDAAyD;YACzD,4DAA4D;SAC7D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,CAAC;YACvF,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;SACtG;KACF;IACD,yDAAyD,EAAE;QACzD,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,mDAAmD;YACnD,wCAAwC;YACxC,6DAA6D;YAC7D,4DAA4D;SAC7D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,CAAC;SACxF;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,mDAAmD;YACnD,wCAAwC;YACxC,6DAA6D;YAC7D,yDAAyD;YACzD,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;SACtG;KACF;IACD,mDAAmD,EAAE;QACnD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,yDAAyD;YACzD,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;YACrG,qCAAqC,EAAE;SACxC;KACF;IACD,wCAAwC,EAAE;QACxC,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,yDAAyD;YACzD,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;YACrG,qCAAqC,EAAE;SACxC;KACF;IACD,6DAA6D,EAAE;QAC7D,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,yDAAyD;YACzD,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;YACrG,qCAAqC,EAAE;SACxC;KACF;IACD,yDAAyD,EAAE;QACzD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,wDAAwD;YACxD,yDAAyD;SAC1D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,mCAAmC,EAAE;SACtC;KACF;IACD,yDAAyD,EAAE;QACzD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,4DAA4D;SAC7D;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,qCAAqC,EAAE;SACxC;KACF;IACD,4DAA4D,EAAE;QAC5D,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mCAAmC;YACnC,6CAA6C;YAC7C,yDAAyD;YACzD,6CAA6C;SAC9C;QACD,mBAAmB,EAAE;YACnB,wCAAwC,EAAE;YAC1C,iCAAiC,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,CAAC;YACvF,iCAAiC,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,eAAe,CAAC;YACrG,iCAAiC,CAAC,qBAAqB,EAAE,wBAAwB,EAAE,aAAa,CAAC;YACjG,iCAAiC,CAAC,qBAAqB,EAAE,wBAAwB,EAAE,aAAa,CAAC;SAClG;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,sDAAsD;YACtD,mEAAmE;YACnE,mDAAmD;YACnD,oDAAoD;YACpD,0CAA0C;YAC1C,sDAAsD;YACtD,2CAA2C;YAC3C,qEAAqE;YACrE,gEAAgE;YAChE,kDAAkD;YAClD,mCAAmC;SACpC;QACD,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,CAAC;KACrD;IACD,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,mEAAmE;YACnE,mDAAmD;SACpD;QACD,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,CAAC;KACrD;IACD,mEAAmE,EAAE;QACnE,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,sDAAsD;YACtD,sDAAsD;SACvD;QACD,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,CAAC;KACrD;IACD,mDAAmD,EAAE;QACnD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,sDAAsD;YACtD,gEAAgE;SACjE;QACD,mBAAmB,EAAE;YACnB,iCAAiC,CAAC,sBAAsB,EAAE,WAAW,EAAE,iBAAiB,CAAC;SAC1F;KACF;IACD,oDAAoD,EAAE;QACpD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,mDAAmD;QAC9E,eAAe,EAAE;YACf,6CAA6C;YAC7C,0CAA0C;YAC1C,sDAAsD;YACtD,2CAA2C;YAC3C,qEAAqE;YACrE,gEAAgE;SACjE;QACD,mBAAmB,EAAE,CAAC,8CAA8C,EAAE,CAAC;KACxE;IACD,0CAA0C,EAAE;QAC1C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,mDAAmD;QAC9E,eAAe,EAAE;YACf,oDAAoD;YACpD,qEAAqE;YACrE,gEAAgE;SACjE;QACD,mBAAmB,EAAE,CAAC,8CAA8C,EAAE,CAAC;KACxE;IACD,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,mDAAmD;QAC9E,eAAe,EAAE;YACf,oDAAoD;YACpD,qEAAqE;YACrE,gEAAgE;SACjE;QACD,mBAAmB,EAAE,CAAC,8CAA8C,EAAE,CAAC;KACxE;IACD,2CAA2C,EAAE;QAC3C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,mDAAmD;QAC9E,eAAe,EAAE;YACf,oDAAoD;YACpD,qEAAqE;YACrE,gEAAgE;SACjE;QACD,mBAAmB,EAAE,CAAC,8CAA8C,EAAE,CAAC;KACxE;IACD,qEAAqE,EAAE;QACrE,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,qDAAqD;QAChF,eAAe,EAAE;YACf,6CAA6C;YAC7C,oDAAoD;YACpD,sDAAsD;SACvD;QACD,mBAAmB,EAAE,CAAC,6CAA6C,EAAE,CAAC;KACvE;IACD;;;;;;;;;OASG;IACH,2DAA2D,EAAE;QAC3D,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,iDAAiD;YACjD,uDAAuD;YACvD,qDAAqD;YACrD,sDAAsD;YACtD,mEAAmE;YACnE,mDAAmD;YACnD,gEAAgE;SACjE;KACF;IACD,gEAAgE,EAAE;QAChE,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;SAChE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,mDAAmD;YACnD,qEAAqE;SACtE;QACD,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,CAAC;KACrD;IACD,2CAA2C,EAAE;QAC3C,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mDAAmD;YACnD,8CAA8C;YAC9C,4CAA4C;YAC5C,8CAA8C;YAC9C,uCAAuC;YACvC,qDAAqD;SACtD;KACF;IACD,mDAAmD,EAAE;QACnD,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,0CAA0C;YAC1C,6CAA6C;YAC7C,2CAA2C;YAC3C,4CAA4C;SAC7C;KACF;IACD,0CAA0C,EAAE;QAC1C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mDAAmD;YACnD,8CAA8C;YAC9C,uCAAuC;YACvC,uCAAuC;SACxC;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mDAAmD;YACnD,8CAA8C;YAC9C,uCAAuC;YACvC,uCAAuC;SACxC;KACF;IACD,2CAA2C,EAAE;QAC3C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mDAAmD;YACnD,8CAA8C;YAC9C,uCAAuC;YACvC,uCAAuC;SACxC;KACF;IACD,8CAA8C,EAAE;QAC9C,IAAI,EAAE,8BAA8B,CAAC,WAAW;QAChD,eAAe,EAAE;YACf,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,6CAA6C;YAC7C,4CAA4C;YAC5C,kDAAkD;YAClD,+CAA+C;SAChD;KACF;IACD,6CAA6C,EAAE;QAC7C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,6CAA6C;SAC9C;KACF;IACD,4CAA4C,EAAE;QAC5C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,6CAA6C;SAC9C;KACF;IACD,kDAAkD,EAAE;QAClD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE,CAAC,oCAAoC,CAAC,kCAAkC,CAAC;QAC1F,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,6CAA6C;SAC9C;KACF;IACD,qDAAqD,EAAE;QACrD,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,+CAA+C;YAC/C,+CAA+C;YAC/C,8CAA8C;YAC9C,6CAA6C;SAC9C;KACF;IACD,+CAA+C,EAAE;QAC/C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,qDAAqD;YACrD,6CAA6C;YAC7C,uDAAuD;SACxD;KACF;IACD,+CAA+C,EAAE;QAC/C,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,0CAA0C;QACrE,eAAe,EAAE;YACf,qDAAqD;YACrD,6CAA6C;YAC7C,6CAA6C;SAC9C;KACF;IACD,4CAA4C,EAAE;QAC5C,IAAI,EAAE,8BAA8B,CAAC,UAAU;QAC/C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yEAAyE;QACzE,wEAAwE;QACxE,yEAAyE;QACzE,8EAA8E;QAC9E,yEAAyE;QACzE,4EAA4E;QAC5E,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,2CAA2C;YAC3C,uCAAuC;YACvC,8CAA8C;SAC/C;QACD;;;;;;;;;WASG;QACH,aAAa,EAAE,CAAC,iEAAiE,EAAE,CAAC;KACrF;IACD,8CAA8C,EAAE;QAC9C,IAAI,EAAE,8BAA8B,CAAC,OAAO;QAC5C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,mDAAmD;YACnD,+CAA+C;YAC/C,wDAAwD;YACxD,8DAA8D;YAC9D,uDAAuD;SACxD;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,mDAAmD,EAAE;QACnD,IAAI,EAAE,8BAA8B,CAAC,SAAS;QAC9C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,8CAA8C;YAC9C,+CAA+C;YAC/C,8DAA8D;YAC9D,uDAAuD;SACxD;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,+CAA+C,EAAE;QAC/C,IAAI,EAAE,8BAA8B,CAAC,UAAU;QAC/C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,uCAAuC;YACvC,wDAAwD;YACxD,8DAA8D;SAC/D;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,wDAAwD,EAAE;QACxD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,+CAA+C;YAC/C,8DAA8D;YAC9D,uDAAuD;SACxD;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,8DAA8D,EAAE;QAC9D,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,+CAA+C;YAC/C,uDAAuD;YACvD,6CAA6C;SAC9C;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,uDAAuD,EAAE;QACvD,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,EAAE;QAC7B,eAAe,EAAE;YACf,6CAA6C;YAC7C,oDAAoD;YACpD,8DAA8D;SAC/D;QACD,mBAAmB,EAAE,CAAC;gBACpB,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE;oBACN,OAAO,EAAE,yCAAyC,CAAC,aAAa;oBAChE,IAAI,EAAE,4CAA4C,CAAC,IAAI;iBACxD;aACF,CAAC;KACH;IACD,uCAAuC,EAAE;QACvC,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,0EAA0E;QAC1E,8DAA8D;QAC9D,EAAE;QACF,4DAA4D;QAC5D,0EAA0E;QAC1E,8EAA8E;QAC9E,4EAA4E;QAC5E,0EAA0E;QAC1E,qEAAqE;QACrE,4EAA4E;QAC5E,4EAA4E;QAC5E,4BAA4B;QAC5B,EAAE;QACF,wEAAwE;QACxE,4EAA4E;QAC5E,4EAA4E;QAC5E,4EAA4E;QAC5E,wDAAwD;QACxD,yBAAyB,EAAE,2CAA2C;QACtE,eAAe,EAAE;YACf,kEAAkE;YAClE,sDAAsD;YACtD,yDAAyD;YACzD,8DAA8D;SAC/D;KACF;IACD,kEAAkE,EAAE;QAClE,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,2CAA2C;QACtE,eAAe,EAAE;YACf,sDAAsD;YACtD,yDAAyD;YACzD,8DAA8D;SAC/D;KACF;IACD,sDAAsD,EAAE;QACtD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,2CAA2C;QACtE,eAAe,EAAE;YACf,kEAAkE;YAClE,yDAAyD;YACzD,6CAA6C;SAC9C;KACF;IACD,yDAAyD,EAAE;QACzD,IAAI,EAAE,8BAA8B,CAAC,MAAM;QAC3C,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,2CAA2C;QACtE,eAAe,EAAE;YACf,sDAAsD;YACtD,8DAA8D;YAC9D,6CAA6C;SAC9C;KACF;IACD,8DAA8D,EAAE;QAC9D,IAAI,EAAE,8BAA8B,CAAC,eAAe;QACpD,eAAe,EAAE;YACf,oCAAoC,CAAC,4BAA4B;YACjE,oCAAoC,CAAC,0BAA0B;YAC/D,oCAAoC,CAAC,8BAA8B;YACnE,oCAAoC,CAAC,kCAAkC;SACxE;QACD,WAAW,EAAE,iCAAiC,CAAC,MAAM;QACrD,yBAAyB,EAAE,2CAA2C;QACtE,eAAe,EAAE;YACf,kEAAkE;YAClE,sDAAsD;YACtD,yDAAyD;SAC1D;KACF;CACF,CAAC,CAAC;AAOH,SAAS,mBAAmB,CAAC,QAAgB,EAAE,OAAe;IAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAChC,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,uCAAuC,CAAC,CAAC;IAC9I,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,IAAI,OAAO,GAAW,6BAA6B,CAAC;IACpD,IAAI,IAAI,GAAa,EAAE,CAAC;IACxB,MAAM,KAAK,GAAG,GAAS,EAAE;QACvB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACtE,IAAI,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,KAAK,EAAE,CAAC;YACR,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,KAAK,EAAE,CAAC;IACR,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,yCAAyC,CAAC,CAAC;IAC/G,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACrG,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,wDAAwD;IACxD,MAAM,CAAC,YAAY,EAAE,GAAG,iBAAiB,CAAC,GAAG,QAAQ,CAAC;IACtD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,OAAO,KAAK,6BAA6B,EAAE,CAAC;QACzF,MAAM,iBAAiB,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7F,OAAO;YACL,KAAK;YACL,OAAO,EAAE,cAAc;YACvB,QAAQ,EAAE,iBAAiB,CAAC,MAAM,KAAK,CAAC;gBACtC,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,GAAG,iBAAiB,CAAC;SAC/F,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH;;;;;;;GAOG;AACH,SAAS,6BAA6B,CACpC,OAAe,EACf,eAAkC,EAClC,eAA2D;IAE3D,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,+BAA+B,aAAa,EAAE,CAAC,CAAC;QACnH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,OAAe,EAAE,cAAgD;IACrF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACnC,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACzF,OAAO;YACL,OAAO,EAAE,gCAAgC,UAAU,OAAO,UAAU,EAAE;YACtE,IAAI,EAAE,8BAA8B,CAAC,IAAI;YACzC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;SACzB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,OAAwE;IAClH,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,OAAO,EAAE,gCAAgC,UAAU,kBAAkB,KAAK,GAAG,CAAC,EAAE;QAChF,IAAI,EAAE,8BAA8B,CAAC,aAAa;QAClD,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,MAAM,CAAC,MAAM;KAClC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CACtB,aAAkE,EAClE,cAAgD;IAEhD;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAoD,CAAC;IAC1F,KAAK,MAAM,UAAU,IAAI,CAAC,GAAG,aAAa,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;QACvG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,QAAQ,KAAK,SAAS,IAAI,sCAAsC,CAAC,QAAQ,CAAC,KAAK,sCAAsC,CAAC,UAAU,CAAC,EAAE,CAAC;YACtI,MAAM,IAAI,KAAK,CAAC,oCAAoC,UAAU,CAAC,SAAS,iCAAiC,CAAC,CAAC;QAC7G,CAAC;QACD,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,GAAG,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAC3H,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAqD,EAAE,QAAgB;IACvG,IAAI,KAAK,CAAC,sBAAsB,KAAK,yCAAyC,CAAC,aAAa,EAAE,CAAC;QAC7F,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,SAAS,iCAAiC,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5G,MAAM,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,SAAS,6BAA6B,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,YAAY,GAAI,KAAK,CAAC,WAAiD,CAAC,QAAQ,CAAC,CAAC;IACxF,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,SAAS,WAAW,QAAQ,eAAe,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAClC,QAAgB,EAChB,kBAAqC,EACrC,OAAkD;IAElD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,8DAA8D,CAAC,CAAC,CAAC;IACxJ,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACpG,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,SAAiB,EAAE,QAAgB,EAAE,EAAE;QACrH,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,sDAAsD,SAAS,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,KAAK,GAAG,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,SAAS,EAAE,CAAC,CAAC;QAC7G,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,IAAI,gBAAgB,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC7H,IAAI,gBAAgB,CAAC,IAAI,KAAK,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,oDAAoD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,gBAAgB;QAC1B,kBAAkB,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,CAAC,CAAC;KAC9H,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,iCAAiC,CAA+C,KAWxF;IACC,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IACjI,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IACvF,MAAM,WAAW,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACvF,MAAM,aAAa,GAAG,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;IACrE,MAAM,mBAAmB,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACrH,IAAI,WAAW,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,IAAI,mBAAmB,KAAK,CAAC,EAAE,CAAC;QAC1E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,KAAK,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClI,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,4EAA4E,CAAC,CAAC;IACvH,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9G,MAAM,mBAAmB,GAAG,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,QAAgB,EAAE,EAAE;QAC9I,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,+CAA+C,KAAK,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,QAAgB,EAAE,EAAE;QACzF,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,iBAAiB,QAAQ,6FAA6F,CAAC,CAAC;QAClJ,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,SAAS,oCAAoC,CAC3C,QAAgB,EAChB,kBAAqC,EACrC,IAAwD;IAExD,OAAO,iCAAiC,CAAC;QACvC,QAAQ;QACR,kBAAkB;QAClB,SAAS,EAAE,+CAA+C;QAC1D,KAAK,EAAE,wBAAwB;QAC/B,IAAI;QACJ,eAAe,EAAE,oCAAoC;QACrD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAA6C,CAAC;QAC9G,MAAM,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE;QAC3F,cAAc,EAAE;YACd,OAAO,EAAE,0CAA0C;YACnD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,QAA4C,CAAC;SACtG;KACF,CAAC,CAAC;AACL,CAAC;AAED,sFAAsF;AACtF,SAAS,wCAAwC,CAC/C,QAAgB,EAChB,kBAAqC,EACrC,IAA4D;IAE5D,OAAO,iCAAiC,CAAC;QACvC,QAAQ;QACR,kBAAkB;QAClB,SAAS,EAAE,mDAAmD;QAC9D,KAAK,EAAE,4BAA4B;QACnC,IAAI;QACJ,eAAe,EAAE,wCAAwC;QACzD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAiD,CAAC;KACnH,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,SAAS,qCAAqC,CAC5C,QAAgB,EAChB,kBAAqC,EACrC,IAAyD;IAEzD,OAAO,iCAAiC,CAAC;QACvC,QAAQ;QACR,kBAAkB;QAClB,SAAS,EAAE,gDAAgD;QAC3D,KAAK,EAAE,yBAAyB;QAChC,IAAI;QACJ,eAAe,EAAE,qCAAqC;QACtD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAA8C,CAAC;KAChH,CAAC,CAAC;AACL,CAAC;AAED,sGAAsG;AACtG,SAAS,gCAAgC,CACvC,QAAgB,EAChB,kBAAqC,EACrC,IAAoD;IAEpD,OAAO,iCAAiC,CAAC;QACvC,QAAQ;QACR,kBAAkB;QAClB,SAAS,EAAE,2CAA2C;QACtD,KAAK,EAAE,oBAAoB;QAC3B,IAAI;QACJ,eAAe,EAAE,gCAAgC;QACjD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAyC,CAAC;KAC3G,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,SAAS,wCAAwC,CAC/C,QAAgB,EAChB,kBAAqC,EACrC,IAA4D;IAE5D,OAAO,iCAAiC,CAAC;QACvC,QAAQ;QACR,kBAAkB;QAClB,SAAS,EAAE,mDAAmD;QAC9D,KAAK,EAAE,4BAA4B;QACnC,IAAI;QACJ,eAAe,EAAE,wCAAwC;QACzD,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAiD,CAAC;KACnH,CAAC,CAAC;AACL,CAAC;AAED,SAAS,2CAA2C,CAClD,QAAgB,EAChB,kBAAqC,EACrC,IAA+D;IAE/D,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,uDAAuD,CAAC,CAAC;IACrI,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACnF,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnI,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,UAAU,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9G,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAC;IAChI,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAChI,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,oCAAoC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;AACnG,CAAC;AAED,SAAS,mDAAmD,CAC1D,QAAgB,EAChB,kBAAqC,EACrC,IAAuE;IAEvE,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,gEAAgE,CAAC,CAAC;IAC9I,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5F,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4EAA4E,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpJ,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACvC,CAAC;IACD,IAAI,UAAU,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9G,MAAM,IAAI,KAAK,CAAC,qHAAqH,CAAC,CAAC;IACzI,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;IACzI,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,6CAA6C,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;AAC5G,CAAC;AAkBD;;;GAGG;AACH,MAAM,UAAU,6CAA6C,CAC3D,MAA6D,EAC7D,0BAAqE,EACrE,kBAAyE,+BAA+B,EACxG,mBAAkD,EAAE;IAEpD,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAC;IAC3H,CAAC;IAED,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5E,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,OAAO,8CAA8C,CAAC,CAAC;QAC/I,MAAM,gBAAgB,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;QAC9H,MAAM,qBAAqB,GAAG,2BAA2B,CAAC,gBAAgB,EAAE,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;QAC7H,MAAM,oCAAoC,GAAG,2CAA2C,CACtF,qBAAqB,CAAC,QAAQ,EAC9B,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,iBAAiB,CACnC,CAAC;QACF,MAAM,4CAA4C,GAAG,mDAAmD,CACtG,oCAAoC,CAAC,QAAQ,EAC7C,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,yBAAyB,CAC3C,CAAC;QACF,MAAM,6BAA6B,GAAG,oCAAoC,CACxE,4CAA4C,CAAC,QAAQ,EACrD,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,UAAU,CAC5B,CAAC;QACF,MAAM,iCAAiC,GAAG,wCAAwC,CAChF,6BAA6B,CAAC,QAAQ,EACtC,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,cAAc,CAChC,CAAC;QACF,MAAM,iCAAiC,GAAG,wCAAwC,CAChF,iCAAiC,CAAC,QAAQ,EAC1C,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,cAAc,CAChC,CAAC;QACF,MAAM,8BAA8B,GAAG,qCAAqC,CAC1E,iCAAiC,CAAC,QAAQ,EAC1C,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,WAAW,CAC7B,CAAC;QACF,MAAM,yBAAyB,GAAG,gCAAgC,CAChE,8BAA8B,CAAC,QAAQ,EACvC,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CAAC,MAAM,CACxB,CAAC;QACF,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACxB,MAAM,EAAE,mBAAmB,CAAC,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC;gBACjF,qBAAqB;gBACrB,oCAAoC;gBACpC,4CAA4C;gBAC5C,6BAA6B;gBAC7B,iCAAiC;gBACjC,iCAAiC;gBACjC,8BAA8B;gBAC9B,yBAAyB;aAC1B,CAAU,CAAC;IACd,CAAC,CAAC,CAAC,CAAC;IACJ,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5E,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,OAAO,wBAAwB,CAAC,CAAC;QACvG,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,+DAA+D,CAAC,CAAC,CAAC;QACtJ,IAAI,cAAc,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,OAAO,+BAA+B,CAAC,CAAC;QACrH,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACxB,aAAa,EAAE,QAAQ,CAAC,OAAO;gBAC/B,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;gBAC3B,eAAe,EAAE;oBACf,SAAS,EAAE,cAAc;oBACzB,SAAS,EAAE,qCAAqC,CAAC,sBAAsB;oBACvE,cAAc,EAAE,0CAA0C,CAAC,MAAM;oBACjE,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB;oBACnD,eAAe,EAAE,IAAI;iBACtB;aACF,CAAU,CAAC;IACd,CAAC,CAAC,CAAC,CAAC;IAEJ;;;;;;;;;;;;;OAaG;IACH,MAAM,sBAAsB,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACzF,MAAM,OAAO,GAAG,oCAAoC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9E,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACzC,OAAO,kCAAkC,CAAC;YACxC,aAAa,EAAE,CAAC;YAChB,OAAO;YACP,WAAW,EAAE,CAAC;YACd,IAAI,EAAE,kCAAkC,CAAC,IAAI;YAC7C,eAAe,EAAE,CAAC,GAAG,kCAAkC,CAAC,eAAe,CAAC;YACxE,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjD,UAAU,EAAE,2CAA2C,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE;gBAC9E,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC,CAAC,CAAC;YACH,KAAK,EAAE,EAAE;YACT;;;;eAIG;YACH,UAAU,EAAE,CAAC;oBACX,SAAS,EAAE,2CAA2C;oBACtD,SAAS,EAAE,qCAAqC,CAAC,gCAAgC;oBACjF,cAAc,EAAE,0CAA0C,CAAC,MAAM;oBACjE,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE,aAAa,IAAI,CAAC;oBAC1D,eAAe,EAAE,IAAI;iBACtB,CAAC;YACF;;;;eAIG;YACH,yBAAyB,EAAE,EAAE;YAC7B,WAAW,EAAE,kCAAkC,CAAC,WAAW;YAC3D,eAAe,EAAE,kCAAkC,CAAC,eAAe,IAAI,qCAAqC,CAAC,QAAQ;YACrH,aAAa,EAAE,CAAC,GAAG,kCAAkC,CAAC,aAAa,IAAI,EAAE,CAAC;SAC3E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAChD,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1H,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7D,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,OAAO,wBAAwB,CAAC,CAAC;YACvG,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,oCAAoC,EAAE,4CAA4C,EAAE,6BAA6B,EAAE,iCAAiC,EAAE,iCAAiC,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC;YACtS,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/E,MAAM,cAAc,GAAG,6BAA6B,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;YAC3H,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;gBAC1D,MAAM,IAAI,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACrE,MAAM,qBAAqB,GAAG,oCAAoC,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS;oBAC9F,CAAC,CAAC,oCAAoC,CAAC,IAAI;oBAC3C,CAAC,CAAC,4CAA4C,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS;wBAC1E,CAAC,CAAC,4CAA4C,CAAC,IAAI;wBACnD,CAAC,CAAC,6BAA6B,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS;4BAC3D,CAAC,CAAC,6BAA6B,CAAC,IAAI;4BACpC,CAAC,CAAC,iCAAiC,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS;gCAC/D,CAAC,CAAC,iCAAiC,CAAC,IAAI;gCACxC,CAAC,CAAC,iCAAiC,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS;oCAC/D,CAAC,CAAC,iCAAiC,CAAC,IAAI;oCACxC,CAAC,CAAC,SAAS,CAAC;gBACtB,OAAO;oBACL,SAAS;oBACT,SAAS,EAAE,qBAAqB,KAAK,SAAS;wBAC5C,CAAC,CAAC,qCAAqC,CAAC,sBAAsB;wBAC9D,CAAC,CAAC,qCAAqC,CAAC,gCAAgC;oBAC1E,cAAc,EAAE,0CAA0C,CAAC,MAAM;oBACjE;;;;;uBAKG;oBACH,aAAa,EAAE,qBAAqB,EAAE,aAAa;2BAC9C,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBACvH,eAAe,EAAE,IAAI;iBACtB,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,kCAAkC,CAAC;gBACxC,aAAa,EAAE,CAAC;gBAChB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,WAAW,EAAE,CAAC;gBACd,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,eAAe,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,CAAC;gBAChD,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;oBACjD,UAAU,EAAE,mCAAmC,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE;oBACtE,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CAAC,CAAC;gBACH,KAAK,EAAE,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBACxI,UAAU,EAAE,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC;gBAC1D,yBAAyB,EAAE,CAAC,GAAG,UAAU,CAAC,yBAAyB,CAAC;gBACpE,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,eAAe,EAAE,UAAU,CAAC,eAAe,IAAI,qCAAqC,CAAC,QAAQ;gBAC7F,aAAa,EAAE,CAAC,GAAG,UAAU,CAAC,aAAa,IAAI,EAAE,CAAC;aACnD,CAAC,CAAC;QACL,CAAC,CAAC,EAAE,GAAG,sBAAsB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAC3G,CAAC","sourcesContent":["import { IMPLICIT_LEAD_SECTION_HEADING } from '../rendering/technical-documentation-markdown-links';\nimport {\n APPLICATION_CONNECTION_DOCUMENTATION_SOURCE_REF,\n ApplicationConnectionPresentation,\n ApplicationConnectionInlineValue,\n type ApplicationConnectionDocumentationFact,\n} from './application-connection-documentation';\nimport {\n APPLICATION_AUTHENTICATION_DOCUMENTATION_SOURCE_REF,\n ApplicationAuthenticationPresentation,\n type ApplicationAuthenticationDocumentationFact,\n} from './application-authentication-documentation';\nimport {\n APPLICATION_INTEGRATION_DOCUMENTATION_SOURCE_REF,\n ApplicationIntegrationPresentation,\n type ApplicationIntegrationDocumentationFact,\n} from './application-integration-documentation';\nimport {\n APPLICATION_DOMAIN_DOCUMENTATION_SOURCE_REF,\n ApplicationDomainPresentation,\n type ApplicationDomainDocumentationFact,\n} from './application-domain-documentation';\nimport {\n APPLICATION_ADMINISTRATION_DOCUMENTATION_SOURCE_REF,\n ApplicationAdministrationPresentation,\n type ApplicationAdministrationDocumentationFact,\n} from './application-administration-documentation';\nimport {\n canonicalizeTechnicalDocumentationJson,\n TechnicalDocumentationAccessClass,\n TechnicalDocumentationApiReferenceSection,\n TechnicalDocumentationApiReferenceTargetKind,\n TechnicalDocumentationApplicabilityEvidenceAxis,\n TechnicalDocumentationApplicabilityEvidenceStatus,\n TechnicalDocumentationEditorialStatus,\n TechnicalDocumentationEvidenceSubjectRef,\n TechnicalDocumentationLinkKind,\n TechnicalDocumentationReaderAudience,\n TechnicalDocumentationSourceClassification,\n type TechnicalDocumentationAssetRequestV1,\n TechnicalDocumentationSourceOwnership,\n TechnicalDocumentationUnitKind,\n createTechnicalDocumentationUnitV1,\n type TechnicalDocumentationApplicabilityRequirementV1,\n type TechnicalDocumentationApiReferenceTargetV1,\n type TechnicalDocumentationLinkV1,\n type TechnicalDocumentationSourceProvenanceV1,\n type TechnicalDocumentationUnitV1,\n} from '@wildo-ai/saas-specifications/technical-documentation';\nimport {\n EngineDocumentationSpecificationFamilyRef,\n type EngineDocumentationSpecificationCatalogEntryV1,\n type EngineDocumentationSpecificationCatalogV1,\n} from '@wildo-ai/saas-specifications/companion';\n\nimport type { LoadedApplicationConsumerDocumentationContentBundleV1 } from '../content/application-consumer-documentation-content-loader';\nimport {\n APPLICATION_CONSUMER_DOCUMENTATION_COMPANION_PROJECTION_SOURCE_PREFIX,\n APPLICATION_CONSUMER_DOCUMENTATION_CONSUMER_FACT_SOURCE_PREFIX,\n APPLICATION_CONSUMER_DOCUMENTATION_ENGINE_CONTENT_SOURCE_PREFIX,\n} from '../../content/application-consumer-documentation-content-manifest.schemas';\n// From the DECLARATIONS module, never the materializer: the materializer imports the render model,\n// which imports this file, and naming a diagram here at module load closes that cycle (#474).\nimport { createTechnicalDocumentationApplicationRequestDiagramAssetRequest } from '../technical-documentation-diagram-definitions';\nimport { APPLICATION_ORGANIZATION_ROLES_DOCUMENTATION_SOURCE_REF } from './application-organization-role-documentation';\nimport {\n APPLICATION_ORGANIZATION_UNIT_RESOURCES_DOCUMENTATION_SOURCE_REF,\n type ApplicationOrganizationUnitResourcesDocumentationFact,\n} from './application-organization-unit-resource-documentation';\n\nexport interface EngineContentUnitDefinition {\n readonly kind: TechnicalDocumentationUnitKind;\n readonly readerAudiences: readonly TechnicalDocumentationReaderAudience[];\n readonly accessClass: TechnicalDocumentationAccessClass;\n readonly applicabilityRequirements: readonly TechnicalDocumentationApplicabilityRequirementV1[];\n readonly relatedUnitRefs: readonly string[];\n readonly apiReferenceTargets?: readonly { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 }[];\n /**\n * Editorial state of this page. **Omitted means `APPROVED`**, which is what every page authored\n * before 2026-09-08 relied on — the two unit-creation sites hardcoded `APPROVED` and the policy's\n * editorial suppression path therefore had no producer at all (#474).\n *\n * Declare `DRAFT` or `REVIEW_REQUIRED` for a page that exists in the content module and is not\n * ready for a reader. It stays in the private derivation — so it is still built, still linked\n * from the manifest, still visible to whoever is writing it — and the publication policy keeps it\n * out of the portal with `EDITORIAL_NOT_APPROVED`. That is the difference between a page in\n * progress and a page deleted, and until now the framework could only express the second.\n */\n readonly editorialStatus?: TechnicalDocumentationEditorialStatus;\n /**\n * Assets this page asks for — a deterministic diagram, or a product screenshot.\n *\n * Omitted means none, which is what every page meant until 2026-09-08: both unit-creation sites\n * hardcoded `assetRequests: []`, so the screenshot placeholder branch, the deterministic diagram\n * renderer and the whole asset-resolution path were unreachable from shipped content (#474). The\n * pipeline was complete and had no producer.\n *\n * A request is a DECLARATION that the page needs a picture, never a promise that one exists. The\n * resolver decides what arrives: a `DETERMINISTIC_RENDER` diagram is materialized offline and\n * arrives RESOLVED, while a `PLAYWRIGHT_CAPTURE` screenshot with no capture available ships a\n * PLACEHOLDER and the page still publishes — skip the generation, never block the tree on a\n * browser and a live stack. Whether provisional imagery may actually SHIP is an environment\n * decision enforced at publication (`--refuse-provisional-assets`), not an authoring one.\n */\n readonly assetRequests?: readonly TechnicalDocumentationAssetRequestV1[];\n}\n\ninterface RelatedUnitLinkTarget {\n readonly targetUnitRef: string;\n readonly title: string;\n readonly titleProvenance: TechnicalDocumentationSourceProvenanceV1;\n}\n\nconst PROVEN = [TechnicalDocumentationApplicabilityEvidenceStatus.PROVEN] as const;\n/**\n * Every page in the webhook journey describes the same conditional product\n * surface. Keep that condition at the journey boundary so a child task can\n * never be published after its landing has correctly failed applicability.\n */\nconst OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS = [\n {\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.OUTBOUND_M2M_DELIVERY,\n acceptableStatuses: [...PROVEN],\n },\n {\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.ENGINE_SUPPORT,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.OUTBOUND_M2M_SIGNATURE,\n acceptableStatuses: [...PROVEN],\n },\n] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.ORGANIZATION_SIEM_EXPORT,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst ORGANIZATION_SIEM_RECOVERY_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.EXPOSED_API_SURFACE,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.ORGANIZATION_SIEM_DELIVERY_RECOVERY,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.CONFIGURED_ACTIVATION,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.APPLICATION_MCP_TOOL_SURFACE,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst A2A_INTEGRATION_APPLICABILITY_REQUIREMENTS = [{\n axis: TechnicalDocumentationApplicabilityEvidenceAxis.CONFIGURED_ACTIVATION,\n subjectRef: TechnicalDocumentationEvidenceSubjectRef.APPLICATION_A2A_AGENT_SURFACE,\n acceptableStatuses: [...PROVEN],\n}] as const satisfies readonly TechnicalDocumentationApplicabilityRequirementV1[];\nconst CONSUMER_FACT_TOKEN_PATTERN = /\\{\\{CONSUMER_FACT:([^#}]+)#([^}]+)\\}\\}/g;\nconst APPLICATION_ORGANIZATION_ROLES_TOKEN = '{{APPLICATION_ORGANIZATION_ROLES}}';\nconst APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN = '{{APPLICATION_ORGANIZATION_UNIT_RESOURCES}}';\n/** Inline, and deliberately repeatable: a page names the product as often as its prose needs it. */\nconst APPLICATION_NAME_TOKEN = '{{APPLICATION_NAME}}';\n/** Block, one per requested presentation — `{{APPLICATION_CONNECTION:baseUrls}}` and siblings. */\n// A selector may carry digits (`a2aAgentCard`), which an alphabetic-only class silently refuses:\n// the token then matches nothing and its page reads as declaring a projection it never used.\nconst APPLICATION_CONNECTION_TOKEN_PATTERN = /\\{\\{APPLICATION_CONNECTION:([A-Za-z0-9]+)\\}\\}/g;\n/** Inline connection values, for use inside a sample where a block cannot go. */\nconst APPLICATION_CONNECTION_VALUE_TOKEN_PATTERN = /\\{\\{APPLICATION_CONNECTION_VALUE:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape for the application's authentication policy. */\nconst APPLICATION_AUTHENTICATION_TOKEN_PATTERN = /\\{\\{APPLICATION_AUTHENTICATION:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape again for who may perform each administrative action. */\nconst APPLICATION_ADMINISTRATION_TOKEN_PATTERN = /\\{\\{APPLICATION_ADMINISTRATION:([A-Za-z0-9]+)\\}\\}/g;\n/** Same shape again for the tools and events this application publishes. */\nconst APPLICATION_INTEGRATION_TOKEN_PATTERN = /\\{\\{APPLICATION_INTEGRATION:([A-Za-z0-9]+)\\}\\}/g;\nconst APPLICATION_DOMAIN_TOKEN_PATTERN = /\\{\\{APPLICATION_DOMAIN:([A-Za-z0-9]+)\\}\\}/g;\n\n/** Public, semantic role inventory supplied by the resolved application companion. */\nexport interface ApplicationOrganizationRolesDocumentationFact {\n readonly sourceRef: `${typeof APPLICATION_CONSUMER_DOCUMENTATION_COMPANION_PROJECTION_SOURCE_PREFIX}${string}`;\n readonly markdown: string;\n readonly sourceVersion: number;\n}\n\n/**\n * Build one semantic guide-to-reference link without embedding a Docusaurus\n * route. The verified OpenAPI link index resolves the resource only when the\n * application actually publishes it, so a task page cannot drift into a\n * second, hand-maintained endpoint catalogue.\n */\nfunction resourceApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: `technical-documentation:resource/${resourceIdentifier}`,\n };\n return Object.freeze({\n label,\n target,\n });\n}\n\nfunction applicationAdministrationResourceApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.APPLICATION_ADMINISTRATION_API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: `technical-documentation:resource/${resourceIdentifier}`,\n };\n return Object.freeze({\n label,\n target,\n });\n}\n\nfunction operationFamilyApiReferenceTarget(\n label: string,\n resourceIdentifier: string,\n operationFamilyIdentifier: string,\n): { readonly label: string; readonly target: TechnicalDocumentationApiReferenceTargetV1 } {\n const target: TechnicalDocumentationApiReferenceTargetV1 = {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.OPERATION_FAMILY,\n operationFamilyRef: `technical-documentation:resource/${resourceIdentifier}/operation-family/${operationFamilyIdentifier}`,\n };\n return Object.freeze({ label, target });\n}\n\nconst organizationMembersApiReferenceTarget = () => resourceApiReferenceTarget('Organization members API reference', 'organizationMembers');\nconst organizationUnitsApiReferenceTarget = () => resourceApiReferenceTarget('Organization units API reference', 'organizationUnits');\nconst organizationUnitMembersApiReferenceTarget = () => resourceApiReferenceTarget('Organization-unit members API reference', 'organizationUnitMembers');\nconst scimProvisioningConfigApiReferenceTarget = () => resourceApiReferenceTarget(\n 'SCIM provisioning configuration API reference',\n 'organizationScimProvisioningConfig',\n);\nconst auditLogsApiReferenceTarget = () => resourceApiReferenceTarget('Audit records API reference', 'auditLogs');\nconst organizationSiemExportConfigApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization SIEM export configuration API reference',\n 'organizationSiemExportConfig',\n);\nconst organizationSiemDeliveryDlqApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization SIEM delivery recovery API reference',\n 'organizationSiemDeliveryDlq',\n);\nconst organizationSubscriptionsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization subscriptions API reference',\n 'organizationSubscriptions',\n);\nconst organizationInvoiceRefsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization invoice summaries API reference',\n 'organizationInvoiceRefs',\n);\nconst organizationUsageRecordsApiReferenceTarget = () => resourceApiReferenceTarget(\n 'Organization usage records API reference',\n 'organizationUsageRecords',\n);\n\n/**\n * The engine-owned editorial topology: each verified authored unit has one\n * consumer-documentation role and an explicit set of reader destinations.\n *\n * This is deliberately separate from Markdown. Markdown owns the narrative\n * and title; this map owns type, audience, publication posture and navigation\n * relationships, allowing the projector to reject a mismatched content set.\n */\n/**\n * The unit-ref namespace generated resource pages live in, and the only place its shape is written.\n *\n * `technical-documentation:unit/manages/<resource>` — an ENGINE ref with a reserved segment, not an\n * application-owned one. The distinction is load-bearing: `pathForUnit` still refuses a unit an\n * application named, and these are engine units whose subject happens to come from the application.\n */\nexport function applicationDomainResourcePageUnitRef(resourceIdentifier: string): string {\n return `technical-documentation:unit/manages/${resourceIdentifier}`;\n}\n\n/** The unit-ref prefix a renderer matches to recognise a generated resource page. */\nexport const APPLICATION_DOMAIN_RESOURCE_PAGE_UNIT_REF_PREFIX = 'technical-documentation:unit/manages/';\n\n/**\n * One definition shared by every generated resource page.\n *\n * A per-resource entry in `ENGINE_CONTENT_UNIT_DEFINITIONS` is impossible by construction — the\n * resources are not known when this module is written — and it would be the wrong shape anyway:\n * these pages differ only in subject, so a per-resource definition would be N copies of one answer\n * with N chances to drift.\n */\nconst GENERATED_RESOURCE_UNIT_DEFINITION = Object.freeze({\n kind: TechnicalDocumentationUnitKind.REFERENCE,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n /*\n * APPROVED, explicitly. A generated per-resource page is emitted only for a resource the\n * application actually publishes, so there is no draft state for it to be in — but the value is\n * declared rather than defaulted because the authored tier can now say otherwise, and a reader\n * comparing the two tiers should see the answer rather than infer it from an absence.\n */\n editorialStatus: TechnicalDocumentationEditorialStatus.APPROVED,\n /*\n * No assets. A generated per-resource page describes ONE application resource, and there is no\n * engine-authored picture of a resource the engine has never seen — a diagram here would depict\n * the framework's idea of a resource rather than this one. Declared empty rather than omitted so\n * the absence reads as a decision beside the authored tier, which does request one.\n */\n assetRequests: [] as readonly TechnicalDocumentationAssetRequestV1[],\n});\n\n/**\n * Unit kinds this catalog deliberately produces NO unit for, each with the reason.\n *\n * The vocabulary has eight members and, until 2026-09-09, two of them had no producer at all — a\n * silent gap, because a kind nobody authors looks exactly like a kind nobody needed (#474). RUNBOOK\n * now has one. CHANGE does not, and the reason is structural rather than editorial:\n *\n * A CHANGE unit is a record of what changed in ONE application, so only that application could\n * author it — and an application-authored unit cannot be routed. `pathForUnit` admits engine-\n * namespaced slugs and the reserved `unit/manages/` namespace, and refuses everything else with\n * \"has no consumer navigation category\". Application material reaches the site only as an ENGINE\n * unit carrying application-projected facts, never as an application-authored page. So the engine\n * cannot write a changelog it has no knowledge of, and the party that could has no door.\n *\n * The member is therefore kept rather than retired: what is missing is a route for\n * application-authored units, not the concept. When that route exists, this entry is removed in the\n * same change — and `technical-documentation-engine-content-bundle.test.ts` fails until it is,\n * because the partition below is asserted total over the enum.\n */\nexport const ENGINE_CONTENT_UNIT_KINDS_WITHOUT_PRODUCER: Readonly<Partial<Record<TechnicalDocumentationUnitKind, string>>> = {\n [TechnicalDocumentationUnitKind.CHANGE]:\n 'A change record belongs to one application, and an application-authored unit has no route — `pathForUnit` '\n + 'admits only engine-namespaced slugs and the reserved `unit/manages/` namespace. Blocked on routing, not on authoring.',\n};\n\nexport const ENGINE_CONTENT_UNIT_DEFINITIONS: Readonly<Record<string, EngineContentUnitDefinition>> = Object.freeze({\n 'technical-documentation:unit/application-orientation': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/what-this-application-manages': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n /*\n * Every audience, because this is the one page that answers \"what IS this?\" — the question\n * that comes before the reason any of them opened the documentation. An operator, an\n * integrator and an organization administrator all need it, and none of them should have to\n * infer the product from the pages about administering it.\n */\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n /*\n * No applicability requirement. An application with no resources of its own still publishes\n * this page, and the projection says so in a sentence — suppressing it would leave a reader\n * unable to tell \"manages nothing through its API\" from \"nobody wrote this page\".\n */\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/first-request',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/organization-roles',\n ],\n },\n 'technical-documentation:unit/authentication': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14: engine-generic API guidance is applicable because the application\n // declares an API, not because a live process was observed serving one.\n // The former RUNTIME_AUTHORIZATION requirement on APPLICATION_API could only ever be\n // satisfied by a runtime receipt, which no longer exists.\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/sign-in-and-mfa': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/complete-sign-in': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/mfa-enrollment-and-recovery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/sign-in-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sign-in-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/complete-sign-in',\n 'technical-documentation:unit/mfa-enrollment-and-recovery',\n 'technical-documentation:unit/troubleshoot-user-access',\n ],\n },\n 'technical-documentation:unit/single-sign-on': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-configure': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-rollout-and-recovery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-troubleshoot',\n ],\n },\n 'technical-documentation:unit/sso-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/sso-configure',\n 'technical-documentation:unit/sso-rollout-and-recovery',\n 'technical-documentation:unit/troubleshoot-user-access',\n ],\n },\n 'technical-documentation:unit/api-keys': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/api-keys-lifecycle',\n 'technical-documentation:unit/api-keys-troubleshoot',\n ],\n apiReferenceTargets: [{\n label: 'Organization API keys API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: 'technical-documentation:resource/organizationApiKeys',\n },\n }],\n },\n 'technical-documentation:unit/api-keys-create-and-store': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-lifecycle',\n 'technical-documentation:unit/first-request',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization API key', 'organizationApiKeys', 'create'),\n ],\n },\n 'technical-documentation:unit/api-keys-lifecycle': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/api-keys-troubleshoot',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Rotate an organization API key', 'organizationApiKeys', 'rotate'),\n operationFamilyApiReferenceTarget('Deactivate an organization API key', 'organizationApiKeys', 'deactivate'),\n operationFamilyApiReferenceTarget('Reactivate an organization API key', 'organizationApiKeys', 'reactivate'),\n operationFamilyApiReferenceTarget('Extend an organization API key expiry', 'organizationApiKeys', 'extend_expiry'),\n ],\n },\n 'technical-documentation:unit/api-keys-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/api-keys-create-and-store',\n 'technical-documentation:unit/common-rest-api',\n ],\n apiReferenceTargets: [resourceApiReferenceTarget('Organization API keys API reference', 'organizationApiKeys')],\n },\n 'technical-documentation:unit/oauth-provider': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n },\n 'technical-documentation:unit/oauth-register-client': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n apiReferenceTargets: [\n applicationAdministrationResourceApiReferenceTarget('Organization OAuth clients API reference', 'organizationOAuthClients'),\n ],\n },\n 'technical-documentation:unit/oauth-authorize-delegated-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n ],\n },\n 'technical-documentation:unit/oauth-operate-and-revoke': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/oauth-register-client',\n 'technical-documentation:unit/oauth-authorize-delegated-access',\n 'technical-documentation:unit/api-keys-lifecycle',\n ],\n apiReferenceTargets: [\n applicationAdministrationResourceApiReferenceTarget('Organization OAuth clients API reference', 'organizationOAuthClients'),\n ],\n },\n 'technical-documentation:unit/user-administration': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/manage-users-manually': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/invite-and-onboard-user',\n 'technical-documentation:unit/change-user-access',\n 'technical-documentation:unit/suspend-or-remove-user',\n 'technical-documentation:unit/scim',\n ],\n },\n 'technical-documentation:unit/invite-and-onboard-user': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/suspend-or-remove-user',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Invite a member', 'organizationMembers', 'create'),\n operationFamilyApiReferenceTarget('Resend a pending invitation', 'organizationMembers', 'resend'),\n operationFamilyApiReferenceTarget('Revoke a pending invitation', 'organizationMembers', 'revoke'),\n ],\n },\n 'technical-documentation:unit/organization-roles': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/change-user-access',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [{\n label: 'Organization members API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.RESOURCE,\n resourceRef: 'technical-documentation:resource/organizationMembers',\n },\n }],\n },\n 'technical-documentation:unit/change-user-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/suspend-or-remove-user',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Update an organization membership', 'organizationMembers', 'update'),\n organizationUnitMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/manage-organization-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/design-organization-unit-hierarchy',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/operate-organization-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization unit', 'organizationUnits', 'create'),\n organizationUnitsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/design-organization-unit-hierarchy': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/operate-organization-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Create an organization unit', 'organizationUnits', 'create'),\n operationFamilyApiReferenceTarget('Move an organization unit', 'organizationUnits', 'move'),\n ],\n },\n 'technical-documentation:unit/assign-organization-unit-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/design-organization-unit-hierarchy',\n 'technical-documentation:unit/organization-roles',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('List organization-unit members', 'organizationUnitMembers', 'list'),\n operationFamilyApiReferenceTarget('Assign an organization-unit member', 'organizationUnitMembers', 'create'),\n operationFamilyApiReferenceTarget('Change an organization-unit assignment', 'organizationUnitMembers', 'update'),\n operationFamilyApiReferenceTarget('Remove an organization-unit assignment', 'organizationUnitMembers', 'delete'),\n ],\n },\n 'technical-documentation:unit/operate-organization-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/assign-organization-unit-access',\n 'technical-documentation:unit/scim-map-profile-and-units',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Move an organization unit', 'organizationUnits', 'move'),\n operationFamilyApiReferenceTarget('Archive an organization unit', 'organizationUnits', 'archive'),\n operationFamilyApiReferenceTarget('Restore an organization unit', 'organizationUnits', 'restore'),\n operationFamilyApiReferenceTarget('Delete an organization unit', 'organizationUnits', 'delete'),\n ],\n },\n 'technical-documentation:unit/suspend-or-remove-user': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/manage-users-manually',\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Revoke a pending invitation', 'organizationMembers', 'revoke'),\n operationFamilyApiReferenceTarget('Suspend an organization membership', 'organizationMembers', 'suspend'),\n operationFamilyApiReferenceTarget('Reactivate an organization membership', 'organizationMembers', 'reactivate'),\n operationFamilyApiReferenceTarget('Remove an organization membership', 'organizationMembers', 'delete'),\n ],\n },\n 'technical-documentation:unit/review-users-and-access': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('List organization members', 'organizationMembers', 'list'),\n operationFamilyApiReferenceTarget('List organization-unit members', 'organizationUnitMembers', 'list'),\n ],\n },\n 'technical-documentation:unit/troubleshoot-user-access': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/sign-in-and-mfa',\n 'technical-documentation:unit/organization-roles',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n },\n 'technical-documentation:unit/scim': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n ],\n },\n 'technical-documentation:unit/scim-protocol-and-payloads': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n ],\n },\n 'technical-documentation:unit/scim-configure': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/single-sign-on',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-microsoft-entra',\n 'technical-documentation:unit/scim-okta',\n 'technical-documentation:unit/scim-ldap-and-active-directory',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n ],\n },\n 'technical-documentation:unit/scim-microsoft-entra': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-okta': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-ldap-and-active-directory': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-protocol-and-payloads',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-map-profile-and-units': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/manage-organization-units',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n organizationUnitsApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-validate-and-roll-out': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-map-profile-and-units',\n 'technical-documentation:unit/scim-operate-and-troubleshoot',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n organizationMembersApiReferenceTarget(),\n ],\n },\n 'technical-documentation:unit/scim-operate-and-troubleshoot': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/scim',\n 'technical-documentation:unit/scim-configure',\n 'technical-documentation:unit/scim-validate-and-roll-out',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [\n scimProvisioningConfigApiReferenceTarget(),\n operationFamilyApiReferenceTarget('List SCIM tokens', 'organizationScimTokens', 'list'),\n operationFamilyApiReferenceTarget('Generate a SCIM token', 'organizationScimTokens', 'generateToken'),\n operationFamilyApiReferenceTarget('Revoke a SCIM token', 'organizationScimTokens', 'revokeToken'),\n operationFamilyApiReferenceTarget('Rotate a SCIM token', 'organizationScimTokens', 'rotateToken'),\n ],\n },\n 'technical-documentation:unit/audit-and-siem': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/review-privileged-and-access-changes',\n 'technical-documentation:unit/export-audit-records',\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/siem-splunk',\n 'technical-documentation:unit/siem-microsoft-sentinel',\n 'technical-documentation:unit/siem-elastic',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n 'technical-documentation:unit/user-administration',\n 'technical-documentation:unit/scim',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/investigate-audit-event': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/review-privileged-and-access-changes',\n 'technical-documentation:unit/export-audit-records',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/review-privileged-and-access-changes': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/review-users-and-access',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/export-audit-records': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [\n operationFamilyApiReferenceTarget('Export audit records', 'auditLogs', 'exportAuditLogs'),\n ],\n },\n 'technical-documentation:unit/configure-siem-export': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/siem-splunk',\n 'technical-documentation:unit/siem-microsoft-sentinel',\n 'technical-documentation:unit/siem-elastic',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-splunk': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-microsoft-sentinel': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/siem-elastic': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_EXPORT_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n apiReferenceTargets: [organizationSiemExportConfigApiReferenceTarget()],\n },\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: ORGANIZATION_SIEM_RECOVERY_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/configure-siem-export',\n 'technical-documentation:unit/investigate-audit-event',\n ],\n apiReferenceTargets: [organizationSiemDeliveryDlqApiReferenceTarget()],\n },\n /*\n * The catalog's first RUNBOOK, and the kind had no producer until 2026-09-09 (#474).\n *\n * It is not a re-labelled HOW_TO. Every other page in this section explains ONE capability;\n * `operate-webhook-deliveries` was checked first and is genuinely explanatory — statuses, a retry\n * ladder, monitoring advice — which is why re-kinding it to fill the vocabulary was rejected. A\n * RUNBOOK is an ORDER under time pressure, and the ordering is the content: contain before you\n * assess, assess before you recover, and loop back to contain when the assessment finds a change.\n * No existing page says what to do FIRST.\n */\n 'technical-documentation:unit/respond-to-leaked-credential': {\n kind: TechnicalDocumentationUnitKind.RUNBOOK,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys-lifecycle',\n 'technical-documentation:unit/oauth-operate-and-revoke',\n 'technical-documentation:unit/suspend-or-remove-user',\n 'technical-documentation:unit/investigate-audit-event',\n 'technical-documentation:unit/review-privileged-and-access-changes',\n 'technical-documentation:unit/export-audit-records',\n 'technical-documentation:unit/protect-and-retain-audit-evidence',\n ],\n },\n 'technical-documentation:unit/protect-and-retain-audit-evidence': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.ORGANIZATION_ADMINISTRATOR,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/audit-and-siem',\n 'technical-documentation:unit/export-audit-records',\n 'technical-documentation:unit/operate-and-troubleshoot-siem-delivery',\n ],\n apiReferenceTargets: [auditLogsApiReferenceTarget()],\n },\n 'technical-documentation:unit/integrations': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/first-request',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/agent-interoperability',\n ],\n },\n 'technical-documentation:unit/automation-platforms': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/connect-n8n',\n 'technical-documentation:unit/connect-zapier',\n 'technical-documentation:unit/connect-make',\n 'technical-documentation:unit/first-request',\n ],\n },\n 'technical-documentation:unit/connect-n8n': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/connect-zapier': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/connect-make': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/automation-platforms',\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/webhooks',\n 'technical-documentation:unit/api-keys',\n ],\n },\n 'technical-documentation:unit/ai-coding-tools': {\n kind: TechnicalDocumentationUnitKind.ORIENTATION,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/connect-cursor',\n 'technical-documentation:unit/connect-codex',\n 'technical-documentation:unit/connect-claude-code',\n 'technical-documentation:unit/mcp-integrations',\n ],\n },\n 'technical-documentation:unit/connect-cursor': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/connect-codex': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/connect-claude-code': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/agent-interoperability': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/mcp-integrations',\n 'technical-documentation:unit/a2a-integrations',\n 'technical-documentation:unit/ai-coding-tools',\n 'technical-documentation:unit/oauth-provider',\n ],\n },\n 'technical-documentation:unit/mcp-integrations': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: MCP_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/agent-interoperability',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n },\n 'technical-documentation:unit/a2a-integrations': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: A2A_INTEGRATION_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/agent-interoperability',\n 'technical-documentation:unit/oauth-provider',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/first-request': {\n kind: TechnicalDocumentationUnitKind.QUICKSTART,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14: engine-generic API guidance is applicable because the application\n // declares an API, not because a live process was observed serving one.\n // The former runtime-exposure requirement on APPLICATION_API (then named\n // `RUNTIME_EXPOSURE`, now `EXPOSED_API_SURFACE`) could only ever be satisfied\n // by a runtime receipt, which no longer exists. The webhook page retains\n // its own source-derived exposure gate because its contract is conditional.\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/integrations',\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/common-rest-api',\n ],\n /*\n * The FIRST asset any engine page has ever requested (#474), and deliberately the deterministic\n * one rather than a screenshot: it materializes offline, from a frozen definition, with no\n * browser, no provisioned tenant and no live stack — so the asset path is exercised on every\n * publication rather than only where a capture happens to be available.\n *\n * It belongs on this page because the diagram IS this page: a client sending an authenticated\n * request through the application API to a documented resource is what \"send your first\n * request\" describes in prose.\n */\n assetRequests: [createTechnicalDocumentationApplicationRequestDiagramAssetRequest()],\n },\n 'technical-documentation:unit/common-rest-api': {\n kind: TechnicalDocumentationUnitKind.CONCEPT,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/rest-api-conventions',\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/work-with-api-collections',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/rest-api-conventions': {\n kind: TechnicalDocumentationUnitKind.REFERENCE,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/common-rest-api',\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/send-api-request': {\n kind: TechnicalDocumentationUnitKind.QUICKSTART,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/api-keys',\n 'technical-documentation:unit/work-with-api-collections',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/work-with-api-collections': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n 'technical-documentation:unit/troubleshoot-api-request',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/write-and-reconcile-api-changes': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/send-api-request',\n 'technical-documentation:unit/troubleshoot-api-request',\n 'technical-documentation:unit/audit-and-siem',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/troubleshoot-api-request': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: [],\n relatedUnitRefs: [\n 'technical-documentation:unit/authentication',\n 'technical-documentation:unit/api-keys-troubleshoot',\n 'technical-documentation:unit/write-and-reconcile-api-changes',\n ],\n apiReferenceTargets: [{\n label: 'API reference',\n target: {\n section: TechnicalDocumentationApiReferenceSection.API_REFERENCE,\n kind: TechnicalDocumentationApiReferenceTargetKind.ROOT,\n },\n }],\n },\n 'technical-documentation:unit/webhooks': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n // D14 gap RESOLVED 2026-08-08 — and the resolution was to STOP ASKING THE\n // TENANT QUESTION, not to find a build-time way to answer it.\n //\n // The deleted runtime collector reported `featureReady` for\n // `CoreFeature.M2M_WEBHOOK_DELIVERY`, which is `scopeBoundary: true` over\n // [APPLICATION, ORGANIZATIONS] — every organization opts in independently, so\n // that boolean was TENANT STATE gating whether a documentation PAGE exists.\n // That is a category error: the signature algorithm, payload envelope and\n // retry policy are code, identical for every tenant. Whether a given\n // organization has delivery switched on is an entitlement, and entitlements\n // belong in the prose (see the per-organization note in the unit body), not\n // in an applicability gate.\n //\n // What the gate asks instead is the question documentation can actually\n // answer: does THIS application expose the outbound-webhook surface at all?\n // That is source-derived — the resources must be registered and admitted by\n // the application's declared `apiDocResources` opt-in — and it fails closed\n // for an application that documents no webhook surface.\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n ],\n },\n 'technical-documentation:unit/configure-and-test-webhook-endpoint': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n ],\n },\n 'technical-documentation:unit/verify-webhook-delivery': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/operate-webhook-deliveries',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/operate-webhook-deliveries': {\n kind: TechnicalDocumentationUnitKind.HOW_TO,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/troubleshoot-webhook-deliveries',\n 'technical-documentation:unit/audit-and-siem',\n ],\n },\n 'technical-documentation:unit/troubleshoot-webhook-deliveries': {\n kind: TechnicalDocumentationUnitKind.TROUBLESHOOTING,\n readerAudiences: [\n TechnicalDocumentationReaderAudience.APPLICATION_OPERATIONS_STAFF,\n TechnicalDocumentationReaderAudience.CONSUMING_INTERNAL_SERVICE,\n TechnicalDocumentationReaderAudience.EXTERNAL_INTEGRATION_DEVELOPER,\n TechnicalDocumentationReaderAudience.ORGANIZATION_INTEGRATION_DEVELOPER,\n ],\n accessClass: TechnicalDocumentationAccessClass.PUBLIC,\n applicabilityRequirements: OUTBOUND_WEBHOOK_APPLICABILITY_REQUIREMENTS,\n relatedUnitRefs: [\n 'technical-documentation:unit/configure-and-test-webhook-endpoint',\n 'technical-documentation:unit/verify-webhook-delivery',\n 'technical-documentation:unit/operate-webhook-deliveries',\n ],\n },\n});\n\ninterface MarkdownSection {\n readonly heading: string;\n readonly bodyMarkdown: string;\n}\n\nfunction parseEngineMarkdown(markdown: string, unitRef: string): { title: string; summary: string; sections: readonly MarkdownSection[] } {\n const lines = markdown.trim().split('\\n');\n const titleLine = lines.shift();\n if (titleLine === undefined || !titleLine.startsWith('# ')) throw new Error(`engine content ${unitRef} must begin with exactly one H1 title`);\n const title = titleLine.slice(2).trim();\n const sections: MarkdownSection[] = [];\n let heading: string = IMPLICIT_LEAD_SECTION_HEADING;\n let body: string[] = [];\n const flush = (): void => {\n const bodyMarkdown = body.join('\\n').trim();\n if (bodyMarkdown.length > 0) sections.push({ heading, bodyMarkdown });\n body = [];\n };\n for (const line of lines) {\n if (line.startsWith('## ')) {\n flush();\n heading = line.slice(3).trim();\n } else {\n body.push(line);\n }\n }\n flush();\n if (sections.length === 0) throw new Error(`engine content ${unitRef} must contain a non-empty Markdown body`);\n const firstParagraph = sections[0]!.bodyMarkdown.split(/\\n\\s*\\n/, 1)[0]!.replace(/\\s+/g, ' ').trim();\n // The first prose paragraph is deliberately the card/search summary. It is\n // rendered above the guide body by both output families, so retaining that\n // paragraph in the implicit `Overview` section would visibly say it twice.\n // An explicit H2 is not rewritten: its author chose a real section and may\n // intentionally need the opening paragraph in its body.\n const [firstSection, ...remainingSections] = sections;\n if (firstSection !== undefined && firstSection.heading === IMPLICIT_LEAD_SECTION_HEADING) {\n const overviewRemainder = firstSection.bodyMarkdown.replace(/^.*?(?:\\n\\s*\\n|$)/s, '').trim();\n return {\n title,\n summary: firstParagraph,\n sections: overviewRemainder.length === 0\n ? remainingSections\n : [{ heading: firstSection.heading, bodyMarkdown: overviewRemainder }, ...remainingSections],\n };\n }\n return { title, summary: firstParagraph, sections };\n}\n\n/**\n * A related-link label names the reader's destination, not the relationship.\n *\n * The renderer supplies the `Related` heading. Repeating a generic phrase in\n * every list item makes several different navigation choices visually\n * indistinguishable, while resolving the target's authored title preserves\n * the exact customer-facing vocabulary in one place.\n */\n/**\n * Resolves related destinations before output links or provenance are built.\n *\n * A related link projects the target's authored title into the source unit.\n * The title's engine-content identity is therefore an input to both the\n * source unit's output bytes and its digest; it must travel with the link\n * instead of being silently treated as presentation-only metadata.\n */\nfunction resolveRelatedUnitLinkTargets(\n unitRef: string,\n relatedUnitRefs: readonly string[],\n targetByUnitRef: ReadonlyMap<string, RelatedUnitLinkTarget>,\n): RelatedUnitLinkTarget[] {\n return relatedUnitRefs.map((targetUnitRef) => {\n const target = targetByUnitRef.get(targetUnitRef);\n if (target === undefined) throw new Error(`engine content ${unitRef} links to an unknown target ${targetUnitRef}`);\n return target;\n });\n}\n\nfunction relatedLinks(unitRef: string, relatedTargets: readonly RelatedUnitLinkTarget[]): TechnicalDocumentationLinkV1[] {\n const sourceSlug = unitRef.slice(unitRef.lastIndexOf('/') + 1);\n return relatedTargets.map((target) => {\n const targetSlug = target.targetUnitRef.slice(target.targetUnitRef.lastIndexOf('/') + 1);\n return {\n linkRef: `technical-documentation:link/${sourceSlug}-to-${targetSlug}`,\n kind: TechnicalDocumentationLinkKind.UNIT,\n label: target.title,\n targetUnitRef: target.targetUnitRef,\n targetRef: null,\n externalUrl: null,\n apiReferenceTarget: null,\n };\n });\n}\n\nfunction apiReferenceLinks(unitRef: string, targets: NonNullable<EngineContentUnitDefinition['apiReferenceTargets']>): TechnicalDocumentationLinkV1[] {\n const sourceSlug = unitRef.slice(unitRef.lastIndexOf('/') + 1);\n return targets.map((target, index) => ({\n linkRef: `technical-documentation:link/${sourceSlug}-api-reference-${index + 1}`,\n kind: TechnicalDocumentationLinkKind.API_REFERENCE,\n label: target.label,\n targetUnitRef: null,\n targetRef: null,\n externalUrl: null,\n apiReferenceTarget: target.target,\n }));\n}\n\n/**\n * Merges source provenance with the exact title authorities imported through\n * related links. A source reference has one semantic identity in a rendered\n * unit: accepting the same ref with divergent digests would make its output\n * digest ambiguous, so the projector rejects it before the unit schema's\n * canonicalization hides the conflict.\n */\nfunction mergeProvenance(\n ownProvenance: readonly TechnicalDocumentationSourceProvenanceV1[],\n relatedTargets: readonly RelatedUnitLinkTarget[],\n): TechnicalDocumentationSourceProvenanceV1[] {\n /*\n * Compares the WHOLE row, not one field, matching `canonicalizeTechnicalDocumentationRows` — the\n * idiom this subsystem uses everywhere else for \"two rows claim one key and disagree\".\n *\n * Measured, because the narrower version this replaced could not fail: it compared only\n * `sourceVersion`, and the two producers feeding this function cannot disagree on that. A\n * related target's `titleProvenance` is always an `ENGINE_CONTENT`-prefixed ref carrying\n * `contentBundleVersion`, and own-provenance for that same prefix carries `contentBundleVersion`\n * too — the curated-fact and companion-projection branches, which carry other versions, use\n * disjoint ref prefixes and can never collide with a title source. Widening to the full row does\n * not make today's two producers trip it either; it makes the check meaningful the day a third\n * producer is added, which is when a silent disagreement would actually cost something.\n *\n * The digest form that preceded both was reachable for the wrong reason: it compared\n * `identity.semanticDigest`, which is the CITING UNIT's identity rather than the source's, so two\n * units legitimately citing one shared engine-content source disagreed and it threw on a correct\n * input.\n */\n const provenanceBySourceRef = new Map<string, TechnicalDocumentationSourceProvenanceV1>();\n for (const provenance of [...ownProvenance, ...relatedTargets.map((target) => target.titleProvenance)]) {\n const existing = provenanceBySourceRef.get(provenance.sourceRef);\n if (existing !== undefined && canonicalizeTechnicalDocumentationJson(existing) !== canonicalizeTechnicalDocumentationJson(provenance)) {\n throw new Error(`engine content provenance source ${provenance.sourceRef} is cited with conflicting rows`);\n }\n provenanceBySourceRef.set(provenance.sourceRef, provenance);\n }\n return [...provenanceBySourceRef.values()].sort((left, right) => left.sourceRef.localeCompare(right.sourceRef, 'en-US'));\n}\n\nfunction consumerFactPresentation(entry: EngineDocumentationSpecificationCatalogEntryV1, selector: string): string {\n if (entry.specificationFamilyRef !== EngineDocumentationSpecificationFamilyRef.CONSUMER_FACT) {\n throw new Error(`documentation source ${entry.sourceRef} is not a curated consumer fact`);\n }\n if (entry.semanticDto === null || typeof entry.semanticDto !== 'object' || Array.isArray(entry.semanticDto)) {\n throw new Error(`consumer fact ${entry.sourceRef} has no object semantic DTO`);\n }\n const presentation = (entry.semanticDto as Readonly<Record<string, unknown>>)[selector];\n if (typeof presentation !== 'string' || presentation.trim().length === 0) {\n throw new Error(`consumer fact ${entry.sourceRef} has no ${selector} presentation`);\n }\n return presentation;\n}\n\n/**\n * Resolves only declared, explicitly curated consumer facts into an authored\n * engine-content unit. Arbitrary catalog entries are not eligible: that is the\n * safety boundary preventing raw specification fields from entering prose.\n */\nfunction resolveConsumerFactMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n catalog: EngineDocumentationSpecificationCatalogV1,\n): { markdown: string; entriesBySourceRef: ReadonlyMap<string, EngineDocumentationSpecificationCatalogEntryV1> } {\n const declaredFactRefs = declaredSourceRefs.filter((sourceRef) => sourceRef.startsWith(APPLICATION_CONSUMER_DOCUMENTATION_CONSUMER_FACT_SOURCE_PREFIX));\n const catalogEntriesBySourceRef = new Map(catalog.entries.map((entry) => [entry.sourceRef, entry]));\n const resolvedFactRefs = new Set<string>();\n const renderedMarkdown = markdown.replace(CONSUMER_FACT_TOKEN_PATTERN, (_token, sourceRef: string, selector: string) => {\n if (!declaredFactRefs.includes(sourceRef)) {\n throw new Error(`engine content references undeclared consumer fact ${sourceRef}`);\n }\n const entry = catalogEntriesBySourceRef.get(sourceRef);\n if (entry === undefined) throw new Error(`engine content references unavailable consumer fact ${sourceRef}`);\n resolvedFactRefs.add(sourceRef);\n return consumerFactPresentation(entry, selector);\n });\n if (renderedMarkdown.includes('{{CONSUMER_FACT:')) throw new Error('engine content contains an invalid consumer-fact token');\n if (resolvedFactRefs.size !== declaredFactRefs.length) {\n const missing = declaredFactRefs.filter((sourceRef) => !resolvedFactRefs.has(sourceRef));\n throw new Error(`engine content declares an unused consumer fact: ${missing.join(', ')}`);\n }\n return {\n markdown: renderedMarkdown,\n entriesBySourceRef: new Map([...resolvedFactRefs].map((sourceRef) => [sourceRef, catalogEntriesBySourceRef.get(sourceRef)!])),\n };\n}\n\n/**\n * Substitutes a companion projection that offers NAMED PRESENTATIONS, and optionally one inline\n * value repeated as often as the prose needs it.\n *\n * Shared by the connection and authentication projections because both have the same shape and the\n * same three failure modes: a page that uses a token without declaring the source, a page that\n * declares the source and uses no token, and a page that asks for a presentation the projection\n * does not offer. Each must fail the publication rather than render something plausible.\n */\nfunction resolveSelectorProjectionMarkdown<TFact extends { readonly sourceRef: string }>(input: {\n readonly markdown: string;\n readonly declaredSourceRefs: readonly string[];\n readonly sourceRef: string;\n readonly label: string;\n readonly fact: TFact | undefined;\n readonly selectorPattern: RegExp;\n readonly presentationFor: (fact: TFact, selector: string) => string | undefined;\n readonly inline?: { readonly token: string; readonly valueFor: (fact: TFact) => string };\n /** Single-string values substituted INSIDE a sample, where a block presentation cannot go. */\n readonly inlineSelector?: { readonly pattern: RegExp; readonly valueFor: (fact: TFact, selector: string) => string | undefined };\n}): { markdown: string; fact: TFact | undefined } {\n const { markdown, declaredSourceRefs, sourceRef, label, fact, selectorPattern, presentationFor, inline, inlineSelector } = input;\n const declaredRefs = declaredSourceRefs.filter((candidate) => candidate === sourceRef);\n const inlineCount = inline === undefined ? 0 : markdown.split(inline.token).length - 1;\n const selectorCount = [...markdown.matchAll(selectorPattern)].length;\n const inlineSelectorCount = inlineSelector === undefined ? 0 : [...markdown.matchAll(inlineSelector.pattern)].length;\n if (inlineCount === 0 && selectorCount === 0 && inlineSelectorCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused ${label} projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error(`engine content ${label} projection must declare and resolve exactly one matching companion source`);\n }\n const withInline = inline === undefined ? markdown : markdown.split(inline.token).join(inline.valueFor(fact));\n const withInlineSelectors = inlineSelector === undefined ? withInline : withInline.replace(inlineSelector.pattern, (_token, selector: string) => {\n const value = inlineSelector.valueFor(fact, selector);\n if (value === undefined || value.trim().length === 0) {\n throw new Error(`engine content requests an unknown or empty ${label} inline value: ${selector}`);\n }\n return value;\n });\n const rendered = withInlineSelectors.replace(selectorPattern, (_token, selector: string) => {\n const presentation = presentationFor(fact, selector);\n if (presentation === undefined) {\n throw new Error(`engine content requests an unknown ${label} presentation: ${selector}`);\n }\n if (presentation.trim().length === 0) {\n throw new Error(`${label} presentation ${selector} rendered empty; every presentation must say something true even when the subject is absent`);\n }\n return presentation;\n });\n return { markdown: rendered, fact };\n}\n\n/**\n * The application's own name and connection details. The name is inline and repeatable — a page\n * names the product as often as its prose needs it — while a connection table is a block.\n */\nfunction resolveApplicationConnectionMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationConnectionDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationConnectionDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_CONNECTION_DOCUMENTATION_SOURCE_REF,\n label: 'application-connection',\n fact,\n selectorPattern: APPLICATION_CONNECTION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationConnectionPresentation],\n inline: { token: APPLICATION_NAME_TOKEN, valueFor: (resolved) => resolved.applicationName },\n inlineSelector: {\n pattern: APPLICATION_CONNECTION_VALUE_TOKEN_PATTERN,\n valueFor: (resolved, selector) => resolved.inlineValues[selector as ApplicationConnectionInlineValue],\n },\n });\n}\n\n/** What this application actually asks of a person signing in. Presentations only. */\nfunction resolveApplicationAuthenticationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationAuthenticationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationAuthenticationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_AUTHENTICATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-authentication',\n fact,\n selectorPattern: APPLICATION_AUTHENTICATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationAuthenticationPresentation],\n });\n}\n\n/** The tools and events this application publishes. Presentations only. */\nfunction resolveApplicationIntegrationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationIntegrationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationIntegrationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_INTEGRATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-integration',\n fact,\n selectorPattern: APPLICATION_INTEGRATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationIntegrationPresentation],\n });\n}\n\n/** What this application is FOR: its own resources, grouped as it groups them. Presentations only. */\nfunction resolveApplicationDomainMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationDomainDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationDomainDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_DOMAIN_DOCUMENTATION_SOURCE_REF,\n label: 'application-domain',\n fact,\n selectorPattern: APPLICATION_DOMAIN_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationDomainPresentation],\n });\n}\n\n/** Who may perform each administrative action here. Presentations only. */\nfunction resolveApplicationAdministrationMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationAdministrationDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationAdministrationDocumentationFact | undefined } {\n return resolveSelectorProjectionMarkdown({\n markdown,\n declaredSourceRefs,\n sourceRef: APPLICATION_ADMINISTRATION_DOCUMENTATION_SOURCE_REF,\n label: 'application-administration',\n fact,\n selectorPattern: APPLICATION_ADMINISTRATION_TOKEN_PATTERN,\n presentationFor: (resolved, selector) => resolved.presentations[selector as ApplicationAdministrationPresentation],\n });\n}\n\nfunction resolveApplicationOrganizationRolesMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationOrganizationRolesDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationOrganizationRolesDocumentationFact | undefined } {\n const declaredRefs = declaredSourceRefs.filter((sourceRef) => sourceRef === APPLICATION_ORGANIZATION_ROLES_DOCUMENTATION_SOURCE_REF);\n const tokenCount = markdown.split(APPLICATION_ORGANIZATION_ROLES_TOKEN).length - 1;\n if (tokenCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused companion projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (tokenCount !== 1 || declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error('engine content organization-role projection must declare and resolve exactly one matching companion source');\n }\n if (fact.markdown.trim().length === 0) throw new Error('application organization-role projection has no Markdown presentation');\n return { markdown: markdown.replace(APPLICATION_ORGANIZATION_ROLES_TOKEN, fact.markdown), fact };\n}\n\nfunction resolveApplicationOrganizationUnitResourcesMarkdown(\n markdown: string,\n declaredSourceRefs: readonly string[],\n fact: ApplicationOrganizationUnitResourcesDocumentationFact | undefined,\n): { markdown: string; fact: ApplicationOrganizationUnitResourcesDocumentationFact | undefined } {\n const declaredRefs = declaredSourceRefs.filter((sourceRef) => sourceRef === APPLICATION_ORGANIZATION_UNIT_RESOURCES_DOCUMENTATION_SOURCE_REF);\n const tokenCount = markdown.split(APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN).length - 1;\n if (tokenCount === 0) {\n if (declaredRefs.length > 0) throw new Error(`engine content declares an unused organization-unit resource projection: ${declaredRefs.join(', ')}`);\n return { markdown, fact: undefined };\n }\n if (tokenCount !== 1 || declaredRefs.length !== 1 || fact === undefined || declaredRefs[0] !== fact.sourceRef) {\n throw new Error('engine content organization-unit resource projection must declare and resolve exactly one matching companion source');\n }\n if (fact.markdown.trim().length === 0) throw new Error('application organization-unit resource projection has no Markdown presentation');\n return { markdown: markdown.replace(APPLICATION_ORGANIZATION_UNIT_RESOURCES_TOKEN, fact.markdown), fact };\n}\n\n/**\n * The facts only the application knows, which the companion measures and passes in.\n *\n * A record rather than a positional list: each is optional because a page declares what it uses,\n * and the set grows as the documentation learns to say more about the application it ships with.\n */\nexport interface ApplicationDocumentationFacts {\n readonly organizationRoles?: ApplicationOrganizationRolesDocumentationFact;\n readonly organizationUnitResources?: ApplicationOrganizationUnitResourcesDocumentationFact;\n readonly connection?: ApplicationConnectionDocumentationFact;\n readonly authentication?: ApplicationAuthenticationDocumentationFact;\n readonly administration?: ApplicationAdministrationDocumentationFact;\n readonly integration?: ApplicationIntegrationDocumentationFact;\n readonly domain?: ApplicationDomainDocumentationFact;\n}\n\n/**\n * Compiles verified engine content and the application's own facts (organization roles,\n * unit-aware resources, name and connection details) into private documentation.\n */\nexport function projectEngineApplicationConsumerContentBundle(\n bundle: LoadedApplicationConsumerDocumentationContentBundleV1,\n engineSpecificationCatalog: EngineDocumentationSpecificationCatalogV1,\n unitDefinitions: Readonly<Record<string, EngineContentUnitDefinition>> = ENGINE_CONTENT_UNIT_DEFINITIONS,\n applicationFacts: ApplicationDocumentationFacts = {},\n): TechnicalDocumentationUnitV1[] {\n const manifestRefs = bundle.manifest.units.map((unit) => unit.unitRef).sort();\n const definitionRefs = Object.keys(unitDefinitions).sort();\n if (manifestRefs.join('\\0') !== definitionRefs.join('\\0')) {\n throw new Error('engine content unit definitions do not exactly cover the verified application-consumer content bundle');\n }\n\n const parsedContentByUnitRef = new Map(bundle.manifest.units.map((identity) => {\n if (identity.managedPaths.length !== 1) throw new Error(`engine content unit ${identity.unitRef} must resolve to exactly one Markdown source`);\n const authoredMarkdown = new TextDecoder('utf-8', { fatal: true }).decode(bundle.readManagedBytes(identity.managedPaths[0]!));\n const resolvedConsumerFacts = resolveConsumerFactMarkdown(authoredMarkdown, identity.sourceRefs, engineSpecificationCatalog);\n const resolvedApplicationOrganizationRoles = resolveApplicationOrganizationRolesMarkdown(\n resolvedConsumerFacts.markdown,\n identity.sourceRefs,\n applicationFacts.organizationRoles,\n );\n const resolvedApplicationOrganizationUnitResources = resolveApplicationOrganizationUnitResourcesMarkdown(\n resolvedApplicationOrganizationRoles.markdown,\n identity.sourceRefs,\n applicationFacts.organizationUnitResources,\n );\n const resolvedApplicationConnection = resolveApplicationConnectionMarkdown(\n resolvedApplicationOrganizationUnitResources.markdown,\n identity.sourceRefs,\n applicationFacts.connection,\n );\n const resolvedApplicationAuthentication = resolveApplicationAuthenticationMarkdown(\n resolvedApplicationConnection.markdown,\n identity.sourceRefs,\n applicationFacts.authentication,\n );\n const resolvedApplicationAdministration = resolveApplicationAdministrationMarkdown(\n resolvedApplicationAuthentication.markdown,\n identity.sourceRefs,\n applicationFacts.administration,\n );\n const resolvedApplicationIntegration = resolveApplicationIntegrationMarkdown(\n resolvedApplicationAdministration.markdown,\n identity.sourceRefs,\n applicationFacts.integration,\n );\n const resolvedApplicationDomain = resolveApplicationDomainMarkdown(\n resolvedApplicationIntegration.markdown,\n identity.sourceRefs,\n applicationFacts.domain,\n );\n return [identity.unitRef, {\n parsed: parseEngineMarkdown(resolvedApplicationDomain.markdown, identity.unitRef),\n resolvedConsumerFacts,\n resolvedApplicationOrganizationRoles,\n resolvedApplicationOrganizationUnitResources,\n resolvedApplicationConnection,\n resolvedApplicationAuthentication,\n resolvedApplicationAdministration,\n resolvedApplicationIntegration,\n resolvedApplicationDomain,\n }] as const;\n }));\n const relatedTargetByUnitRef = new Map(bundle.manifest.units.map((identity) => {\n const content = parsedContentByUnitRef.get(identity.unitRef);\n if (content === undefined) throw new Error(`engine content ${identity.unitRef} has no parsed content`);\n const titleSourceRef = identity.sourceRefs.find((sourceRef) => sourceRef.startsWith(APPLICATION_CONSUMER_DOCUMENTATION_ENGINE_CONTENT_SOURCE_PREFIX));\n if (titleSourceRef === undefined) throw new Error(`engine content ${identity.unitRef} has no authored title source`);\n return [identity.unitRef, {\n targetUnitRef: identity.unitRef,\n title: content.parsed.title,\n titleProvenance: {\n sourceRef: titleSourceRef,\n ownership: TechnicalDocumentationSourceOwnership.ENGINE_GENERIC_CONTENT,\n classification: TechnicalDocumentationSourceClassification.PUBLIC,\n sourceVersion: bundle.identity.contentBundleVersion,\n sourceAnchorRef: null,\n },\n }] as const;\n }));\n\n /*\n * The generated tier.\n *\n * Every unit above is AUTHORED: a Markdown file in the content module, a definition beside it,\n * and a fixed route. That is the right shape for a page whose text an engine owns, and the wrong\n * one for a page PER RESOURCE — the resources belong to the application, and an engine that\n * authored a page for each possible one would be authoring the application.\n *\n * So these units are projected whole, from the same domain fact the overview page uses. They are\n * still ENGINE units, and deliberately: the engine owns the page's shape, its sections and its\n * words, while the application supplies only the subject. That is what keeps `pathForUnit`'s\n * refusal of application-owned units intact — nothing here asks it to route a unit an\n * application named.\n */\n const generatedResourceUnits = (applicationFacts.domain?.resourcePages ?? []).map((page) => {\n const unitRef = applicationDomainResourcePageUnitRef(page.resourceIdentifier);\n const parsed = parseEngineMarkdown(page.markdown, unitRef);\n const unitSlug = page.resourceIdentifier;\n return createTechnicalDocumentationUnitV1({\n schemaVersion: 1,\n unitRef,\n unitVersion: 1,\n kind: GENERATED_RESOURCE_UNIT_DEFINITION.kind,\n readerAudiences: [...GENERATED_RESOURCE_UNIT_DEFINITION.readerAudiences],\n title: parsed.title,\n summary: parsed.summary,\n sections: parsed.sections.map((section, index) => ({\n sectionRef: `technical-documentation:section/manages-${unitSlug}-${index + 1}`,\n heading: section.heading,\n bodyMarkdown: section.bodyMarkdown,\n })),\n links: [],\n /*\n * Wholly application-projected: unlike an authored page carrying a token, there is no engine\n * Markdown behind this one. Recording it as engine content would misattribute the only thing\n * a reader might want to trace — where the words about their product came from.\n */\n provenance: [{\n sourceRef: APPLICATION_DOMAIN_DOCUMENTATION_SOURCE_REF,\n ownership: TechnicalDocumentationSourceOwnership.APPLICATION_COMPANION_PROJECTION,\n classification: TechnicalDocumentationSourceClassification.PUBLIC,\n sourceVersion: applicationFacts.domain?.sourceVersion ?? 1,\n sourceAnchorRef: null,\n }],\n /*\n * No applicability requirement, because the unit's EXISTENCE is the evidence: it is emitted\n * only for a resource the application actually publishes. A requirement here would be a\n * second, weaker statement of the same fact.\n */\n applicabilityRequirements: [],\n accessClass: GENERATED_RESOURCE_UNIT_DEFINITION.accessClass,\n editorialStatus: GENERATED_RESOURCE_UNIT_DEFINITION.editorialStatus ?? TechnicalDocumentationEditorialStatus.APPROVED,\n assetRequests: [...GENERATED_RESOURCE_UNIT_DEFINITION.assetRequests ?? []],\n });\n });\n\n return [...bundle.manifest.units.map((identity) => {\n const definition = unitDefinitions[identity.unitRef];\n if (definition === undefined) throw new Error(`unsupported engine application-consumer content unit ${identity.unitRef}`);\n const content = parsedContentByUnitRef.get(identity.unitRef);\n if (content === undefined) throw new Error(`engine content ${identity.unitRef} has no parsed content`);\n const { parsed, resolvedConsumerFacts, resolvedApplicationOrganizationRoles, resolvedApplicationOrganizationUnitResources, resolvedApplicationConnection, resolvedApplicationAuthentication, resolvedApplicationAdministration, resolvedApplicationIntegration, resolvedApplicationDomain } = content;\n const unitSlug = identity.unitRef.slice(identity.unitRef.lastIndexOf('/') + 1);\n const relatedTargets = resolveRelatedUnitLinkTargets(identity.unitRef, definition.relatedUnitRefs, relatedTargetByUnitRef);\n const ownProvenance = identity.sourceRefs.map((sourceRef) => {\n const fact = resolvedConsumerFacts.entriesBySourceRef.get(sourceRef);\n const applicationProjection = resolvedApplicationOrganizationRoles.fact?.sourceRef === sourceRef\n ? resolvedApplicationOrganizationRoles.fact\n : resolvedApplicationOrganizationUnitResources.fact?.sourceRef === sourceRef\n ? resolvedApplicationOrganizationUnitResources.fact\n : resolvedApplicationConnection.fact?.sourceRef === sourceRef\n ? resolvedApplicationConnection.fact\n : resolvedApplicationAuthentication.fact?.sourceRef === sourceRef\n ? resolvedApplicationAuthentication.fact\n : resolvedApplicationAdministration.fact?.sourceRef === sourceRef\n ? resolvedApplicationAdministration.fact\n : undefined;\n return {\n sourceRef,\n ownership: applicationProjection === undefined\n ? TechnicalDocumentationSourceOwnership.ENGINE_GENERIC_CONTENT\n : TechnicalDocumentationSourceOwnership.APPLICATION_COMPANION_PROJECTION,\n classification: TechnicalDocumentationSourceClassification.PUBLIC,\n /*\n * A companion projection carries its own version; a curated engine fact takes the\n * catalog projector's; authored engine content takes the content bundle's. All three\n * were sha256 values until 2026-08-27 and none of them was ever compared to anything\n * except another copy of itself.\n */\n sourceVersion: applicationProjection?.sourceVersion\n ?? (fact === undefined ? bundle.identity.contentBundleVersion : engineSpecificationCatalog.identity.projectorVersion),\n sourceAnchorRef: null,\n };\n });\n return createTechnicalDocumentationUnitV1({\n schemaVersion: 1,\n unitRef: identity.unitRef,\n unitVersion: 1,\n kind: definition.kind,\n readerAudiences: [...definition.readerAudiences],\n title: parsed.title,\n summary: parsed.summary,\n sections: parsed.sections.map((section, index) => ({\n sectionRef: `technical-documentation:section/${unitSlug}-${index + 1}`,\n heading: section.heading,\n bodyMarkdown: section.bodyMarkdown,\n })),\n links: [...relatedLinks(identity.unitRef, relatedTargets), ...apiReferenceLinks(identity.unitRef, definition.apiReferenceTargets ?? [])],\n provenance: mergeProvenance(ownProvenance, relatedTargets),\n applicabilityRequirements: [...definition.applicabilityRequirements],\n accessClass: definition.accessClass,\n editorialStatus: definition.editorialStatus ?? TechnicalDocumentationEditorialStatus.APPROVED,\n assetRequests: [...definition.assetRequests ?? []],\n });\n }), ...generatedResourceUnits].sort((left, right) => left.unitRef.localeCompare(right.unitRef, 'en-US'));\n}\n"]}