@alpaca-editor/core 1.0.4063 → 1.0.4065

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 (124) hide show
  1. package/dist/config/config.js +3 -21
  2. package/dist/config/config.js.map +1 -1
  3. package/dist/editor/ConfirmationDialog.js +1 -1
  4. package/dist/editor/ConfirmationDialog.js.map +1 -1
  5. package/dist/editor/ContextMenu.js +0 -1
  6. package/dist/editor/ContextMenu.js.map +1 -1
  7. package/dist/editor/FieldListField.js +2 -2
  8. package/dist/editor/FieldListField.js.map +1 -1
  9. package/dist/editor/FieldListFieldWithFallbacks.js +1 -1
  10. package/dist/editor/FieldListFieldWithFallbacks.js.map +1 -1
  11. package/dist/editor/MainLayout.d.ts +2 -0
  12. package/dist/editor/MainLayout.js +8 -0
  13. package/dist/editor/MainLayout.js.map +1 -1
  14. package/dist/editor/ScrollingContentTree.js +9 -4
  15. package/dist/editor/ScrollingContentTree.js.map +1 -1
  16. package/dist/editor/ai/AgentTerminal.js +382 -3
  17. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  18. package/dist/editor/ai/Agents.js +75 -9
  19. package/dist/editor/ai/Agents.js.map +1 -1
  20. package/dist/editor/client/EditorClient.js +70 -34
  21. package/dist/editor/client/EditorClient.js.map +1 -1
  22. package/dist/editor/client/editContext.d.ts +6 -4
  23. package/dist/editor/client/editContext.js.map +1 -1
  24. package/dist/editor/client/operations.js +9 -6
  25. package/dist/editor/client/operations.js.map +1 -1
  26. package/dist/editor/commands/componentCommands.js +1 -1
  27. package/dist/editor/field-types/richtext/contextMenuFactory.js +0 -3
  28. package/dist/editor/field-types/richtext/contextMenuFactory.js.map +1 -1
  29. package/dist/editor/media-selector/TreeSelector.js +1 -1
  30. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  31. package/dist/editor/menubar/ToolbarFactory.js +5 -2
  32. package/dist/editor/menubar/ToolbarFactory.js.map +1 -1
  33. package/dist/editor/menubar/VersionSelector.js +1 -1
  34. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  35. package/dist/editor/menubar/toolbar-sections/UtilityControls.js +2 -1
  36. package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
  37. package/dist/editor/page-viewer/EditorForm.js +7 -0
  38. package/dist/editor/page-viewer/EditorForm.js.map +1 -1
  39. package/dist/editor/page-viewer/PageViewerFrame.js +72 -5
  40. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  41. package/dist/editor/reviews/Comment.js +57 -9
  42. package/dist/editor/reviews/Comment.js.map +1 -1
  43. package/dist/editor/reviews/CommentEditor.js +4 -4
  44. package/dist/editor/reviews/CommentEditor.js.map +1 -1
  45. package/dist/editor/reviews/CommentPopover.js +1 -1
  46. package/dist/editor/reviews/CommentPopover.js.map +1 -1
  47. package/dist/editor/reviews/CommentView.js +5 -5
  48. package/dist/editor/reviews/CommentView.js.map +1 -1
  49. package/dist/editor/reviews/Reviews.js +2 -2
  50. package/dist/editor/reviews/Reviews.js.map +1 -1
  51. package/dist/editor/services/agentService.d.ts +41 -0
  52. package/dist/editor/services/agentService.js +10 -0
  53. package/dist/editor/services/agentService.js.map +1 -1
  54. package/dist/editor/sidebar/ComponentTree.js +159 -50
  55. package/dist/editor/sidebar/ComponentTree.js.map +1 -1
  56. package/dist/editor/sidebar/Debug.js +1 -1
  57. package/dist/editor/sidebar/Debug.js.map +1 -1
  58. package/dist/editor/sidebar/SidebarView.d.ts +2 -1
  59. package/dist/editor/sidebar/SidebarView.js +2 -2
  60. package/dist/editor/sidebar/SidebarView.js.map +1 -1
  61. package/dist/editor/ui/PerfectTree.js +1 -1
  62. package/dist/editor/ui/PerfectTree.js.map +1 -1
  63. package/dist/editor/ui/SimpleTabs.js +1 -1
  64. package/dist/index.d.ts +0 -1
  65. package/dist/index.js +0 -1
  66. package/dist/index.js.map +1 -1
  67. package/dist/revision.d.ts +2 -2
  68. package/dist/revision.js +2 -2
  69. package/dist/splash-screen/NewPage.js +2 -2
  70. package/dist/splash-screen/NewPage.js.map +1 -1
  71. package/dist/styles.css +11 -4
  72. package/dist/types.d.ts +3 -2
  73. package/package.json +1 -1
  74. package/src/config/config.tsx +5 -20
  75. package/src/editor/ConfirmationDialog.tsx +4 -1
  76. package/src/editor/ContextMenu.tsx +0 -1
  77. package/src/editor/FieldListField.tsx +13 -11
  78. package/src/editor/FieldListFieldWithFallbacks.tsx +1 -0
  79. package/src/editor/MainLayout.tsx +11 -0
  80. package/src/editor/ScrollingContentTree.tsx +10 -5
  81. package/src/editor/ai/AgentTerminal.tsx +555 -1
  82. package/src/editor/ai/Agents.tsx +125 -22
  83. package/src/editor/client/EditorClient.tsx +115 -48
  84. package/src/editor/client/editContext.ts +7 -4
  85. package/src/editor/client/operations.ts +9 -8
  86. package/src/editor/commands/componentCommands.tsx +1 -1
  87. package/src/editor/field-types/richtext/components/EditorDropdown.css +1 -0
  88. package/src/editor/field-types/richtext/contextMenuFactory.tsx +0 -4
  89. package/src/editor/media-selector/TreeSelector.tsx +1 -0
  90. package/src/editor/menubar/ToolbarFactory.tsx +6 -2
  91. package/src/editor/menubar/VersionSelector.tsx +4 -1
  92. package/src/editor/menubar/toolbar-sections/UtilityControls.tsx +29 -12
  93. package/src/editor/page-viewer/EditorForm.tsx +13 -0
  94. package/src/editor/page-viewer/PageViewerFrame.tsx +82 -5
  95. package/src/editor/reviews/Comment.tsx +65 -9
  96. package/src/editor/reviews/CommentEditor.tsx +10 -3
  97. package/src/editor/reviews/CommentPopover.tsx +1 -0
  98. package/src/editor/reviews/CommentView.tsx +24 -3
  99. package/src/editor/reviews/Reviews.tsx +2 -0
  100. package/src/editor/services/agentService.ts +58 -0
  101. package/src/editor/sidebar/ComponentTree.tsx +229 -71
  102. package/src/editor/sidebar/Debug.tsx +1 -1
  103. package/src/editor/sidebar/SidebarView.tsx +8 -7
  104. package/src/editor/ui/PerfectTree.tsx +2 -1
  105. package/src/editor/ui/SimpleTabs.tsx +1 -1
  106. package/src/index.ts +0 -2
  107. package/src/revision.ts +2 -2
  108. package/src/splash-screen/NewPage.tsx +2 -2
  109. package/src/types.ts +3 -2
  110. package/styles.css +0 -7
  111. package/dist/fonts/index.d.ts +0 -4
  112. package/dist/fonts/index.js +0 -9
  113. package/dist/fonts/index.js.map +0 -1
  114. package/src/fonts/Geist-Black.woff2 +0 -0
  115. package/src/fonts/Geist-Bold.woff2 +0 -0
  116. package/src/fonts/Geist-ExtraBold.woff2 +0 -0
  117. package/src/fonts/Geist-ExtraLight.woff2 +0 -0
  118. package/src/fonts/Geist-Light.woff2 +0 -0
  119. package/src/fonts/Geist-Medium.woff2 +0 -0
  120. package/src/fonts/Geist-Regular.woff2 +0 -0
  121. package/src/fonts/Geist-SemiBold.woff2 +0 -0
  122. package/src/fonts/Geist-Thin.woff2 +0 -0
  123. package/src/fonts/Geist[wght].woff2 +0 -0
  124. package/src/fonts/index.ts +0 -10
@@ -1,13 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState, useRef, useCallback } from "react";
3
- import { Send, Bot, AlertCircle, Loader2, User } from "lucide-react";
3
+ import { Send, Bot, AlertCircle, Loader2, User, X, FileText, Puzzle, Type, Plus, } from "lucide-react";
4
4
  import { DancingDots } from "./DancingDots";
5
- import { getAgent, startAgent, connectToAgentStream, } from "../services/agentService";
5
+ import { getAgent, startAgent, connectToAgentStream, updateAgentMetadata, } from "../services/agentService";
6
6
  import { useEditContext } from "../client/editContext";
7
7
  import { Textarea } from "../../components/ui/textarea";
8
8
  import { Button } from "../../components/ui/button";
9
9
  import { AiResponseMessage } from "./AiResponseMessage";
10
10
  import { AgentCostDisplay } from "./AgentCostDisplay";
11
+ import { getComponentById } from "../componentTreeHelper";
11
12
  // Simple user message component
