@commonpub/server 2.89.0 → 2.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/dist/admin/admin.d.ts.map +1 -1
  2. package/dist/admin/admin.js +4 -5
  3. package/dist/admin/admin.js.map +1 -1
  4. package/dist/content/content.d.ts +0 -5
  5. package/dist/content/content.d.ts.map +1 -1
  6. package/dist/content/content.js +118 -122
  7. package/dist/content/content.js.map +1 -1
  8. package/dist/content/index.d.ts +1 -1
  9. package/dist/content/index.d.ts.map +1 -1
  10. package/dist/content/index.js +1 -1
  11. package/dist/content/index.js.map +1 -1
  12. package/dist/contest/contest.d.ts +2 -308
  13. package/dist/contest/contest.d.ts.map +1 -1
  14. package/dist/contest/contest.js +93 -878
  15. package/dist/contest/contest.js.map +1 -1
  16. package/dist/contest/entries.d.ts +41 -0
  17. package/dist/contest/entries.d.ts.map +1 -0
  18. package/dist/contest/entries.js +285 -0
  19. package/dist/contest/entries.js.map +1 -0
  20. package/dist/contest/export.d.ts +20 -0
  21. package/dist/contest/export.d.ts.map +1 -0
  22. package/dist/contest/export.js +131 -0
  23. package/dist/contest/export.js.map +1 -0
  24. package/dist/contest/index.d.ts +11 -2
  25. package/dist/contest/index.d.ts.map +1 -1
  26. package/dist/contest/index.js +8 -1
  27. package/dist/contest/index.js.map +1 -1
  28. package/dist/contest/judges.js +9 -8
  29. package/dist/contest/judges.js.map +1 -1
  30. package/dist/contest/judging.d.ts +38 -0
  31. package/dist/contest/judging.d.ts.map +1 -0
  32. package/dist/contest/judging.js +274 -0
  33. package/dist/contest/judging.js.map +1 -0
  34. package/dist/contest/read.d.ts +44 -0
  35. package/dist/contest/read.d.ts.map +1 -0
  36. package/dist/contest/read.js +167 -0
  37. package/dist/contest/read.js.map +1 -0
  38. package/dist/contest/stages.d.ts +28 -0
  39. package/dist/contest/stages.d.ts.map +1 -0
  40. package/dist/contest/stages.js +52 -0
  41. package/dist/contest/stages.js.map +1 -0
  42. package/dist/contest/submissions.d.ts +90 -0
  43. package/dist/contest/submissions.d.ts.map +1 -0
  44. package/dist/contest/submissions.js +275 -0
  45. package/dist/contest/submissions.js.map +1 -0
  46. package/dist/contest/types.d.ts +207 -0
  47. package/dist/contest/types.d.ts.map +1 -0
  48. package/dist/contest/types.js +2 -0
  49. package/dist/contest/types.js.map +1 -0
  50. package/dist/contest/validation.d.ts +32 -0
  51. package/dist/contest/validation.d.ts.map +1 -0
  52. package/dist/contest/validation.js +132 -0
  53. package/dist/contest/validation.js.map +1 -0
  54. package/dist/docs/docs.d.ts +9 -3
  55. package/dist/docs/docs.d.ts.map +1 -1
  56. package/dist/docs/docs.js +16 -6
  57. package/dist/docs/docs.js.map +1 -1
  58. package/dist/events/events.d.ts.map +1 -1
  59. package/dist/events/events.js +12 -6
  60. package/dist/events/events.js.map +1 -1
  61. package/dist/federation/activityDedup.d.ts +14 -0
  62. package/dist/federation/activityDedup.d.ts.map +1 -0
  63. package/dist/federation/activityDedup.js +34 -0
  64. package/dist/federation/activityDedup.js.map +1 -0
  65. package/dist/federation/assertPublicHost.d.ts +14 -0
  66. package/dist/federation/assertPublicHost.d.ts.map +1 -0
  67. package/dist/federation/assertPublicHost.js +62 -0
  68. package/dist/federation/assertPublicHost.js.map +1 -0
  69. package/dist/federation/delivery.d.ts.map +1 -1
  70. package/dist/federation/delivery.js +37 -51
  71. package/dist/federation/delivery.js.map +1 -1
  72. package/dist/federation/federation.d.ts.map +1 -1
  73. package/dist/federation/federation.js +11 -7
  74. package/dist/federation/federation.js.map +1 -1
  75. package/dist/federation/hubMirroring.d.ts.map +1 -1
  76. package/dist/federation/hubMirroring.js +85 -66
  77. package/dist/federation/hubMirroring.js.map +1 -1
  78. package/dist/federation/inboxHandlers.d.ts.map +1 -1
  79. package/dist/federation/inboxHandlers.js +84 -73
  80. package/dist/federation/inboxHandlers.js.map +1 -1
  81. package/dist/federation/inboxParsing.d.ts +28 -0
  82. package/dist/federation/inboxParsing.d.ts.map +1 -0
  83. package/dist/federation/inboxParsing.js +71 -0
  84. package/dist/federation/inboxParsing.js.map +1 -0
  85. package/dist/federation/index.d.ts +2 -0
  86. package/dist/federation/index.d.ts.map +1 -1
  87. package/dist/federation/index.js +2 -0
  88. package/dist/federation/index.js.map +1 -1
  89. package/dist/federation/mastodonLogin.d.ts.map +1 -1
  90. package/dist/federation/mastodonLogin.js +19 -0
  91. package/dist/federation/mastodonLogin.js.map +1 -1
  92. package/dist/federation/outboxQueries.js +1 -1
  93. package/dist/federation/outboxQueries.js.map +1 -1
  94. package/dist/federation/timeline.d.ts +11 -0
  95. package/dist/federation/timeline.d.ts.map +1 -1
  96. package/dist/federation/timeline.js +101 -69
  97. package/dist/federation/timeline.js.map +1 -1
  98. package/dist/hub/hub.d.ts.map +1 -1
  99. package/dist/hub/hub.js +41 -3
  100. package/dist/hub/hub.js.map +1 -1
  101. package/dist/hub/index.d.ts +1 -1
  102. package/dist/hub/index.d.ts.map +1 -1
  103. package/dist/hub/index.js +1 -1
  104. package/dist/hub/index.js.map +1 -1
  105. package/dist/hub/members.d.ts +19 -0
  106. package/dist/hub/members.d.ts.map +1 -1
  107. package/dist/hub/members.js +158 -13
  108. package/dist/hub/members.js.map +1 -1
  109. package/dist/hub/moderation.d.ts +1 -1
  110. package/dist/hub/moderation.d.ts.map +1 -1
  111. package/dist/hub/moderation.js +25 -11
  112. package/dist/hub/moderation.js.map +1 -1
  113. package/dist/hub/posts.d.ts.map +1 -1
  114. package/dist/hub/posts.js +18 -10
  115. package/dist/hub/posts.js.map +1 -1
  116. package/dist/hub/resources.js +2 -2
  117. package/dist/hub/resources.js.map +1 -1
  118. package/dist/identity/mastodonFactory.d.ts.map +1 -1
  119. package/dist/identity/mastodonFactory.js +7 -0
  120. package/dist/identity/mastodonFactory.js.map +1 -1
  121. package/dist/index.d.ts +7 -7
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +5 -5
  124. package/dist/index.js.map +1 -1
  125. package/dist/learning/learning.d.ts.map +1 -1
  126. package/dist/learning/learning.js +42 -22
  127. package/dist/learning/learning.js.map +1 -1
  128. package/dist/messaging/messaging.d.ts.map +1 -1
  129. package/dist/messaging/messaging.js +3 -3
  130. package/dist/messaging/messaging.js.map +1 -1
  131. package/dist/notification/notification.d.ts.map +1 -1
  132. package/dist/notification/notification.js +4 -2
  133. package/dist/notification/notification.js.map +1 -1
  134. package/dist/product/product.d.ts.map +1 -1
  135. package/dist/product/product.js +75 -37
  136. package/dist/product/product.js.map +1 -1
  137. package/dist/profile/index.d.ts +2 -1
  138. package/dist/profile/index.d.ts.map +1 -1
  139. package/dist/profile/index.js +1 -1
  140. package/dist/profile/index.js.map +1 -1
  141. package/dist/profile/profile.d.ts +24 -2
  142. package/dist/profile/profile.d.ts.map +1 -1
  143. package/dist/profile/profile.js +34 -8
  144. package/dist/profile/profile.js.map +1 -1
  145. package/dist/query.d.ts +18 -2
  146. package/dist/query.d.ts.map +1 -1
  147. package/dist/query.js +24 -6
  148. package/dist/query.js.map +1 -1
  149. package/dist/rbac/seed.d.ts +1 -1
  150. package/dist/rbac/seed.d.ts.map +1 -1
  151. package/dist/rbac/seed.js +1 -0
  152. package/dist/rbac/seed.js.map +1 -1
  153. package/dist/search/contentSearch.d.ts +1 -1
  154. package/dist/search/contentSearch.d.ts.map +1 -1
  155. package/dist/search/contentSearch.js +22 -12
  156. package/dist/search/contentSearch.js.map +1 -1
  157. package/dist/social/social.d.ts +4 -2
  158. package/dist/social/social.d.ts.map +1 -1
  159. package/dist/social/social.js +25 -8
  160. package/dist/social/social.js.map +1 -1
  161. package/dist/types.d.ts +3 -0
  162. package/dist/types.d.ts.map +1 -1
  163. package/dist/video/video.d.ts +3 -0
  164. package/dist/video/video.d.ts.map +1 -1
  165. package/dist/video/video.js +17 -13
  166. package/dist/video/video.js.map +1 -1
  167. package/dist/voting/voting.d.ts.map +1 -1
  168. package/dist/voting/voting.js +39 -1
  169. package/dist/voting/voting.js.map +1 -1
  170. package/package.json +9 -7
@@ -12,6 +12,7 @@ import { matchMirrorForContent } from './mirroring.js';
12
12
  import { handleHubFollow, handleHubUnfollow } from './hubFederation.js';
13
13
  import { createNotification } from '../notification/notification.js';
14
14
  import { isPrivateUrl, safeFetch } from '../import/ssrf.js';
15
+ import { UUID_RE, isLocalHost, lastPathSegment, matchHubPostUri, findAnnouncedObjectUri, } from './inboxParsing.js';
15
16
  /** Resolve a remote actor's display name from cache, falling back to URI username segment */
16
17
  async function resolveRemoteActorName(db, actorUri) {
17
18
  try {
@@ -27,12 +28,18 @@ async function resolveRemoteActorName(db, actorUri) {
27
28
  }
28
29
  catch { /* fallback */ }
29
30
  // Fallback: extract username from URI
30
- try {
31
- return new URL(actorUri).pathname.split('/').filter(Boolean).pop() ?? 'Someone';
32
- }
33
- catch {
34
- return 'Someone';
35
- }
31
+ return lastPathSegment(actorUri) ?? 'Someone';
32
+ }
33
+ /**
34
+ * Parse an untrusted ActivityPub date string into a Date, or null if it isn't a valid
35
+ * date. Guards against `new Date('garbage')` → Invalid Date → Postgres timestamp-bind
36
+ * crash, which on the public inbox was an unauthenticated 500 (audit session 203).
37
+ */
38
+ function parseApDate(value) {
39
+ if (typeof value !== 'string')
40
+ return null;
41
+ const d = new Date(value);
42
+ return Number.isNaN(d.getTime()) ? null : d;
36
43
  }
37
44
  /**
38
45
  * Parse a local content URI into its components.
@@ -278,13 +285,28 @@ export function createInboxHandlers(opts) {
278
285
  const url = new URL(objectId).pathname;
279
286
  const segments = url.split('/').filter(Boolean);
280
287
  // Try hub post by Note URI pattern (/hubs/{slug}/posts/{postId})
281
- if (segments.length >= 4 && segments[0] === 'hubs' && segments[2] === 'posts') {
282
- const postId = segments[3];
283
- const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
284
- if (UUID_RE.test(postId)) {
285
- await db.update(hubPosts).set({ likeCount: sql `GREATEST(${hubPosts.likeCount} - 1, 0)` })
286
- .where(eq(hubPosts.id, postId));
287
- unliked = true;
288
+ const hubPost = matchHubPostUri(objectId);
289
+ if (hubPost) {
290
+ await db.update(hubPosts).set({
291
+ likeCount: sql `GREATEST(${hubPosts.likeCount} - 1, 0)`,
292
+ remoteLikeCount: sql `GREATEST(${hubPosts.remoteLikeCount} - 1, 0)`,
293
+ }).where(eq(hubPosts.id, hubPost.postId));
294
+ unliked = true;
295
+ }
296
+ // UUID-form local content (mirrors onLike's by-id branch): an Undo whose
297
+ // object URI ends in the content UUID must decrement by id. Without this the
298
+ // slug-only lookup below never matches a uuid URI, permanently inflating
299
+ // like_count + remote_like_count (audit session 204).
300
+ if (!unliked) {
301
+ const isLocalUri = isLocalHost(objectId, domain);
302
+ const lastSeg = segments[segments.length - 1];
303
+ if (isLocalUri && lastSeg && UUID_RE.test(lastSeg)) {
304
+ const upd = await db.update(contentItems).set({
305
+ likeCount: sql `GREATEST(${contentItems.likeCount} - 1, 0)`,
306
+ remoteLikeCount: sql `GREATEST(${contentItems.remoteLikeCount} - 1, 0)`,
307
+ }).where(eq(contentItems.id, lastSeg)).returning({ id: contentItems.id });
308
+ if (upd.length > 0)
309
+ unliked = true;
288
310
  }
289
311
  }
290
312
  if (!unliked && segments.length >= 2) {
@@ -294,25 +316,26 @@ export function createInboxHandlers(opts) {
294
316
  if (content) {
295
317
  await db
296
318
  .update(contentItems)
297
- .set({ likeCount: sql `GREATEST(${contentItems.likeCount} - 1, 0)` })
319
+ .set({
320
+ likeCount: sql `GREATEST(${contentItems.likeCount} - 1, 0)`,
321
+ remoteLikeCount: sql `GREATEST(${contentItems.remoteLikeCount} - 1, 0)`,
322
+ })
298
323
  .where(eq(contentItems.id, content.id));
299
324
  unliked = true;
300
325
  }
301
326
  }
302
327
  // Try matching an outbound Announce activity (someone unliked the Announce itself)
303
328
  if (!unliked) {
304
- const [announceActivity] = await db
305
- .select({ objectUri: activities.objectUri })
306
- .from(activities)
307
- .where(and(eq(activities.type, 'Announce'), eq(activities.direction, 'outbound'), sql `${activities.payload}->>'id' = ${objectId}`))
308
- .limit(1);
309
- if (announceActivity?.objectUri) {
329
+ const announcedUri = await findAnnouncedObjectUri(db, objectId);
330
+ if (announcedUri) {
310
331
  try {
311
- const noteSegments = new URL(announceActivity.objectUri).pathname.split('/').filter(Boolean);
332
+ const noteSegments = new URL(announcedUri).pathname.split('/').filter(Boolean);
312
333
  if (noteSegments.length >= 4 && noteSegments[0] === 'hubs' && noteSegments[2] === 'posts') {
313
334
  const announcePostId = noteSegments[3];
314
- await db.update(hubPosts).set({ likeCount: sql `GREATEST(${hubPosts.likeCount} - 1, 0)` })
315
- .where(eq(hubPosts.id, announcePostId));
335
+ await db.update(hubPosts).set({
336
+ likeCount: sql `GREATEST(${hubPosts.likeCount} - 1, 0)`,
337
+ remoteLikeCount: sql `GREATEST(${hubPosts.remoteLikeCount} - 1, 0)`,
338
+ }).where(eq(hubPosts.id, announcePostId));
316
339
  unliked = true;
317
340
  }
318
341
  }
@@ -326,6 +349,10 @@ export function createInboxHandlers(opts) {
326
349
  .set({ localLikeCount: sql `GREATEST(${federatedContent.localLikeCount} - 1, 0)` })
327
350
  .where(eq(federatedContent.objectUri, objectId));
328
351
  }
352
+ // Delete the original inbound Like activity so a later re-Like is processed.
353
+ // onLike's idempotency guard keys on this row; leaving it made re-Like a
354
+ // silent no-op (audit session 204).
355
+ await db.delete(activities).where(and(eq(activities.type, 'Like'), eq(activities.actorUri, actorUri), eq(activities.objectUri, objectId), eq(activities.direction, 'inbound')));
329
356
  }
330
357
  catch {
331
358
  // Invalid URL — skip decrement
@@ -627,7 +654,7 @@ export function createInboxHandlers(opts) {
627
654
  cpubMetadata,
628
655
  cpubBlocks,
629
656
  mirrorId,
630
- publishedAt: typeof object.published === 'string' ? new Date(object.published) : null,
657
+ publishedAt: parseApDate(object.published),
631
658
  })
632
659
  .onConflictDoUpdate({
633
660
  target: federatedContent.objectUri,
@@ -659,7 +686,6 @@ export function createInboxHandlers(opts) {
659
686
  if (parentSegments.length >= 4 && parentSegments[0] === 'hubs' && parentSegments[2] === 'posts') {
660
687
  const hubSlug = parentSegments[1];
661
688
  const postId = parentSegments[3];
662
- const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
663
689
  if (UUID_RE.test(postId)) {
664
690
  // Resolve remote actor name for display
665
691
  const remoteUser = await resolveRemoteActorName(db, actorUri);
@@ -950,14 +976,7 @@ export function createInboxHandlers(opts) {
950
976
  // First check if the objectUri belongs to our domain (local content).
951
977
  // Then try slug/UUID match. If neither, it's federated content.
952
978
  let matched = false;
953
- let isLocalUri = false;
954
- try {
955
- const parsedUri = new URL(objectUri);
956
- isLocalUri = parsedUri.hostname === domain;
957
- }
958
- catch {
959
- // Invalid URI — skip
960
- }
979
+ const isLocalUri = isLocalHost(objectUri, domain);
961
980
  if (isLocalUri) {
962
981
  // Extract slug or UUID from the URI path
963
982
  try {
@@ -965,14 +984,15 @@ export function createInboxHandlers(opts) {
965
984
  const idOrSlug = segments[segments.length - 1];
966
985
  if (idOrSlug) {
967
986
  // Try UUID first (more specific)
968
- const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
969
987
  if (UUID_RE.test(idOrSlug)) {
970
988
  const byId = await db.select({ id: contentItems.id, authorId: contentItems.authorId, title: contentItems.title, type: contentItems.type, slug: contentItems.slug, authorUsername: users.username })
971
989
  .from(contentItems).innerJoin(users, eq(contentItems.authorId, users.id))
972
990
  .where(eq(contentItems.id, idOrSlug)).limit(1);
973
991
  if (byId.length > 0) {
974
- await db.update(contentItems).set({ likeCount: sql `${contentItems.likeCount} + 1` })
975
- .where(eq(contentItems.id, byId[0].id));
992
+ await db.update(contentItems).set({
993
+ likeCount: sql `${contentItems.likeCount} + 1`,
994
+ remoteLikeCount: sql `${contentItems.remoteLikeCount} + 1`,
995
+ }).where(eq(contentItems.id, byId[0].id));
976
996
  matched = true;
977
997
  // Notify content author
978
998
  const remoteUser = await resolveRemoteActorName(db, actorUri);
@@ -985,8 +1005,10 @@ export function createInboxHandlers(opts) {
985
1005
  if (parsed) {
986
1006
  const content = await lookupContentByUri(db, parsed);
987
1007
  if (content) {
988
- await db.update(contentItems).set({ likeCount: sql `${contentItems.likeCount} + 1` })
989
- .where(eq(contentItems.id, content.id));
1008
+ await db.update(contentItems).set({
1009
+ likeCount: sql `${contentItems.likeCount} + 1`,
1010
+ remoteLikeCount: sql `${contentItems.remoteLikeCount} + 1`,
1011
+ }).where(eq(contentItems.id, content.id));
990
1012
  matched = true;
991
1013
  const remoteUser = await resolveRemoteActorName(db, actorUri);
992
1014
  await notifyRemoteInteraction(db, content.authorId, 'like', actorUri, 'New like', `${remoteUser} from the fediverse liked "${content.title ?? 'your content'}"`, buildContentPath(content.authorUsername, content.type, content.slug));
@@ -999,45 +1021,38 @@ export function createInboxHandlers(opts) {
999
1021
  }
1000
1022
  // If not local content, try hub post by Note URI pattern (/hubs/{slug}/posts/{postId})
1001
1023
  if (!matched && isLocalUri) {
1002
- try {
1003
- const segments = new URL(objectUri).pathname.split('/').filter(Boolean);
1004
- // Match /hubs/{slug}/posts/{postId}
1005
- if (segments.length >= 4 && segments[0] === 'hubs' && segments[2] === 'posts') {
1006
- const postId = segments[3];
1007
- const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
1008
- if (UUID_RE.test(postId)) {
1009
- const [post] = await db.select({ id: hubPosts.id, authorId: hubPosts.authorId }).from(hubPosts)
1010
- .where(eq(hubPosts.id, postId)).limit(1);
1011
- if (post) {
1012
- await db.update(hubPosts).set({ likeCount: sql `${hubPosts.likeCount} + 1` })
1013
- .where(eq(hubPosts.id, post.id));
1014
- matched = true;
1015
- // Notify hub post author (skip for federated posts with no local author)
1016
- if (post.authorId) {
1017
- const remoteUser = await resolveRemoteActorName(db, actorUri);
1018
- await notifyRemoteInteraction(db, post.authorId, 'like', actorUri, 'New like', `${remoteUser} from the fediverse liked your hub post`, `/hubs/${segments[1]}/posts/${postId}`);
1019
- }
1020
- }
1024
+ const hubPost = matchHubPostUri(objectUri);
1025
+ if (hubPost) {
1026
+ const { slug: hubSlug, postId } = hubPost;
1027
+ const [post] = await db.select({ id: hubPosts.id, authorId: hubPosts.authorId }).from(hubPosts)
1028
+ .where(eq(hubPosts.id, postId)).limit(1);
1029
+ if (post) {
1030
+ await db.update(hubPosts).set({
1031
+ likeCount: sql `${hubPosts.likeCount} + 1`,
1032
+ remoteLikeCount: sql `${hubPosts.remoteLikeCount} + 1`,
1033
+ }).where(eq(hubPosts.id, post.id));
1034
+ matched = true;
1035
+ // Notify hub post author (skip for federated posts with no local author)
1036
+ if (post.authorId) {
1037
+ const remoteUser = await resolveRemoteActorName(db, actorUri);
1038
+ await notifyRemoteInteraction(db, post.authorId, 'like', actorUri, 'New like', `${remoteUser} from the fediverse liked your hub post`, `/hubs/${hubSlug}/posts/${postId}`);
1021
1039
  }
1022
1040
  }
1023
1041
  }
1024
- catch { /* invalid URL */ }
1025
1042
  }