12
13
  const UserMessage = ({ message }) => {
13
14
  return (_jsxs("div", { className: "flex gap-3 p-4", children: [_jsx("div", { className: "flex-shrink-0", children: _jsx(User, { className: "h-6 w-6 text-blue-600", strokeWidth: 1 }) }), _jsxs("div", { className: "min-w-0 flex-1 select-text", children: [_jsxs("div", { className: "mb-1 flex items-center gap-2", children: [_jsx("span", { className: "text-sm font-medium text-gray-900", children: "You" }), message.createdDate && (_jsx("span", { className: "text-xs text-gray-400", children: new Date(message.createdDate).toLocaleTimeString() }))] }), _jsx("div", { className: "prose prose-sm max-w-none text-sm text-gray-700 select-text", children: message.content })] })] }));
@@ -107,7 +108,11 @@ export function AgentTerminal({ agentStub }) {
107
108
  const [isLoading, setIsLoading] = useState(false);
108
109
  const [isConnecting, setIsConnecting] = useState(false);
109
110
  const [isSubmitting, setIsSubmitting] = useState(false);
111
+ const [agentMetadata, setAgentMetadata] = useState(null);
110
112
  const [isWaitingForResponse, setIsWaitingForResponse] = useState(false);
113
+ const [resolvedPageName, setResolvedPageName] = useState(undefined);
114
+ const [resolvedComponentName, setResolvedComponentName] = useState(undefined);
115
+ const [resolvedFieldName, setResolvedFieldName] = useState(undefined);
111
116
  const [promptHistory, setPromptHistory] = useState(() => {
112
117
  if (typeof window !== "undefined") {
113
118
  return JSON.parse(localStorage.getItem("editor.agent.promptHistory") || "[]");
@@ -539,6 +544,36 @@ export function AgentTerminal({ agentStub }) {
539
544
  setMessages([]);
540
545
  setError(null);
541
546
  setIsLoading(false);
547
+ // Initialize local context for a brand-new agent (not yet persisted)
548
+ const item = editContext?.currentItemDescriptor;
549
+ const initialLocalContext = item
550
+ ? {
551
+ additionalData: {
552
+ context: {
553
+ pages: [
554
+ {
555
+ id: item.id,
556
+ language: item.language,
557
+ version: item.version,
558
+ name: editContext?.contentEditorItem?.name,
559
+ },
560
+ ],
561
+ componentIds: editContext?.selection?.length
562
+ ? editContext.selection
563
+ : undefined,
564
+ field: editContext?.focusedField &&
565
+ editContext.currentItemDescriptor
566
+ ? {
567
+ fieldId: editContext.focusedField.fieldId,
568
+ itemId: editContext.focusedField.item.id,
569
+ }
570
+ : undefined,
571
+ },
572
+ },
573
+ }
574
+ : null;
575
+ if (initialLocalContext)
576
+ setAgentMetadata(initialLocalContext);
542
577
  return;
543
578
  }
544
579
  setIsLoading(true);
@@ -546,6 +581,19 @@ export function AgentTerminal({ agentStub }) {
546
581
  const agentData = await getAgent(agentStub.id);
547
582
  setAgent(agentData);
548
583
  setMessages(agentData.messages || []);
584
+ // Parse metadata from DB if present (do not seed for existing agents)
585
+ const parsedMeta = (() => {
586
+ try {
587
+ return agentData.metadata
588
+ ? JSON.parse(agentData.metadata)
589
+ : null;
590
+ }
591
+ catch {
592
+ return null;
593
+ }
594
+ })();
595
+ // For existing agents, use database metadata or none
596
+ setAgentMetadata(parsedMeta);
549
597
  // Connect to stream if agent is running (handle both string and numeric status)
550
598
  const isRunning = agentData.status === "running" || agentData.status === 1;
551
599
  if (isRunning) {
@@ -638,14 +686,29 @@ export function AgentTerminal({ agentStub }) {
638
686
  createdDate: new Date().toISOString(),
639
687
  };
640
688
  setMessages((prev) => [...prev, userMessage]);
689
+ const metaCtx = agentMetadata?.additionalData?.context;
690
+ const selectionFromCtx = metaCtx?.componentIds?.length
691
+ ? metaCtx.componentIds
692
+ : undefined;
693
+ const effectiveSelection = selectionFromCtx?.length
694
+ ? selectionFromCtx
695
+ : editContext.selection && editContext.selection.length > 0
696
+ ? editContext.selection
697
+ : undefined;
641
698
  const request = {
642
699
  agentId: agent.id,
643
700
  message: prompt.trim(),
644
701
  sessionId: editContext.sessionId,
645
702
  profileId: "default", // TODO: Get from context or settings
703
+ profile: "default",
646
704
  itemid: editContext.currentItemDescriptor?.id || "",
647
705
  language: editContext.currentItemDescriptor?.language || "en",
648
706
  version: editContext.currentItemDescriptor?.version || 1,
707
+ selection: effectiveSelection,
708
+ selectedText: editContext.selectedRange?.text || undefined,
709
+ addSelectedComponents: !!effectiveSelection?.length,
710
+ addContextContent: false,
711
+ addAllContent: false,
649
712
  };
650
713
  console.log("Starting agent:", request);
651
714
  // Set waiting state to show dancing dots immediately
@@ -721,11 +784,327 @@ export function AgentTerminal({ agentStub }) {
721
784
  }
722
785
  }
723
786
  };
787
+ // Context info bar helpers - must be declared before any early returns to keep hooks order stable
788
+ const removeContextKey = useCallback(async (key, index) => {
789
+ if (!agent?.id)
790
+ return;
791
+ const current = agentMetadata || {};
792
+ const next = {
793
+ ...current,
794
+ additionalData: {
795
+ ...(current.additionalData || {}),
796
+ context: {
797
+ ...((current.additionalData &&
798
+ current.additionalData.context) ||
799
+ {}),
800
+ },
801
+ },
802
+ };
803
+ if (next.additionalData && next.additionalData.context) {
804
+ const ctx = next.additionalData.context;
805
+ if (key === "pages" && typeof index === "number" && ctx.pages) {
806
+ ctx.pages.splice(index, 1);
807
+ if (ctx.pages.length === 0)
808
+ delete ctx.pages;
809
+ }
810
+ else if (key === "componentIds" &&
811
+ typeof index === "number" &&
812
+ ctx.componentIds) {
813
+ ctx.componentIds.splice(index, 1);
814
+ if (ctx.componentIds.length === 0)
815
+ delete ctx.componentIds;
816
+ }
817
+ else if (key === "field") {
818
+ delete ctx.field;
819
+ }
820
+ else if (key === "comment") {
821
+ delete ctx.comment;
822
+ }
823
+ }
824
+ try {
825
+ // For new (not yet persisted) agents, only update local state
826
+ if (agent.status === "new") {
827
+ setAgentMetadata(next);
828
+ return;
829
+ }
830
+ // Persisted agents: update server and local cache
831
+ await updateAgentMetadata(agent.id, next);
832
+ setAgentMetadata(next);
833
+ setAgent((prev) => prev ? { ...prev, metadata: JSON.stringify(next) } : prev);
834
+ }
835
+ catch (e) {
836
+ console.error("Failed to update agent metadata", e);
837
+ }
838
+ }, [agent?.id, agentMetadata]);
839
+ const addPagesToContext = async () => {
840
+ if (!agent?.id || !editContext?.currentItemDescriptor)
841
+ return;
842
+ // Add the current page (currentItemDescriptor represents the current page)
843
+ // Note: Currently only supports adding the current page. To support multiple pages,
844
+ // we'd need a page selection mechanism in the UI (e.g., a page picker dialog)
845
+ const item = editContext.currentItemDescriptor;
846
+ const pageToAdd = {
847
+ id: item.id,
848
+ language: item.language,
849
+ version: item.version,
850
+ name: editContext.contentEditorItem?.name,
851
+ path: agent?.itemPath,
852
+ };
853
+ const current = agentMetadata || {};
854
+ const currentPages = current.additionalData?.context?.pages || [];
855
+ // Check if this page is already in context
856
+ const existingPageIds = new Set(currentPages.map((p) => `${p.id}-${p.language}-${p.version}`));
857
+ if (existingPageIds.has(`${pageToAdd.id}-${pageToAdd.language}-${pageToAdd.version}`)) {
858
+ return; // Page already exists
859
+ }
860
+ const next = {
861
+ ...current,
862
+ additionalData: {
863
+ ...(current.additionalData || {}),
864
+ context: {
865
+ ...((current.additionalData &&
866
+ current.additionalData.context) ||
867
+ {}),
868
+ pages: [...currentPages, pageToAdd],
869
+ },
870
+ },
871
+ };
872
+ try {
873
+ if (agent.status === "new") {
874
+ setAgentMetadata(next);
875
+ return;
876
+ }
877
+ await updateAgentMetadata(agent.id, next);
878
+ setAgentMetadata(next);
879
+ setAgent((prev) => prev ? { ...prev, metadata: JSON.stringify(next) } : prev);
880
+ }
881
+ catch (e) {
882
+ console.error("Failed to update agent metadata (add pages)", e);
883
+ }
884
+ };
885
+ const addSelectedComponentsToContext = async () => {
886
+ if (!agent?.id || !editContext?.selection?.length)
887
+ return;
888
+ const current = agentMetadata || {};
889
+ const currentComponentIds = current.additionalData?.context?.componentIds ||
890
+ [];
891
+ // Merge with existing components, avoiding duplicates
892
+ const existingIds = new Set(currentComponentIds);
893
+ const newComponentIds = editContext.selection.filter((id) => !existingIds.has(id));
894
+ if (newComponentIds.length === 0)
895
+ return; // No new components to add
896
+ const next = {
897
+ ...current,
898
+ additionalData: {
899
+ ...(current.additionalData || {}),
900
+ context: {
901
+ ...((current.additionalData &&
902
+ current.additionalData.context) ||
903
+ {}),
904
+ componentIds: [...currentComponentIds, ...newComponentIds],
905
+ },
906
+ },
907
+ };
908
+ try {
909
+ if (agent.status === "new") {
910
+ setAgentMetadata(next);
911
+ return;
912
+ }
913
+ await updateAgentMetadata(agent.id, next);
914
+ setAgentMetadata(next);
915
+ setAgent((prev) => prev ? { ...prev, metadata: JSON.stringify(next) } : prev);
916
+ }
917
+ catch (e) {
918
+ console.error("Failed to update agent metadata (add components)", e);
919
+ }
920
+ };
921
+ const addCommentToContext = async (comment) => {
922
+ if (!agent?.id)
923
+ return;
924
+ const selectedText = (() => {
925
+ if (typeof comment.rangeStart === "number" &&
926
+ typeof comment.rangeEnd === "number" &&
927
+ comment.fieldValue) {
928
+ try {
929
+ return comment.fieldValue.substring(Math.max(0, comment.rangeStart), Math.max(comment.rangeStart, comment.rangeEnd));
930
+ }
931
+ catch {
932
+ return undefined;
933
+ }
934
+ }
935
+ return undefined;
936
+ })();
937
+ const current = agentMetadata || {};
938
+ const next = {
939
+ ...current,
940
+ additionalData: {
941
+ ...(current.additionalData || {}),
942
+ context: {
943
+ ...((current.additionalData &&
944
+ current.additionalData.context) ||
945
+ {}),
946
+ comment: {
947
+ id: comment.id,
948
+ text: comment.text,
949
+ fieldName: comment.fieldName,
950
+ itemName: comment.itemName,
951
+ author: comment.author,
952
+ selectedText,
953
+ rangeStart: comment.rangeStart,
954
+ rangeEnd: comment.rangeEnd,
955
+ },
956
+ },
957
+ },
958
+ };
959
+ try {
960
+ if (agent.status === "new") {
961
+ setAgentMetadata(next);
962
+ return;
963
+ }
964
+ await updateAgentMetadata(agent.id, next);
965
+ setAgentMetadata(next);
966
+ setAgent((prev) => prev ? { ...prev, metadata: JSON.stringify(next) } : prev);
967
+ }
968
+ catch (e) {
969
+ console.error("Failed to update agent metadata (add comment)", e);
970
+ }
971
+ };
972
+ // Resolve display names when metadata or editor state changes
973
+ useEffect(() => {
974
+ const metaCtx = agentMetadata?.additionalData?.context;
975
+ if (!metaCtx) {
976
+ setResolvedPageName(undefined);
977
+ setResolvedComponentName(undefined);
978
+ setResolvedFieldName(undefined);
979
+ return;
980
+ }
981
+ // Page names (for now, just resolve the first page)
982
+ if (metaCtx.pages?.length) {
983
+ const firstPage = metaCtx.pages[0];
984
+ if (firstPage) {
985
+ let name = firstPage.name;
986
+ if (!name &&
987
+ editContext?.contentEditorItem?.descriptor.id === firstPage.id &&
988
+ editContext?.contentEditorItem?.name) {
989
+ name = editContext.contentEditorItem.name;
990
+ }
991
+ else if (!name && agent?.itemPath) {
992
+ name = agent.itemPath.split("/").pop() || undefined;
993
+ }
994
+ setResolvedPageName(name);
995
+ }
996
+ else {
997
+ setResolvedPageName(undefined);
998
+ }
999
+ }
1000
+ else
1001
+ setResolvedPageName(undefined);
1002
+ // Component names (for now, just resolve the first component)
1003
+ if (metaCtx.componentIds?.length && editContext?.page) {
1004
+ const firstComponentId = metaCtx.componentIds[0];
1005
+ if (firstComponentId) {
1006
+ try {
1007
+ const comp = getComponentById(firstComponentId, editContext.page);
1008
+ setResolvedComponentName(comp?.name);
1009
+ }
1010
+ catch {
1011
+ setResolvedComponentName(undefined);
1012
+ }
1013
+ }
1014
+ else {
1015
+ setResolvedComponentName(undefined);
1016
+ }
1017
+ }
1018
+ else
1019
+ setResolvedComponentName(undefined);
1020
+ // Field name (async)
1021
+ (async () => {
1022
+ if (metaCtx.field && editContext?.itemsRepository) {
1023
+ try {
1024
+ const field = await editContext.itemsRepository.getField({
1025
+ item: {
1026
+ id: metaCtx.field.itemId,
1027
+ language: editContext.currentItemDescriptor?.language || "en",
1028
+ version: editContext.currentItemDescriptor?.version || 0,
1029
+ },
1030
+ fieldId: metaCtx.field.fieldId,
1031
+ });
1032
+ setResolvedFieldName(field?.name);
1033
+ }
1034
+ catch {
1035
+ setResolvedFieldName(undefined);
1036
+ }
1037
+ }
1038
+ else
1039
+ setResolvedFieldName(undefined);
1040
+ })();
1041
+ }, [
1042
+ agentMetadata,
1043
+ editContext?.page,
1044
+ editContext?.contentEditorItem,
1045
+ agent?.itemPath,
1046
+ editContext?.currentItemDescriptor,
1047
+ editContext?.itemsRepository,
1048
+ ]);
724
1049
  if (isLoading) {
725
1050
  return (_jsx("div", { className: "flex h-full items-center justify-center", children: _jsxs("div", { className: "flex items-center gap-2 text-sm text-gray-500", children: [_jsx(Loader2, { className: "h-4 w-4 animate-spin", strokeWidth: 1 }), "Loading agent..."] }) }));
726
1051
  }
727
1052
  // Calculate total token usage for cost display
728
1053
  const totalTokens = calculateTotalTokens(messages);
1054
+ const renderContextInfoBar = () => {
1055
+ const ctx = agentMetadata?.additionalData?.context;
1056
+ // Check if we have context chips or add buttons to show
1057
+ const hasContext = ctx && (ctx.pages?.length || ctx.componentIds?.length || ctx.field);
1058
+ // Check if current page is already in context
1059
+ const currentPageAlreadyAdded = editContext?.currentItemDescriptor &&
1060
+ ctx?.pages?.some((page) => page.id === editContext.currentItemDescriptor?.id &&
1061
+ page.language === editContext.currentItemDescriptor?.language &&
1062
+ page.version === editContext.currentItemDescriptor?.version);
1063
+ // Check if current selection components are already in context
1064
+ const selectedComponentsAlreadyAdded = editContext?.selection?.length &&
1065
+ editContext.selection.every((selectedId) => ctx?.componentIds?.includes(selectedId));
1066
+ const canAddPage = !!editContext?.currentItemDescriptor && !currentPageAlreadyAdded;
1067
+ const canAddSelection = !!editContext?.selection?.length && !selectedComponentsAlreadyAdded;
1068
+ if (!hasContext && !canAddPage && !canAddSelection)
1069
+ return null;
1070
+ const Chip = ({ icon, label, onRemove, }) => (_jsxs("span", { className: "inline-flex items-center gap-1 rounded-full border border-gray-200 bg-gray-100 px-2 py-0.5 text-xs text-gray-700", children: [icon, _jsx("span", { className: "max-w-[240px] truncate", title: label, children: label }), _jsx("button", { onClick: onRemove, className: "ml-0.5 rounded p-0.5 hover:bg-gray-200", "aria-label": "Remove context", children: _jsx(X, { className: "h-3 w-3", strokeWidth: 1 }) })] }));
1071
+ const chips = [];
1072
+ // Render page chips
1073
+ if (ctx?.pages?.length) {
1074
+ ctx.pages.forEach((page, index) => {
1075
+ const pageLabelName = page.name ||
1076
+ resolvedPageName ||
1077
+ (agent?.itemPath ? agent.itemPath.split("/").pop() : undefined);
1078
+ const pageLabel = `${pageLabelName || page.path || page.id} (${page.language}/${page.version})`;
1079
+ chips.push(_jsx(Chip, { icon: _jsx(FileText, { className: "h-3 w-3 text-gray-500", strokeWidth: 1 }), label: `Page: ${pageLabel}`, onRemove: () => removeContextKey("pages", index) }, `page-${index}`));
1080
+ });
1081
+ }
1082
+ // Render component chips
1083
+ if (ctx?.componentIds?.length) {
1084
+ ctx.componentIds.forEach((componentId, index) => {
1085
+ let compLabel = componentId;
1086
+ if (index === 0 && resolvedComponentName) {
1087
+ compLabel = resolvedComponentName;
1088
+ }
1089
+ else if (editContext?.page) {
1090
+ try {
1091
+ const comp = getComponentById(componentId, editContext.page);
1092
+ compLabel = comp?.name || componentId;
1093
+ }
1094
+ catch {
1095
+ // Keep componentId as fallback
1096
+ }
1097
+ }
1098
+ chips.push(_jsx(Chip, { icon: _jsx(Puzzle, { className: "h-3 w-3 text-gray-500", strokeWidth: 1 }), label: `Component: ${compLabel}`, onRemove: () => removeContextKey("componentIds", index) }, `component-${index}`));
1099
+ });
1100
+ }
1101
+ // Render field chip
1102
+ if (ctx?.field) {
1103
+ const fieldLabel = `${ctx.field.name || resolvedFieldName || ctx.field.fieldId}`;
1104
+ chips.push(_jsx(Chip, { icon: _jsx(Type, { className: "h-3 w-3 text-gray-500", strokeWidth: 1 }), label: `Field: ${fieldLabel}`, onRemove: () => removeContextKey("field") }, "field"));
1105
+ }
1106
+ return (_jsx("div", { className: "border-t border-gray-100 px-4 py-2", children: _jsxs("div", { className: "flex items-center justify-between text-xs text-gray-600", children: [_jsx("div", { className: "flex flex-wrap items-center gap-2", children: chips }), _jsxs("div", { className: "ml-2 flex flex-wrap items-center gap-2", children: [canAddPage && (_jsxs(Button, { size: "sm", variant: "outline", onClick: addPagesToContext, children: [_jsx(Plus, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Add current item"] })), canAddSelection && (_jsxs(Button, { size: "sm", variant: "outline", onClick: addSelectedComponentsToContext, children: [_jsx(Plus, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Add selected components"] }))] })] }) }));
1107
+ };
729
1108
  return (_jsxs("div", { className: "flex h-full flex-col", children: [_jsxs("div", { ref: messagesContainerRef, className: "flex-1 overflow-y-auto", onScroll: handleScroll, children: [error && (_jsx("div", { className: "m-4 rounded-lg border-l-4 border-red-500 bg-red-50 p-3", children: _jsxs("div", { className: "flex items-start", children: [_jsx(AlertCircle, { className: "mt-0.5 h-5 w-5 text-red-400", strokeWidth: 1 }), _jsxs("div", { className: "ml-3", children: [_jsx("p", { className: "text-sm font-medium text-red-800", children: "Error" }), _jsx("p", { className: "mt-1 text-sm text-red-700", children: error })] })] }) })), messages.length === 0 && !error && (_jsx("div", { className: "flex h-full items-center justify-center p-8", children: _jsxs("div", { className: "text-center", children: [_jsx(Bot, { className: "mx-auto mb-4 h-12 w-12 text-gray-400", strokeWidth: 1 }), _jsx("h3", { className: "mb-2 text-lg font-medium text-gray-900", children: "Start a conversation" }), _jsx("p", { className: "mb-4 text-sm text-gray-500", children: "Send a message to begin working with your AI agent." }), _jsx("div", { className: "text-xs text-gray-400", children: "Your agent can help with content editing, research, and automation tasks." })] }) })), _jsxs("div", { className: "space-y-0 divide-y divide-gray-100 select-text", children: [groupConsecutiveMessages(messages).map((group, groupIndex) => {
730
1109
  if (group.type === "user" && group.messages[0]) {
731
1110
  // Render user message
@@ -740,7 +1119,7 @@ export function AgentTerminal({ agentStub }) {
740
1119
  }
741
1120
  }), (isWaitingForResponse ||
742
1121
  groupConsecutiveMessages(messages).some((group) => group.type === "assistant-group" &&
743
- group.messages.some((msg) => !msg.isCompleted && msg.messageType === "streaming"))) && _jsx(DancingDots, {})] }), _jsx("div", { ref: messagesEndRef })] }), totalTokens.totalCost > 0 && (_jsx("div", { className: "border-t border-gray-100 px-4 py-2", children: _jsx(AgentCostDisplay, { totalTokens: totalTokens, className: "flex justify-end" }) })), _jsx("div", { className: "border-t border-gray-200 p-4", children: _jsxs("div", { className: "flex items-stretch gap-2", children: [_jsx(Textarea, { ref: textareaRef, value: prompt, onChange: (e) => {
1122
+ group.messages.some((msg) => !msg.isCompleted && msg.messageType === "streaming"))) && _jsx(DancingDots, {})] }), _jsx("div", { ref: messagesEndRef })] }), totalTokens.totalCost > 0 && (_jsx("div", { className: "border-t border-gray-100 px-4 py-2", children: _jsx(AgentCostDisplay, { totalTokens: totalTokens, className: "flex justify-end" }) })), renderContextInfoBar(), _jsx("div", { className: "border-t border-gray-200 p-4", children: _jsxs("div", { className: "flex items-stretch gap-2", children: [_jsx(Textarea, { ref: textareaRef, value: prompt, onChange: (e) => {
744
1123
  setPrompt(e.target.value);
745
1124
  // Reset history index when user starts typing
746
1125
  if (currentHistoryIndex !== -1) {
@@ -1 +1 @@
1
- {"version":3,"file":"AgentTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentTerminal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentTerminal.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EACL,IAAI,EACJ,GAAG,EACH,WAAW,EACX,OAAO,EACP,IAAI,EACJ,CAAC,EACD,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,IAAI,GAEL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAGL,QAAQ,EACR,UAAU,EACV,oBAAoB,EAIpB,mBAAmB,GAEpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,gCAAgC;AAChC,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAiC,EAAE,EAAE;IACjE,OAAO,CACL,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cAAK,SAAS,EAAC,eAAe,YAC5B,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,EAAC,WAAW,EAAE,CAAC,GAAI,GACtD,EACN,eAAK,SAAS,EAAC,4BAA4B,aACzC,eAAK,SAAS,EAAC,8BAA8B,aAC3C,eAAM,SAAS,EAAC,mCAAmC,oBAAW,EAC7D,OAAO,CAAC,WAAW,IAAI,CACtB,eAAM,SAAS,EAAC,uBAAuB,YACpC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,kBAAkB,EAAE,GAC9C,CACR,IACG,EACN,cAAK,SAAS,EAAC,6DAA6D,YACzE,OAAO,CAAC,OAAO,GACZ,IACF,IACF,CACP,CAAC;AACJ,CAAC,CAAC;AAQF,MAAM,wBAAwB,GAAG,CAC/B,aAAiC,EACjB,EAAE;IAClB,gGAAgG;IAChG,MAAM,WAAW,GAAG,aAAa,CAAC;IAElC,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,IAAI,qBAAqB,GAAuB,EAAE,CAAC;IAEnD,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,qCAAqC;YACrC,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,iBAAiB;oBACvB,QAAQ,EAAE,qBAAqB;iBAChC,CAAC,CAAC;gBACH,qBAAqB,GAAG,EAAE,CAAC;YAC7B,CAAC;YACD,mBAAmB;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACxC,iCAAiC;YACjC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,kEAAkE;IACpE,CAAC;IAED,oCAAoC;IACpC,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,gEAAgE;AAChE,MAAM,oBAAoB,GAAG,CAAC,QAA4B,EAAE,EAAE;IAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACf,OAAO;YACL,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;YAC7C,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;YAChD,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;YACrD,SAAS,EAAE,GAAG,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;YACxD,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC;YAC3D,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,CAAC,CAAC;YAChE,SAAS,EAAE,GAAG,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;SACpD,CAAC;IACJ,CAAC,EACD;QACE,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,SAAS,EAAE,CAAC;KACb,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,oEAAoE;AACpE,MAAM,8BAA8B,GAAG,CACrC,aAAiC,EACtB,EAAE;IACb,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;QACxC,MAAM,OAAO,GAAY;YACvB,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,gBAAgB,EAAE,YAAY,CAAC,OAAO;gBACpC,EAAE,OAAO,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;gBAClD,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;YAC3B,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,UAAU,EAAE,YAAY,CAAC,SAAS;gBAChC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACxC,EAAE,EAAE,QAAQ,CAAC,UAAU;oBACvB,WAAW,EAAE,QAAQ,CAAC,YAAY;oBAClC,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,YAAY;wBAC3B,SAAS,EAAE,QAAQ,CAAC,iBAAiB;wBACrC,MAAM,EAAE,QAAQ,CAAC,cAAc;wBAC/B,KAAK,EAAE,QAAQ,CAAC,aAAa;qBAC9B;iBACF,CAAC,CAAC;gBACL,CAAC,CAAC,EAAE;SACP,CAAC;QAEF,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC;QACjD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,iCAAiC;AACjC,sBAAsB;AACtB,IAAI;AAEJ,MAAM,UAAU,aAAa,CAAC,EAAE,SAAS,EAAwB;IAC/D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA2B,SAAS,CAAC,CAAC;IACxE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAChD,IAAI,CACL,CAAC;IACF,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,SAAS,CACV,CAAC;IACF,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAEhE,SAAS,CAAC,CAAC;IACb,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAExD,SAAS,CAAC,CAAC;IACb,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAW,GAAG,EAAE;QAChE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,KAAK,CACf,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC,IAAI,IAAI,CAC3D,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAC,CAAC;IAE3E,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,OAAO,CAClB,4BAA4B,EAC5B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAC9B,CAAC;IACJ,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,oDAAoD;QACpD,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExD,oDAAoD;IACpD,MAAM,sBAAsB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7C,0DAA0D;IAC1D,MAAM,WAAW,GAAG,MAAM,CAAqB,EAAE,CAAC,CAAC;IAEnD,MAAM,kBAAkB,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IAChE,MAAM,cAAc,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAC;IACtD,MAAM,oBAAoB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC1D,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE/D,iDAAiD;IACjD,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,yDAAyD;IACzD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC;QAC/C,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAE5B,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,6CAA6C;QACpE,OAAO,CACL,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY;YACrE,SAAS,CACV,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,kDAAkD;IAClD,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,MAAM,QAAQ,GAAG,UAAU,EAAE,CAAC;QAC9B,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAClC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEnC,wDAAwD;IACxD,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,SAAiB,EAAE,SAAwB,EAAoB,EAAE;QAChE,MAAM,YAAY,GAAG,SAAS,IAAI,KAAK,CAAC;QACxC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAC5D,SAAS;gBACT,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,GAAG,CACT,2CAA2C,EAC3C,YAAY,CAAC,EAAE,CAChB,CAAC;QACF,OAAO;YACL,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,YAAY,CAAC,EAAE;YACxB,YAAY,EAAE,CAAC,CAAC;YAChB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE;YAC/B,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,iBAAiB,EAAE,CAAC;YACpB,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,CAAC;YAClB,oBAAoB,EAAE,CAAC;YACvB,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,YAAY,CAAC,QAAQ,IAAI,KAAK;YACxC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,OAA2B,EAAE,SAAwB,EAAE,EAAE;QACxD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;QAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,uDAAuD;QACvD,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAE/B,oFAAoF;QACpF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;YACnB,4DAA4D;YAC5D,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CACzC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,CAC9B,CAAC;YAEF,IAAI,oBAAoB,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChC,uDAAuD;gBAEvD,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAEtE,sCAAsC;gBACtC,MAAM,iBAAiB,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;oBAChC,iBAAiB,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;gBAC/D,CAAC;qBAAM,CAAC;oBACN,iBAAiB,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;gBAC/D,CAAC;gBAED,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC;gBAC7C,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC9B,OAAO,OAAO,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,6BAA6B;gBAE7B,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAEnD,IAAI,CAAC,eAAe;oBAAE,OAAO,IAAI,CAAC;gBAElC,+EAA+E;gBAC/E,MAAM,oBAAoB,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;gBAClE,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,EAAE,kBAAkB,IAAI,CAAC,CAAC;gBAEjE,IACE,oBAAoB,IAAI,kBAAkB;oBAC1C,kBAAkB,GAAG,CAAC,EACtB,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,cAAc,GAAG,EAAE,GAAG,eAAe,EAAE,CAAC;gBAE9C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;oBAChC,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,cAAc,CAAC,OAAO;wBACpB,eAAe,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CACtC,KAAK,KAAK,oBAAoB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CACtD,CAAC;gBACF,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC9B,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,sBAAsB,CAAC,CACzB,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,OAA2B,EAAE,SAAwB,EAAE,EAAE;QACxD,MAAM,UAAU,GACd,OAAO,CAAC,IAAI,EAAE,UAAU,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAEtE,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;QAElD,uDAAuD;QACvD,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC;YAC5C,MAAM,oBAAoB,GAAG,eAAe,CAAC,SAAS,CACpD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,iBAAiB,CACtC,CAAC;YAEF,IAAI,oBAAoB,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChC,2DAA2D;gBAC3D,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC;gBAC5C,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CACtC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,iBAAiB,CACtC,CAAC;gBAEF,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,wCAAwC;oBACxC,MAAM,gBAAgB,GAAG,sBAAsB,CAC7C,iBAAiB,EACjB,SAAS,CACV,CAAC;oBAEF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;wBACnB,kDAAkD;wBAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,iBAAiB,CACtC,CAAC;wBACF,IAAI,UAAU,EAAE,CAAC;4BACf,OAAO,CAAC,GAAG,CACT,6DAA6D,EAC7D,iBAAiB,CAClB,CAAC;4BACF,OAAO,IAAI,CAAC;wBACd,CAAC;wBAED,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,gBAAgB,CAAC,CAAC;wBAC5C,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;wBAE9B,OAAO,OAAO,CAAC;oBACjB,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,0CAA0C,EAC1C,iBAAiB,CAClB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,iBAAiB,IAAI,OAAO,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YACpD,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,YAAY;gBACzB,OAAO,CAAC,IAAI,CAAC,IAAI;gBACjB,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI;gBAC3B,SAAS,CAAC;YAEZ,MAAM,QAAQ,GAAG;gBACf,EAAE,EAAE,UAAU;gBACd,SAAS,EAAE,iBAAiB;gBAC5B,UAAU,EAAE,UAAU;gBACtB,YAAY,EAAE,YAAY;gBAC1B,iBAAiB,EACf,OAAO,CAAC,IAAI,CAAC,iBAAiB;oBAC9B,OAAO,CAAC,IAAI,CAAC,SAAS;oBACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;gBACxD,cAAc,EACZ,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;gBAC1D,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACrE,WAAW,EAAE,KAAK;gBAClB,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc;gBAC3C,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC;YAEF,sDAAsD;YACtD,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC;YAC5C,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CACxC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,iBAAiB,CACtC,CAAC;YAEF,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,iBAAiB,GAAG,aAAa,CAAC,SAAS,IAAI,EAAE,CAAC;gBACxD,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,SAAS,CACvD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,UAAU,CACrC,CAAC;gBAEF,IAAI,qBAAqB,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjC,OAAO,CAAC,wBAAwB;gBAClC,CAAC;YACH,CAAC;YAED,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC/B,IAAI,GAAG,CAAC,EAAE,KAAK,iBAAiB;wBAAE,OAAO,GAAG,CAAC;oBAC7C,MAAM,iBAAiB,GAAG,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;oBAC9C,OAAO,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,CAAC,GAAG,iBAAiB,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACjE,CAAC,CAAC,CAAC;gBACH,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC9B,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EACD,CAAC,sBAAsB,CAAC,CACzB,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,OAA2B,EAAE,SAAwB,EAAE,EAAE;QACxD,MAAM,gBAAgB,GACpB,OAAO,CAAC,IAAI,EAAE,UAAU,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;QAEhD,oDAAoD;QACpD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,eAAe,CAAC,CAAC;QAEpE,sCAAsC;QACtC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;YACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC/B,IAAI,GAAG,CAAC,EAAE,KAAK,eAAe;oBAAE,OAAO,GAAG,CAAC;gBAE3C,MAAM,cAAc,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;oBAC9B,cAAc,CAAC,SAAS,GAAG,EAAE,CAAC;gBAChC,CAAC;gBAED,gDAAgD;gBAChD,MAAM,aAAa,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CACtD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,gBAAgB,CAC3C,CAAC;gBAEF,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;oBACvB,MAAM,gBAAgB,GAAG,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;oBACjE,IAAI,gBAAgB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACrC,MAAM,gBAAgB,GAAG,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;wBACvD,MAAM,QAAQ,GAAG;4BACf,EAAE,EAAE,gBAAgB,CAAC,EAAE;4BACvB,SAAS,EAAE,gBAAgB,CAAC,SAAS;4BACrC,UAAU,EAAE,gBAAgB,CAAC,UAAU;4BACvC,YAAY,EAAE,gBAAgB,CAAC,YAAY;4BAC3C,iBAAiB,EAAE,gBAAgB,CAAC,iBAAiB;4BACrD,cAAc,EACZ,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;4BAC1D,aAAa,EACX,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;4BACxD,WAAW,EAAE,IAAI;4BACjB,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc;4BAC3C,WAAW,EAAE,gBAAgB,CAAC,WAAW;yBAC1C,CAAC;wBAEF,gBAAgB,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;wBAC3C,cAAc,CAAC,SAAS,GAAG,gBAAgB,CAAC;oBAC9C,CAAC;oBAED,mDAAmD;oBACnD,MAAM,qBAAqB,GAAG,cAAc,CAAC,SAAS,CAAC,KAAK,CAC1D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CACvB,CAAC;oBACF,IAAI,qBAAqB,EAAE,CAAC;wBAC1B,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAC;oBACxC,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,CAAC,IAAI,IAAI,gBAAgB,IAAI,eAAe,EAAE,CAAC;oBAC/D,2CAA2C;oBAC3C,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,YAAY;wBACzB,OAAO,CAAC,IAAI,CAAC,IAAI;wBACjB,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI;wBAC3B,SAAS,CAAC;oBACZ,MAAM,QAAQ,GAAG;wBACf,EAAE,EAAE,gBAAgB;wBACpB,SAAS,EAAE,eAAe;wBAC1B,UAAU,EAAE,gBAAgB;wBAC5B,YAAY,EAAE,YAAY;wBAC1B,iBAAiB,EACf,OAAO,CAAC,IAAI,CAAC,iBAAiB;4BAC9B,OAAO,CAAC,IAAI,CAAC,SAAS;4BACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;wBACxD,cAAc,EACZ,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;wBAC1D,aAAa,EACX,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;wBACxD,WAAW,EAAE,IAAI;wBACjB,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc;wBAC3C,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC;oBACF,cAAc,CAAC,SAAS,GAAG,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACrE,CAAC;gBAED,OAAO,CAAC,GAAG,CACT,8BAA8B,EAC9B,cAAc,CAAC,SAAS,CAAC,MAAM,CAChC,CAAC;gBAEF,OAAO,cAAc,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;YAC9B,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,EACD,EAAE,CACH,CAAC;IAEF,gDAAgD;IAChD,MAAM,eAAe,GAAG,WAAW,CACjC,KAAK,EAAE,SAAwB,EAAE,EAAE;QACjC,MAAM,YAAY,GAAG,SAAS,IAAI,KAAK,CAAC;QACxC,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,iCAAiC;QACjC,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;YAC/B,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,kBAAkB,CAAC,OAAO,GAAG,eAAe,CAAC;QAE7C,IAAI,CAAC;YACH,eAAe,CAAC,IAAI,CAAC,CAAC;YAEtB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;YAE9D,MAAM,oBAAoB,CACxB,YAAY,CAAC,EAAE,EACf,CAAC,OAA2B,EAAE,EAAE;gBAC9B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;oBACrB,KAAK,cAAc;wBACjB,kBAAkB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBAC1C,MAAM;oBAER,KAAK,UAAU;wBACb,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBACtC,MAAM;oBAER,KAAK,YAAY;wBACf,gBAAgB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBACxC,MAAM;oBAER,KAAK,cAAc;wBACjB,MAAM;oBAER,KAAK,WAAW;wBACd,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;wBACnD,OAAO,CAAC,GAAG,CACT,kCAAkC,EAClC,kBAAkB,EAClB,iBAAiB,EACjB,QAAQ,CAAC,MAAM,CAChB,CAAC;wBAEF,sDAAsD;wBACtD,IAAI,kBAAkB,EAAE,CAAC;4BACvB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gCACf,IAAI,GAAG,CAAC,EAAE,KAAK,kBAAkB,EAAE,CAAC;oCAClC,MAAM,cAAc,GAAG;wCACrB,GAAG,GAAG;wCACN,WAAW,EAAE,IAAI;wCACjB,WAAW,EAAE,WAAoB;qCAClC,CAAC;oCAEF,6DAA6D;oCAC7D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wCACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;wCAC1B,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;4CACtC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;wCACnD,CAAC;wCACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;4CACvC,cAAc,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC;wCACrD,CAAC;wCACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;4CACvC,cAAc,CAAC,iBAAiB;gDAC9B,IAAI,CAAC,eAAe,CAAC;wCACzB,CAAC;wCACD,2BAA2B;wCAC3B,cAAc,CAAC,UAAU;4CACvB,CAAC,cAAc,CAAC,WAAW,IAAI,CAAC,CAAC;gDACjC,CAAC,cAAc,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;wCAErC,gEAAgE;wCAChE,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;4CAClD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gDACxB,8CAA8C;gDAC9C,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;4CAC7C,CAAC;iDAAM,CAAC;gDACN,0CAA0C;gDAC1C,cAAc,CAAC,OAAO;oDACpB,CAAC,cAAc,CAAC,OAAO,IAAI,EAAE,CAAC;wDAC9B,IAAI,CAAC,YAAY,CAAC;4CACtB,CAAC;wCACH,CAAC;oCACH,CAAC;oCAED,OAAO,cAAc,CAAC;gCACxB,CAAC;gCACD,OAAO,GAAG,CAAC;4BACb,CAAC,CAAC,CACH,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,oEAAoE;4BACpE,OAAO,CAAC,IAAI,CACV,iGAAiG,CAClG,CAAC;4BACF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACf,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,KAAK,WAAW;gCACjD,CAAC,CAAC;oCACE,GAAG,GAAG;oCACN,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,WAAW;iCACzB;gCACH,CAAC,CAAC,GAAG,CACR,CACF,CAAC;wBACJ,CAAC;wBACD,sBAAsB,CAAC,OAAO,GAAG,KAAK,CAAC;wBACvC,MAAM;oBAER,KAAK,OAAO;wBACV,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;wBAChD,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;wBACnD,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBAC/B,sBAAsB,CAAC,OAAO,GAAG,KAAK,CAAC;wBACvC,MAAM;oBAER;wBACE,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE;4BACxC,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,MAAM,EAAE,OAAO,OAAO,CAAC,IAAI;4BAC3B,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM;4BAC5B,SAAS,EAAE,OAAO,CAAC,IAAI;gCACrB,EAAE,KAAK,CAAC,EAAE,CAAC;iCACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;4BAC9B,OAAO,EAAE,OAAO;yBACjB,CAAC,CAAC;wBACH,MAAM;gBACV,CAAC;YACH,CAAC,EACD,eAAe,CAAC,MAAM,CACvB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;gBAChD,QAAQ,CAAC,mCAAmC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE,EAAE,kBAAkB,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAClE,CAAC;IAEF,+BAA+B;IAC/B,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,IAAI,CAAC;YACH,IAAI,SAAS,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;gBACtC,QAAQ,CAAC;oBACP,GAAG,SAAS;oBACZ,QAAQ,EAAE,EAAE;oBACZ,MAAM,EAAE,KAAK;oBACb,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACrC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACrC,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE,KAAK;oBACf,MAAM,EAAE,EAAE;oBACV,QAAQ,EAAE,EAAE;oBACZ,QAAQ,EAAE,EAAE;oBACZ,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,EAAE;oBACb,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,CAAC;oBAClB,gBAAgB,EAAE,CAAC;oBACnB,iBAAiB,EAAE,CAAC;oBACpB,sBAAsB,EAAE,CAAC;oBACzB,mBAAmB,EAAE,CAAC;oBACtB,oBAAoB,EAAE,CAAC;oBACvB,yBAAyB,EAAE,CAAC;oBAC5B,SAAS,EAAE,CAAC;oBACZ,YAAY,EAAE,CAAC;iBAChB,CAAC,CAAC;gBAEH,WAAW,CAAC,EAAE,CAAC,CAAC;gBAChB,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,YAAY,CAAC,KAAK,CAAC,CAAC;gBAEpB,qEAAqE;gBACrE,MAAM,IAAI,GAAG,WAAW,EAAE,qBAAqB,CAAC;gBAChD,MAAM,mBAAmB,GAAyB,IAAI;oBACpD,CAAC,CAAC;wBACE,cAAc,EAAE;4BACd,OAAO,EAAE;gCACP,KAAK,EAAE;oCACL;wCACE,EAAE,EAAE,IAAI,CAAC,EAAE;wCACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;wCACvB,OAAO,EAAE,IAAI,CAAC,OAAO;wCACrB,IAAI,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI;qCAC3C;iCACF;gCACD,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM;oCAC1C,CAAC,CAAC,WAAW,CAAC,SAAS;oCACvB,CAAC,CAAC,SAAS;gCACb,KAAK,EACH,WAAW,EAAE,YAAY;oCACzB,WAAW,CAAC,qBAAqB;oCAC/B,CAAC,CAAC;wCACE,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC,OAAO;wCACzC,MAAM,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;qCACzC;oCACH,CAAC,CAAC,SAAS;6BAChB;yBACF;qBACF;oBACH,CAAC,CAAC,IAAI,CAAC;gBACT,IAAI,mBAAmB;oBAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEf,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAE/C,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,WAAW,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YAEtC,sEAAsE;YACtE,MAAM,UAAU,GAAyB,CAAC,GAAG,EAAE;gBAC7C,IAAI,CAAC;oBACH,OAAO,SAAS,CAAC,QAAQ;wBACvB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAmB;wBACnD,CAAC,CAAC,IAAI,CAAC;gBACX,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;YAEL,qDAAqD;YACrD,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAE7B,gFAAgF;YAChF,MAAM,SAAS,GACb,SAAS,CAAC,MAAM,KAAK,SAAS,IAAK,SAAS,CAAC,MAAc,KAAK,CAAC,CAAC;YACpE,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE;oBAC1D,OAAO,EAAE,SAAS,CAAC,EAAE;oBACrB,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,YAAY,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;iBAC9C,CAAC,CAAC;gBACH,6DAA6D;gBAC7D,UAAU,CAAC,KAAK,IAAI,EAAE;oBACpB,mEAAmE;oBACnE,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;wBAC/B,OAAO,CAAC,GAAG,CACT,0EAA0E,CAC3E,CAAC;wBACF,OAAO;oBACT,CAAC;oBAED,yCAAyC;oBACzC,sBAAsB,CAAC,OAAO,GAAG,KAAK,CAAC;oBAEvC,uEAAuE;oBACvE,MAAM,eAAe,CAAC,SAAS,CAAC,CAAC;gBACnC,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;YAC9C,wDAAwD;YACxD,IACE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;gBAC7B,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EACnC,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;gBACxD,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACpB,WAAW,CAAC,EAAE,CAAC,CAAC;gBAChB,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5C,QAAQ,CAAC,2BAA2B,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IAEnB,eAAe;IACf,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,qEAAqE;IACrE,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAC7C,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrC,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAEhB,8EAA8E;IAC9E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEjD,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;QAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC,WAAW;YAAE,OAAO;QAE3D,IAAI,CAAC;YACH,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,EAAE,EAAE,CAAC;YAE1B,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,4DAA4D;YAC5D,MAAM,WAAW,GAAqB;gBACpC,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,EAAE;gBACxB,OAAO;gBACP,YAAY,EAAE,QAAQ,CAAC,MAAM;gBAC7B,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;gBACtB,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;gBACnB,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,EAAE;gBACT,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC;gBACf,iBAAiB,EAAE,CAAC;gBACpB,cAAc,EAAE,CAAC;gBACjB,eAAe,EAAE,CAAC;gBAClB,oBAAoB,EAAE,CAAC;gBACvB,SAAS,EAAE,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC;YAEF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;YAE9C,MAAM,OAAO,GAAI,aAAqB,EAAE,cAAc,EAAE,OAE3C,CAAC;YACd,MAAM,gBAAgB,GAAG,OAAO,EAAE,YAAY,EAAE,MAAM;gBACpD,CAAC,CAAC,OAAO,CAAC,YAAY;gBACtB,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,kBAAkB,GAAG,gBAAgB,EAAE,MAAM;gBACjD,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBACzD,CAAC,CAAC,WAAW,CAAC,SAAS;oBACvB,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,OAAO,GAAsB;gBACjC,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;gBACtB,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,SAAS,EAAE,SAAS,EAAE,qCAAqC;gBAC3D,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,WAAW,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE;gBACnD,QAAQ,EAAE,WAAW,CAAC,qBAAqB,EAAE,QAAQ,IAAI,IAAI;gBAC7D,OAAO,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,IAAI,CAAC;gBACxD,SAAS,EAAE,kBAAkB;gBAC7B,YAAY,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,IAAI,SAAS;gBAC1D,qBAAqB,EAAE,CAAC,CAAC,kBAAkB,EAAE,MAAM;gBACnD,iBAAiB,EAAE,KAAK;gBACxB,aAAa,EAAE,KAAK;aACrB,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YAExC,qDAAqD;YACrD,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE9B,wDAAwD;YACxD,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAE1B,oFAAoF;YAEpF,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;YAE1B,yBAAyB;YACzB,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClB,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACzB,MAAM,CAAC,IAAI,EAAE;oBACb,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBACvD,CAAC,CAAC;gBACH,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;YAED,SAAS,CAAC,EAAE,CAAC,CAAC;YAEd,2DAA2D;YAC3D,MAAM,eAAe,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YAC/C,QAAQ,CAAC,yBAAyB,CAAC,CAAC;YACpC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC/B,wDAAwD;YACxD,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,CAAsB,EAAE,EAAE;QAChD,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAClD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACxB,+EAA+E;YAC/E,MAAM,kBAAkB,GACtB,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,mBAAmB,KAAK,CAAC,CAAC,CAAC;YAC3D,IAAI,kBAAkB,EAAE,CAAC;gBACvB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GACZ,mBAAmB,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;wBAC5C,CAAC,CAAC,mBAAmB,GAAG,CAAC;wBACzB,CAAC,CAAC,mBAAmB,CAAC;oBAC1B,sBAAsB,CAAC,QAAQ,CAAC,CAAC;oBACjC,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBACjD,IAAI,WAAW,CAAC,OAAO,IAAI,gBAAgB,EAAE,CAAC;wBAC5C,SAAS,CAAC,gBAAgB,CAAC,CAAC;wBAC5B,UAAU,CAAC,GAAG,EAAE;4BACd,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gCACxB,WAAW,CAAC,OAAO,CAAC,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC;gCAC7D,WAAW,CAAC,OAAO,CAAC,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC;4BAC7D,CAAC;wBACH,CAAC,EAAE,CAAC,CAAC,CAAC;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,KAAK,WAAW,IAAI,mBAAmB,IAAI,CAAC,EAAE,CAAC;YACtD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,mBAAmB,GAAG,CAAC,CAAC;YACzC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,gBAAgB,GACpB,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC5B,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,UAAU,CAAC,GAAG,EAAE;oBACd,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;wBACxB,WAAW,CAAC,OAAO,CAAC,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC;wBAC7D,WAAW,CAAC,OAAO,CAAC,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC;oBAC7D,CAAC;gBACH,CAAC,EAAE,CAAC,CAAC,CAAC;YACR,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,kGAAkG;IAClG,MAAM,gBAAgB,GAAG,WAAW,CAClC,KAAK,EACH,GAAmD,EACnD,KAAc,EACd,EAAE;QACF,IAAI,CAAC,KAAK,EAAE,EAAE;YAAE,OAAO;QACvB,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,GAAkB;YAC1B,GAAG,OAAO;YACV,cAAc,EAAE;gBACd,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;gBACjC,OAAO,EAAE;oBACP,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc;wBACxB,OAAO,CAAC,cAAsB,CAAC,OAAO,CAAC;wBACxC,EAAE,CAAC;iBACN;aACF;SACe,CAAC;QAEnB,IAAI,IAAI,CAAC,cAAc,IAAK,IAAI,CAAC,cAAsB,CAAC,OAAO,EAAE,CAAC;YAChE,MAAM,GAAG,GAAI,IAAI,CAAC,cAAsB,CAAC,OAAO,CAAC;YACjD,IAAI,GAAG,KAAK,OAAO,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC9D,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC3B,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,GAAG,CAAC,KAAK,CAAC;YAC/C,CAAC;iBAAM,IACL,GAAG,KAAK,cAAc;gBACtB,OAAO,KAAK,KAAK,QAAQ;gBACzB,GAAG,CAAC,YAAY,EAChB,CAAC;gBACD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAClC,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,GAAG,CAAC,YAAY,CAAC;YAC7D,CAAC;iBAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC3B,OAAO,GAAG,CAAC,KAAK,CAAC;YACnB,CAAC;iBAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,GAAG,CAAC,OAAO,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,8DAA8D;YAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO;YACT,CAAC;YAED,kDAAkD;YAClD,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1C,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC1D,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE,EAAE,aAAa,CAAC,CAC3B,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,IAAI,EAAE;QACnC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,qBAAqB;YAAE,OAAO;QAE9D,2EAA2E;QAC3E,oFAAoF;QACpF,8EAA8E;QAC9E,MAAM,IAAI,GAAG,WAAW,CAAC,qBAAqB,CAAC;QAC/C,MAAM,SAAS,GAAG;YAChB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,WAAW,CAAC,iBAAiB,EAAE,IAAI;YACzC,IAAI,EAAE,KAAK,EAAE,QAAQ;SACtB,CAAC;QAEF,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,CAAC;QACpC,MAAM,YAAY,GACd,OAAO,CAAC,cAAsB,EAAE,OAAO,EAAE,KAAoB,IAAI,EAAE,CAAC;QAExE,2CAA2C;QAC3C,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,YAAY,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CACnE,CAAC;QAEF,IACE,eAAe,CAAC,GAAG,CACjB,GAAG,SAAS,CAAC,EAAE,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,EAAE,CAC7D,EACD,CAAC;YACD,OAAO,CAAC,sBAAsB;QAChC,CAAC;QAED,MAAM,IAAI,GAAkB;YAC1B,GAAG,OAAO;YACV,cAAc,EAAE;gBACd,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;gBACjC,OAAO,EAAE;oBACP,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc;wBACxB,OAAO,CAAC,cAAsB,CAAC,OAAO,CAAC;wBACxC,EAAE,CAAC;oBACL,KAAK,EAAE,CAAC,GAAG,YAAY,EAAE,SAAS,CAAC;iBACpC;aACF;SACe,CAAC;QAEnB,IAAI,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO;YACT,CAAC;YACD,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1C,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC1D,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,8BAA8B,GAAG,KAAK,IAAI,EAAE;QAChD,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM;YAAE,OAAO;QAE1D,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,CAAC;QACpC,MAAM,mBAAmB,GACrB,OAAO,CAAC,cAAsB,EAAE,OAAO,EAAE,YAAyB;YACpE,EAAE,CAAC;QAEL,sDAAsD;QACtD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAClD,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAC7B,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,2BAA2B;QAErE,MAAM,IAAI,GAAkB;YAC1B,GAAG,OAAO;YACV,cAAc,EAAE;gBACd,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;gBACjC,OAAO,EAAE;oBACP,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc;wBACxB,OAAO,CAAC,cAAsB,CAAC,OAAO,CAAC;wBACxC,EAAE,CAAC;oBACL,YAAY,EAAE,CAAC,GAAG,mBAAmB,EAAE,GAAG,eAAe,CAAC;iBAC3D;aACF;SACe,CAAC;QAEnB,IAAI,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO;YACT,CAAC;YACD,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1C,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC1D,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE;QACrD,IAAI,CAAC,KAAK,EAAE,EAAE;YAAE,OAAO;QAEvB,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE;YACzB,IACE,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;gBACpC,OAAO,CAAC,UAAU,EAClB,CAAC;gBACD,IAAI,CAAC;oBACH,OAAO,OAAO,CAAC,UAAU,CAAC,SAAS,CACjC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,EAC/B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAC/C,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,GAAkB;YAC1B,GAAG,OAAO;YACV,cAAc,EAAE;gBACd,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;gBACjC,OAAO,EAAE;oBACP,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc;wBACxB,OAAO,CAAC,cAAsB,CAAC,OAAO,CAAC;wBACxC,EAAE,CAAC;oBACL,OAAO,EAAE;wBACP,EAAE,EAAE,OAAO,CAAC,EAAE;wBACd,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,YAAY;wBACZ,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;qBAC3B;iBACF;aACF;SACe,CAAC;QAEnB,IAAI,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO;YACT,CAAC;YACD,MAAM,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1C,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC1D,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC,CAAC;IAEF,8DAA8D;IAC9D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAI,aAAqB,EAAE,cAAc,EAAE,OAW3C,CAAC;QACd,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAC/B,wBAAwB,CAAC,SAAS,CAAC,CAAC;YACpC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,oDAAoD;QACpD,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,IAAI,GAAuB,SAAS,CAAC,IAAI,CAAC;gBAC9C,IACE,CAAC,IAAI;oBACL,WAAW,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;oBAC9D,WAAW,EAAE,iBAAiB,EAAE,IAAI,EACpC,CAAC;oBACD,IAAI,GAAG,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC;gBAC5C,CAAC;qBAAM,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,QAAQ,EAAE,CAAC;oBACpC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;gBACtD,CAAC;gBACD,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,mBAAmB,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;;YAAM,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAEtC,8DAA8D;QAC9D,IAAI,OAAO,CAAC,YAAY,EAAE,MAAM,IAAI,WAAW,EAAE,IAAI,EAAE,CAAC;YACtD,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClE,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACvC,CAAC;gBAAC,MAAM,CAAC;oBACP,wBAAwB,CAAC,SAAS,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,wBAAwB,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;;YAAM,wBAAwB,CAAC,SAAS,CAAC,CAAC;QAE3C,qBAAqB;QACrB,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,OAAO,CAAC,KAAK,IAAI,WAAW,EAAE,eAAe,EAAE,CAAC;gBAClD,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC;wBACvD,IAAI,EAAE;4BACJ,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;4BACxB,QAAQ,EAAE,WAAW,CAAC,qBAAqB,EAAE,QAAQ,IAAI,IAAI;4BAC7D,OAAO,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,IAAI,CAAC;yBACzD;wBACD,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;qBAC/B,CAAC,CAAC;oBACH,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACpC,CAAC;gBAAC,MAAM,CAAC;oBACP,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;;gBAAM,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE;QACD,aAAa;QACb,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,iBAAiB;QAC9B,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,eAAe;KAC7B,CAAC,CAAC;IAEH,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,cAAK,SAAS,EAAC,yCAAyC,YACtD,eAAK,SAAS,EAAC,+CAA+C,aAC5D,KAAC,OAAO,IAAC,SAAS,EAAC,sBAAsB,EAAC,WAAW,EAAE,CAAC,GAAI,wBAExD,GACF,CACP,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,MAAM,WAAW,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEnD,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAChC,MAAM,GAAG,GAAI,aAAqB,EAAE,cAAc,EAAE,OAYvC,CAAC;QAEd,wDAAwD;QACxD,MAAM,UAAU,GACd,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAEtE,8CAA8C;QAC9C,MAAM,uBAAuB,GAC3B,WAAW,EAAE,qBAAqB;YAClC,GAAG,EAAE,KAAK,EAAE,IAAI,CACd,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,qBAAqB,EAAE,EAAE;gBACjD,IAAI,CAAC,QAAQ,KAAK,WAAW,CAAC,qBAAqB,EAAE,QAAQ;gBAC7D,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,qBAAqB,EAAE,OAAO,CAC9D,CAAC;QAEJ,+DAA+D;QAC/D,MAAM,8BAA8B,GAClC,WAAW,EAAE,SAAS,EAAE,MAAM;YAC9B,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CACzC,GAAG,EAAE,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,CACxC,CAAC;QAEJ,MAAM,UAAU,GACd,CAAC,CAAC,WAAW,EAAE,qBAAqB,IAAI,CAAC,uBAAuB,CAAC;QACnE,MAAM,eAAe,GACnB,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC,8BAA8B,CAAC;QAEtE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe;YAAE,OAAO,IAAI,CAAC;QAEhE,MAAM,IAAI,GAAG,CAAC,EACZ,IAAI,EACJ,KAAK,EACL,QAAQ,GAKT,EAAE,EAAE,CAAC,CACJ,gBAAM,SAAS,EAAC,kHAAkH,aAC/H,IAAI,EACL,eAAM,SAAS,EAAC,wBAAwB,EAAC,KAAK,EAAE,KAAK,YAClD,KAAK,GACD,EACP,iBACE,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,wCAAwC,gBACvC,gBAAgB,YAE3B,KAAC,CAAC,IAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAE,CAAC,GAAI,GAClC,IACJ,CACR,CAAC;QAEF,MAAM,KAAK,GAAsB,EAAE,CAAC;QAEpC,oBAAoB;QACpB,IAAI,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YACvB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAChC,MAAM,aAAa,GACjB,IAAI,CAAC,IAAI;oBACT,gBAAgB;oBAChB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAClE,MAAM,SAAS,GAAG,GAAG,aAAa,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC;gBAChG,KAAK,CAAC,IAAI,CACR,KAAC,IAAI,IAEH,IAAI,EACF,KAAC,QAAQ,IAAC,SAAS,EAAC,uBAAuB,EAAC,WAAW,EAAE,CAAC,GAAI,EAEhE,KAAK,EAAE,SAAS,SAAS,EAAE,EAC3B,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,IAL3C,QAAQ,KAAK,EAAE,CAMpB,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,yBAAyB;QACzB,IAAI,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;YAC9B,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE;gBAC9C,IAAI,SAAS,GAAG,WAAW,CAAC;gBAC5B,IAAI,KAAK,KAAK,CAAC,IAAI,qBAAqB,EAAE,CAAC;oBACzC,SAAS,GAAG,qBAAqB,CAAC;gBACpC,CAAC;qBAAM,IAAI,WAAW,EAAE,IAAI,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;wBAC7D,SAAS,GAAG,IAAI,EAAE,IAAI,IAAI,WAAW,CAAC;oBACxC,CAAC;oBAAC,MAAM,CAAC;wBACP,+BAA+B;oBACjC,CAAC;gBACH,CAAC;gBACD,KAAK,CAAC,IAAI,CACR,KAAC,IAAI,IAEH,IAAI,EAAE,KAAC,MAAM,IAAC,SAAS,EAAC,uBAAuB,EAAC,WAAW,EAAE,CAAC,GAAI,EAClE,KAAK,EAAE,cAAc,SAAS,EAAE,EAChC,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,cAAc,EAAE,KAAK,CAAC,IAHlD,aAAa,KAAK,EAAE,CAIzB,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,oBAAoB;QACpB,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,iBAAiB,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACjF,KAAK,CAAC,IAAI,CACR,KAAC,IAAI,IAEH,IAAI,EAAE,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,EAAC,WAAW,EAAE,CAAC,GAAI,EAChE,KAAK,EAAE,UAAU,UAAU,EAAE,EAC7B,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAHrC,OAAO,CAIX,CACH,CAAC;QACJ,CAAC;QAED,OAAO,CACL,cAAK,SAAS,EAAC,oCAAoC,YACjD,eAAK,SAAS,EAAC,yDAAyD,aACtE,cAAK,SAAS,EAAC,mCAAmC,YAAE,KAAK,GAAO,EAChE,eAAK,SAAS,EAAC,wCAAwC,aACpD,UAAU,IAAI,CACb,MAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAE,iBAAiB,aAC5D,KAAC,IAAI,IAAC,SAAS,EAAC,cAAc,EAAC,WAAW,EAAE,CAAC,GAAI,yBAE1C,CACV,EACA,eAAe,IAAI,CAClB,MAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,8BAA8B,aAEvC,KAAC,IAAI,IAAC,SAAS,EAAC,cAAc,EAAC,WAAW,EAAE,CAAC,GAAI,gCAE1C,CACV,IACG,IACF,GACF,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,sBAAsB,aAEnC,eACE,GAAG,EAAE,oBAAoB,EACzB,SAAS,EAAC,wBAAwB,EAClC,QAAQ,EAAE,YAAY,aAErB,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,wDAAwD,YACrE,eAAK,SAAS,EAAC,kBAAkB,aAC/B,KAAC,WAAW,IACV,SAAS,EAAC,6BAA6B,EACvC,WAAW,EAAE,CAAC,GACd,EACF,eAAK,SAAS,EAAC,MAAM,aACnB,YAAG,SAAS,EAAC,kCAAkC,sBAAU,EACzD,YAAG,SAAS,EAAC,2BAA2B,YAAE,KAAK,GAAK,IAChD,IACF,GACF,CACP,EAEA,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAClC,cAAK,SAAS,EAAC,6CAA6C,YAC1D,eAAK,SAAS,EAAC,aAAa,aAC1B,KAAC,GAAG,IACF,SAAS,EAAC,sCAAsC,EAChD,WAAW,EAAE,CAAC,GACd,EACF,aAAI,SAAS,EAAC,wCAAwC,qCAEjD,EACL,YAAG,SAAS,EAAC,4BAA4B,oEAErC,EACJ,cAAK,SAAS,EAAC,uBAAuB,0FAGhC,IACF,GACF,CACP,EAED,eAAK,SAAS,EAAC,gDAAgD,aAC5D,wBAAwB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;gCAC5D,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC/C,sBAAsB;oCACtB,OAAO,CACL,KAAC,WAAW,IAAkB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAtC,UAAU,CAAgC,CAC7D,CAAC;gCACJ,CAAC;qCAAM,CAAC;oCACN,oCAAoC;oCACpC,qDAAqD;oCACrD,MAAM,mBAAmB,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAC7C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,KAAK,WAAW,CAC7D,CAAC;oCAEF,MAAM,iBAAiB,GAAG,8BAA8B,CACtD,KAAK,CAAC,QAAQ,CACf,CAAC;oCAEF,OAAO,CACL,KAAC,iBAAiB,IAEhB,QAAQ,EAAE,iBAAiB,EAC3B,QAAQ,EAAE,CAAC,YAAY,IAAI,CAAC,YAAY,EACxC,cAAc,EAAE,EAAE,EAClB,KAAK,EAAE,KAAK,IAAI,SAAS,IAJpB,UAAU,CAKf,CACH,CAAC;gCACJ,CAAC;4BACH,CAAC,CAAC,EAGD,CAAC,oBAAoB;gCACpB,wBAAwB,CAAC,QAAQ,CAAC,CAAC,IAAI,CACrC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,iBAAiB;oCAChC,KAAK,CAAC,QAAQ,CAAC,IAAI,CACjB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,KAAK,WAAW,CAC7D,CACJ,CAAC,IAAI,KAAC,WAAW,KAAG,IACnB,EAEN,cAAK,GAAG,EAAE,cAAc,GAAI,IACxB,EAGL,WAAW,CAAC,SAAS,GAAG,CAAC,IAAI,CAC5B,cAAK,SAAS,EAAC,oCAAoC,YACjD,KAAC,gBAAgB,IACf,WAAW,EAAE,WAAW,EACxB,SAAS,EAAC,kBAAkB,GAC5B,GACE,CACP,EAGA,oBAAoB,EAAE,EAGvB,cAAK,SAAS,EAAC,8BAA8B,YAC3C,eAAK,SAAS,EAAC,0BAA0B,aACvC,KAAC,QAAQ,IACP,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gCACd,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gCAC1B,8CAA8C;gCAC9C,IAAI,mBAAmB,KAAK,CAAC,CAAC,EAAE,CAAC;oCAC/B,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;gCAC7B,CAAC;4BACH,CAAC,EACD,SAAS,EAAE,cAAc,EACzB,WAAW,EAAC,+DAA+D,EAC3E,SAAS,EAAC,0CAA0C,EACpD,QAAQ,EAAE,YAAY,GACtB,EACF,KAAC,MAAM,IACL,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,YAAY,EACxC,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,UAAU,YAEnB,YAAY,CAAC,CAAC,CAAC,CACd,KAAC,OAAO,IAAC,SAAS,EAAC,sBAAsB,EAAC,WAAW,EAAE,CAAC,GAAI,CAC7D,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAE,CAAC,GAAI,CAC7C,GACM,IACL,GACF,IACF,CACP,CAAC;AACJ,CAAC"}