1026
1043
  // Try matching an outbound Announce activity (someone liked the Announce itself)
1027
1044
  if (!matched) {
1028
- const [announceActivity] = await db
1029
- .select({ objectUri: activities.objectUri })
1030
- .from(activities)
1031
- .where(and(eq(activities.type, 'Announce'), eq(activities.direction, 'outbound'), sql `${activities.payload}->>'id' = ${objectUri}`))
1032
- .limit(1);
1033
- if (announceActivity?.objectUri) {
1045
+ const announcedUri = await findAnnouncedObjectUri(db, objectUri);
1046
+ if (announcedUri) {
1034
1047
  // The Announce wraps a Note — try to find the hub post from the Note URI
1035
1048
  try {
1036
- const noteSegments = new URL(announceActivity.objectUri).pathname.split('/').filter(Boolean);
1049
+ const noteSegments = new URL(announcedUri).pathname.split('/').filter(Boolean);
1037
1050
  if (noteSegments.length >= 4 && noteSegments[0] === 'hubs' && noteSegments[2] === 'posts') {
1038
1051
  const postId = noteSegments[3];
1039
- await db.update(hubPosts).set({ likeCount: sql `${hubPosts.likeCount} + 1` })
1040
- .where(eq(hubPosts.id, postId));
1052
+ await db.update(hubPosts).set({
1053
+ likeCount: sql `${hubPosts.likeCount} + 1`,
1054
+ remoteLikeCount: sql `${hubPosts.remoteLikeCount} + 1`,
1055
+ }).where(eq(hubPosts.id, postId));
1041
1056
  matched = true;
1042
1057
  }
1043
1058
  }
@@ -1086,11 +1101,7 @@ export function createInboxHandlers(opts) {
1086
1101
  return;
1087
1102
  // Check if the boosted object is local content
1088
1103
  let matched = false;
1089
- let isLocalUri = false;
1090
- try {
1091
- isLocalUri = new URL(objectUri).hostname === domain;
1092
- }
1093
- catch { /* invalid URL */ }
1104
+ const isLocalUri = isLocalHost(objectUri, domain);
1094
1105
  if (isLocalUri) {
1095
1106
  try {
1096
1107
  const parsed = parseLocalContentUri(objectUri);
@@ -1211,7 +1222,7 @@ export function createInboxHandlers(opts) {
1211
1222
  actorUri: noteActorUri,
1212
1223
  content: noteContent,
1213
1224
  postType: note['cpub:postType'] ?? (sharedContentMeta ? 'share' : 'text'),
1214
- publishedAt: note.published ? new Date(note.published) : undefined,
1225
+ publishedAt: parseApDate(note.published) ?? undefined,
1215
1226
  sharedContentMeta,
1216
1227
  });
1217
1228
  }
@@ -1 +1 @@
1
- {"version":3,"file":"inboxHandlers.js","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inboxHandlers.js","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,cAAc,EACd,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,YAAY,GAEb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,OAAO,EACP,WAAW,EACX,eAAe,EACf,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,6FAA6F;AAC7F,KAAK,UAAU,sBAAsB,CAAC,EAAM,EAAE,QAAgB;IAC5D,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE;aACrB,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,EAAE,CAAC;aACpG,IAAI,CAAC,YAAY,CAAC;aAClB,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;aAC1C,KAAK,CAAC,CAAC,CAAC,CAAC;QACZ,IAAI,KAAK,EAAE,WAAW;YAAE,OAAO,KAAK,CAAC,WAAW,CAAC;QACjD,IAAI,KAAK,EAAE,iBAAiB;YAAE,OAAO,KAAK,CAAC,iBAAiB,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAC1B,sCAAsC;IACtC,OAAO,eAAe,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClE,0CAA0C;QAC1C,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAChD,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAE,EAAE,CAAC;QAC1E,CAAC;QACD,iCAAiC;QACjC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YACtD,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAE,EAAE,CAAC;QAChC,CAAC;QACD,+DAA+D;QAC/D,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,+FAA+F;AAC/F,KAAK,UAAU,kBAAkB,CAC/B,EAAM,EACN,MAA0D;IAE1D,MAAM,UAAU,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IACxF,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAoD,CAAC,CAAC,CAAC;IACtG,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;SACnB,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;SAC7K,IAAI,CAAC,YAAY,CAAC;SAClB,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SACrD,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;SACzB,KAAK,CAAC,CAAC,CAAC,CAAC;IACZ,OAAO,GAAG,IAAI,IAAI,CAAC;AACrB,CAAC;AAED,qFAAqF;AACrF,KAAK,UAAU,uBAAuB,CACpC,EAAM,EACN,WAAmB,EACnB,IAA+C,EAC/C,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,IAAa;IAEb,IAAI,CAAC;QACH,MAAM,kBAAkB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;IAAC,MAAM,CAAC,CAAC,2CAA2C,CAAC,CAAC;AACzD,CAAC;AAkBD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAyB;IAC3D,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAEtD,MAAM,QAAQ,GAAmB;QAC/B;;;WAGG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,cAAsB,EAAE,UAAkB;YACzE,kEAAkE;YAClE,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAEvC,iFAAiF;YACjF,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;gBACjF,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE,QAAQ;oBACd,QAAQ;oBACR,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,UAAU,EAAE;oBACpF,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,oEAAoE;YACpE,MAAM,EAAE;iBACL,MAAM,CAAC,mBAAmB,CAAC;iBAC3B,MAAM,CAAC;gBACN,gBAAgB,EAAE,QAAQ;gBAC1B,iBAAiB,EAAE,cAAc;gBACjC,WAAW,EAAE,UAAU;gBACvB,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;aACnD,CAAC;iBACD,kBAAkB,CAAC;gBAClB,MAAM,EAAE,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,iBAAiB,CAAC;gBACrF,GAAG,EAAE;oBACH,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;oBAClD,WAAW,EAAE,UAAU;oBACvB,SAAS,EAAE,IAAI,IAAI,EAAE;iBACtB;aACF,CAAC,CAAC;YAEL,uBAAuB;YACvB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,UAAU,EAAE;gBACpF,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,8CAA8C;YAC9C,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;gBAC/E,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,cAAc;oBACxB,SAAS,EAAE,QAAQ;oBACnB,OAAO,EAAE,cAAc;oBACvB,SAAS,EAAE,UAAU;oBACrB,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAC;YACL,CAAC;YAED,+CAA+C;YAC/C,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnF,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;gBAC5C,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACrH,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;wBAC7D,MAAM,uBAAuB,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAChE,cAAc,EAAE,GAAG,SAAS,2CAA2C,EACvE,gBAAgB,CAAC,CAAC;oBACtB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAChC,CAAC;QAED;;WAEG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,QAAgB;YAC/C,iEAAiE;YACjE,6EAA6E;YAC7E,MAAM,UAAU,GAAG;gBACjB,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,QAAQ,CAAC;gBACnD,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC;aAC1C,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,EAAE;iBACrB,MAAM,EAAE;iBACR,IAAI,CAAC,mBAAmB,CAAC;iBACzB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,KAAK,CAAC,CAAC,CAAC,CAAC;YAEZ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,EAAE;qBACL,MAAM,CAAC,mBAAmB,CAAC;qBAC3B,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;qBAClD,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAErD,sFAAsF;gBACtF,IAAI,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,CAAC;oBAClD,IAAI,CAAC;wBACH,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;wBAClE,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;wBACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC;wBAC5F,IAAI,MAAM,EAAE,CAAC;4BACX,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;4BAC7D,sDAAsD;4BACtD,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,KAAK,CACnF,CAAC,GAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAChH,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,8EAA8E;YAC9E,IAAI,CAAC;gBACH,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,MAAM,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC,CAAC,4CAA4C,CAAC,CAAC;YAExD,yFAAyF;YACzF,6FAA6F;YAC7F,8FAA8F;YAC9F,IAAI,CAAC;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,EAAE;yBACL,MAAM,CAAC,cAAc,CAAC;yBACtB,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;yBACzE,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,EACxC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,EACpC,EAAE,CAAC,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAC7C,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC5C,CACF,CAAC;gBACN,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAE9B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;WAEG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,QAAgB;YAC/C,MAAM,UAAU,GAAG;gBACjB,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,QAAQ,CAAC;gBACnD,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC;aAC1C,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,EAAE;iBACrB,MAAM,EAAE;iBACR,IAAI,CAAC,mBAAmB,CAAC;iBACzB,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;iBACzB,KAAK,CAAC,CAAC,CAAC,CAAC;YAEZ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,EAAE;qBACL,MAAM,CAAC,mBAAmB,CAAC;qBAC3B,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;qBAClD,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;YAED,yFAAyF;YACzF,mFAAmF;YACnF,IAAI,CAAC;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,EAAE;yBACL,MAAM,CAAC,cAAc,CAAC;yBACtB,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;yBACzE,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,EACxC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,EACpC,EAAE,CAAC,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAC7C,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAC5C,CACF,CAAC;gBACN,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAE9B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;WAEG;QACH,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,UAAkB,EAAE,QAAgB;YACjE,IAAI,UAAU,KAAK,MAAM,IAAI,QAAQ,EAAE,CAAC;gBACtC,uEAAuE;gBACvE,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;oBACvC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAEhD,iEAAiE;oBACjE,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;oBAC1C,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;4BAC5B,SAAS,EAAE,GAAG,CAAA,YAAY,QAAQ,CAAC,SAAS,UAAU;4BACtD,eAAe,EAAE,GAAG,CAAA,YAAY,QAAQ,CAAC,eAAe,UAAU;yBACnE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC1C,OAAO,GAAG,IAAI,CAAC;oBACjB,CAAC;oBAED,yEAAyE;oBACzE,6EAA6E;oBAC7E,yEAAyE;oBACzE,sDAAsD;oBACtD,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;wBACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC9C,IAAI,UAAU,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;4BACnD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC;gCAC5C,SAAS,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,SAAS,UAAU;gCAC1D,eAAe,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,eAAe,UAAU;6BACvE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC1E,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;gCAAE,OAAO,GAAG,IAAI,CAAC;wBACrC,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;wBACrC,0FAA0F;wBAC1F,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;wBAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBACrE,IAAI,OAAO,EAAE,CAAC;4BACZ,MAAM,EAAE;iCACL,MAAM,CAAC,YAAY,CAAC;iCACpB,GAAG,CAAC;gCACH,SAAS,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,SAAS,UAAU;gCAC1D,eAAe,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,eAAe,UAAU;6BACvE,CAAC;iCACD,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;4BAC1C,OAAO,GAAG,IAAI,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAED,mFAAmF;oBACnF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;wBAChE,IAAI,YAAY,EAAE,CAAC;4BACjB,IAAI,CAAC;gCACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gCAC/E,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;oCAC1F,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;oCACxC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;wCAC5B,SAAS,EAAE,GAAG,CAAA,YAAY,QAAQ,CAAC,SAAS,UAAU;wCACtD,eAAe,EAAE,GAAG,CAAA,YAAY,QAAQ,CAAC,eAAe,UAAU;qCACnE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;oCAC1C,OAAO,GAAG,IAAI,CAAC;gCACjB,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,qCAAqC;wBACrC,MAAM,EAAE;6BACL,MAAM,CAAC,gBAAgB,CAAC;6BACxB,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAA,YAAY,gBAAgB,CAAC,cAAc,UAAU,EAAE,CAAC;6BACjF,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;oBACrD,CAAC;oBAED,6EAA6E;oBAC7E,yEAAyE;oBACzE,oCAAoC;oBACpC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,CACnC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EAC3B,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACjC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,EAClC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CACpC,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC;oBACP,+BAA+B;gBACjC,CAAC;YACH,CAAC;iBAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACnC,wDAAwD;gBACxD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,uDAAuD;oBACvD,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,UAAU,GAAG,MAAM,EAAE;6BACxB,MAAM,CAAC,EAAE,EAAE,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC;6BACtC,IAAI,CAAC,mBAAmB,CAAC;6BACzB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAClD,EAAE,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAC9C,CACF;6BACA,KAAK,CAAC,CAAC,CAAC,CAAC;wBAEZ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC1B,MAAM,EAAE;iCACL,MAAM,CAAC,mBAAmB,CAAC;iCAC3B,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;4BACxD,OAAO,GAAG,IAAI,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,CAAC,IAAI,CAAC,6BAA6B,QAAQ,0CAA0C,QAAQ,sDAAsD,CAAC,CAAC;oBAC9J,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,MAAM;gBACZ,QAAQ;gBACR,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;gBAChE,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,MAA+B;YAC9D,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAE7D,MAAM,SAAS,GAAG,MAAM,CAAC,EAAwB,CAAC;YAClD,MAAM,UAAU,GAAI,MAAM,CAAC,IAAe,IAAI,SAAS,CAAC;YAExD,+EAA+E;YAC/E,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAa,CAAC;YAC9C,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAa,CAAC;YAC9C,MAAM,SAAS,GAAG,8CAA8C,CAAC;YACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC5E,MAAM,aAAa,GAAG,UAAU,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;YAE/E,IAAI,aAAa,EAAE,CAAC;gBAClB,2EAA2E;gBAC3E,MAAM,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;gBAC5F,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAEhE,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE,CAAC;oBACnC,gCAAgC;oBAChC,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;wBAC3C,IAAI,YAAY,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;4BACrC,MAAM,iBAAiB,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;4BACjF,IAAI,iBAAiB,EAAE,CAAC;gCACtB,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,EAAE;qCACzB,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;qCAC7B,IAAI,CAAC,UAAU,CAAC;qCAChB,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;qCACjD,KAAK,CAAC,CAAC,CAAC,CAAC;gCAEZ,IAAI,SAAS,EAAE,CAAC;oCACd,iEAAiE;oCACjE,gEAAgE;oCAChE,IAAI,CAAC;wCACH,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;wCAChE,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wCACvF,IAAI,OAAO,EAAE,CAAC;4CACZ,kDAAkD;4CAClD,IAAI,WAAW,GAAG,QAAQ,CAAC;4CAC3B,IAAI,CAAC;gDACH,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,EAAE,CAAC;qDAChI,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gDAC1E,IAAI,WAAW;oDAAE,WAAW,GAAG,WAAW,CAAC,WAAW,IAAI,WAAW,CAAC,iBAAiB,IAAI,QAAQ,CAAC;4CACtG,CAAC;4CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;4CAClC,MAAM,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,WAAW,MAAM,OAAO,EAAE,CAAC,CAAC;wCAC/E,CAAC;oCACH,CAAC;oCAAC,MAAM,CAAC;wCACP,oDAAoD;oCACtD,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,qBAAqB;oBACvB,CAAC;gBACH,CAAC;gBAED,mBAAmB;gBACnB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE,QAAQ;oBACd,QAAQ;oBACR,SAAS,EAAE,SAAS,IAAI,IAAI;oBAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;oBACpD,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,kEAAkE;YAClE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;oBAC/C,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;wBAC1B,qDAAqD;wBACrD,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;4BACjC,IAAI,EAAE,QAAQ;4BACd,QAAQ;4BACR,SAAS;4BACT,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;4BACpD,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,WAAW;yBACpB,CAAC,CAAC;wBACH,OAAO;oBACT,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,8CAA8C;gBAChD,CAAC;YACH,CAAC;YAED,oDAAoD;YACpD,IAAI,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC7C,MAAM,SAAS,GAAG,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBAEjF,gEAAgE;gBAChE,kFAAkF;gBAClF,0CAA0C;gBAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC;wBACH,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;wBAC/F,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;6BAChE,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAE/D,IAAI,GAAG,EAAE,CAAC;4BACR,mDAAmD;4BACnD,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC;iCAC7D,IAAI,CAAC,iBAAiB,CAAC;iCACvB,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,EACnC,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAChD,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CACzC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BAEd,IAAI,QAAQ,EAAE,CAAC;gCACb,8DAA8D;gCAC9D,IAAI,WAAW,GAAG,KAAK,CAAC;gCACxB,IAAI,SAAS,EAAE,CAAC;oCACd,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;yCAClE,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,EAC7B,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACjC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,EACnC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CACpC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oCACd,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC;gCACtB,CAAC;gCAED,IAAI,CAAC,WAAW,EAAE,CAAC;oCACjB,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC1F,IAAI,UAAU,EAAE,CAAC;wCACf,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;wCAC9D,MAAM,WAAW,GAAG,OAAQ,MAAkC,CAAC,eAAe,CAAC,KAAK,QAAQ;4CAC1F,CAAC,CAAE,MAAkC,CAAC,eAAe,CAAW,CAAC,CAAC,CAAC,MAAM,CAAC;wCAC5E,6EAA6E;wCAC7E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;wCAC1H,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;wCAE9E,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;4CAClD,KAAK,EAAE,GAAG,CAAC,EAAE;4CACb,QAAQ,EAAE,IAAI;4CACd,IAAI,EAAE,YAA0F;4CAChG,OAAO,EAAE,UAAU;4CACnB,cAAc,EAAE,QAAQ;4CACxB,eAAe,EAAE,UAAU;yCAC5B,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;wCAEjE,uBAAuB;wCACvB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;6CACvB,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,CAAA,GAAG,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC;6CACnD,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;wCAEnC,6DAA6D;wCAC7D,IAAI,QAAQ,EAAE,CAAC;4CACb,IAAI,CAAC;gDACH,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;gDACrE,MAAM,qBAAqB,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,UAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;4CACzI,CAAC;4CAAC,OAAO,QAAQ,EAAE,CAAC;gDAClB,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;4CACrG,CAAC;wCACH,CAAC;oCACH,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,IAAI,CAAC,0CAA0C,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACrG,CAAC;oBAED,wDAAwD;oBACxD,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;wBACjC,IAAI,EAAE,QAAQ;wBACd,QAAQ;wBACR,SAAS,EAAE,SAAS,IAAI,IAAI;wBAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;wBACpD,SAAS,EAAE,SAAS;wBACpB,MAAM,EAAE,WAAW;qBACpB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;YACH,CAAC;YAED,yDAAyD;YACzD,IAAI,YAAoB,CAAC;YACzB,IAAI,CAAC;gBACH,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,IAAI,QAAQ,CAAC,CAAC,QAAQ,CAAC;YACzD,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,GAAG,SAAS,CAAC;YAC3B,CAAC;YAED,+CAA+C;YAC/C,IAAI,aAAa,GAAkB,IAAI,CAAC;YACxC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,IAAI,GAAG,MAAM,EAAE;qBAClB,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;qBAC/B,IAAI,CAAC,YAAY,CAAC;qBAClB,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;qBAC1C,KAAK,CAAC,CAAC,CAAC,CAAC;gBACZ,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;YACtC,CAAC;YAED,6BAA6B;YAC7B,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YAElD,eAAe;YACf,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,OAAO;iBACjB,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;iBAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAEnF,sBAAsB;YACtB,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,MAAM,WAAW,GAAG,cAAc;iBAC/B,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;iBAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAE7H,+CAA+C;YAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,GAAG;mBAC9D,CAAC,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAE,MAAM,CAAC,KAAgC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAE5H,iCAAiC;YACjC,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACzF,MAAM,QAAQ,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,yBAAyB;YAC5F,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC;YACrD,kFAAkF;YAClF,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEvF,wDAAwD;YACxD,gEAAgE;YAChE,IAAI,YAAgC,CAAC;YACrC,IAAI,CAAC;gBAAC,YAAY,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YAEzG,uEAAuE;YACvE,0FAA0F;YAC1F,uEAAuE;YACvE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;oBACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC3C,qFAAqF;oBACrF,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBACxD,MAAM,UAAU,GAAG,GAAG,SAAS,CAAC,MAAM,YAAY,IAAI,EAAE,CAAC;wBACzD,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE;6BACxB,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC;6BAC1E,IAAI,CAAC,gBAAgB,CAAC;6BACtB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACvC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAC3C,CACF;6BACA,KAAK,CAAC,CAAC,CAAC,CAAC;wBACZ,IAAI,QAAQ,EAAE,CAAC;4BACb,0EAA0E;4BAC1E,MAAM,EAAE;iCACL,MAAM,CAAC,gBAAgB,CAAC;iCACxB,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;iCACzC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;wBACjD,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,6BAA6B,CAAC,CAAC;gBAEzC,MAAM,EAAE;qBACL,MAAM,CAAC,gBAAgB,CAAC;qBACxB,MAAM,CAAC;oBACN,SAAS;oBACT,QAAQ;oBACR,aAAa;oBACb,YAAY;oBACZ,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC3D,OAAO,EAAE,gBAAgB,IAAI,IAAI;oBACjC,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;oBACjF,GAAG,EAAE,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;oBACvD,aAAa,EAAE,UAAU,IAAI,IAAI;oBACjC,IAAI;oBACJ,WAAW;oBACX,SAAS,EAAE,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;oBACzE,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,QAAQ;oBACR,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC;iBAC3C,CAAC;qBACD,kBAAkB,CAAC;oBAClB,MAAM,EAAE,gBAAgB,CAAC,SAAS;oBAClC,GAAG,EAAE;wBACH,OAAO,EAAE,gBAAgB,IAAI,IAAI;wBACjC,KAAK,EAAE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;wBAC3D,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;wBACjF,aAAa,EAAE,UAAU,IAAI,GAAG,CAAA,GAAG,gBAAgB,CAAC,aAAa,EAAE;wBACnE,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAA,GAAG,gBAAgB,CAAC,WAAW,EAAE;wBACxF,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA,GAAG,gBAAgB,CAAC,IAAI,EAAE;wBAC5D,8EAA8E;wBAC9E,QAAQ,EAAE,QAAQ,IAAI,GAAG,CAAA,GAAG,gBAAgB,CAAC,QAAQ,EAAE;wBACvD,YAAY,EAAE,YAAY,IAAI,GAAG,CAAA,GAAG,gBAAgB,CAAC,YAAY,EAAE;wBACnE,UAAU,EAAE,UAAU,IAAI,GAAG,CAAA,GAAG,gBAAgB,CAAC,UAAU,EAAE;wBAC7D,SAAS,EAAE,IAAI,IAAI,EAAE;qBACtB;iBACF,CAAC,CAAC;YACP,CAAC;YAED,kFAAkF;YAClF,MAAM,SAAS,GAAG,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;YACjF,IAAI,SAAS,EAAE,CAAC;gBACd,mDAAmD;gBACnD,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;oBACrC,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC;oBAEtC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;wBAC1B,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAErE,6EAA6E;wBAC7E,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;4BAChG,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC;4BACnC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC;4BAElC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gCACzB,wCAAwC;gCACxC,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gCAC9D,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gCAE5F,mEAAmE;gCACnE,0FAA0F;gCAC1F,IAAI,YAAY,EAAE,CAAC;oCACjB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE;yCACxB,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC;yCACjC,IAAI,CAAC,cAAc,CAAC;yCACpB,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,EAC3C,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CACzC,CAAC;yCACD,KAAK,CAAC,CAAC,CAAC,CAAC;oCAEZ,IAAI,CAAC,QAAQ,EAAE,CAAC;wCACd,MAAM,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC;4CACrC,MAAM;4CACN,QAAQ,EAAE,IAAI;4CACd,OAAO,EAAE,YAAY;4CACrB,cAAc,EAAE,QAAQ;4CACxB,eAAe,EAAE,UAAU;yCAC5B,CAAC,CAAC;wCAEH,8CAA8C;wCAC9C,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;6CACtB,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,UAAU,MAAM,EAAE,CAAC;6CACpD,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;wCAClC,mDAAmD;wCACnD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wCAC1H,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;4CACtB,MAAM,uBAAuB,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EACrE,eAAe,EAAE,GAAG,UAAU,0CAA0C,EACxE,SAAS,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;wCACxC,CAAC;oCACH,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,kEAAkE;4BAClE,MAAM,YAAY,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;4BACrD,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;4BACvF,IAAI,aAAa,EAAE,CAAC;gCAClB,MAAM,EAAE;qCACL,MAAM,CAAC,YAAY,CAAC;qCACpB,GAAG,CAAC,EAAE,YAAY,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,YAAY,MAAM,EAAE,CAAC;qCAC5D,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;gCAEhD,wBAAwB;gCACxB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gCAC9D,MAAM,uBAAuB,CAAC,EAAE,EAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAC3E,WAAW,EAAE,GAAG,UAAU,mCAAmC,aAAa,CAAC,KAAK,IAAI,cAAc,GAAG,EACnG,gBAAgB,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;4BAC9F,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,yEAAyE;wBACzE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,EAAE;6BAC1B,MAAM,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC;6BACpC,IAAI,CAAC,iBAAiB,CAAC;6BACvB,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;6BACjD,KAAK,CAAC,CAAC,CAAC,CAAC;wBAEZ,IAAI,UAAU,EAAE,CAAC;4BACf,+DAA+D;4BAC/D,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;4BAC9D,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC5F,IAAI,YAAY,EAAE,CAAC;gCACjB,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,EAAE;qCAC7B,MAAM,CAAC,EAAE,EAAE,EAAE,uBAAuB,CAAC,EAAE,EAAE,CAAC;qCAC1C,IAAI,CAAC,uBAAuB,CAAC;qCAC7B,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,uBAAuB,CAAC,kBAAkB,EAAE,UAAU,CAAC,EAAE,CAAC,EAC7D,EAAE,CAAC,uBAAuB,CAAC,cAAc,EAAE,QAAQ,CAAC,EACpD,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,YAAY,CAAC,CAClD,CAAC;qCACD,KAAK,CAAC,CAAC,CAAC,CAAC;gCAEZ,IAAI,CAAC,aAAa,EAAE,CAAC;oCACnB,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC;wCAC9C,kBAAkB,EAAE,UAAU,CAAC,EAAE;wCACjC,QAAQ,EAAE,IAAI;wCACd,OAAO,EAAE,YAAY;wCACrB,cAAc,EAAE,QAAQ;wCACxB,eAAe,EAAE,UAAU;qCAC5B,CAAC,CAAC;oCAEH,+BAA+B;oCAC/B,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC;yCAC/B,GAAG,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAA,GAAG,iBAAiB,CAAC,gBAAgB,MAAM,EAAE,CAAC;yCACzE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;gCACpD,CAAC;4BACH,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,iEAAiE;4BACjE,MAAM,EAAE;iCACL,MAAM,CAAC,gBAAgB,CAAC;iCACxB,GAAG,CAAC,EAAE,iBAAiB,EAAE,GAAG,CAAA,GAAG,gBAAgB,CAAC,iBAAiB,MAAM,EAAE,CAAC;iCAC1E,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;wBACtD,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sCAAsC;gBACxC,CAAC;YACH,CAAC;YAED,oCAAoC;YACpC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,QAAQ,CAAC,6BAA6B,EAAE;oBAC5C,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ;oBACtD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;iBAC7D,CAAC,CAAC;YACL,CAAC;YAED,uBAAuB;YACvB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,SAAS,IAAI,IAAI;gBAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACpD,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,MAA+B;YAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,EAAwB,CAAC;YAElD,yEAAyE;YACzE,wEAAwE;YACxE,6EAA6E;YAC7E,mEAAmE;YACnE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gBACvF,uEAAuE;gBACvE,uEAAuE;gBACvE,mEAAmE;gBACnE,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAiB,EAAE;oBAC7C,IAAI,CAAC,GAAkB,IAAI,CAAC;oBAC5B,IAAI,OAAO,CAAC,KAAK,QAAQ;wBAAE,CAAC,GAAG,CAAC,CAAC;yBAC5B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;wBAC7C,MAAM,CAAC,GAAI,CAA6B,CAAC,GAAG,CAAC;wBAC7C,IAAI,OAAO,CAAC,KAAK,QAAQ;4BAAE,CAAC,GAAG,CAAC,CAAC;oBACnC,CAAC;oBACD,OAAO,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACjD,CAAC,CAAC;gBACF,MAAM,UAAU,GAA4B,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;gBACtE,yEAAyE;gBACzE,sDAAsD;gBACtD,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;oBAAE,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBACjF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;oBAAE,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC9F,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,IAAI,KAAK,IAAI;oBAAE,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;gBAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,MAAM,KAAK,IAAI;oBAAE,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC;gBAEnD,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;gBAE5F,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE,QAAQ;oBACd,QAAQ;oBACR,SAAS;oBACT,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;oBACpD,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,iDAAiD;YACjD,oEAAoE;YACpE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,OAAO,GAA4B,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;gBAEnE,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gBACjE,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;oBAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;oBAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvF,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;oBAAE,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;gBAE7D,4DAA4D;gBAC5D,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjF,MAAM,kBAAkB,GAAG,cAAc;qBACtC,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;qBAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC7H,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC;oBACzC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,GAAG;2BACnE,CAAC,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAE,MAAM,CAAC,KAAgC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC5H,IAAI,QAAQ;wBAAE,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC;gBACjD,CAAC;gBACD,IAAI,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,QAAQ;oBAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAEjI,uDAAuD;gBACvD,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,IAAI;oBAAE,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;gBACpF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBAAE,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;gBAErF,yBAAyB;gBACzB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,MAAM,WAAW,GAAG,OAAO;qBACxB,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC;qBAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC;gBAEvD,MAAM,YAAY,GAAG,MAAM,EAAE;qBAC1B,MAAM,CAAC,gBAAgB,CAAC;qBACxB,GAAG,CAAC,OAAO,CAAC;qBACZ,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,EACzC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACxC,CACF;qBACA,SAAS,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC;gBAE1C,0FAA0F;gBAC1F,yFAAyF;gBACzF,qFAAqF;gBACrF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE;yBACxB,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC;yBACnC,IAAI,CAAC,gBAAgB,CAAC;yBACtB,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;yBAChD,KAAK,CAAC,CAAC,CAAC,CAAC;oBACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,2DAA2D;wBAC3D,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAC5C,CAAC;oBACD,6EAA6E;oBAC7E,OAAO;gBACT,CAAC;YACH,CAAC;YAED,8EAA8E;YAC9E,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,cAAc,GAA4B,EAAE,CAAC;oBACnD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;wBAAE,cAAc,CAAC,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC9F,IAAI,OAAO,MAAM,CAAC,eAAe,CAAC,KAAK,QAAQ;wBAAE,cAAc,CAAC,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;oBACnG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3C,MAAM,EAAE;6BACL,MAAM,CAAC,iBAAiB,CAAC;6BACzB,GAAG,CAAC,cAAc,CAAC;6BACnB,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,EAC1C,EAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACzC,CAAC,CAAC;oBACP,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAChC,CAAC;YAED,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,SAAS,IAAI,IAAI;gBAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACpD,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,QAAgB;YAC/C,sEAAsE;YACtE,MAAM,EAAE;iBACL,MAAM,CAAC,gBAAgB,CAAC;iBACxB,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;iBAC9B,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,EACxC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACvC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACnC,CACF,CAAC;YAEJ,uEAAuE;YACvE,IAAI,CAAC;gBACH,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBACrE,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAE9B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,QAAQ;gBACd,QAAQ;gBACR,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,SAAiB;YAC9C,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAEvC,oFAAoF;YACpF,MAAM,QAAQ,GAAG,MAAM,EAAE;iBACtB,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;iBAC7B,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EAC3B,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACjC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,EACnC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CACpC,CACF;iBACA,KAAK,CAAC,CAAC,CAAC,CAAC;YAEZ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,+CAA+C;gBAC/C,OAAO;YACT,CAAC;YAED,qEAAqE;YACrE,sEAAsE;YACtE,gEAAgE;YAChE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAElD,IAAI,UAAU,EAAE,CAAC;gBACf,yCAAyC;gBACzC,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAE/C,IAAI,QAAQ,EAAE,CAAC;wBACb,iCAAiC;wBACjC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC3B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;iCAChM,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;iCACxE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BACjD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACpB,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC;oCAChC,SAAS,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,SAAS,MAAM;oCAC7C,eAAe,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,eAAe,MAAM;iCAC1D,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gCAC3C,OAAO,GAAG,IAAI,CAAC;gCAEf,wBAAwB;gCACxB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gCAC9D,MAAM,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EACnE,UAAU,EAAE,GAAG,UAAU,8BAA8B,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,IAAI,cAAc,GAAG,EAC1F,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC;4BAC7E,CAAC;wBACH,CAAC;wBAED,sFAAsF;wBACtF,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;4BAC/C,IAAI,MAAM,EAAE,CAAC;gCACX,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gCACrD,IAAI,OAAO,EAAE,CAAC;oCACZ,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC;wCAChC,SAAS,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,SAAS,MAAM;wCAC7C,eAAe,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,eAAe,MAAM;qCAC1D,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;oCAC1C,OAAO,GAAG,IAAI,CAAC;oCAEf,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;oCAC9D,MAAM,uBAAuB,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAClE,UAAU,EAAE,GAAG,UAAU,8BAA8B,OAAO,CAAC,KAAK,IAAI,cAAc,GAAG,EACzF,gBAAgB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gCAC1E,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC/B,CAAC;YAED,uFAAuF;YACvF,IAAI,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC3C,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;oBAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;yBAC5F,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC3C,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;4BAC5B,SAAS,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,SAAS,MAAM;4BACzC,eAAe,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,eAAe,MAAM;yBACtD,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnC,OAAO,GAAG,IAAI,CAAC;wBAEf,yEAAyE;wBACzE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;4BAClB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;4BAC9D,MAAM,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAC/D,UAAU,EAAE,GAAG,UAAU,yCAAyC,EAClE,SAAS,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,iFAAiF;YACjF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBACjE,IAAI,YAAY,EAAE,CAAC;oBACjB,yEAAyE;oBACzE,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC/E,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;4BAC1F,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;4BAChC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;gCAC5B,SAAS,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,SAAS,MAAM;gCACzC,eAAe,EAAE,GAAG,CAAA,GAAG,QAAQ,CAAC,eAAe,MAAM;6BACtD,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;4BAClC,OAAO,GAAG,IAAI,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,+DAA+D;YAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,YAAY,GAAG,MAAM,EAAE;qBAC1B,MAAM,CAAC,iBAAiB,CAAC;qBACzB,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAA,GAAG,iBAAiB,CAAC,cAAc,MAAM,EAAE,CAAC;qBACrE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;qBACjD,SAAS,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,GAAG,IAAI,CAAC;YAC9C,CAAC;YAED,wFAAwF;YACxF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,EAAE;qBACL,MAAM,CAAC,gBAAgB,CAAC;qBACxB,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAA,GAAG,gBAAgB,CAAC,cAAc,MAAM,EAAE,CAAC;qBACpE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,MAAM;gBACZ,QAAQ;gBACR,SAAS;gBACT,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,SAAiB;YAClD,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAEvC,yFAAyF;YACzF,MAAM,QAAQ,GAAG,MAAM,EAAE;iBACtB,MAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;iBAC7B,IAAI,CAAC,UAAU,CAAC;iBAChB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAC/B,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACjC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,EACnC,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CACpC,CACF;iBACA,KAAK,CAAC,CAAC,CAAC,CAAC;YAEZ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO;YAEhC,+CAA+C;YAC/C,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAElD,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;oBAC/C,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;wBACrD,IAAI,OAAO,EAAE,CAAC;4BACZ,MAAM,EAAE;iCACL,MAAM,CAAC,YAAY,CAAC;iCACpB,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,CAAA,GAAG,YAAY,CAAC,UAAU,MAAM,EAAE,CAAC;iCACxD,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;4BAC1C,OAAO,GAAG,IAAI,CAAC;4BAEf,wBAAwB;4BACxB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;4BAC9D,MAAM,uBAAuB,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EACrE,iBAAiB,EAAE,GAAG,UAAU,gCAAgC,OAAO,CAAC,KAAK,IAAI,cAAc,GAAG,EAClG,gBAAgB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC1E,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC/B,CAAC;YAED,4CAA4C;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,EAAE;qBACL,MAAM,CAAC,gBAAgB,CAAC;qBACxB,GAAG,CAAC,EAAE,eAAe,EAAE,GAAG,CAAA,GAAG,gBAAgB,CAAC,eAAe,MAAM,EAAE,CAAC;qBACtE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,oFAAoF;YACpF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,qDAAqD;oBACrD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;oBAC5D,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,MAAM,EAAE,yBAAyB,EAAE,eAAe,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;wBACjH,IAAI,WAAW,GAAG,MAAM,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;wBAEhE,6EAA6E;wBAC7E,6EAA6E;wBAC7E,IAAI,gBAAgB,GAAkB,IAAI,CAAC;wBAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,gBAAgB,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;4BACvD,IAAI,gBAAgB,EAAE,CAAC;gCACrB,WAAW,GAAG,MAAM,yBAAyB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;4BAC9D,CAAC;wBACH,CAAC;wBAED,IAAI,WAAW,EAAE,CAAC;4BAChB,iGAAiG;4BACjG,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gCAC3B,qCAAqC;4BACvC,CAAC;iCAAM,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;gCACnC,oEAAoE;gCACpE,+DAA+D;gCAC/D,uDAAuD;gCACvD,OAAO,CAAC,IAAI,CAAC,6DAA6D,EAAE,SAAS,CAAC,CAAC;4BACzF,CAAC;iCAAM,CAAC;gCACR,oDAAoD;gCACpD,IAAI,IAAI,GAA4B,EAAE,CAAC;gCACvC,IAAI,CAAC;oCACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE;wCAC1C,MAAM,EAAE,gDAAgD;wCACxD,SAAS,EAAE,MAAM;qCAClB,CAAC,CAAC;oCACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;gCACrD,CAAC;gCAAC,MAAM,CAAC,CAAC,kDAAkD,CAAC,CAAC;gCAC9D,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oCACjC,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oCAEvF,gEAAgE;oCAChE,IAAI,YAAY,GAAG,QAAQ,CAAC;oCAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;oCAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wCAC7B,YAAY,GAAG,IAAI,CAAC;oCACtB,CAAC;yCAAM,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;wCACpE,YAAY,GAAK,IAAgC,CAAC,EAAa,IAAI,QAAQ,CAAC;oCAC9E,CAAC;yCAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wCAClD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;wCACtB,YAAY,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAG,KAAiC,CAAC,EAAa,IAAI,QAAQ,CAAC;oCACnH,CAAC;oCAED,0BAA0B;oCAC1B,MAAM,kBAAkB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;oCAE3C,mFAAmF;oCACnF,IAAI,iBAAiB,GAAG,IAAI,CAAC;oCAC7B,MAAM,UAAU,GAAI,IAAgC,CAAC,oBAAoB,CAAwC,CAAC;oCAClH,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;wCACjD,iBAAiB,GAAG;4CAClB,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,MAAM,CAAC;4CACvC,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;4CACrC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;4CAC/D,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI;4CACjF,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;4CACrE,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;yCAC/E,CAAC;oCACJ,CAAC;yCAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;wCACnF,+CAA+C;wCAC/C,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;4CAC1D,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,OAAQ,IAAI,CAAC,KAAiC,CAAC,GAAG,KAAK,QAAQ,CAAC;gDAC/E,CAAC,CAAE,IAAI,CAAC,KAAiC,CAAC,GAAa,CAAC,CAAC,CAAC,IAAI,CAAC;wCACnE,MAAM,cAAc,GAAK,IAAgC,CAAC,WAAW,CAAY,IAAI,MAAM,CAAC;wCAC5F,iBAAiB,GAAG;4CAClB,IAAI,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc;4CAC5D,KAAK,EAAE,IAAI,CAAC,IAAc;4CAC1B,OAAO,EAAE,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;4CAC/D,aAAa,EAAE,QAAQ;4CACvB,SAAS,EAAE,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;4CAC9D,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;gDAAC,OAAO,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;4CAAC,CAAC;4CAAC,MAAM,CAAC;gDAAC,OAAO,IAAI,CAAC;4CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;yCAC/F,CAAC;oCACJ,CAAC;oCAED,MAAM,sBAAsB,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE;wCAC/C,SAAS;wCACT,QAAQ,EAAE,YAAY;wCACtB,OAAO,EAAE,WAAW;wCACpB,QAAQ,EAAI,IAAgC,CAAC,eAAe,CAAY,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;wCAClH,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS;wCACrD,iBAAiB;qCAClB,CAAC,CAAC;gCACL,CAAC;4BACD,CAAC,CAAC,+BAA+B;wBACnC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;YAED,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,UAAU;gBAChB,QAAQ;gBACR,SAAS;gBACT,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;QACL,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,eAAe,CACnB,iBAAyB,EACzB,cAAsB,EACtB,eAAuB;YAEvB,6EAA6E;YAC7E,IAAI,eAAuB,CAAC;YAC5B,IAAI,CAAC;gBACH,eAAe,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC;YACxD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;YACT,CAAC;YACD,IAAI,eAAe,KAAK,MAAM;gBAAE,OAAO;YAEvC,2EAA2E;YAC3E,MAAM,gBAAgB,GAAG,WAAW,MAAM,QAAQ,CAAC;YACnD,IAAI,cAAc,KAAK,gBAAgB;gBAAE,OAAO;YAEhD,uFAAuF;YACvF,MAAM,kBAAkB,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAElE,kEAAkE;YAClE,MAAM,EAAE;iBACL,MAAM,CAAC,cAAc,CAAC;iBACtB,MAAM,CAAC;gBACN,SAAS,EAAE,UAAU;gBACrB,YAAY,EAAE,eAAe;gBAC7B,cAAc,EAAE,iBAAiB;gBACjC,MAAM,EAAE,SAAS;gBACjB,gBAAgB,EAAE,eAAe;aAClC,CAAC;iBACD,kBAAkB,CAAC;gBAClB,MAAM,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC;gBAC/D,GAAG,EAAE;oBACH,cAAc,EAAE,iBAAiB;oBACjC,MAAM,EAAE,SAAS;oBACjB,gBAAgB,EAAE,eAAe;oBACjC,iBAAiB,EAAE,IAAI;oBACvB,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI,IAAI,EAAE;iBACtB;aACF,CAAC,CAAC;YAEL,4BAA4B;YAC5B,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,eAAe,EAAE,oBAAoB,EAAE,IAAI,EAAE;gBAC7H,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,uEAAuE;YACvE,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC5F,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBACjE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,uBAAuB,CAC3B,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EACzC,gBAAgB,EAAE,GAAG,IAAI,KAAK,eAAe,iCAAiC,EAC9E,mBAAmB,CACpB,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { DB } from '../types.js';
2
+ /** Canonical UUID v4-ish matcher used to distinguish content/post ids from slugs. */
3
+ export declare const UUID_RE: RegExp;
4
+ /**
5
+ * True when `uri` parses as a URL whose hostname is exactly `domain` (our instance).
6
+ * Returns false for unparseable input instead of throwing.
7
+ */
8
+ export declare function isLocalHost(uri: string, domain: string): boolean;
9
+ /**
10
+ * The last non-empty path segment of `uri`, or null if it doesn't parse / has no path.
11
+ */
12
+ export declare function lastPathSegment(uri: string): string | null;
13
+ /**
14
+ * Match the local hub-post Note URI shape `/hubs/{slug}/posts/{postId}` where
15
+ * `postId` is a UUID. Returns the slug + postId, or null if the URI doesn't match
16
+ * (unparseable, wrong shape, or non-UUID post id).
17
+ */
18
+ export declare function matchHubPostUri(uri: string): {
19
+ slug: string;
20
+ postId: string;
21
+ } | null;
22
+ /**
23
+ * Look up an outbound Announce activity whose payload `id` equals `payloadId`, returning
24
+ * the wrapped object's URI (the Note that was announced) or null. Used to resolve a
25
+ * Like/Undo(Like) that targets the Announce activity itself rather than the Note.
26
+ */
27
+ export declare function findAnnouncedObjectUri(db: DB, payloadId: string): Promise<string | null>;
28
+ //# sourceMappingURL=inboxParsing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inboxParsing.d.ts","sourceRoot":"","sources":["../../src/federation/inboxParsing.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEtC,qFAAqF;AACrF,eAAO,MAAM,OAAO,QAAoE,CAAC;AAEzF;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAMhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO1D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAapF;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAa9F"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Internal parsing/lookup primitives shared across inbox handlers.
3
+ *
4
+ * These helpers were extracted from inboxHandlers.ts (audit session 204) to remove
5
+ * repeated copy-paste of the UUID regex, the local-host guard, last-path-segment
6
+ * extraction, the `/hubs/{slug}/posts/{postId}` URI match, and the
7
+ * outbound-Announce-by-payload-id lookup. They are intentionally NOT re-exported
8
+ * from the package barrel — they are private to the federation module.
9
+ */
10
+ import { and, eq, sql } from 'drizzle-orm';
11
+ import { activities } from '@commonpub/schema';
12
+ /** Canonical UUID v4-ish matcher used to distinguish content/post ids from slugs. */
13
+ export const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
14
+ /**
15
+ * True when `uri` parses as a URL whose hostname is exactly `domain` (our instance).
16
+ * Returns false for unparseable input instead of throwing.
17
+ */
18
+ export function isLocalHost(uri, domain) {
19
+ try {
20
+ return new URL(uri).hostname === domain;
21
+ }
22
+ catch {
23
+ return false;
24
+ }
25
+ }
26
+ /**
27
+ * The last non-empty path segment of `uri`, or null if it doesn't parse / has no path.
28
+ */
29
+ export function lastPathSegment(uri) {
30
+ try {
31
+ const segments = new URL(uri).pathname.split('/').filter(Boolean);
32
+ return segments[segments.length - 1] ?? null;
33
+ }
34
+ catch {
35
+ return null;
36
+ }
37
+ }
38
+ /**
39
+ * Match the local hub-post Note URI shape `/hubs/{slug}/posts/{postId}` where
40
+ * `postId` is a UUID. Returns the slug + postId, or null if the URI doesn't match
41
+ * (unparseable, wrong shape, or non-UUID post id).
42
+ */
43
+ export function matchHubPostUri(uri) {
44
+ try {
45
+ const segments = new URL(uri).pathname.split('/').filter(Boolean);
46
+ if (segments.length >= 4 && segments[0] === 'hubs' && segments[2] === 'posts') {
47
+ const postId = segments[3];
48
+ if (UUID_RE.test(postId)) {
49
+ return { slug: segments[1], postId };
50
+ }
51
+ }
52
+ return null;
53
+ }
54
+ catch {
55
+ return null;
56
+ }
57
+ }
58
+ /**
59
+ * Look up an outbound Announce activity whose payload `id` equals `payloadId`, returning
60
+ * the wrapped object's URI (the Note that was announced) or null. Used to resolve a
61
+ * Like/Undo(Like) that targets the Announce activity itself rather than the Note.
62
+ */
63
+ export async function findAnnouncedObjectUri(db, payloadId) {
64
+ const [announceActivity] = await db
65
+ .select({ objectUri: activities.objectUri })
66
+ .from(activities)
67
+ .where(and(eq(activities.type, 'Announce'), eq(activities.direction, 'outbound'), sql `${activities.payload}->>'id' = ${payloadId}`))
68
+ .limit(1);
69
+ return announceActivity?.objectUri ?? null;
70
+ }
71
+ //# sourceMappingURL=inboxParsing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inboxParsing.js","sourceRoot":"","sources":["../../src/federation/inboxParsing.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,qFAAqF;AACrF,MAAM,CAAC,MAAM,OAAO,GAAG,iEAAiE,CAAC;AAEzF;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,MAAc;IACrD,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;YAC9E,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;YAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzB,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAAM,EAAE,SAAiB;IACpE,MAAM,CAAC,gBAAgB,CAAC,GAAG,MAAM,EAAE;SAChC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC;SAC3C,IAAI,CAAC,UAAU,CAAC;SAChB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAC/B,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,EACpC,GAAG,CAAA,GAAG,UAAU,CAAC,OAAO,aAAa,SAAS,EAAE,CACjD,CACF;SACA,KAAK,CAAC,CAAC,CAAC,CAAC;IACZ,OAAO,gBAAgB,EAAE,SAAS,IAAI,IAAI,CAAC;AAC7C,CAAC"}