@metrevals/inspect-scout-viewer 0.2.3-beta.1763116516
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.
- package/README.md +97 -0
- package/lib/App.d.ts +3 -0
- package/lib/App.d.ts.map +1 -0
- package/lib/AppErrorBoundary.d.ts +16 -0
- package/lib/AppErrorBoundary.d.ts.map +1 -0
- package/lib/AppRouter.d.ts +2 -0
- package/lib/AppRouter.d.ts.map +1 -0
- package/lib/_commonjsHelpers-DWwsNxpa.js +9 -0
- package/lib/_commonjsHelpers-DWwsNxpa.js.map +1 -0
- package/lib/api/api-scout-server.d.ts +3 -0
- package/lib/api/api-scout-server.d.ts.map +1 -0
- package/lib/api/api-vscode.d.ts +4 -0
- package/lib/api/api-vscode.d.ts.map +1 -0
- package/lib/api/api.d.ts +11 -0
- package/lib/api/api.d.ts.map +1 -0
- package/lib/api/jsonrpc.d.ts +44 -0
- package/lib/api/jsonrpc.d.ts.map +1 -0
- package/lib/app/appearance/fonts.d.ts +27 -0
- package/lib/app/appearance/fonts.d.ts.map +1 -0
- package/lib/app/appearance/icons.d.ts +130 -0
- package/lib/app/appearance/icons.d.ts.map +1 -0
- package/lib/app/appearance/styles.d.ts +39 -0
- package/lib/app/appearance/styles.d.ts.map +1 -0
- package/lib/app/components/Footer.d.ts +20 -0
- package/lib/app/components/Footer.d.ts.map +1 -0
- package/lib/app/components/MarkdownDivWithReferences.d.ts +15 -0
- package/lib/app/components/MarkdownDivWithReferences.d.ts.map +1 -0
- package/lib/app/components/Pager.d.ts +10 -0
- package/lib/app/components/Pager.d.ts.map +1 -0
- package/lib/app/hooks.d.ts +19 -0
- package/lib/app/hooks.d.ts.map +1 -0
- package/lib/app/navbar/Navbar.d.ts +8 -0
- package/lib/app/navbar/Navbar.d.ts.map +1 -0
- package/lib/app/navbar/useBreadcrumbTruncation.d.ts +13 -0
- package/lib/app/navbar/useBreadcrumbTruncation.d.ts.map +1 -0
- package/lib/app/result/ScanResultHeader.d.ts +8 -0
- package/lib/app/result/ScanResultHeader.d.ts.map +1 -0
- package/lib/app/result/ScanResultNav.d.ts +3 -0
- package/lib/app/result/ScanResultNav.d.ts.map +1 -0
- package/lib/app/result/ScanResultPanel.d.ts +3 -0
- package/lib/app/result/ScanResultPanel.d.ts.map +1 -0
- package/lib/app/result/info/InfoPanel.d.ts +9 -0
- package/lib/app/result/info/InfoPanel.d.ts.map +1 -0
- package/lib/app/result/input/InputPanel.d.ts +7 -0
- package/lib/app/result/input/InputPanel.d.ts.map +1 -0
- package/lib/app/result/result/ResultPanel.d.ts +8 -0
- package/lib/app/result/result/ResultPanel.d.ts.map +1 -0
- package/lib/app/result/transcript/TranscriptPanel.d.ts +11 -0
- package/lib/app/result/transcript/TranscriptPanel.d.ts.map +1 -0
- package/lib/app/scanJobs/ScanJobGrid.d.ts +3 -0
- package/lib/app/scanJobs/ScanJobGrid.d.ts.map +1 -0
- package/lib/app/scanJobs/ScanJobsPanel.d.ts +3 -0
- package/lib/app/scanJobs/ScanJobsPanel.d.ts.map +1 -0
- package/lib/app/scanner/ScannerPanel.d.ts +3 -0
- package/lib/app/scanner/ScannerPanel.d.ts.map +1 -0
- package/lib/app/scanner/ScannerPanelBody.d.ts +4 -0
- package/lib/app/scanner/ScannerPanelBody.d.ts.map +1 -0
- package/lib/app/scanner/ScannerPanelTitle.d.ts +3 -0
- package/lib/app/scanner/ScannerPanelTitle.d.ts.map +1 -0
- package/lib/app/scanner/info/ScanInfo.d.ts +3 -0
- package/lib/app/scanner/info/ScanInfo.d.ts.map +1 -0
- package/lib/app/scanner/results/ScanResultsBody.d.ts +3 -0
- package/lib/app/scanner/results/ScanResultsBody.d.ts.map +1 -0
- package/lib/app/scanner/results/ScanResultsFilter.d.ts +5 -0
- package/lib/app/scanner/results/ScanResultsFilter.d.ts.map +1 -0
- package/lib/app/scanner/results/ScanResultsOutline.d.ts +3 -0
- package/lib/app/scanner/results/ScanResultsOutline.d.ts.map +1 -0
- package/lib/app/scanner/results/ScanResultsPanel.d.ts +3 -0
- package/lib/app/scanner/results/ScanResultsPanel.d.ts.map +1 -0
- package/lib/app/scanner/results/list/ScanHeader.d.ts +8 -0
- package/lib/app/scanner/results/list/ScanHeader.d.ts.map +1 -0
- package/lib/app/scanner/results/list/ScanResultsList.d.ts +13 -0
- package/lib/app/scanner/results/list/ScanResultsList.d.ts.map +1 -0
- package/lib/app/scanner/results/list/ScanResultsRow.d.ts +10 -0
- package/lib/app/scanner/results/list/ScanResultsRow.d.ts.map +1 -0
- package/lib/app/types.d.ts +117 -0
- package/lib/app/types.d.ts.map +1 -0
- package/lib/app/utils/arrow.d.ts +3 -0
- package/lib/app/utils/arrow.d.ts.map +1 -0
- package/lib/app/utils/refs.d.ts +5 -0
- package/lib/app/utils/refs.d.ts.map +1 -0
- package/lib/app/utils/results.d.ts +7 -0
- package/lib/app/utils/results.d.ts.map +1 -0
- package/lib/app/values/Explanation.d.ts +8 -0
- package/lib/app/values/Explanation.d.ts.map +1 -0
- package/lib/app/values/Identifier.d.ts +8 -0
- package/lib/app/values/Identifier.d.ts.map +1 -0
- package/lib/app/values/Value.d.ts +9 -0
- package/lib/app/values/Value.d.ts.map +1 -0
- package/lib/chat/ChatMessage.d.ts +14 -0
- package/lib/chat/ChatMessage.d.ts.map +1 -0
- package/lib/chat/ChatMessageRenderer.d.ts +16 -0
- package/lib/chat/ChatMessageRenderer.d.ts.map +1 -0
- package/lib/chat/ChatMessageRow.d.ts +19 -0
- package/lib/chat/ChatMessageRow.d.ts.map +1 -0
- package/lib/chat/ChatView.d.ts +21 -0
- package/lib/chat/ChatView.d.ts.map +1 -0
- package/lib/chat/ChatViewVirtualList.d.ts +30 -0
- package/lib/chat/ChatViewVirtualList.d.ts.map +1 -0
- package/lib/chat/JsonMessageContent.d.ts +8 -0
- package/lib/chat/JsonMessageContent.d.ts.map +1 -0
- package/lib/chat/MessageCitations.d.ts +7 -0
- package/lib/chat/MessageCitations.d.ts.map +1 -0
- package/lib/chat/MessageContent.d.ts +19 -0
- package/lib/chat/MessageContent.d.ts.map +1 -0
- package/lib/chat/MessageContents.d.ts +19 -0
- package/lib/chat/MessageContents.d.ts.map +1 -0
- package/lib/chat/content-data/ContentDataView.d.ts +20 -0
- package/lib/chat/content-data/ContentDataView.d.ts.map +1 -0
- package/lib/chat/content-data/WebSearch.d.ts +5 -0
- package/lib/chat/content-data/WebSearch.d.ts.map +1 -0
- package/lib/chat/content-data/WebSearchResults.d.ts +10 -0
- package/lib/chat/content-data/WebSearchResults.d.ts.map +1 -0
- package/lib/chat/documents/ContentDocumentView.d.ts +9 -0
- package/lib/chat/documents/ContentDocumentView.d.ts.map +1 -0
- package/lib/chat/messages.d.ts +9 -0
- package/lib/chat/messages.d.ts.map +1 -0
- package/lib/chat/server-tools/ServerToolCall.d.ts +13 -0
- package/lib/chat/server-tools/ServerToolCall.d.ts.map +1 -0
- package/lib/chat/tools/ToolCallView.d.ts +20 -0
- package/lib/chat/tools/ToolCallView.d.ts.map +1 -0
- package/lib/chat/tools/ToolInput.d.ts +12 -0
- package/lib/chat/tools/ToolInput.d.ts.map +1 -0
- package/lib/chat/tools/ToolOutput.d.ts +12 -0
- package/lib/chat/tools/ToolOutput.d.ts.map +1 -0
- package/lib/chat/tools/ToolTitle.d.ts +11 -0
- package/lib/chat/tools/ToolTitle.d.ts.map +1 -0
- package/lib/chat/tools/tool-input/TodoWriteInput.d.ts +6 -0
- package/lib/chat/tools/tool-input/TodoWriteInput.d.ts.map +1 -0
- package/lib/chat/tools/tool.d.ts +13 -0
- package/lib/chat/tools/tool.d.ts.map +1 -0
- package/lib/chat/types.d.ts +4 -0
- package/lib/chat/types.d.ts.map +1 -0
- package/lib/chunk-DfAF0w94-Oj7OW_Zs.js +9 -0
- package/lib/chunk-DfAF0w94-Oj7OW_Zs.js.map +1 -0
- package/lib/components/ActivityBar.d.ts +7 -0
- package/lib/components/ActivityBar.d.ts.map +1 -0
- package/lib/components/AnsiDisplay.d.ts +9 -0
- package/lib/components/AnsiDisplay.d.ts.map +1 -0
- package/lib/components/AsciinemaPlayer.d.ts +20 -0
- package/lib/components/AsciinemaPlayer.d.ts.map +1 -0
- package/lib/components/Card.d.ts +33 -0
- package/lib/components/Card.d.ts.map +1 -0
- package/lib/components/CopyButton.d.ts +12 -0
- package/lib/components/CopyButton.d.ts.map +1 -0
- package/lib/components/DataframeView.d.ts +8 -0
- package/lib/components/DataframeView.d.ts.map +1 -0
- package/lib/components/EmptyPanel.d.ts +7 -0
- package/lib/components/EmptyPanel.d.ts.map +1 -0
- package/lib/components/ErrorPanel.d.ts +13 -0
- package/lib/components/ErrorPanel.d.ts.map +1 -0
- package/lib/components/ExpandablePanel.d.ts +13 -0
- package/lib/components/ExpandablePanel.d.ts.map +1 -0
- package/lib/components/ExtendedFindContext.d.ts +8 -0
- package/lib/components/ExtendedFindContext.d.ts.map +1 -0
- package/lib/components/ExtendedFindProvider.d.ts +7 -0
- package/lib/components/ExtendedFindProvider.d.ts.map +1 -0
- package/lib/components/HumanBaselineView.d.ts +22 -0
- package/lib/components/HumanBaselineView.d.ts.map +1 -0
- package/lib/components/JsonPanel.d.ts +12 -0
- package/lib/components/JsonPanel.d.ts.map +1 -0
- package/lib/components/LabeledValue.d.ts +12 -0
- package/lib/components/LabeledValue.d.ts.map +1 -0
- package/lib/components/LightboxCarousel.d.ts +15 -0
- package/lib/components/LightboxCarousel.d.ts.map +1 -0
- package/lib/components/LiveVirtualList.d.ts +23 -0
- package/lib/components/LiveVirtualList.d.ts.map +1 -0
- package/lib/components/MarkdownDiv.d.ts +11 -0
- package/lib/components/MarkdownDiv.d.ts.map +1 -0
- package/lib/components/NavPills.d.ts +12 -0
- package/lib/components/NavPills.d.ts.map +1 -0
- package/lib/components/NoContentsPanel.d.ts +7 -0
- package/lib/components/NoContentsPanel.d.ts.map +1 -0
- package/lib/components/PopOver.d.ts +23 -0
- package/lib/components/PopOver.d.ts.map +1 -0
- package/lib/components/Preformatted.d.ts +8 -0
- package/lib/components/Preformatted.d.ts.map +1 -0
- package/lib/components/ProgressBar.d.ts +10 -0
- package/lib/components/ProgressBar.d.ts.map +1 -0
- package/lib/components/PulsingDots.d.ts +11 -0
- package/lib/components/PulsingDots.d.ts.map +1 -0
- package/lib/components/SegmentedControl.d.ts +15 -0
- package/lib/components/SegmentedControl.d.ts.map +1 -0
- package/lib/components/StickyScroll.d.ts +13 -0
- package/lib/components/StickyScroll.d.ts.map +1 -0
- package/lib/components/TabSet.d.ts +28 -0
- package/lib/components/TabSet.d.ts.map +1 -0
- package/lib/components/prism.d.ts +3 -0
- package/lib/components/prism.d.ts.map +1 -0
- package/lib/content/MetaDataGrid.d.ts +15 -0
- package/lib/content/MetaDataGrid.d.ts.map +1 -0
- package/lib/content/RecordTree.d.ts +25 -0
- package/lib/content/RecordTree.d.ts.map +1 -0
- package/lib/content/RenderedContent.d.ts +17 -0
- package/lib/content/RenderedContent.d.ts.map +1 -0
- package/lib/content/RenderedText.d.ts +11 -0
- package/lib/content/RenderedText.d.ts.map +1 -0
- package/lib/content/record_processors/store.d.ts +3 -0
- package/lib/content/record_processors/store.d.ts.map +1 -0
- package/lib/content/record_processors/types.d.ts +2 -0
- package/lib/content/record_processors/types.d.ts.map +1 -0
- package/lib/content/types.d.ts +17 -0
- package/lib/content/types.d.ts.map +1 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +113846 -0
- package/lib/index.js.map +1 -0
- package/lib/lib-CBtriEt5-CU1RYBHb.js +1070 -0
- package/lib/lib-CBtriEt5-CU1RYBHb.js.map +1 -0
- package/lib/liteDOM-Cp0aN3bP-DXyQNx3e.js +644 -0
- package/lib/liteDOM-Cp0aN3bP-DXyQNx3e.js.map +1 -0
- package/lib/main.d.ts +1 -0
- package/lib/main.d.ts.map +1 -0
- package/lib/router/url.d.ts +35 -0
- package/lib/router/url.d.ts.map +1 -0
- package/lib/state/hooks.d.ts +8 -0
- package/lib/state/hooks.d.ts.map +1 -0
- package/lib/state/scrolling.d.ts +23 -0
- package/lib/state/scrolling.d.ts.map +1 -0
- package/lib/state/store.d.ts +199 -0
- package/lib/state/store.d.ts.map +1 -0
- package/lib/styles/index.css +5827 -0
- package/lib/tex-svg-full-BI3fonbT-B0YPyt9p.js +28011 -0
- package/lib/tex-svg-full-BI3fonbT-B0YPyt9p.js.map +1 -0
- package/lib/transcript/ApprovalEventView.d.ts +13 -0
- package/lib/transcript/ApprovalEventView.d.ts.map +1 -0
- package/lib/transcript/ErrorEventView.d.ts +13 -0
- package/lib/transcript/ErrorEventView.d.ts.map +1 -0
- package/lib/transcript/InfoEventView.d.ts +13 -0
- package/lib/transcript/InfoEventView.d.ts.map +1 -0
- package/lib/transcript/InputEventView.d.ts +13 -0
- package/lib/transcript/InputEventView.d.ts.map +1 -0
- package/lib/transcript/LoggerEventView.d.ts +13 -0
- package/lib/transcript/LoggerEventView.d.ts.map +1 -0
- package/lib/transcript/ModelEventView.d.ts +26 -0
- package/lib/transcript/ModelEventView.d.ts.map +1 -0
- package/lib/transcript/SampleInitEventView.d.ts +13 -0
- package/lib/transcript/SampleInitEventView.d.ts.map +1 -0
- package/lib/transcript/SampleLimitEventView.d.ts +13 -0
- package/lib/transcript/SampleLimitEventView.d.ts.map +1 -0
- package/lib/transcript/SandboxEventView.d.ts +13 -0
- package/lib/transcript/SandboxEventView.d.ts.map +1 -0
- package/lib/transcript/ScoreEditEventView.d.ts +13 -0
- package/lib/transcript/ScoreEditEventView.d.ts.map +1 -0
- package/lib/transcript/ScoreEventView.d.ts +14 -0
- package/lib/transcript/ScoreEventView.d.ts.map +1 -0
- package/lib/transcript/SpanEventView.d.ts +14 -0
- package/lib/transcript/SpanEventView.d.ts.map +1 -0
- package/lib/transcript/StepEventView.d.ts +14 -0
- package/lib/transcript/StepEventView.d.ts.map +1 -0
- package/lib/transcript/SubtaskEventView.d.ts +14 -0
- package/lib/transcript/SubtaskEventView.d.ts.map +1 -0
- package/lib/transcript/ToolEventView.d.ts +14 -0
- package/lib/transcript/ToolEventView.d.ts.map +1 -0
- package/lib/transcript/TranscriptView.d.ts +13 -0
- package/lib/transcript/TranscriptView.d.ts.map +1 -0
- package/lib/transcript/TranscriptVirtualList.d.ts +32 -0
- package/lib/transcript/TranscriptVirtualList.d.ts.map +1 -0
- package/lib/transcript/TranscriptVirtualListComponent.d.ts +19 -0
- package/lib/transcript/TranscriptVirtualListComponent.d.ts.map +1 -0
- package/lib/transcript/event/EventNav.d.ts +13 -0
- package/lib/transcript/event/EventNav.d.ts.map +1 -0
- package/lib/transcript/event/EventNavs.d.ts +16 -0
- package/lib/transcript/event/EventNavs.d.ts.map +1 -0
- package/lib/transcript/event/EventPanel.d.ts +20 -0
- package/lib/transcript/event/EventPanel.d.ts.map +1 -0
- package/lib/transcript/event/EventProgressPanel.d.ts +7 -0
- package/lib/transcript/event/EventProgressPanel.d.ts.map +1 -0
- package/lib/transcript/event/EventRow.d.ts +13 -0
- package/lib/transcript/event/EventRow.d.ts.map +1 -0
- package/lib/transcript/event/EventSection.d.ts +13 -0
- package/lib/transcript/event/EventSection.d.ts.map +1 -0
- package/lib/transcript/event/EventTimingPanel.d.ts +13 -0
- package/lib/transcript/event/EventTimingPanel.d.ts.map +1 -0
- package/lib/transcript/event/utils.d.ts +3 -0
- package/lib/transcript/event/utils.d.ts.map +1 -0
- package/lib/transcript/hooks.d.ts +2 -0
- package/lib/transcript/hooks.d.ts.map +1 -0
- package/lib/transcript/outline/OutlineRow.d.ts +11 -0
- package/lib/transcript/outline/OutlineRow.d.ts.map +1 -0
- package/lib/transcript/outline/TranscriptOutline.d.ts +13 -0
- package/lib/transcript/outline/TranscriptOutline.d.ts.map +1 -0
- package/lib/transcript/outline/tree-visitors.d.ts +14 -0
- package/lib/transcript/outline/tree-visitors.d.ts.map +1 -0
- package/lib/transcript/state/StateDiffView.d.ts +12 -0
- package/lib/transcript/state/StateDiffView.d.ts.map +1 -0
- package/lib/transcript/state/StateEventRenderers.d.ts +49 -0
- package/lib/transcript/state/StateEventRenderers.d.ts.map +1 -0
- package/lib/transcript/state/StateEventView.d.ts +14 -0
- package/lib/transcript/state/StateEventView.d.ts.map +1 -0
- package/lib/transcript/transform/fixups.d.ts +7 -0
- package/lib/transcript/transform/fixups.d.ts.map +1 -0
- package/lib/transcript/transform/flatten.d.ts +16 -0
- package/lib/transcript/transform/flatten.d.ts.map +1 -0
- package/lib/transcript/transform/hooks.d.ts +7 -0
- package/lib/transcript/transform/hooks.d.ts.map +1 -0
- package/lib/transcript/transform/transform.d.ts +3 -0
- package/lib/transcript/transform/transform.d.ts.map +1 -0
- package/lib/transcript/transform/treeify.d.ts +4 -0
- package/lib/transcript/transform/treeify.d.ts.map +1 -0
- package/lib/transcript/transform/utils.d.ts +19 -0
- package/lib/transcript/transform/utils.d.ts.map +1 -0
- package/lib/transcript/types.d.ts +24 -0
- package/lib/transcript/types.d.ts.map +1 -0
- package/lib/types/index.d.ts +103 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/usage/ModelTokenTable.d.ts +9 -0
- package/lib/usage/ModelTokenTable.d.ts.map +1 -0
- package/lib/usage/ModelUsagePanel.d.ts +12 -0
- package/lib/usage/ModelUsagePanel.d.ts.map +1 -0
- package/lib/usage/TokenTable.d.ts +15 -0
- package/lib/usage/TokenTable.d.ts.map +1 -0
- package/lib/usage/UsageCard.d.ts +11 -0
- package/lib/usage/UsageCard.d.ts.map +1 -0
- package/lib/utils/array.d.ts +2 -0
- package/lib/utils/array.d.ts.map +1 -0
- package/lib/utils/arrow.d.ts +3 -0
- package/lib/utils/arrow.d.ts.map +1 -0
- package/lib/utils/base64.d.ts +5 -0
- package/lib/utils/base64.d.ts.map +1 -0
- package/lib/utils/chatMessage.d.ts +4 -0
- package/lib/utils/chatMessage.d.ts.map +1 -0
- package/lib/utils/dom.d.ts +2 -0
- package/lib/utils/dom.d.ts.map +1 -0
- package/lib/utils/embeddedState.d.ts +11 -0
- package/lib/utils/embeddedState.d.ts.map +1 -0
- package/lib/utils/format.d.ts +41 -0
- package/lib/utils/format.d.ts.map +1 -0
- package/lib/utils/html.d.ts +6 -0
- package/lib/utils/html.d.ts.map +1 -0
- package/lib/utils/json-worker.d.ts +2 -0
- package/lib/utils/json-worker.d.ts.map +1 -0
- package/lib/utils/json.d.ts +5 -0
- package/lib/utils/json.d.ts.map +1 -0
- package/lib/utils/logger.d.ts +8 -0
- package/lib/utils/logger.d.ts.map +1 -0
- package/lib/utils/mime.d.ts +2 -0
- package/lib/utils/mime.d.ts.map +1 -0
- package/lib/utils/object.d.ts +2 -0
- package/lib/utils/object.d.ts.map +1 -0
- package/lib/utils/path.d.ts +26 -0
- package/lib/utils/path.d.ts.map +1 -0
- package/lib/utils/python.d.ts +12 -0
- package/lib/utils/python.d.ts.map +1 -0
- package/lib/utils/react.d.ts +2 -0
- package/lib/utils/react.d.ts.map +1 -0
- package/lib/utils/sync.d.ts +22 -0
- package/lib/utils/sync.d.ts.map +1 -0
- package/lib/utils/type.d.ts +12 -0
- package/lib/utils/type.d.ts.map +1 -0
- package/lib/utils/uri.d.ts +20 -0
- package/lib/utils/uri.d.ts.map +1 -0
- package/lib/utils/vscode.d.ts +21 -0
- package/lib/utils/vscode.d.ts.map +1 -0
- package/lib/wgxpath.install-node-Csk64Aj9-Ckau6iLd.js +1081 -0
- package/lib/wgxpath.install-node-Csk64Aj9-Ckau6iLd.js.map +1 -0
- package/lib/xypic-DrMJn58R-DRoJoooA.js +9542 -0
- package/lib/xypic-DrMJn58R-DRoJoooA.js.map +1 -0
- package/package.json +100 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xypic-DrMJn58R-DRoJoooA.js","sources":["../node_modules/.pnpm/mathxyjax3@0.8.3/node_modules/mathxyjax3/dist/xypic-DrMJn58R.js"],"sourcesContent":["globalThis,(function(){var e={401:function(e,t){MathJax._.components.global.isObject,MathJax._.components.global.combineConfig,t.PV=MathJax._.components.global.combineDefaults,MathJax._.components.global.combineWithMathJax,t.NI=MathJax._.components.global.MathJax},771:function(e,t){t.v=MathJax._.core.MmlTree.MML.MML},376:function(e,t){t.Ls=MathJax._.core.MmlTree.MmlNode.TEXCLASS,MathJax._.core.MmlTree.MmlNode.TEXCLASSNAMES,MathJax._.core.MmlTree.MmlNode.indentAttributes,t.oI=MathJax._.core.MmlTree.MmlNode.AbstractMmlNode,MathJax._.core.MmlTree.MmlNode.AbstractMmlTokenNode,MathJax._.core.MmlTree.MmlNode.AbstractMmlLayoutNode,MathJax._.core.MmlTree.MmlNode.AbstractMmlBaseNode,MathJax._.core.MmlTree.MmlNode.AbstractMmlEmptyNode,MathJax._.core.MmlTree.MmlNode.TextNode,MathJax._.core.MmlTree.MmlNode.XMLNode},226:function(e,t){MathJax._.util.BBox.BBoxStyleAdjust,t.bK=MathJax._.util.BBox.BBox},238:function(e,t){t.VK=MathJax._.input.tex.Configuration.Configuration,MathJax._.input.tex.Configuration.ConfigurationHandler,MathJax._.input.tex.Configuration.ParserConfiguration},953:function(e,t){t.Z=MathJax._.input.tex.ParseMethods.default},166:function(e,t){MathJax._.input.tex.SymbolMap.AbstractSymbolMap,MathJax._.input.tex.SymbolMap.RegExpMap,MathJax._.input.tex.SymbolMap.AbstractParseMap,MathJax._.input.tex.SymbolMap.CharacterMap,MathJax._.input.tex.SymbolMap.DelimiterMap,MathJax._.input.tex.SymbolMap.MacroMap,t.QQ=MathJax._.input.tex.SymbolMap.CommandMap,t.QM=MathJax._.input.tex.SymbolMap.EnvironmentMap},847:function(e,t){t.Z=MathJax._.input.tex.TexError.default},789:function(e,t){t.Z=MathJax._.input.tex.TexParser.default},361:function(e,t){t.Z=MathJax._.input.tex.base.BaseMethods.default},81:function(e,t){MathJax._.output.chtml.Wrapper.FONTSIZE,MathJax._.output.chtml.Wrapper.SPACE,t.wO=MathJax._.output.chtml.Wrapper.CHTMLWrapper},748:function(e,t){t.w=MathJax._.output.chtml.Wrappers_ts.CHTMLWrappers},952:function(e,t){t.y=MathJax._.output.svg.Wrapper.SVGWrapper},84:function(e,t){t.N=MathJax._.output.svg.Wrappers_ts.SVGWrappers}},t={};function n(r){var i=t[r];if(i!==void 0)return i.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}(function(){var e=n(401);(0,e.PV)(e.NI._,`output`,{common:{Wrapper:{}},chtml:{Wrapper:{},Wrappers_ts:{}},svg:{Wrapper:{},Wrappers_ts:{}}});var t=n(238),r=n(166),i=n(361),a=n(953),o=n(789),s=n(847);function c(e,t){return console.error(e,t),new s.Z(e,t)}var l={whiteSpaceRegex:/^(\\s+|%[^\\r\\n]*(\\r\\n|\\r|\\n)?)+/,lengthResolution:128,interpolationResolution:5,machinePrecision:1e-12};function u(e){return u=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},u(e)}function d(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function f(e,t,n){return t&&d(e.prototype,t),n&&d(e,n),e}function p(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function h(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=_(e);if(t){var i=_(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return g(this,n)}}function g(e,t){if(t&&(u(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function _(e){return _=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_(e)}function v(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}var y=function e(){v(this,e)},b=function(e){p(n,e);var t=h(n);function n(e){var r;return v(this,n),(r=t.call(this)).get=e,r}return f(n,[{key:`isEmpty`,get:function(){return!1}},{key:`isDefined`,get:function(){return!0}},{key:`getOrElse`,value:function(e){return this.get}},{key:`flatMap`,value:function(e){return e(this.get)}},{key:`map`,value:function(e){return new n(e(this.get))}},{key:`foreach`,value:function(e){e(this.get)}},{key:`toString`,value:function(){return`Some(`+this.get+`)`}}],[{key:`unapply`,value:function(e){return new n(e.get)}}]),n}(y),x=function(e){p(n,e);var t=h(n);function n(){return v(this,n),t.call(this)}return f(n,[{key:`isEmpty`,get:function(){return!0}},{key:`isDefined`,get:function(){return!1}},{key:`getOrElse`,value:function(e){return e}},{key:`flatMap`,value:function(e){return this}},{key:`foreach`,value:function(e){}},{key:`map`,value:function(e){return this}},{key:`toString`,value:function(){return`None`}}],[{key:`unapply`,value:function(e){return new b(e)}}]),n}(y);function S(e){return S=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},S(e)}function C(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function w(e,t,n){return t&&C(e.prototype,t),n&&C(e,n),e}function T(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&E(e,t)}function E(e,t){return E=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},E(e,t)}function D(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=te(e);if(t){var i=te(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return ee(this,n)}}function ee(e,t){if(t&&(S(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function te(e){return te=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},te(e)}function ne(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}y.Some=b,y.None=x,y.empty=new x;var O=function e(){ne(this,e)},re=function(e){T(n,e);var t=D(n);function n(e,r){var i;return ne(this,n),(i=t.call(this)).head=e,i.tail=r,i}return w(n,[{key:`isEmpty`,get:function(){return!1}},{key:`at`,value:function(e){if(e<0||e>=this.length())throw Error(`no such element at `+e+`. index must be lower than `+this.length()+`.`);for(var t=this,n=0;n<e;n++)t=t.tail;return t.head}},{key:`length`,value:function(){for(var e=this,t=0;!e.isEmpty;)t++,e=e.tail;return t}},{key:`prepend`,value:function(e){return new n(e,this)}},{key:`append`,value:function(e){var t=new n(e,O.empty);return this.reverse().foreach((function(e){t=new n(e,t)})),t}},{key:`concat`,value:function(e){var t=e;return this.reverse().foreach((function(e){t=new n(e,t)})),t}},{key:`foldLeft`,value:function(e,t){var n,r;for(n=t(e,this.head),r=this.tail;!r.isEmpty;)n=t(n,r.head),r=r.tail;return n}},{key:`foldRight`,value:function(e,t){return this.tail.isEmpty?t(this.head,e):t(this.head,this.tail.foldRight(e,t))}},{key:`map`,value:function(e){return new n(e(this.head),this.tail.map(e))}},{key:`flatMap`,value:function(e){return e(this.head).concat(this.tail.flatMap(e))}},{key:`foreach`,value:function(e){for(var t=this;!t.isEmpty;)e(t.head),t=t.tail}},{key:`reverse`,value:function(){var e=O.empty;return this.foreach((function(t){e=new n(t,e)})),e}},{key:`mkString`,value:function(){var e,t,r,i,a;switch(arguments.length){case 0:e=t=r=``;break;case 1:t=arguments[0],e=r=``;break;case 2:e=arguments[0],t=arguments[1],r=``;break;default:e=arguments[0],t=arguments[1],r=arguments[2]}for(i=e+this.head.toString(),a=this.tail;a instanceof n;)i+=t+a.head.toString(),a=a.tail;return i+=r}},{key:`toString`,value:function(){return this.mkString(`[`,`, `,`]`)}}],[{key:`unapply`,value:function(e){return new y.Some([e.head,e.tail])}}]),n}(O);O.Cons=re;var ie=function(e){T(n,e);var t=D(n);function n(){return ne(this,n),t.call(this)}return w(n,[{key:`isEmpty`,get:function(){return!0}},{key:`at`,value:function(e){throw Error(`cannot get element from an empty list.`)}},{key:`length`,value:function(){return 0}},{key:`prepend`,value:function(e){return new re(e,O.empty)}},{key:`append`,value:function(e){return new re(e,O.empty)}},{key:`concat`,value:function(e){return e}},{key:`foldLeft`,value:function(e,t){return e}},{key:`foldRight`,value:function(e,t){return e}},{key:`flatMap`,value:function(e){return this}},{key:`map`,value:function(e){return this}},{key:`foreach`,value:function(e){}},{key:`reverse`,value:function(){return this}},{key:`mkString`,value:function(){switch(arguments.length){case 0:case 1:return``;case 2:return arguments[0];default:return arguments[0]+arguments[2]}}},{key:`toString`,value:function(){return`[]`}}],[{key:`unapply`,value:function(e){return new y.Some(e)}}]),n}(O);function ae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}O.Nil=ie,O.empty=new ie,O.fromArray=function(e){var t,n;for(t=O.empty,n=e.length-1;n>=0;)t=new re(e[n],t),--n;return t};var oe=function(){function e(t,n){(function(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)})(this,e),this.head=t,this.tail=n}var t,n,r;return t=e,r=[{key:`unapply`,value:function(e){return new Option.Some([e.head,e.tail])}}],(n=[{key:`toString`,value:function(){return`(`+this.head+`~`+this.tail+`)`}}])&&ae(t.prototype,n),r&&ae(t,r),e}();function se(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function ce(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function le(e,t,n){return t&&ce(e.prototype,t),n&&ce(e,n),e}var ue=function(){function e(){se(this,e),this.cases=[]}return le(e,[{key:`Case`,value:function(e,t){return this.cases.push([e,t]),this}},{key:`match`,value:function(e){var t,n,r,i;for(t=0,n=this.cases.length;t<n;){if(e instanceof(r=this.cases[t][0])&&(i=r.unapply(e)).isDefined)return this.cases[t][1](i.get);t+=1}throw new de(e)}}]),e}(),de=function(){function e(t){se(this,e),this.obj=t}return le(e,[{key:`toString`,value:function(){return`MatchError(`+this.obj+`)`}}]),e}();function fe(e){return fe=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},fe(e)}function pe(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&me(e,t)}function me(e,t){return me=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},me(e,t)}function he(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=_e(e);if(t){var i=_e(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return ge(this,n)}}function ge(e,t){if(t&&(fe(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function _e(e){return _e=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_e(e)}function ve(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function ye(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function be(e,t,n){return t&&ye(e.prototype,t),n&&ye(e,n),e}var xe=function(){function e(t,n){ve(this,e),this.source=t,this.offset=n===void 0?0:n,this._index=null,this._line=null}return be(e,[{key:`index`,value:function(){if(this._index!==null)return this._index;this._index=[],this._index.push(0);for(var e=0;e<this.source.length;)this.source.charAt(e)===`\n`&&this._index.push(e+1),e+=1;return this._index.push(this.source.length),this._index}},{key:`line`,value:function(){var e,t,n;if(this._line!==null)return this._line;for(e=0,t=this.index().length-1;e+1<t;)n=t+e>>1,this.offset<this.index()[n]?t=n:e=n;return this._line=e+1,this._line}},{key:`column`,value:function(){return this.offset-this.index()[this.line()-1]+1}},{key:`lineContents`,value:function(){var e,t;return e=this.index(),t=this.line(),this.source.substring(e[t-1],e[t])}},{key:`toString`,value:function(){return this.line().toString()+`.`+this.column()}},{key:`longString`,value:function(){var e,t;for(e=this.lineContents()+`\n`,t=0;t<this.column();)this.lineContents().charAt(t)===`\t`?e+=`\t`:e+=` `,t+=1;return e+=`^`}},{key:`isLessThan`,value:function(t){return t instanceof e?this.offset<t.offset:this.line()<t.line()||this.line()===t.line()&&this.column()<t.column()}}]),e}(),Se=function(){function e(t,n,r){ve(this,e),this.source=t,this.offset=n,this.context=r}return be(e,[{key:`first`,value:function(){return this.offset<this.source.length?this.source.charAt(this.offset):e.EofCh}},{key:`rest`,value:function(){return this.offset<this.source.length?new e(this.source,this.offset+1,this.context):this}},{key:`pos`,value:function(){return new xe(this.source,this.offset)}},{key:`atEnd`,value:function(){return this.offset>=this.source.length}},{key:`drop`,value:function(e){var t,n;for(t=this,n=e;n>0;)t=t.rest(),--n;return t}}]),e}();Se.EofCh=`\u0003`;var k=function(){function e(){ve(this,e)}return be(e,null,[{key:`parse`,value:function(e,t){return e.apply(t)}},{key:`parseAll`,value:function(t,n){return t.andl((function(){return e.eos()})).apply(n)}},{key:`parseString`,value:function(t,n){var r=new Se(n,0,{lastNoSuccess:void 0});return e.parse(t,r)}},{key:`parseAllString`,value:function(t,n){var r=new Se(n,0,{lastNoSuccess:void 0});return e.parseAll(t,r)}},{key:`_handleWhiteSpace`,value:function(e){var t=e.context.whiteSpaceRegex,n=e.source,r=e.offset,i=t.exec(n.substring(r,n.length));return i===null?r:r+i[0].length}},{key:`literal`,value:function(t){return new Oe((function(n){var r,i,a,o,s,c;for(r=n.source,i=n.offset,o=0,s=a=e._handleWhiteSpace(n);o<t.length&&s<r.length&&t.charAt(o)===r.charAt(s);)o+=1,s+=1;return o===t.length?new we(t,n.drop(s-i)):(c=a===r.length?`end of source`:\"`\"+r.charAt(a)+`'`,new Ee(\"`\"+t+`' expected but `+c+` found`,n.drop(a-i)))}))}},{key:`regex`,value:function(e){if(e.toString().substring(0,2)!==`/^`)throw\"regex must start with `^' but \"+e;return new Oe((function(t){var n,r,i,a;return n=t.source,r=t.offset,(i=e.exec(n.substring(r,n.length)))===null?(a=r===n.length?`end of source`:\"`\"+n.charAt(r)+`'`,new Ee(`string matching regex `+e+` expected but `+a+` found`,t)):new we(i[0],t.drop(i[0].length))}))}},{key:`regexLiteral`,value:function(t){if(t.toString().substring(0,2)!==`/^`)throw\"regex must start with `^' but \"+t;return new Oe((function(n){var r,i,a,o,s;return r=n.source,i=n.offset,a=e._handleWhiteSpace(n),(o=t.exec(r.substring(a,r.length)))===null?(s=a===r.length?`end of source`:\"`\"+r.charAt(a)+`'`,new Ee(`string matching regex `+t+` expected but `+s+` found`,n.drop(a-i))):new we(o[0],n.drop(a+o[0].length-i))}))}},{key:`eos`,value:function(){return new Oe((function(t){var n,r;return n=t.source,t.offset,r=e._handleWhiteSpace(t),n.length===r?new we(``,t):new Ee(\"end of source expected but `\"+n.charAt(r)+`' found`,t)}))}},{key:`commit`,value:function(e){return new Oe((function(t){var n=e()(t);return new ue().Case(we,(function(e){return n})).Case(De,(function(e){return n})).Case(Ee,(function(e){return new De(e[0],e[1])})).match(n)}))}},{key:`elem`,value:function(t){return e.accept(t).named(`\"`+t+`\"`)}},{key:`accept`,value:function(t){return e.acceptIf((function(e){return e===t}),(function(e){return\"`\"+t+\"' expected but `\"+e+`' found`}))}},{key:`acceptIf`,value:function(e,t){return new Oe((function(n){return e(n.first())?new we(n.first(),n.rest()):new Ee(t(n.first()),n)}))}},{key:`failure`,value:function(e){return new Oe((function(t){return new Ee(e,t)}))}},{key:`err`,value:function(e){return new Oe((function(t){return new De(e,t)}))}},{key:`success`,value:function(e){return new Oe((function(t){return new we(e,t)}))}},{key:`log`,value:function(e,t){return new Oe((function(n){console.log(`trying `+t+` at `+n);var r=e().apply(n);return console.log(t+` --> `+r),r}))}},{key:`rep`,value:function(t){var n=e.success(O.empty);return e.rep1(t).or((function(){return n}))}},{key:`rep1`,value:function(e){return new Oe((function(t){var n,r,i,a;if(n=[],r=t,(a=(i=e()).apply(t))instanceof we){for(;a instanceof we;)n.push(a.result),r=a.next,a=i.apply(r);return new we(O.fromArray(n),r)}return a}))}},{key:`repN`,value:function(t,n){return t===0?e.success(FP.List.empty):new Oe((function(e){var r,i,a,o;for(r=[],i=e,o=(a=n()).apply(i);o instanceof we;){if(r.push(o.result),i=o.next,t===r.length)return new we(O.fromArray(r),i);o=a.apply(i)}return o}))}},{key:`repsep`,value:function(t,n){var r=e.success(O.empty);return e.rep1sep(t,n).or((function(){return r}))}},{key:`rep1sep`,value:function(t,n){return t().and(e.rep(n().andr(t))).to((function(e){return new O.Cons(e.head,e.tail)}))}},{key:`chainl1`,value:function(t,n,r){return t().and(e.rep(r().and(n))).to((function(e){return e.tail.foldLeft(e.head,(function(e,t){return t.head(e,t.tail)}))}))}},{key:`chainr1`,value:function(e,t,n,r){return e().and(this.rep(t().and(e))).to((function(e){return new O.Cons(new oe(n,e.head),e.tail).foldRight(r,(function(e,t){return e.head(e.tail,t)}))}))}},{key:`opt`,value:function(t){return t().to((function(e){return new y.Some(e)})).or((function(){return e.success(y.empty)}))}},{key:`not`,value:function(e){return new Oe((function(t){return e().apply(t).successful?new Ee(`Expected failure`,t):new we(y.empty,t)}))}},{key:`guard`,value:function(e){return new Oe((function(t){var n=e().apply(t);return n.successful?new we(n.result,t):n}))}},{key:`mkList`,value:function(e){return new O.Cons(e.head,e.tail)}},{key:`fun`,value:function(e){return function(){return e}}},{key:`lazyParser`,value:function(t){var n,r;return t instanceof String||typeof t==`string`?(n=e.literal(t),function(){return n}):t instanceof Function?t:t instanceof Object?t instanceof Oe?function(){return t}:t instanceof RegExp?(r=e.regexLiteral(t),function(){return r}):e.err(`unhandlable type`):e.err(`unhandlable type`)}},{key:`seq`,value:function(){var t,n,r;if((t=arguments.length)===0)return e.err(`at least one element must be specified`);for(n=e.lazyParser(arguments[0])(),r=1;r<t;)n=n.and(e.lazyParser(arguments[r])),r+=1;return n}},{key:`or`,value:function(){var t,n,r;if((t=arguments.length)===0)return e.err(`at least one element must be specified`);for(n=e.lazyParser(arguments[0])(),r=1;r<t;)n=n.or(e.lazyParser(arguments[r])),r+=1;return n}}]),e}(),Ce=function(){function e(){ve(this,e)}return be(e,[{key:`isEmpty`,value:function(){return!this.successful}},{key:`getOrElse`,value:function(e){return this.isEmpty?e():this.get()}}]),e}();k.ParseResult=Ce;var we=function(e){pe(n,e);var t=he(n);function n(e,r){var i;return ve(this,n),(i=t.call(this)).result=e,i.next=r,i}return be(n,[{key:`successful`,get:function(){return!0}},{key:`map`,value:function(e){return new n(e(this.result),this.next)}},{key:`mapPartial`,value:function(e,t){try{return new n(e(this.result),this.next)}catch(e){if(e instanceof de)return new Ee(t(this.result),this.next);throw e}}},{key:`flatMapWithNext`,value:function(e){return e(this.result).apply(this.next)}},{key:`append`,value:function(e){return this}},{key:`get`,value:function(){return this.result}},{key:`toString`,value:function(){return`[`+this.next.pos()+`] parsed: `+this.result}}],[{key:`unapply`,value:function(e){return new y.Some([e.result,e.next])}}]),n}(Ce);k.Success=we;var Te=function(e){pe(n,e);var t=he(n);function n(){return ve(this,n),t.call(this)}return be(n,[{key:`successful`,get:function(){return!1}},{key:`_setLastNoSuccess`,value:function(){var e=this.next.context;e.lastNoSuccess!==void 0&&this.next.pos().isLessThan(e.lastNoSuccess.next.pos())||(e.lastNoSuccess=this)}},{key:`map`,value:function(e){return this}},{key:`mapPartial`,value:function(e,t){return this}},{key:`flatMapWithNext`,value:function(e){return this}},{key:`get`,value:function(){return k.error(`No result when parsing failed`)}}]),n}(Ce);k.NoSuccess=Te;var Ee=function(e){pe(n,e);var t=he(n);function n(e,r){var i;return ve(this,n),(i=t.call(this)).msg=e,i.next=r,i._setLastNoSuccess(),i}return be(n,[{key:`append`,value:function(e){var t=e();if(t instanceof we)return t;if(t instanceof Te)return t.next.pos().isLessThan(this.next.pos())?this:t;throw new de(t)}},{key:`toString`,value:function(){return`[`+this.next.pos()+`] failure: `+this.msg+`\n\n`+this.next.pos().longString()}}],[{key:`unapply`,value:function(e){return new y.Some([e.msg,e.next])}}]),n}(Te);k.Failure=Ee;var De=function(e){pe(n,e);var t=he(n);function n(e,r){var i;return ve(this,n),(i=t.call(this)).msg=e,i.next=r,i._setLastNoSuccess(),i}return be(n,[{key:`append`,value:function(e){return this}},{key:`toString`,value:function(){return`[`+this.next.pos()+`] error: `+this.msg+`\n\n`+this.next.pos().longString()}}],[{key:`unapply`,value:function(e){return new y.Some([e.msg,e.next])}}]),n}(Te);k.ParseError=De;var Oe=function(){function e(t){ve(this,e),this.apply=t,this.name=``}return be(e,[{key:`named`,value:function(e){return this.name=e,this}},{key:`toString`,value:function(){return`Parser (`+this.name+`)`}},{key:`flatMap`,value:function(t){var n=this;return new e((function(e){return n.apply(e).flatMapWithNext(t)}))}},{key:`map`,value:function(t){var n=this;return new e((function(e){return n.apply(e).map(t)}))}},{key:`append`,value:function(t){var n=this;return new e((function(e){return n.apply(e).append((function(){return t().apply(e)}))}))}},{key:`and`,value:function(e){return this.flatMap((function(t){return e().map((function(e){return new oe(t,e)}))})).named(`~`)}},{key:`andr`,value:function(e){return this.flatMap((function(t){return e().map((function(e){return e}))})).named(`~>`)}},{key:`andl`,value:function(e){return this.flatMap((function(t){return e().map((function(e){return t}))})).named(`<~`)}},{key:`or`,value:function(e){return this.append(e).named(`|`)}},{key:`andOnce`,value:function(e){var t=this;return new ke((function(){return t.flatMap((function(t){return k.commit(e).map((function(e){return new oe(t,e)}))})).named(`~!`)}))}},{key:`longestOr`,value:function(t){var n=this;return new e((function(e){var r,i;return r=n.apply(e),i=t()(e),r.successful?i.successful?i.next.pos().isLessThan(r.next.pos())?r:i:r:i.successful?i:r instanceof De||i.next.pos().isLessThan(r.next.pos())?r:i})).named(`|||`)}},{key:`to`,value:function(e){return this.map(e).named(this.toString()+`^^`)}},{key:`ret`,value:function(t){var n=this;return new e((function(e){return n.apply(e).map((function(e){return t()}))})).named(this.toString()+`^^^`)}},{key:`toIfPossible`,value:function(t,n){n===void 0&&(n=function(e){return`Constructor function not defined at `+e});var r=this;return new e((function(e){return r.apply(e).mapPartial(t,n)})).named(this.toString()+`^?`)}},{key:`into`,value:function(e){return this.flatMap(e)}},{key:`rep`,value:function(){var e=this;return k.rep((function(){return e}))}},{key:`chain`,value:function(e){var t,n;return t=this,n=function(){return t},k.chainl1(n,n,e)}},{key:`rep1`,value:function(){var e=this;return k.rep1((function(){return e}))}},{key:`opt`,value:function(){var e=this;return k.opt((function(){return e}))}}]),e}();k.Parser=Oe;var ke=function(e){pe(n,e);var t=he(n);function n(e){return ve(this,n),t.call(this,e)}return be(n,[{key:`and`,value:function(e){var t=this;return new n((function(){return t.flatMap((function(t){return k.commit(e).map((function(e){return oe(t,e)}))}))})).named(`~`)}}]),n}(Oe);k.OnceParser=ke;var Ae=n(376),je=n(771);function Me(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function Ne(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Pe(e,t,n){return t&&Ne(e.prototype,t),n&&Ne(e,n),e}var Fe=function(){function e(){Me(this,e),this.userDirMap={}}return Pe(e,[{key:`get`,value:function(e){return this.userDirMap[e]}},{key:`put`,value:function(e,t){this.userDirMap[e]=t}}]),e}(),Ie=function(){function e(){Me(this,e),this.userModifierMap={}}return Pe(e,[{key:`get`,value:function(t){var n=e.embeddedModifierMap[t];return n===void 0?this.userModifierMap[t]:n}},{key:`put`,value:function(t,n){e.embeddedModifierMap[t]===void 0&&(this.userModifierMap[t]=n)}}]),e}(),A={repositories:{modifierRepository:new Ie,dirRepository:new Fe},xypicCommandIdCounter:0,xypicCommandMap:{},textObjectIdCounter:0,wrapperOfTextObjectMap:{}};function Le(e){return Le=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Le(e)}function Re(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function j(e,t,n){return t&&Re(e.prototype,t),n&&Re(e,n),e}function M(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ze(e,t)}function ze(e,t){return ze=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},ze(e,t)}function N(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=Ve(e);if(t){var i=Ve(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Be(this,n)}}function Be(e,t){if(t&&(Le(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function Ve(e){return Ve=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ve(e)}function P(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}var F=function e(){P(this,e)},He=function(e){M(n,e);var t=N(n);function n(e,r,i){var a;P(this,n),(a=t.call(this,e,r,i)).textMmls=i,a.texClass=Ae.Ls.ORD;var o=r[`data-cmd-id`];a.cmd=A.xypicCommandMap[o];for(var s=JSON.parse(r[`data-text-mml-ids`]),c=0,l=s.length;c<l;c++)i[c].xypicTextObjectId=s[c];return a}return n}(Ae.oI);He.defaults=Ae.oI.defaults,(F.xypic=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`kind`,get:function(){return`xypic`}},{key:`toString`,value:function(){return this.kind+`(`+this.cmd+`)`}}]),n}(He)).defaults=He.defaults,je.v[F.xypic.prototype.kind]=F.xypic,F.xypic.newdir=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`kind`,get:function(){return`xypic-newdir`}},{key:`toString`,value:function(){return this.kind+`(`+this.cmd+`)`}}]),n}(He),F.xypic.newdir.defaults=He.defaults,je.v[F.xypic.newdir.prototype.kind]=F.xypic.newdir,F.xypic.includegraphics=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`kind`,get:function(){return`xypic-includegraphics`}},{key:`toString`,value:function(){return this.kind+`(`+this.cmd+`)`}}]),n}(He),F.xypic.includegraphics.defaults=He.defaults,je.v[F.xypic.includegraphics.prototype.kind]=F.xypic.includegraphics,F.PosDecor=function(){function e(t,n){P(this,e),this.pos=t,this.decor=n}return j(e,[{key:`toString`,value:function(){return this.pos.toString()+` `+this.decor}}]),e}(),(F.Pos=function e(){P(this,e)}).Coord=function(){function e(t,n){P(this,e),this.coord=t,this.pos2s=n}return j(e,[{key:`toString`,value:function(){return this.coord.toString()+` `+this.pos2s.mkString(` `)}}]),e}(),F.Pos.Plus=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`+(`+this.coord+`)`}}]),e}(),F.Pos.Minus=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`-(`+this.coord+`)`}}]),e}(),F.Pos.Skew=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`!(`+this.coord+`)`}}]),e}(),F.Pos.Cover=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`.(`+this.coord+`)`}}]),e}(),F.Pos.Then=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`,(`+this.coord+`)`}}]),e}(),F.Pos.SwapPAndC=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`;(`+this.coord+`)`}}]),e}(),F.Pos.SetBase=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`:(`+this.coord+`)`}}]),e}(),F.Pos.SetYBase=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`::(`+this.coord+`)`}}]),e}(),F.Pos.ConnectObject=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`**(`+this.object+`)`}}]),e}(),F.Pos.DropObject=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`*(`+this.object+`)`}}]),e}(),F.Pos.Place=function(){function e(t){P(this,e),this.place=t}return j(e,[{key:`toString`,value:function(){return`?(`+this.place+`)`}}]),e}(),F.Pos.PushCoord=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`@+(`+this.coord+`)`}}]),e}(),F.Pos.EvalCoordThenPop=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`@-(`+this.coord+`)`}}]),e}(),F.Pos.LoadStack=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`@=(`+this.coord+`)`}}]),e}(),F.Pos.DoCoord=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return`@@(`+this.coord+`)`}}]),e}(),F.Pos.InitStack=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`@i`}}]),e}(),F.Pos.EnterFrame=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`@(`}}]),e}(),F.Pos.LeaveFrame=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`@)`}}]),e}(),F.Pos.SavePos=function(){function e(t){P(this,e),this.id=t}return j(e,[{key:`toString`,value:function(){return`=\"`+this.id+`\"`}}]),e}(),F.Pos.SaveMacro=function(){function e(t,n){P(this,e),this.macro=t,this.id=n}return j(e,[{key:`toString`,value:function(){return`=(`+this.macro+` \"`+this.id+`\")`}}]),e}(),F.Pos.SaveBase=function(){function e(t){P(this,e),this.id=t}return j(e,[{key:`toString`,value:function(){return`=:\"`+this.id+`\"`}}]),e}(),F.Pos.SaveStack=function(){function e(t){P(this,e),this.id=t}return j(e,[{key:`toString`,value:function(){return`=@\"`+this.id+`\"`}}]),e}(),(F.Coord=function e(){P(this,e)}).Vector=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return this.vector.toString()}}]),e}(),F.Coord.C=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`c`}}]),e}(),F.Coord.P=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`p`}}]),e}(),F.Coord.X=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`x`}}]),e}(),F.Coord.Y=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`y`}}]),e}(),F.Coord.Id=function(){function e(t){P(this,e),this.id=t}return j(e,[{key:`toString`,value:function(){return`\"`+this.id+`\"`}}]),e}(),F.Coord.Group=function(){function e(t){P(this,e),this.posDecor=t}return j(e,[{key:`toString`,value:function(){return`{`+this.posDecor+`}`}}]),e}(),F.Coord.StackPosition=function(){function e(t){P(this,e),this.number=t}return j(e,[{key:`toString`,value:function(){return`s{`+this.number+`}`}}]),e}(),F.Coord.DeltaRowColumn=function(){function e(t,n,r){P(this,e),this.prefix=t,this.dr=n,this.dc=r}return j(e,[{key:`toString`,value:function(){return`[`+(this.prefix===``?``:`\"`+this.prefix+`\"`)+this.dr+`,`+this.dc+`]`}}]),e}(),F.Coord.Hops=function(){function e(t,n){P(this,e),this.prefix=t,this.hops=n}return j(e,[{key:`toString`,value:function(){return`[`+(this.prefix===``?``:`\"`+this.prefix+`\"`)+this.hops.mkString(``)+`]`}}]),e}(),F.Coord.HopsWithPlace=function(){function e(t,n,r){P(this,e),this.prefix=t,this.hops=n,this.place=r}return j(e,[{key:`toString`,value:function(){return`[`+(this.prefix===``?``:`\"`+this.prefix+`\"`)+this.hops.mkString(``)+this.place+`]`}}]),e}(),(F.Vector=function e(){P(this,e)}).InCurBase=function(){function e(t,n){P(this,e),this.x=t,this.y=n}return j(e,[{key:`toString`,value:function(){return`(`+this.x+`, `+this.y+`)`}}]),e}(),F.Vector.Abs=function(){function e(t,n){P(this,e),this.x=t,this.y=n}return j(e,[{key:`toString`,value:function(){return`<`+this.x+`, `+this.y+`>`}}]),e}(),F.Vector.Angle=function(){function e(t){P(this,e),this.degree=t}return j(e,[{key:`toString`,value:function(){return`a(`+this.degree+`)`}}]),e}(),F.Vector.Dir=function(){function e(t,n){P(this,e),this.dir=t,this.dimen=n}return j(e,[{key:`toString`,value:function(){return`/`+this.dir+` `+this.dimen+`/`}}]),e}(),F.Vector.Corner=function(){function e(t,n){P(this,e),this.corner=t,this.factor=n}return j(e,[{key:`toString`,value:function(){return this.corner.toString()+`(`+this.factor+`)`}}]),e}(),(F.Corner=function e(){P(this,e)}).L=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`L`}}]),e}(),F.Corner.R=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`R`}}]),e}(),F.Corner.D=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`D`}}]),e}(),F.Corner.U=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`U`}}]),e}(),F.Corner.CL=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`CL`}}]),e}(),F.Corner.CR=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`CR`}}]),e}(),F.Corner.CD=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`CD`}}]),e}(),F.Corner.CU=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`CU`}}]),e}(),F.Corner.LD=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`LD`}}]),e}(),F.Corner.RD=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`RD`}}]),e}(),F.Corner.LU=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`LU`}}]),e}(),F.Corner.RU=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`RU`}}]),e}(),F.Corner.NearestEdgePoint=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`E`}}]),e}(),F.Corner.PropEdgePoint=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`P`}}]),e}(),F.Corner.Axis=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`A`}}]),e}(),(F.Place=function(){function e(t,n,r,i){P(this,e),this.shaveP=t,this.shaveC=n,this.factor=r,this.slide=i}return j(e,[{key:`compound`,value:function(e){return new F.Place(this.shaveP+e.shaveP,this.shaveC+e.shaveC,e.factor===void 0?this.factor:e.factor,e.slide)}},{key:`toString`,value:function(){for(var e=``,t=0;t<this.shaveP;t++)e+=`<`;for(var n=0;n<this.shaveC;n++)e+=`>`;return this.factor!==void 0&&(e+=`(`+this.factor+`)`),this.slide.dimen.foreach((function(t){e+=`/`+t+`/`})),e}}]),e}()).Factor=function(){function e(t){P(this,e),this.factor=t}return j(e,[{key:`isIntercept`,get:function(){return!1}},{key:`toString`,value:function(){return this.factor.toString()}}]),e}(),F.Place.Intercept=function(){function e(t){P(this,e),this.pos=t}return j(e,[{key:`isIntercept`,get:function(){return!0}},{key:`toString`,value:function(){return`!{`+this.pos+`}`}}]),e}(),F.Slide=function(){function e(t){P(this,e),this.dimen=t}return j(e,[{key:`toString`,value:function(){return this.dimen.getOrElse(``)}}]),e}(),F.Object=function(){function e(t,n){P(this,e),this.modifiers=t,this.object=n}return j(e,[{key:`dirVariant`,value:function(){return this.object.dirVariant()}},{key:`dirMain`,value:function(){return this.object.dirMain()}},{key:`isDir`,value:function(){return this.object.isDir()}},{key:`toString`,value:function(){return this.modifiers.mkString()+this.object.toString()}}]),e}(),(F.ObjectBox=function(){function e(){P(this,e)}return j(e,[{key:`isEmpty`,get:function(){return!1}},{key:`dirVariant`,value:function(){}},{key:`dirMain`,value:function(){}},{key:`isDir`,value:function(){return!1}}]),e}()).Text=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).math=e,r}return j(n,[{key:`toString`,value:function(){return`{`+this.math.toString()+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Empty=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`isEmpty`,get:function(){return!0}},{key:`toString`,value:function(){return`{}`}}]),n}(F.ObjectBox),F.ObjectBox.Xymatrix=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).xymatrix=e,r}return j(n,[{key:`toString`,value:function(){return this.xymatrix.toString()}}]),n}(F.ObjectBox),F.ObjectBox.Txt=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).width=e,i.textObject=r,i}return j(n,[{key:`toString`,value:function(){return`\\\\txt`+this.width+`{`+this.textObject.toString()+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Txt.Width=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return n}(F.ObjectBox),F.ObjectBox.Txt.Width.Vector=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).vector=e,r}return j(n,[{key:`toString`,value:function(){return this.vector.toString()}}]),n}(F.ObjectBox),F.ObjectBox.Txt.Width.Default=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return``}}]),n}(F.ObjectBox),F.ObjectBox.WrapUpObject=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).object=e,r}return j(n,[{key:`toString`,value:function(){return`\\\\object`+this.object.toString()}}]),n}(F.ObjectBox),F.ObjectBox.CompositeObject=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).objects=e,r}return j(n,[{key:`toString`,value:function(){return`\\\\composite{`+this.objects.mkString(` * `)+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Xybox=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).posDecor=e,r}return j(n,[{key:`toString`,value:function(){return`\\\\xybox{`+this.posDecor.toString()+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Cir=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).radius=e,i.cir=r,i}return j(n,[{key:`toString`,value:function(){return`\\\\cir`+this.radius+`{`+this.cir+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Cir.Radius=function e(){P(this,e)},F.ObjectBox.Cir.Radius.Vector=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return this.vector.toString()}}]),e}(),F.ObjectBox.Cir.Radius.Default=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.ObjectBox.Cir.Cir=function e(){P(this,e)},F.ObjectBox.Cir.Cir.Segment=function(){function e(t,n,r){P(this,e),this.startDiag=t,this.orient=n,this.endDiag=r}return j(e,[{key:`toString`,value:function(){return this.startDiag.toString()+this.orient+this.endDiag}}]),e}(),F.ObjectBox.Cir.Cir.Full=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.ObjectBox.Dir=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).variant=e,i.main=r,i}return j(n,[{key:`dirVariant`,value:function(){return this.variant}},{key:`dirMain`,value:function(){return this.main}},{key:`isDir`,value:function(){return!0}},{key:`toString`,value:function(){return`\\\\dir`+this.variant+`{`+this.main+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Curve=function(e){M(n,e);var t=N(n);function n(e,r,i){var a;return P(this,n),(a=t.call(this)).modifiers=e,a.objects=r,a.poslist=i,a}return j(n,[{key:`dirVariant`,value:function(){return``}},{key:`dirMain`,value:function(){return`-`}},{key:`isDir`,value:function(){return!1}},{key:`toString`,value:function(){return`\\\\curve`+this.modifiers.mkString(``)+`{`+this.objects.mkString(` `)+` `+this.poslist.mkString(`&`)+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Curve.Modifier=function e(){P(this,e)},F.ObjectBox.Curve.Modifier.p=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~p`}}]),e}(),F.ObjectBox.Curve.Modifier.P=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~P`}}]),e}(),F.ObjectBox.Curve.Modifier.l=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~l`}}]),e}(),F.ObjectBox.Curve.Modifier.L=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~L`}}]),e}(),F.ObjectBox.Curve.Modifier.c=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~c`}}]),e}(),F.ObjectBox.Curve.Modifier.C=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~C`}}]),e}(),F.ObjectBox.Curve.Modifier.pc=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~pc`}}]),e}(),F.ObjectBox.Curve.Modifier.pC=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~pC`}}]),e}(),F.ObjectBox.Curve.Modifier.Pc=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~Pc`}}]),e}(),F.ObjectBox.Curve.Modifier.PC=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~PC`}}]),e}(),F.ObjectBox.Curve.Modifier.lc=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~lc`}}]),e}(),F.ObjectBox.Curve.Modifier.lC=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~lC`}}]),e}(),F.ObjectBox.Curve.Modifier.Lc=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~Lc`}}]),e}(),F.ObjectBox.Curve.Modifier.LC=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~LC`}}]),e}(),F.ObjectBox.Curve.Modifier.cC=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~cC`}}]),e}(),F.ObjectBox.Curve.Object=function e(){P(this,e)},F.ObjectBox.Curve.Object.Drop=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`~*`+this.object}}]),e}(),F.ObjectBox.Curve.Object.Connect=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`~**`+this.object}}]),e}(),F.ObjectBox.Curve.PosList=function e(){P(this,e)},F.ObjectBox.Curve.PosList.CurPos=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.ObjectBox.Curve.PosList.Pos=function(){function e(t){P(this,e),this.pos=t}return j(e,[{key:`toString`,value:function(){return this.pos.toString()}}]),e}(),F.ObjectBox.Curve.PosList.AddStack=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~@`}}]),e}(),(F.Modifier=function e(){P(this,e)}).Vector=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).vector=e,r}return j(n,[{key:`toString`,value:function(){return`!`+this.vector}}]),n}(F.Modifier),F.Modifier.RestoreOriginalRefPoint=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`!`}}]),n}(F.Modifier),F.Modifier.AddOp=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).op=e,i.size=r,i}return j(n,[{key:`toString`,value:function(){return this.op.toString()+` `+this.size}}]),n}(F.Modifier),F.Modifier.AddOp.Grow=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`+`}}]),e}(),F.Modifier.AddOp.Shrink=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`-`}}]),e}(),F.Modifier.AddOp.Set=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`=`}}]),e}(),F.Modifier.AddOp.GrowTo=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`+=`}}]),e}(),F.Modifier.AddOp.ShrinkTo=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`-=`}}]),e}(),F.Modifier.AddOp.VactorSize=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`isDefault`,get:function(){return!1}},{key:`toString`,value:function(){return this.vector.toString()}}]),e}(),F.Modifier.AddOp.DefaultSize=function(){function e(){P(this,e)}return j(e,[{key:`isDefault`,get:function(){return!0}},{key:`toString`,value:function(){return``}}]),e}(),F.Modifier.Shape=function e(){P(this,e)},F.Modifier.Shape.Point=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[.]`}}]),n}(F.Modifier),F.Modifier.Shape.Rect=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[]`}}]),n}(F.Modifier),F.Modifier.Shape.Alphabets=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).alphabets=e,r}return j(n,[{key:`toString`,value:function(){return`[`+this.alphabets+`]`}}]),n}(F.Modifier),F.Modifier.Shape.DefineShape=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).shape=e,r}return j(n,[{key:`toString`,value:function(){return`[`+this.shape+`]`}}]),n}(F.Modifier),F.Modifier.Shape.Circle=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[o]`}}]),n}(F.Modifier),F.Modifier.Shape.L=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[l]`}}]),n}(F.Modifier),F.Modifier.Shape.R=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[r]`}}]),n}(F.Modifier),F.Modifier.Shape.U=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[u]`}}]),n}(F.Modifier),F.Modifier.Shape.D=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[d]`}}]),n}(F.Modifier),F.Modifier.Shape.C=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`[c]`}}]),n}(F.Modifier),F.Modifier.Shape.ChangeColor=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).colorName=e,r}return j(n,[{key:`toString`,value:function(){return`[`+this.colorName+`]`}}]),n}(F.Modifier),F.Modifier.Shape.CompositeModifiers=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).modifiers=e,r}return j(n,[{key:`toString`,value:function(){return this.modifiers.mkString(``)}}]),n}(F.Modifier),F.Modifier.Shape.Frame=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).main=e,i.options=r,i}return j(n,[{key:`toString`,value:function(){return`[F`+this.main+this.options.mkString(``)+`]`}}]),n}(F.Modifier),F.Modifier.Shape.Frame.Radius=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return`:`+this.vector}}]),e}(),F.Modifier.Shape.Frame.Color=function(){function e(t){P(this,e),this.colorName=t}return j(e,[{key:`toString`,value:function(){return`:`+this.colorName}}]),e}(),F.Modifier.Invisible=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`i`}}]),n}(F.Modifier),F.Modifier.Hidden=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`h`}}]),n}(F.Modifier),F.Modifier.Direction=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).direction=e,r}return j(n,[{key:`toString`,value:function(){return this.direction.toString()}}]),n}(F.Modifier),(F.Direction=function e(){P(this,e)}).Compound=function(){function e(t,n){P(this,e),this.dir=t,this.rots=n}return j(e,[{key:`toString`,value:function(){return this.dir.toString()+this.rots.mkString()}}]),e}(),F.Direction.Diag=function(){function e(t){P(this,e),this.diag=t}return j(e,[{key:`toString`,value:function(){return this.diag.toString()}}]),e}(),F.Direction.Vector=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return`v`+this.vector.toString()}}]),e}(),F.Direction.ConstructVector=function(){function e(t){P(this,e),this.posDecor=t}return j(e,[{key:`toString`,value:function(){return`q{`+this.posDecor.toString()+`}`}}]),e}(),F.Direction.RotVector=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return`:`+this.vector.toString()}}]),e}(),F.Direction.RotAntiCW=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`_`}}]),e}(),F.Direction.RotCW=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`^`}}]),e}(),(F.Diag=function e(){P(this,e)}).Default=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.Diag.Angle=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return this.symbol}}]),e}(),F.Diag.LD=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`ld`}},{key:`ang`,get:function(){return-3*Math.PI/4}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.RD:new F.Diag.LU}}]),n}(F.Diag.Angle),F.Diag.RD=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`rd`}},{key:`ang`,get:function(){return-Math.PI/4}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.RU:new F.Diag.LD}}]),n}(F.Diag.Angle),F.Diag.LU=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`lu`}},{key:`ang`,get:function(){return 3*Math.PI/4}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.LD:new F.Diag.RU}}]),n}(F.Diag.Angle),F.Diag.RU=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`ru`}},{key:`ang`,get:function(){return Math.PI/4}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.LU:new F.Diag.RD}}]),n}(F.Diag.Angle),F.Diag.L=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`l`}},{key:`ang`,get:function(){return Math.PI}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.D:new F.Diag.U}}]),n}(F.Diag.Angle),F.Diag.R=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`r`}},{key:`ang`,get:function(){return 0}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.U:new F.Diag.D}}]),n}(F.Diag.Angle),F.Diag.D=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`d`}},{key:`ang`,get:function(){return-Math.PI/2}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.R:new F.Diag.L}}]),n}(F.Diag.Angle),F.Diag.U=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`symbol`,get:function(){return`u`}},{key:`ang`,get:function(){return Math.PI/2}},{key:`turn`,value:function(e){return e===`^`?new F.Diag.L:new F.Diag.R}}]),n}(F.Diag.Angle),F.ObjectBox.Frame=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).radius=e,i.main=r,i}return j(n,[{key:`toString`,value:function(){return`\\\\frm`+this.radius+`{`+this.main+`}`}}]),n}(F.ObjectBox),F.ObjectBox.Frame.Radius=function e(){P(this,e)},F.ObjectBox.Frame.Radius.Vector=function(){function e(t){P(this,e),this.vector=t}return j(e,[{key:`toString`,value:function(){return this.vector.toString()}}]),e}(),F.ObjectBox.Frame.Radius.Default=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.Decor=function(){function e(t){P(this,e),this.commands=t}return j(e,[{key:`toString`,value:function(){return this.commands.mkString(` `)}}]),e}(),(F.Command=function e(){P(this,e)}).Save=function(){function e(t){P(this,e),this.pos=t}return j(e,[{key:`toString`,value:function(){return`\\\\save `+this.pos}}]),e}(),F.Command.Restore=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`\\\\restore`}}]),e}(),F.Command.Pos=function(){function e(t){P(this,e),this.pos=t}return j(e,[{key:`toString`,value:function(){return`\\\\POS `+this.pos}}]),e}(),F.Command.AfterPos=function(){function e(t,n){P(this,e),this.decor=t,this.pos=n}return j(e,[{key:`toString`,value:function(){return`\\\\afterPOS{`+this.decor+`} `+this.pos}}]),e}(),F.Command.Drop=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`\\\\drop `+this.object}}]),e}(),F.Command.Connect=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`\\\\connect `+this.object}}]),e}(),F.Command.Relax=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`\\\\relax`}}]),e}(),F.Command.Ignore=function(){function e(t,n){P(this,e),this.pos=t,this.decor=n}return j(e,[{key:`toString`,value:function(){return`\\\\ignore{`+this.pos+` `+this.decor+`}`}}]),e}(),F.Command.ShowAST=function(){function e(t,n){P(this,e),this.pos=t,this.decor=n}return j(e,[{key:`toString`,value:function(){return`\\\\xyshowAST{`+this.pos+` `+this.decor+`}`}}]),e}(),F.Command.Path=function(){function e(t){P(this,e),this.path=t}return j(e,[{key:`toString`,value:function(){return`\\\\PATH `+this.path}}]),e}(),F.Command.AfterPath=function(){function e(t,n){P(this,e),this.decor=t,this.path=n}return j(e,[{key:`toString`,value:function(){return`\\\\afterPATH{`+this.decor+`} `+this.path}}]),e}(),F.Command.Path.Path=function(){function e(t){P(this,e),this.pathElements=t}return j(e,[{key:`toString`,value:function(){return this.pathElements.mkString(`[`,`, `,`]`)}}]),e}(),F.Command.Path.SetBeforeAction=function(){function e(t){P(this,e),this.posDecor=t}return j(e,[{key:`toString`,value:function(){return`~={`+this.posDecor+`}`}}]),e}(),F.Command.Path.SetAfterAction=function(){function e(t){P(this,e),this.posDecor=t}return j(e,[{key:`toString`,value:function(){return`~/{`+this.posDecor+`}`}}]),e}(),F.Command.Path.AddLabelNextSegmentOnly=function(){function e(t){P(this,e),this.labels=t}return j(e,[{key:`toString`,value:function(){return`~<{`+this.labels+`}`}}]),e}(),F.Command.Path.AddLabelLastSegmentOnly=function(){function e(t){P(this,e),this.labels=t}return j(e,[{key:`toString`,value:function(){return`~>{`+this.labels+`}`}}]),e}(),F.Command.Path.AddLabelEverySegment=function(){function e(t){P(this,e),this.labels=t}return j(e,[{key:`toString`,value:function(){return`~+{`+this.labels+`}`}}]),e}(),F.Command.Path.StraightSegment=function(){function e(t){P(this,e),this.segment=t}return j(e,[{key:`toString`,value:function(){return`'`+this.segment}}]),e}(),F.Command.Path.TurningSegment=function(){function e(t,n){P(this,e),this.turn=t,this.segment=n}return j(e,[{key:`toString`,value:function(){return\"`\"+this.turn+` `+this.segment}}]),e}(),F.Command.Path.LastSegment=function(){function e(t){P(this,e),this.segment=t}return j(e,[{key:`toString`,value:function(){return this.segment.toString()}}]),e}(),F.Command.Path.Turn=function e(){P(this,e)},F.Command.Path.Turn.Diag=function(){function e(t,n){P(this,e),this.diag=t,this.radius=n}return j(e,[{key:`toString`,value:function(){return this.diag.toString()+` `+this.radius}}]),e}(),F.Command.Path.Turn.Cir=function(){function e(t,n){P(this,e),this.cir=t,this.radius=n}return j(e,[{key:`toString`,value:function(){return this.cir.toString()+` `+this.radius}}]),e}(),F.Command.Path.TurnRadius=function e(){P(this,e)},F.Command.Path.TurnRadius.Default=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return``}}]),e}(),F.Command.Path.TurnRadius.Dimen=function(){function e(t){P(this,e),this.dimen=t}return j(e,[{key:`toString`,value:function(){return`/`+this.dimen}}]),e}(),F.Command.Path.Segment=function(){function e(t,n,r){P(this,e),this.pos=t,this.slide=n,this.labels=r}return j(e,[{key:`toString`,value:function(){return this.pos.toString()+` `+this.slide+` `+this.labels}}]),e}(),F.Command.Path.Labels=function(){function e(t){P(this,e),this.labels=t}return j(e,[{key:`toString`,value:function(){return this.labels.mkString(` `)}}]),e}(),F.Command.Path.Label=function e(t,n,r){P(this,e),this.anchor=t,this.it=n,this.aliasOption=r},F.Command.Path.Label.Above=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`toString`,value:function(){return`^(`+this.anchor+` `+this.it+` `+this.aliasOption+`)`}}]),n}(F.Command.Path.Label),F.Command.Path.Label.Below=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`toString`,value:function(){return`_(`+this.anchor+` `+this.it+` `+this.aliasOption+`)`}}]),n}(F.Command.Path.Label),F.Command.Path.Label.At=function(e){M(n,e);var t=N(n);function n(e,r,i){return P(this,n),t.call(this,e,r,i)}return j(n,[{key:`toString`,value:function(){return`|(`+this.anchor+` `+this.it+` `+this.aliasOption+`)`}}]),n}(F.Command.Path.Label),F.Command.Ar=function(){function e(t,n){P(this,e),this.forms=t,this.path=n}return j(e,[{key:`toString`,value:function(){return`\\\\ar `+this.forms.mkString(` `)+` `+this.path}}]),e}(),F.Command.Ar.Form=function e(){P(this,e)},F.Command.Ar.Form.BuildArrow=function(e){M(n,e);var t=N(n);function n(e,r,i,a){var o;return P(this,n),(o=t.call(this)).variant=e,o.tailTip=r,o.stemConn=i,o.headTip=a,o}return j(n,[{key:`toString`,value:function(){return`@`+this.variant+`{`+this.tailTip.toString()+`, `+this.stemConn.toString()+`, `+this.headTip.toString()+`}`}}]),n}(F.Command.Ar.Form),F.Command.Ar.Form.ChangeVariant=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).variant=e,r}return j(n,[{key:`toString`,value:function(){return`@`+this.variant}}]),n}(F.Command.Ar.Form),F.Command.Ar.Form.Tip=function e(){P(this,e)},F.Command.Ar.Form.Tip.Tipchars=function(){function e(t){P(this,e),this.tipchars=t}return j(e,[{key:`toString`,value:function(){return this.tipchars}}]),e}(),F.Command.Ar.Form.Tip.Object=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`*`+this.object}}]),e}(),F.Command.Ar.Form.Tip.Dir=function(){function e(t){P(this,e),this.dir=t}return j(e,[{key:`toString`,value:function(){return this.dir}}]),e}(),F.Command.Ar.Form.Conn=function e(){P(this,e)},F.Command.Ar.Form.Conn.Connchars=function(){function e(t){P(this,e),this.connchars=t}return j(e,[{key:`toString`,value:function(){return this.connchars}}]),e}(),F.Command.Ar.Form.Conn.Object=function(){function e(t){P(this,e),this.object=t}return j(e,[{key:`toString`,value:function(){return`*`+this.object}}]),e}(),F.Command.Ar.Form.Conn.Dir=function(){function e(t){P(this,e),this.dir=t}return j(e,[{key:`toString`,value:function(){return this.dir}}]),e}(),F.Command.Ar.Form.ChangeStem=function(){function e(t){P(this,e),this.connchar=t}return j(e,[{key:`toString`,value:function(){return`@`+this.connchar}}]),e}(),F.Command.Ar.Form.DashArrowStem=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`@!`}}]),e}(),F.Command.Ar.Form.CurveArrow=function(){function e(t,n){P(this,e),this.direction=t,this.dist=n}return j(e,[{key:`toString`,value:function(){return`@/`+this.direction+` `+this.dist+`/`}}]),e}(),F.Command.Ar.Form.CurveFitToDirection=function(){function e(t,n){P(this,e),this.outDirection=t,this.inDirection=n}return j(e,[{key:`toString`,value:function(){return`@(`+this.outDirection+`,`+this.inDirection+`)`}}]),e}(),F.Command.Ar.Form.CurveWithControlPoints=function(){function e(t){P(this,e),this.coord=t}return j(e,[{key:`toString`,value:function(){return\"@`{\"+this.coord+`}`}}]),e}(),F.Command.Ar.Form.AddShape=function(){function e(t){P(this,e),this.shape=t}return j(e,[{key:`toString`,value:function(){return`@[`+this.shape+`]`}}]),e}(),F.Command.Ar.Form.AddModifiers=function(){function e(t){P(this,e),this.modifiers=t}return j(e,[{key:`toString`,value:function(){return`@*{`+this.modifiers.mkString(` `)+`}`}}]),e}(),F.Command.Ar.Form.Slide=function(){function e(t){P(this,e),this.slideDimen=t}return j(e,[{key:`toString`,value:function(){return`@<`+this.slideDimen+`>`}}]),e}(),F.Command.Ar.Form.LabelAt=function(){function e(t,n){P(this,e),this.anchor=t,this.it=n}return j(e,[{key:`toString`,value:function(){return`|`+this.anchor+` `+this.it}}]),e}(),F.Command.Ar.Form.LabelAbove=function(){function e(t,n){P(this,e),this.anchor=t,this.it=n}return j(e,[{key:`toString`,value:function(){return`^`+this.anchor+` `+this.it}}]),e}(),F.Command.Ar.Form.LabelBelow=function(){function e(t,n){P(this,e),this.anchor=t,this.it=n}return j(e,[{key:`toString`,value:function(){return`_`+this.anchor+` `+this.it}}]),e}(),F.Command.Ar.Form.ReverseAboveAndBelow=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`@?`}}]),e}(),F.Command.Xymatrix=function(){function e(t,n){P(this,e),this.setup=t,this.rows=n}return j(e,[{key:`toString`,value:function(){return`\\\\xymatrix`+this.setup+`{\n`+this.rows.mkString(``,`\\\\\\\\\n`,``)+`\n}`}}]),e}(),F.Command.Xymatrix.Setup=function e(){P(this,e)},F.Command.Xymatrix.Setup.Prefix=function(){function e(t){P(this,e),this.prefix=t}return j(e,[{key:`toString`,value:function(){return`\"`+this.prefix+`\"`}}]),e}(),F.Command.Xymatrix.Setup.ChangeSpacing=function e(t,n){P(this,e),this.addop=t,this.dimen=n},F.Command.Xymatrix.Setup.ChangeSpacing.Row=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@R`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.ChangeSpacing),F.Command.Xymatrix.Setup.ChangeSpacing.Column=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@C`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.ChangeSpacing),F.Command.Xymatrix.Setup.ChangeSpacing.RowAndColumn=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.ChangeSpacing),F.Command.Xymatrix.Setup.PretendEntrySize=function e(t){P(this,e),this.dimen=t},F.Command.Xymatrix.Setup.PretendEntrySize.Height=function(e){M(n,e);var t=N(n);function n(e){return P(this,n),t.call(this,e)}return j(n,[{key:`toString`,value:function(){return`@!R=`+this.dimen}}]),n}(F.Command.Xymatrix.Setup.PretendEntrySize),F.Command.Xymatrix.Setup.PretendEntrySize.Width=function(e){M(n,e);var t=N(n);function n(e){return P(this,n),t.call(this,e)}return j(n,[{key:`toString`,value:function(){return`@!C=`+this.dimen}}]),n}(F.Command.Xymatrix.Setup.PretendEntrySize),F.Command.Xymatrix.Setup.PretendEntrySize.HeightAndWidth=function(e){M(n,e);var t=N(n);function n(e){return P(this,n),t.call(this,e)}return j(n,[{key:`toString`,value:function(){return`@!=`+this.dimen}}]),n}(F.Command.Xymatrix.Setup.PretendEntrySize),F.Command.Xymatrix.Setup.FixGrid=function e(){P(this,e)},F.Command.Xymatrix.Setup.FixGrid.Row=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`@!R`}}]),n}(F.Command.Xymatrix.Setup.FixGrid),F.Command.Xymatrix.Setup.FixGrid.Column=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`@!C`}}]),n}(F.Command.Xymatrix.Setup.FixGrid),F.Command.Xymatrix.Setup.FixGrid.RowAndColumn=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`@!`}}]),n}(F.Command.Xymatrix.Setup.FixGrid),F.Command.Xymatrix.Setup.AdjustEntrySize=function e(t,n){P(this,e),this.addop=t,this.dimen=n},F.Command.Xymatrix.Setup.AdjustEntrySize.Margin=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@M`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.AdjustEntrySize),F.Command.Xymatrix.Setup.AdjustEntrySize.Width=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@W`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.AdjustEntrySize),F.Command.Xymatrix.Setup.AdjustEntrySize.Height=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`@H`+this.addop+this.dimen}}]),n}(F.Command.Xymatrix.Setup.AdjustEntrySize),F.Command.Xymatrix.Setup.AdjustLabelSep=function(){function e(t,n){P(this,e),this.addop=t,this.dimen=n}return j(e,[{key:`toString`,value:function(){return`@L`+this.addop+this.dimen}}]),e}(),F.Command.Xymatrix.Setup.SetOrientation=function(){function e(t){P(this,e),this.direction=t}return j(e,[{key:`toString`,value:function(){return`@`+this.direction}}]),e}(),F.Command.Xymatrix.Setup.AddModifier=function(){function e(t){P(this,e),this.modifier=t}return j(e,[{key:`toString`,value:function(){return`@*`+this.modifier}}]),e}(),F.Command.Xymatrix.Row=function(){function e(t){P(this,e),this.entries=t}return j(e,[{key:`toString`,value:function(){return this.entries.mkString(` & `)}}]),e}(),F.Command.Xymatrix.Entry=function e(){P(this,e)},F.Command.Xymatrix.Entry.SimpleEntry=function(e){M(n,e);var t=N(n);function n(e,r,i){var a;return P(this,n),(a=t.call(this)).modifiers=e,a.objectbox=r,a.decor=i,a}return j(n,[{key:`isEmpty`,get:function(){return!1}},{key:`toString`,value:function(){return this.modifiers.mkString(`**{`,``,`}`)+` `+this.objectbox+` `+this.decor}}]),n}(F.Command.Xymatrix.Entry),F.Command.Xymatrix.Entry.ObjectEntry=function(e){M(n,e);var t=N(n);function n(e,r,i){var a;return P(this,n),(a=t.call(this)).object=e,a.pos=r,a.decor=i,a}return j(n,[{key:`isEmpty`,get:function(){return!1}},{key:`toString`,value:function(){return`*`+this.object+` `+this.pos+` `+this.decor}}]),n}(F.Command.Xymatrix.Entry),F.Command.Xymatrix.Entry.EmptyEntry=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).decor=e,r}return j(n,[{key:`isEmpty`,get:function(){return!0}},{key:`toString`,value:function(){return``+this.decor}}]),n}(F.Command.Xymatrix.Entry),F.Command.Twocell=function(){function e(t,n,r){P(this,e),this.twocell=t,this.switches=n,this.arrow=r}return j(e,[{key:`toString`,value:function(){return this.twocell.toString()+this.switches.mkString(``)+this.arrow}}]),e}(),F.Command.Twocell.Hops2cell=function e(t,n){P(this,e),this.hops=t,this.maybeDisplace=n},F.Command.Twocell.Twocell=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`\\\\xtwocell[`+this.hops+`]`+this.maybeDisplace.getOrElse(`{}`)}}]),n}(F.Command.Twocell.Hops2cell),F.Command.Twocell.UpperTwocell=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`\\\\xuppertwocell[`+this.hops+`]`+this.maybeDisplace.getOrElse(`{}`)}}]),n}(F.Command.Twocell.Hops2cell),F.Command.Twocell.LowerTwocell=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`\\\\xlowertwocell[`+this.hops+`]`+this.maybeDisplace.getOrElse(`{}`)}}]),n}(F.Command.Twocell.Hops2cell),F.Command.Twocell.CompositeMap=function(e){M(n,e);var t=N(n);function n(e,r){return P(this,n),t.call(this,e,r)}return j(n,[{key:`toString`,value:function(){return`\\\\xcompositemap[`+this.hops+`]`+this.maybeDisplace.getOrElse(`{}`)}}]),n}(F.Command.Twocell.Hops2cell),F.Command.Twocell.Switch=function e(){P(this,e)},F.Command.Twocell.Switch.UpperLabel=function(){function e(t){P(this,e),this.label=t}return j(e,[{key:`toString`,value:function(){return`^`+this.label}}]),e}(),F.Command.Twocell.Switch.LowerLabel=function(){function e(t){P(this,e),this.label=t}return j(e,[{key:`toString`,value:function(){return`_`+this.label}}]),e}(),F.Command.Twocell.Switch.SetCurvature=function(){function e(t){P(this,e),this.nudge=t}return j(e,[{key:`toString`,value:function(){return this.nudge.toString()}}]),e}(),F.Command.Twocell.Switch.DoNotSetCurvedArrows=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`\\\\omit`}}]),e}(),F.Command.Twocell.Switch.PlaceModMapObject=function(){function e(){P(this,e)}return j(e,[{key:`toString`,value:function(){return`~!`}}]),e}(),F.Command.Twocell.Switch.ChangeHeadTailObject=function(){function e(t,n){P(this,e),this.what=t,this.object=n}return j(e,[{key:`toString`,value:function(){return`~`+this.what+`{`+this.object+`}`}}]),e}(),F.Command.Twocell.Switch.ChangeCurveObject=function(){function e(t,n,r){P(this,e),this.what=t,this.spacer=n,this.maybeObject=r}return j(e,[{key:`toString`,value:function(){return`~`+this.what+`{`+this.spacer+(this.maybeObject.isDefined?`~**`+this.maybeObject.get:``)+`}`}}]),e}(),F.Command.Twocell.Label=function(){function e(t,n){P(this,e),this.maybeNudge=t,this.labelObject=n}return j(e,[{key:`toString`,value:function(){return this.maybeNudge.toString()+this.labelObject}}]),e}(),F.Command.Twocell.Nudge=function e(){P(this,e)},F.Command.Twocell.Nudge.Number=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).number=e,r}return j(n,[{key:`toString`,value:function(){return`<`+this.number+`>`}}]),n}(F.Command.Twocell.Nudge),F.Command.Twocell.Nudge.Omit=function(e){M(n,e);var t=N(n);function n(){return P(this,n),t.call(this)}return j(n,[{key:`toString`,value:function(){return`<\\\\omit>`}}]),n}(F.Command.Twocell.Nudge),F.Command.Twocell.Arrow=function e(){P(this,e)},F.Command.Twocell.Arrow.WithOrientation=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).tok=e,i.labelObject=r,i}return j(n,[{key:`toString`,value:function(){return`{[`+this.tok+`] `+this.labelObject+`}`}}]),n}(F.Command.Twocell.Arrow),F.Command.Twocell.Arrow.WithPosition=function(e){M(n,e);var t=N(n);function n(e,r){var i;return P(this,n),(i=t.call(this)).nudge=e,i.labelObject=r,i}return j(n,[{key:`toString`,value:function(){return`{[`+this.nudge+`] `+this.labelObject+`}`}}]),n}(F.Command.Twocell.Arrow),F.Command.Newdir=function(){function e(t,n){P(this,e),this.dirMain=t,this.compositeObject=n}return j(e,[{key:`toString`,value:function(){return`\\\\newdir{`+this.dirMain+`}{`+this.compositeObject+`}`}}]),e}(),F.Pos.Xyimport=function e(){P(this,e)},F.Pos.Xyimport.TeXCommand=function(e){M(n,e);var t=N(n);function n(e,r,i,a,o){var s;return P(this,n),(s=t.call(this)).width=e,s.height=r,s.xOffset=i,s.yOffset=a,s.graphics=o,s}return j(n,[{key:`toString`,value:function(){return`\\\\xyimport(`+this.width+`, `+this.height+`)(`+this.xOffset+`, `+this.yOffset+`){`+this.graphics+`}`}}]),n}(F.Pos.Xyimport),F.Pos.Xyimport.Graphics=function(e){M(n,e);var t=N(n);function n(e,r,i,a,o){var s;return P(this,n),(s=t.call(this)).width=e,s.height=r,s.xOffset=i,s.yOffset=a,s.graphics=o,s}return j(n,[{key:`toString`,value:function(){return`\\\\xyimport(`+this.width+`, `+this.height+`)(`+this.xOffset+`, `+this.yOffset+`){`+this.graphics+`}`}}]),n}(F.Pos.Xyimport),F.Command.Includegraphics=function(){function e(t,n,r){P(this,e),this.isClipped=t,this.attributeList=n,this.filepath=r}return j(e,[{key:`isIncludegraphics`,get:function(){return!0}},{key:`toString`,value:function(){return`\\\\includegraphics`+(this.isClipped?`*`:``)+this.attributeList.mkString(`[`,`,`,`]`)+`{`+this.filepath+`}`}}]),e}(),F.Command.Includegraphics.Attr=function e(){P(this,e)},F.Command.Includegraphics.Attr.Width=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).dimen=e,r}return j(n,[{key:`toString`,value:function(){return`width=`+this.dimen}}]),n}(F.Command.Includegraphics.Attr),F.Command.Includegraphics.Attr.Height=function(e){M(n,e);var t=N(n);function n(e){var r;return P(this,n),(r=t.call(this)).dimen=e,r}return j(n,[{key:`toString`,value:function(){return`height=`+this.dimen}}]),n}(F.Command.Includegraphics.Attr);var I=k.fun,Ue=k.elem,We=function(e){return I(k.elem(e))},L=k.literal,Ge=k.regex,Ke=k.regexLiteral,R=function(e){return I(k.literal(e))},qe=k.seq,z=k.or,Je=function(e){return k.lazyParser(e)().rep()},Ye=function(e){return k.lazyParser(e)().rep1()},Xe=function(e){return k.lazyParser(e)().opt()},Ze=k.success,B=function(e){return function(){var t=e.memo;return t===void 0&&(t=e.memo=e()),t}},V=new k,Qe={xy:B((function(){return V.posDecor().to((function(e){return e}))})),xybox:B((function(){return L(`{`).andr(V.posDecor).andl(R(`}`)).to((function(e){return e}))})),xymatrixbox:B((function(){return V.xymatrix().to((function(e){return new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty),new F.Decor(O.empty.append(e)))}))})),posDecor:B((function(){return qe(V.pos,V.decor).to((function(e){return new F.PosDecor(e.head,e.tail)}))})),pos:B((function(){return qe(V.coord,Je(V.pos2)).to((function(e){return new F.Pos.Coord(e.head,e.tail)}))})),nonemptyPos:B((function(){return z(qe(V.nonemptyCoord,Je(V.pos2)),qe(V.coord,Ye(V.pos2))).to((function(e){return new F.Pos.Coord(e.head,e.tail)}))})),pos2:B((function(){return z(L(`+`).andr(V.coord).to((function(e){return new F.Pos.Plus(e)})),L(`-`).andr(V.coord).to((function(e){return new F.Pos.Minus(e)})),L(`!`).andr(V.coord).to((function(e){return new F.Pos.Skew(e)})),L(`.`).andr(V.coord).to((function(e){return new F.Pos.Cover(e)})),L(`,`).andr(V.coord).to((function(e){return new F.Pos.Then(e)})),L(`;`).andr(V.coord).to((function(e){return new F.Pos.SwapPAndC(e)})),L(`::`).andr(V.coord).to((function(e){return new F.Pos.SetYBase(e)})),L(`:`).andr(V.coord).to((function(e){return new F.Pos.SetBase(e)})),L(`**`).andr(V.object).to((function(e){return new F.Pos.ConnectObject(e)})),L(`*`).andr(V.object).to((function(e){return new F.Pos.DropObject(e)})),L(`?`).andr(V.place).to((function(e){return new F.Pos.Place(e)})),L(`@+`).andr(V.coord).to((function(e){return new F.Pos.PushCoord(e)})),L(`@-`).andr(V.coord).to((function(e){return new F.Pos.EvalCoordThenPop(e)})),L(`@=`).andr(V.coord).to((function(e){return new F.Pos.LoadStack(e)})),L(`@@`).andr(V.coord).to((function(e){return new F.Pos.DoCoord(e)})),L(`@i`).to((function(){return new F.Pos.InitStack})),L(`@(`).to((function(){return new F.Pos.EnterFrame})),L(`@)`).to((function(){return new F.Pos.LeaveFrame})),L(`=:`).andr(R(`\"`)).andr(V.id).andl(We(`\"`)).to((function(e){return new F.Pos.SaveBase(e)})),L(`=@`).andr(R(`\"`)).andr(V.id).andl(We(`\"`)).to((function(e){return new F.Pos.SaveStack(e)})),L(`=`).andr(R(`\"`)).andr(V.id).andl(We(`\"`)).to((function(e){return new F.Pos.SavePos(e)})),L(`=`).andr(V.nonemptyCoord).andl(R(`\"`)).and(V.id).andl(We(`\"`)).to((function(e){return new F.Pos.SaveMacro(e.head,e.tail)})),V.xyimport)})),coord:B((function(){return z(V.nonemptyCoord,Ze(`empty`).to((function(){return new F.Coord.C})))})),nonemptyCoord:B((function(){return z(L(`c`).to((function(){return new F.Coord.C})),L(`p`).to((function(){return new F.Coord.P})),L(`x`).to((function(){return new F.Coord.X})),L(`y`).to((function(){return new F.Coord.Y})),V.vector().to((function(e){return new F.Coord.Vector(e)})),L(`\"`).andr(V.id).andl(We(`\"`)).to((function(e){return new F.Coord.Id(e)})),L(`{`).andr(V.posDecor).andl(R(`}`)).to((function(e){return new F.Coord.Group(e)})),L(`s`).andr(I(Ke(/^\\d/))).to((function(e){return new F.Coord.StackPosition(parseInt(e))})),L(`s`).andr(R(`{`)).and(V.nonnegativeNumber).andl(R(`}`)).to((function(e){return new F.Coord.StackPosition(e)})),L(`[`).andr(I(Xe(L(`\"`).andr(V.id).andl(We(`\"`))).to((function(e){return e.getOrElse(``)})))).and(V.number).andl(R(`,`)).and(V.number).andl(R(`]`)).to((function(e){return new F.Coord.DeltaRowColumn(e.head.head,e.head.tail,e.tail)})),L(`[`).andr(I(Xe(L(`\"`).andr(V.id).andl(We(`\"`))).to((function(e){return e.getOrElse(``)})))).and(I(Je(Ge(/^[lrud]/)))).andl(R(`]`)).to((function(e){return new F.Coord.Hops(e.head,e.tail)})),L(`[`).andr(I(Xe(L(`\"`).andr(V.id).andl(We(`\"`))).to((function(e){return e.getOrElse(``)})))).and(I(Ye(Ge(/^[lrud]/)))).and(V.place).andl(R(`]`)).to((function(e){return new F.Coord.DeltaRowColumn(e.head.head,e.head.tail,new F.Pos.Place(e.tail))})))})),vector:B((function(){return z(L(`(`).andr(V.factor).andl(R(`,`)).and(V.factor).andl(R(`)`)).to((function(e){return new F.Vector.InCurBase(e.head,e.tail)})),L(`<`).andr(V.dimen).andl(R(`,`)).and(V.dimen).andl(R(`>`)).to((function(e){return new F.Vector.Abs(e.head,e.tail)})),L(`<`).andr(V.dimen).andl(R(`>`)).to((function(e){return new F.Vector.Abs(e,e)})),L(`a`).andr(R(`(`)).andr(V.number).andl(R(`)`)).to((function(e){return new F.Vector.Angle(e)})),L(`/`).andr(V.direction).and(V.looseDimen).andl(R(`/`)).to((function(e){return new F.Vector.Dir(e.head,e.tail)})),L(`0`).to((function(e){return new F.Vector.Abs(`0mm`,`0mm`)})),(function(){return V.corner().and(I(k.opt(I(L(`(`).andr(V.factor).andl(R(`)`)))).to((function(e){return e.getOrElse(1)})))).to((function(e){return new F.Vector.Corner(e.head,e.tail)}))}))})),corner:B((function(){return z(Ke(/^(CL|LC)/).to((function(){return new F.Corner.CL})),Ke(/^(CR|RC)/).to((function(){return new F.Corner.CR})),Ke(/^(CD|DC)/).to((function(){return new F.Corner.CD})),Ke(/^(CU|UC)/).to((function(){return new F.Corner.CU})),Ke(/^(LD|DL)/).to((function(){return new F.Corner.LD})),Ke(/^(RD|DR)/).to((function(){return new F.Corner.RD})),Ke(/^(LU|UL)/).to((function(){return new F.Corner.LU})),Ke(/^(RU|UR)/).to((function(){return new F.Corner.RU})),L(`L`).to((function(){return new F.Corner.L})),L(`R`).to((function(){return new F.Corner.R})),L(`D`).to((function(){return new F.Corner.D})),L(`U`).to((function(){return new F.Corner.U})),L(`E`).to((function(){return new F.Corner.NearestEdgePoint})),L(`P`).to((function(){return new F.Corner.PropEdgePoint})),L(`A`).to((function(){return new F.Corner.Axis})))})),place:B((function(){return z(L(`<`).andr(V.place).to((function(e){return new F.Place(1,0,void 0,void 0).compound(e)})),L(`>`).andr(V.place).to((function(e){return new F.Place(0,1,void 0,void 0).compound(e)})),L(`(`).andr(V.factor).andl(R(`)`)).and(V.place).to((function(e){return new F.Place(0,0,new F.Place.Factor(e.head),void 0).compound(e.tail)})),L(`!`).andr(R(`{`)).andr(V.pos).andl(R(`}`)).and(V.slide).to((function(e){return new F.Place(0,0,new F.Place.Intercept(e.head),e.tail)})),(function(){return V.slide().to((function(e){return new F.Place(0,0,void 0,e)}))}))})),slide:B((function(){return z(L(`/`).andr(V.dimen).andl(R(`/`)).to((function(e){return new F.Slide(new y.Some(e))})),Ze(`no slide`).to((function(){return new F.Slide(y.empty)})))})),factor:B(I(Ke(/^[+\\-]?(\\d+(\\.\\d*)?|\\d*\\.\\d+)/).to((function(e){return parseFloat(e)})))),number:B(I(Ke(/^[+\\-]?\\d+/).to((function(e){return parseInt(e)})))),nonnegativeNumber:B(I(Ke(/^\\d+/).to((function(e){return parseInt(e)})))),unit:B(I(Ke(/^(em|ex|px|pt|pc|in|cm|mm|mu)/).to((function(e){return e})))),dimen:B((function(){return V.factor().and(V.unit).to((function(e){return e.head.toString()+e.tail}))})),looseDimen:B((function(){return V.looseFactor().and(V.unit).to((function(e){return e.head.toString()+e.tail}))})),looseFactor:B(I(z(Ke(/^(\\d \\d*(\\.\\d*))/).to((function(e){return parseFloat(e.replace(/ /,``))})),Ke(/^[+\\-]?(\\d+(\\.\\d*)?|\\d*\\.\\d+)/).to((function(e){return parseFloat(e)}))))),id:B(I(Ge(/^[^\"]+/))),object:B((function(){return z(Je(V.modifier).and(V.objectbox).to((function(e){return new F.Object(e.head,e.tail)})))})),objectbox:B((function(){return z(V.mathText,L(`@`).andr(V.dir),L(`\\\\dir`).andr(V.dir),L(`\\\\cir`).andr(V.cirRadius).andl(R(`{`)).and(V.cir).andl(R(`}`)).to((function(e){return new F.ObjectBox.Cir(e.head,e.tail)})),L(`\\\\frm`).andr(V.frameRadius).andl(R(`{`)).and(V.frameMain).andl(R(`}`)).to((function(e){return new F.ObjectBox.Frame(e.head,e.tail)})),L(`\\\\object`).andr(V.object).to((function(e){return new F.ObjectBox.WrapUpObject(e)})),L(`\\\\composite`).and(R(`{`)).andr(V.compositeObject).andl(R(`}`)).to((function(e){return new F.ObjectBox.CompositeObject(e)})),L(`\\\\xybox`).and(R(`{`)).andr(V.posDecor).andl(R(`}`)).to((function(e){return new F.ObjectBox.Xybox(e)})),L(`\\\\xymatrix`).andr(V.xymatrix).to((function(e){return new F.ObjectBox.Xymatrix(e)})),V.txt,V.curve,Ge(/^(\\\\[a-zA-Z@][a-zA-Z0-9@]+)/).andl(R(`{`)).and(V.text).andl(R(`}`)).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return V.toMath(t.head+`{`+t.tail+`}`,n)})))})),compositeObject:B((function(){return V.object().and(I(Je(L(`*`).andr(V.object)))).to((function(e){return e.tail.prepend(e.head)}))})),mathText:B((function(){return L(`{`).andr(V.text).andl(We(`}`)).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return V.toMath(`\\\\hbox{$\\\\objectstyle{`+t+`}$}`,n)}))})),toMath:function(e,t){var n=t(e);return new F.ObjectBox.Text(n)},textNodeCreator:B((function(){return new k.Parser((function(e){return new k.Success(e.context.createTextNode,e)}))})),text:B((function(){return Ge(/^[^{}\\\\%]*/).and((function(){return z(Ge(/^(\\\\\\{|\\\\\\}|\\\\%|\\\\)/).to((function(e){return e})),Ue(`{`).andr(V.text).andl(We(`}`)).to((function(e){return`{`+e+`}`})),Ge(/^%[^\\r\\n]*(\\r\\n|\\r|\\n)?/).to((function(e){return` `}))).and(I(Ge(/^[^{}\\\\%]*/))).rep().to((function(e){var t=``;return e.foreach((function(e){t+=e.head+e.tail})),t}))})).to((function(e){return e.head+e.tail}))})),txt:B((function(){return L(`\\\\txt`).andr(V.txtWidth).and(I(Ge(/^(\\\\[a-zA-Z@][a-zA-Z0-9@]+)?/))).andl(R(`{`)).and(V.text).andl(R(`}`)).and(V.textNodeCreator).to((function(e){var t,n=e.head,r=e.tail,i=n.head.head,a=n.head.tail,o=n.tail,s=o.split(`\\\\\\\\`);if(s.length<=1)t=a+`{\\\\hbox{`+o+`}}`;else{t=`\\\\hbox{$\\\\begin{array}{c}\n`;for(var c=0;c<s.length;c++)t+=a+`{\\\\hbox{`+s[c].replace(/(^[\\r\\n\\s]+)|([\\r\\n\\s]+$)/g,``)+`}}`,c!=s.length-1&&(t+=`\\\\\\\\\n`);t+=`\\\\end{array}$}`}return new F.ObjectBox.Txt(i,V.toMath(t,r))}))})),txtWidth:B((function(){return z(L(`<`).andr(V.dimen).andl(R(`>`)).to((function(e){return new F.Vector.Abs(e,e)})).to((function(e){return new F.ObjectBox.Txt.Width.Vector(e)})),Ze(`default`).to((function(){return new F.ObjectBox.Txt.Width.Default})))})),dir:B((function(){return Ke(/^[\\^_0123]/).opt().andl(R(`{`)).and(V.dirMain).andl(R(`}`)).to((function(e){return new F.ObjectBox.Dir(e.head.getOrElse(``),e.tail)}))})),dirMain:B((function(){return Ge(/^(-|\\.|~|>|<|\\(|\\)|`|'|\\||\\*|\\+|x|\\/|o|=|:|[a-zA-Z@ ])+/).opt().to((function(e){return e.getOrElse(``)}))})),cirRadius:B((function(){return z(V.vector().to((function(e){return new F.ObjectBox.Cir.Radius.Vector(e)})),Ze(`default`).to((function(){return new F.ObjectBox.Cir.Radius.Default})))})),frameRadius:B((function(){return z(V.frameRadiusVector().to((function(e){return new F.ObjectBox.Frame.Radius.Vector(e)})),Ze(`default`).to((function(){return new F.ObjectBox.Frame.Radius.Default})))})),frameRadiusVector:B((function(){return z(L(`<`).andr(V.dimen).andl(R(`,`)).and(V.dimen).andl(R(`>`)).to((function(e){return new F.Vector.Abs(e.head,e.tail)})),L(`<`).andr(V.dimen).andl(R(`>`)).to((function(e){return new F.Vector.Abs(e,e)})))})),frameMain:B((function(){return Ge(/^(((_|\\^)?(\\\\\\{|\\\\\\}|\\(|\\)))|[\\-=oe,\\.\\*]*)/)})),cir:B((function(){return z(V.nonemptyCir,Ze(`full`).to((function(){return new F.ObjectBox.Cir.Cir.Full})))})),nonemptyCir:B((function(){return V.diag().and(I(Ke(/^[_\\^]/))).and(V.diag).to((function(e){return new F.ObjectBox.Cir.Cir.Segment(e.head.head,e.head.tail,e.tail)}))})),curve:B((function(){return L(`\\\\crv`).andr(V.curveModifier).andl(R(`{`)).and(V.curveObject).and(V.curvePoslist).andl(R(`}`)).to((function(e){return new F.ObjectBox.Curve(e.head.head,e.head.tail,e.tail)}))})),curveModifier:B((function(){return Je(I(L(`~`).andr(V.curveOption)))})),curveOption:B((function(){return z(L(`p`).to((function(){return new F.ObjectBox.Curve.Modifier.p})),L(`P`).to((function(){return new F.ObjectBox.Curve.Modifier.P})),L(`l`).to((function(){return new F.ObjectBox.Curve.Modifier.l})),L(`L`).to((function(){return new F.ObjectBox.Curve.Modifier.L})),L(`c`).to((function(){return new F.ObjectBox.Curve.Modifier.c})),L(`C`).to((function(){return new F.ObjectBox.Curve.Modifier.C})),L(`pc`).to((function(){return new F.ObjectBox.Curve.Modifier.pc})),L(`pC`).to((function(){return new F.ObjectBox.Curve.Modifier.pC})),L(`Pc`).to((function(){return new F.ObjectBox.Curve.Modifier.Pc})),L(`PC`).to((function(){return new F.ObjectBox.Curve.Modifier.PC})),L(`lc`).to((function(){return new F.ObjectBox.Curve.Modifier.lc})),L(`lC`).to((function(){return new F.ObjectBox.Curve.Modifier.lC})),L(`Lc`).to((function(){return new F.ObjectBox.Curve.Modifier.Lc})),L(`LC`).to((function(){return new F.ObjectBox.Curve.Modifier.LC})),L(`cC`).to((function(){return new F.ObjectBox.Curve.Modifier.cC})))})),curveObject:B((function(){return Je(z(L(`~*`).andr(V.object).to((function(e){return new F.ObjectBox.Curve.Object.Drop(e)})),L(`~**`).andr(V.object).to((function(e){return new F.ObjectBox.Curve.Object.Connect(e)}))))})),curvePoslist:B((function(){return z(L(`&`).andr(V.curvePoslist2).to((function(e){return e.prepend(new F.ObjectBox.Curve.PosList.CurPos)})),L(`~@`).andr(R(`&`)).andr(V.curvePoslist2).to((function(e){return e.prepend(new F.ObjectBox.Curve.PosList.AddStack)})),L(`~@`).to((function(){return O.empty.prepend(new F.ObjectBox.Curve.PosList.AddStack)})),V.pos().andl(R(`&`)).and(V.curvePoslist2).to((function(e){return e.tail.prepend(new F.ObjectBox.Curve.PosList.Pos(e.head))})),V.nonemptyPos().to((function(e){return O.empty.prepend(new F.ObjectBox.Curve.PosList.Pos(e))})),Ze(`empty`).to((function(){return O.empty})))})),curvePoslist2:B((function(){return z(L(`&`).andr(V.curvePoslist2).to((function(e){return e.prepend(new F.ObjectBox.Curve.PosList.CurPos)})),L(`~@`).andr(R(`&`)).andr(V.curvePoslist2).to((function(e){return e.prepend(new F.ObjectBox.Curve.PosList.AddStack)})),L(`~@`).to((function(){return O.empty.prepend(new F.ObjectBox.Curve.PosList.AddStack)})),V.nonemptyPos().andl(R(`&`)).and(V.curvePoslist2).to((function(e){return e.tail.prepend(new F.ObjectBox.Curve.PosList.Pos(e.head))})),V.nonemptyPos().to((function(e){return O.empty.prepend(new F.ObjectBox.Curve.PosList.Pos(e))})),Ze(`empty`).to((function(){return O.empty.prepend(new F.ObjectBox.Curve.PosList.CurPos)})))})),modifier:B((function(){return z(L(`!`).andr(V.vector).to((function(e){return new F.Modifier.Vector(e)})),L(`!`).to((function(e){return new F.Modifier.RestoreOriginalRefPoint})),L(`[`).andr(V.shape).andl(R(`]`)).to((function(e){return e})),L(`i`).to((function(e){return new F.Modifier.Invisible})),L(`h`).to((function(e){return new F.Modifier.Hidden})),V.addOp().and(V.size).to((function(e){return new F.Modifier.AddOp(e.head,e.tail)})),V.nonemptyDirection().to((function(e){return new F.Modifier.Direction(e)})))})),addOp:B((function(){return z(L(`+=`).to((function(){return new F.Modifier.AddOp.GrowTo})),L(`-=`).to((function(){return new F.Modifier.AddOp.ShrinkTo})),L(`+`).to((function(){return new F.Modifier.AddOp.Grow})),L(`-`).to((function(){return new F.Modifier.AddOp.Shrink})),L(`=`).to((function(){return new F.Modifier.AddOp.Set})))})),size:B((function(){return z((function(){return V.vector().to((function(e){return new F.Modifier.AddOp.VactorSize(e)}))}),Ze(`default size`).to((function(){return new F.Modifier.AddOp.DefaultSize})))})),shape:B((function(){return z(L(`.`).to((function(){return new F.Modifier.Shape.Point})),V.frameShape,V.alphabets().to((function(e){return new F.Modifier.Shape.Alphabets(e)})),L(`=`).andr(V.alphabets).to((function(e){return new F.Modifier.Shape.DefineShape(e)})),Ze(`rect`).to((function(){return new F.Modifier.Shape.Rect})))})),frameShape:B((function(){return L(`F`).andr(V.frameMain).and(I(Je(L(`:`).andr(I(z(V.frameRadiusVector().to((function(e){return new F.Modifier.Shape.Frame.Radius(e)})),V.colorName().to((function(e){return new F.Modifier.Shape.Frame.Color(e)})))))))).to((function(e){var t=e.head;return t===``&&(t=`-`),new F.Modifier.Shape.Frame(t,e.tail)}))})),alphabets:B((function(){return Ge(/^([a-zA-Z]+)/)})),colorName:B((function(){return Ge(/^([a-zA-Z][a-zA-Z0-9]*)/)})),direction:B((function(){return qe(V.direction0,Je(V.direction1)).to((function(e){return new F.Direction.Compound(e.head,e.tail)}))})),direction0:B((function(){return z(V.direction2,V.diag().to((function(e){return new F.Direction.Diag(e)})))})),direction1:B((function(){return z(L(`:`).andr(V.vector).to((function(e){return new F.Direction.RotVector(e)})),L(`_`).to((function(e){return new F.Direction.RotAntiCW})),L(`^`).to((function(e){return new F.Direction.RotCW})))})),direction2:B((function(){return z(L(`v`).andr(V.vector).to((function(e){return new F.Direction.Vector(e)})),L(`q`).andr(R(`{`)).andr(V.posDecor).andl(R(`}`)).to((function(e){return new F.Direction.ConstructVector(e)})))})),nonemptyDirection:B((function(){return z(qe(V.nonemptyDirection0,Je(V.direction1)),qe(V.direction0,Ye(V.direction1))).to((function(e){return new F.Direction.Compound(e.head,e.tail)}))})),nonemptyDirection0:B((function(){return z(V.direction2,V.nonemptyDiag().to((function(e){return new F.Direction.Diag(e)})))})),diag:B((function(){return z(V.nonemptyDiag,Ze(`empty`).to((function(e){return new F.Diag.Default})))})),nonemptyDiag:B((function(){return z(Ke(/^(ld|dl)/).to((function(e){return new F.Diag.LD})),Ke(/^(rd|dr)/).to((function(e){return new F.Diag.RD})),Ke(/^(lu|ul)/).to((function(e){return new F.Diag.LU})),Ke(/^(ru|ur)/).to((function(e){return new F.Diag.RU})),L(`l`).to((function(e){return new F.Diag.L})),L(`r`).to((function(e){return new F.Diag.R})),L(`d`).to((function(e){return new F.Diag.D})),L(`u`).to((function(e){return new F.Diag.U})))})),decor:B((function(){return V.command().rep().to((function(e){return new F.Decor(e)}))})),command:B((function(){return z(L(`\\\\ar`).andr(I(Je(V.arrowForm))).and(V.path).to((function(e){return new F.Command.Ar(e.head,e.tail)})),L(`\\\\xymatrix`).andr(V.xymatrix),L(`\\\\PATH`).andr(V.path).to((function(e){return new F.Command.Path(e)})),L(`\\\\afterPATH`).andr(R(`{`)).andr(V.decor).andl(R(`}`)).and(V.path).to((function(e){return new F.Command.AfterPath(e.head,e.tail)})),L(`\\\\save`).andr(V.pos).to((function(e){return new F.Command.Save(e)})),L(`\\\\restore`).to((function(){return new F.Command.Restore})),L(`\\\\POS`).andr(V.pos).to((function(e){return new F.Command.Pos(e)})),L(`\\\\afterPOS`).andr(R(`{`)).andr(V.decor).andl(R(`}`)).and(V.pos).to((function(e){return new F.Command.AfterPos(e.head,e.tail)})),L(`\\\\drop`).andr(V.object).to((function(e){return new F.Command.Drop(e)})),L(`\\\\connect`).andr(V.object).to((function(e){return new F.Command.Connect(e)})),L(`\\\\relax`).to((function(){return new F.Command.Relax})),L(`\\\\xyignore`).andr(R(`{`)).andr(V.pos).and(V.decor).andl(R(`}`)).to((function(e){return new F.Command.Ignore(e.head,e.tail)})),L(`\\\\xyshowAST`).andr(R(`{`)).andr(V.pos).and(V.decor).andl(R(`}`)).to((function(e){return new F.Command.ShowAST(e.head,e.tail)})),V.twocellCommand)})),arrowForm:B((function(){return z(L(`@`).andr(I(Ge(/^([\\-\\.~=:])/))).to((function(e){return new F.Command.Ar.Form.ChangeStem(e)})),L(`@`).andr(R(`!`)).to((function(e){return new F.Command.Ar.Form.DashArrowStem})),L(`@`).andr(R(`/`)).andr(V.direction).and(I(Xe(V.looseDimen))).andl(R(`/`)).to((function(e){return new F.Command.Ar.Form.CurveArrow(e.head,e.tail.getOrElse(`.5pc`))})),L(`@`).andr(R(`(`)).andr(V.direction).andl(R(`,`)).and(V.direction).andl(R(`)`)).to((function(e){return new F.Command.Ar.Form.CurveFitToDirection(e.head,e.tail)})),L(`@`).andr(R(\"`\")).andr(V.coord).to((function(e){return new F.Command.Ar.Form.CurveWithControlPoints(e)})),L(`@`).andr(R(`[`)).andr(V.shape).andl(R(`]`)).to((function(e){return new F.Command.Ar.Form.AddShape(e)})),L(`@`).andr(R(`*`)).andr(R(`{`)).andr(I(Je(V.modifier))).andl(R(`}`)).to((function(e){return new F.Command.Ar.Form.AddModifiers(e)})),L(`@`).andr(R(`<`)).andr(V.dimen).andl(R(`>`)).to((function(e){return new F.Command.Ar.Form.Slide(e)})),L(`|`).andr(V.anchor).and(V.it).to((function(e){return new F.Command.Ar.Form.LabelAt(e.head,e.tail)})),L(`^`).andr(V.anchor).and(V.it).to((function(e){return new F.Command.Ar.Form.LabelAbove(e.head,e.tail)})),L(`_`).andr(V.anchor).and(V.it).to((function(e){return new F.Command.Ar.Form.LabelBelow(e.head,e.tail)})),L(`@`).andr(R(`?`)).to((function(){return new F.Command.Ar.Form.ReverseAboveAndBelow})),L(`@`).andr(I(Ge(/^([\\^_0123])/).opt())).and(I(Xe(V.tipConnTip))).to((function(e){var t=e.head.getOrElse(``);if(e.tail.isDefined){var n=e.tail.get;return new F.Command.Ar.Form.BuildArrow(t,n.tail,n.stem,n.head)}return new F.Command.Ar.Form.ChangeVariant(t)})))})),tipConnTip:B((function(){return L(`{`).andr(I(Xe(V.nonemptyTip))).and(I(Xe(V.nonemptyConn))).and(I(Xe(V.nonemptyTip))).andl(R(`}`)).to((function(e){var t,n,r,i=e.head.head,a=e.head.tail,o=e.tail,s=new F.Command.Ar.Form.Tip.Tipchars(``);return a.isDefined||o.isDefined?(t=i.getOrElse(s),n=a.getOrElse(new F.Command.Ar.Form.Conn.Connchars(``)),r=o.getOrElse(s)):i.isDefined?(t=s,n=new F.Command.Ar.Form.Conn.Connchars(`-`),r=i.getOrElse(s)):(t=s,n=new F.Command.Ar.Form.Conn.Connchars(``),r=s),{tail:t,stem:n,head:r}}))})),nonemptyTip:B((function(){return z(Ge(/^([<>()|'`+\\/a-zA-Z ]+)/).to((function(e){return new F.Command.Ar.Form.Tip.Tipchars(e)})),L(`*`).andr(V.object).to((function(e){return new F.Command.Ar.Form.Tip.Object(e)})),V.dir().to((function(e){return new F.Command.Ar.Form.Tip.Dir(e)})))})),nonemptyConn:B((function(){return z(Ge(/^([\\-\\.~=:]+)/).to((function(e){return new F.Command.Ar.Form.Conn.Connchars(e)})),L(`*`).andr(V.object).to((function(e){return new F.Command.Ar.Form.Conn.Object(e)})),V.dir().to((function(e){return new F.Command.Ar.Form.Conn.Dir(e)})))})),path:B((function(){return V.path2(O.empty).to((function(e){return new F.Command.Path.Path(e)}))})),path2:function(e){var t=B((function(){return V.path2(e)}));return z(V.path3().and(t).to((function(e){return e.tail.prepend(e.head)})),qe(`~`,`{`,t,`}`).to((function(e){return e.head.tail})).into((function(e){return V.path2(e)})),V.segment().to((function(e){return O.empty.prepend(new F.Command.Path.LastSegment(e))})),Ze(e).to((function(e){return e})))},path3:B((function(){return z(qe(`~`,`=`,`{`,V.posDecor,`}`).to((function(e){return new F.Command.Path.SetBeforeAction(e.head.tail)})),qe(`~`,`/`,`{`,V.posDecor,`}`).to((function(e){return new F.Command.Path.SetAfterAction(e.head.tail)})),qe(`~`,`<`,`{`,V.labels,`}`).to((function(e){return new F.Command.Path.AddLabelNextSegmentOnly(e.head.tail)})),qe(`~`,`>`,`{`,V.labels,`}`).to((function(e){return new F.Command.Path.AddLabelLastSegmentOnly(e.head.tail)})),qe(`~`,`+`,`{`,V.labels,`}`).to((function(e){return new F.Command.Path.AddLabelEverySegment(e.head.tail)})),qe(`'`,V.segment).to((function(e){return new F.Command.Path.StraightSegment(e.tail)})),qe(\"`\",V.turn,V.segment).to((function(e){return new F.Command.Path.TurningSegment(e.head.tail,e.tail)})))})),turn:B((function(){return z(V.nonemptyCir().and(V.turnRadius).to((function(e){return new F.Command.Path.Turn.Cir(e.head,e.tail)})),V.diag().and(V.turnRadius).to((function(e){return new F.Command.Path.Turn.Diag(e.head,e.tail)})))})),turnRadius:B((function(){return z(L(`/`).andr(V.dimen).to((function(e){return new F.Command.Path.TurnRadius.Dimen(e)})),Ze(`default`).to((function(){return new F.Command.Path.TurnRadius.Default})))})),segment:B((function(){return V.nonemptyPos().and(V.pathSlide).and(V.labels).to((function(e){return new F.Command.Path.Segment(e.head.head,e.head.tail,e.tail)}))})),pathSlide:B((function(){return z(L(`<`).andr(V.dimen).andl(R(`>`)).to((function(e){return new F.Slide(new y.Some(e))})),Ze(`no slide`).to((function(){return new F.Slide(y.empty)})))})),labels:B((function(){return V.label().rep().to((function(e){return new F.Command.Path.Labels(e)}))})),label:B((function(){return z(qe(`^`,V.anchor,V.it,V.alias).to((function(e){return new F.Command.Path.Label.Above(new F.Pos.Place(e.head.head.tail),e.head.tail,e.tail)})),qe(`_`,V.anchor,V.it,V.alias).to((function(e){return new F.Command.Path.Label.Below(new F.Pos.Place(e.head.head.tail),e.head.tail,e.tail)})),qe(`|`,V.anchor,V.it,V.alias).to((function(e){return new F.Command.Path.Label.At(new F.Pos.Place(e.head.head.tail),e.head.tail,e.tail)})))})),anchor:B((function(){return z(L(`-`).andr(V.anchor).to((function(e){return new F.Place(1,1,new F.Place.Factor(.5),void 0).compound(e)})),V.place)})),it:B((function(){return Je(L(`[`).andr(V.shape).andl(R(`]`)).to((function(e){return e}))).and(V.it2).to((function(e){return new F.Object(e.head.concat(e.tail.modifiers),e.tail.object)}))})),it2:B((function(){return z(Ke(/^[0-9a-zA-Z]/).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return new F.Object(O.empty,V.toMath(`\\\\labelstyle `+t,n))})),Ke(/^(\\\\[a-zA-Z][a-zA-Z0-9]*)/).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return new F.Object(O.empty,V.toMath(`\\\\labelstyle `+t,n))})),L(`{`).andr(V.text).andl(We(`}`)).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return new F.Object(O.empty,V.toMath(`\\\\labelstyle `+t,n))})),L(`*`).andr(V.object),L(`@`).andr(V.dir).to((function(e){return new F.Object(O.empty,e)})))})),alias:B((function(){return qe(`=`,`\"`,V.id,`\"`).opt().to((function(e){return e.map((function(e){return e.head.tail}))}))})),xymatrix:B((function(){return V.setup().andl(R(`{`)).and(V.rows).andl(R(`}`)).to((function(e){return new F.Command.Xymatrix(e.head,e.tail)}))})),setup:B((function(){return Je(I(z(L(`\"`).andr(I(Ge(/^[^\"]+/))).andl(We(`\"`)).to((function(e){return new F.Command.Xymatrix.Setup.Prefix(e)})),L(`@!`).andr(I(Ge(/^[RC]/).opt().to((function(e){return e.getOrElse(``)})))).and(I(z(Ue(`0`).to((function(){return`0em`})),Ue(`=`).andr(V.dimen)))).to((function(e){var t=e.tail;switch(e.head){case`R`:return new F.Command.Xymatrix.Setup.PretendEntrySize.Height(t);case`C`:return new F.Command.Xymatrix.Setup.PretendEntrySize.Width(t);default:return new F.Command.Xymatrix.Setup.PretendEntrySize.HeightAndWidth(t)}})),L(`@!`).andr(I(z(Ue(`R`).to((function(){return new F.Command.Xymatrix.Setup.FixGrid.Row})),Ue(`C`).to((function(){return new F.Command.Xymatrix.Setup.FixGrid.Column}))).opt().to((function(e){return e.getOrElse(new F.Command.Xymatrix.Setup.FixGrid.RowAndColumn)})))),L(`@`).andr(I(Ge(/^[MWHL]/))).and(V.addOp).and(V.dimen).to((function(e){var t=e.head.tail,n=e.tail;switch(e.head.head){case`M`:return new F.Command.Xymatrix.Setup.AdjustEntrySize.Margin(t,n);case`W`:return new F.Command.Xymatrix.Setup.AdjustEntrySize.Width(t,n);case`H`:return new F.Command.Xymatrix.Setup.AdjustEntrySize.Height(t,n);case`L`:return new F.Command.Xymatrix.Setup.AdjustLabelSep(t,n)}})),L(`@`).andr(V.nonemptyDirection).to((function(e){return new F.Command.Xymatrix.Setup.SetOrientation(e)})),L(`@*[`).andr(V.shape).andl(R(`]`)).to((function(e){return new F.Command.Xymatrix.Setup.AddModifier(e)})),L(`@*`).andr(V.addOp).and(V.size).to((function(e){return new F.Command.Xymatrix.Setup.AddModifier(new F.Modifier.AddOp(e.head,e.tail))})),L(`@`).andr(I(Ge(/^[RC]/).opt().to((function(e){return e.getOrElse(``)})))).and(V.addOp).and(V.dimen).to((function(e){var t=e.head.tail,n=e.tail;switch(e.head.head){case`R`:return new F.Command.Xymatrix.Setup.ChangeSpacing.Row(t,n);case`C`:return new F.Command.Xymatrix.Setup.ChangeSpacing.Column(t,n);default:return new F.Command.Xymatrix.Setup.ChangeSpacing.RowAndColumn(t,n)}})),L(`@1`).to((function(){return new F.Command.Xymatrix.Setup.AdjustEntrySize.Margin(new F.Modifier.AddOp.Set,`1pc`)})))))})),rows:B((function(){return V.row().and(I(Je(L(`\\\\\\\\`).andr(V.row)))).to((function(e){var t=e.tail.prepend(e.head);if(!t.isEmpty){var n=t.at(t.length()-1);n.entries.length()===1&&n.entries.at(0).isEmpty&&(t=t.reverse().tail.reverse())}return t}))})),row:B((function(){return V.entry().and(I(Je(L(`&`).andr(V.entry)))).to((function(e){return new F.Command.Xymatrix.Row(e.tail.prepend(e.head))}))})),entry:B((function(){return z(L(`*`).andr(V.object).and(V.pos).and(V.decor).to((function(e){var t=e.head.head,n=e.head.tail,r=e.tail;return new F.Command.Xymatrix.Entry.ObjectEntry(t,n,r)})),V.entryModifier().rep().and(V.looseObjectbox).and(V.decor).to((function(e){var t=e.head.head.foldLeft(O.empty,(function(e,t){return t.concat(e)})),n=e.head.tail.isEmpty,r=e.head.tail.object,i=e.tail;return n&&t.isEmpty?new F.Command.Xymatrix.Entry.EmptyEntry(i):new F.Command.Xymatrix.Entry.SimpleEntry(t,r,i)})))})),entryModifier:B((function(){return z(L(`**`).andr(R(`[`)).andr(V.shape).andl(R(`]`)).to((function(e){return O.empty.append(e)})),L(`**`).andr(R(`{`)).andr(I(Je(V.modifier))).andl(R(`}`)))})),looseObjectbox:B((function(){return z(V.objectbox().to((function(e){return{isEmpty:!1,object:e}})),Ge(/^[^\\\\{}%&]+/).opt().to((function(e){return e.getOrElse(``)})).and(I(Je(z(Ue(`{`).andr(V.text).andl(We(`}`)).to((function(e){return`{`+e+`}`})),Ue(`\\\\`).andr(I((e=Ge(/^(\\\\|ar|xymatrix|PATH|afterPATH|save|restore|POS|afterPOS|drop|connect|xyignore|([lrud]+(twocell|uppertwocell|lowertwocell|compositemap))|xtwocell|xuppertwocell|xlowertwocell|xcompositemap)/),k.not(k.lazyParser(e))))).andr(I(Ge(/^[{}%&]/).opt().to((function(e){return e.getOrElse(``)})))).to((function(e){return`\\\\`+e})),Ge(/^%[^\\r\\n]*(\\r\\n|\\r|\\n)?/).to((function(e){return` `}))).and(I(Ge(/^[^\\\\{}%&]+/).opt().to((function(e){return e.getOrElse(``)})))).to((function(e){return e.head+e.tail}))).to((function(e){return e.mkString(``)})))).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail,r=t.head+t.tail;return{isEmpty:r.trim().length===0,object:V.toMath(`\\\\hbox{$\\\\objectstyle{`+r+`}$}`,n)}})));var e})),twocellCommand:B((function(){return V.twocell().and(I(Je(V.twocellSwitch))).and(V.twocellArrow).to((function(e){return new F.Command.Twocell(e.head.head,e.head.tail,e.tail)}))})),twocell:B((function(){return z(Ke(/^\\\\[lrud]+twocell/).to((function(e){var t=e.substring(1,e.length-7);return new F.Command.Twocell.Twocell(t,y.empty)})),Ke(/^\\\\[lrud]+uppertwocell/).to((function(e){var t=e.substring(1,e.length-12);return new F.Command.Twocell.UpperTwocell(t,y.empty)})),Ke(/^\\\\[lrud]+lowertwocell/).to((function(e){var t=e.substring(1,e.length-12);return new F.Command.Twocell.LowerTwocell(t,y.empty)})),Ke(/^\\\\[lrud]+compositemap/).to((function(e){var t=e.substring(1,e.length-12);return new F.Command.Twocell.CompositeMap(t,y.empty)})),z(L(`\\\\xtwocell`).to((function(){return F.Command.Twocell.Twocell})),L(`\\\\xuppertwocell`).to((function(){return F.Command.Twocell.UpperTwocell})),L(`\\\\xlowertwocell`).to((function(){return F.Command.Twocell.LowerTwocell})),L(`\\\\xcompositemap`).to((function(){return F.Command.Twocell.CompositeMap}))).andl(R(`[`)).and(I(Ge(/^[lrud]+/))).andl(R(`]`)).andl(R(`{`)).and(V.text).andl(R(`}`)).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail,r=new F.Object(O.empty,V.toMath(`\\\\labelstyle `+t.tail,n));return new t.head.head(t.head.tail,new y.Some(r))})))})),twocellSwitch:B((function(){return z(L(`^`).andr(V.twocellLabel).to((function(e){return new F.Command.Twocell.Switch.UpperLabel(e)})),L(`_`).andr(V.twocellLabel).to((function(e){return new F.Command.Twocell.Switch.LowerLabel(e)})),L(`\\\\omit`).to((function(){return new F.Command.Twocell.Switch.DoNotSetCurvedArrows})),L(`~!`).to((function(){return new F.Command.Twocell.Switch.PlaceModMapObject})),Ke(/^(~[`'])/).andl(R(`{`)).and(V.object).andl(R(`}`)).to((function(e){var t=e.head.substring(1);return new F.Command.Twocell.Switch.ChangeHeadTailObject(t,e.tail)})),Ke(/^(~[\\^_]?)/).andl(R(`{`)).and(V.object).and(I(Xe(L(`~**`).andr(V.object)))).andl(R(`}`)).to((function(e){var t=e.head.head.substring(1),n=e.head.tail,r=e.tail;return new F.Command.Twocell.Switch.ChangeCurveObject(t,n,r)})),V.nudge().to((function(e){return new F.Command.Twocell.Switch.SetCurvature(e)})))})),twocellLabel:B((function(){return z(Ke(/^[0-9a-zA-Z]/).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail,r=new F.Object(O.empty,V.toMath(`\\\\twocellstyle `+t,n));return new F.Command.Twocell.Label(y.empty,r)})),Ke(/^(\\\\[a-zA-Z][a-zA-Z0-9]*)/).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail,r=new F.Object(O.empty,V.toMath(`\\\\twocellstyle `+t,n));return new F.Command.Twocell.Label(y.empty,r)})),L(`{`).andr(I(Xe(V.nudge))).andl(R(`*`)).and(V.object).andl(R(`}`)).to((function(e){return new F.Command.Twocell.Label(e.head,e.tail)})),L(`{`).andr(I(Xe(V.nudge))).and(V.text).andl(We(`}`)).and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail,r=new F.Object(O.empty,V.toMath(`\\\\twocellstyle `+t.tail,n));return new F.Command.Twocell.Label(t.head,r)})))})),nudge:B((function(){return z(L(`<\\\\omit>`).to((function(){return new F.Command.Twocell.Nudge.Omit})),L(`<`).andr(V.factor).andl(R(`>`)).to((function(e){return new F.Command.Twocell.Nudge.Number(e)})))})),twocellArrow:B((function(){return z(L(`{`).andr(I(Ke(/^([\\^_=`'\"!]|\\\\omit)/))).and(V.twocellLabelEntry).andl(R(`}`)).to((function(e){return new F.Command.Twocell.Arrow.WithOrientation(e.head,e.tail)})),L(`{`).andr(V.nudge).and(V.twocellLabelEntry).andl(R(`}`)).to((function(e){return new F.Command.Twocell.Arrow.WithPosition(e.head,e.tail)})),L(`{`).andr(V.twocellLabelEntry).andl(R(`}`)).to((function(e){return new F.Command.Twocell.Arrow.WithOrientation(``,e)})),Ze(`no arrow label`).andr(V.textNodeCreator).to((function(e){return new F.Command.Twocell.Arrow.WithOrientation(``,new F.Object(O.empty,V.toMath(`\\\\twocellstyle{}`,e)))})))})),twocellLabelEntry:B((function(){return z(L(`*`).andr(V.object),V.text().and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return new F.Object(O.empty,V.toMath(`\\\\twocellstyle `+t,n))})))})),newdir:B((function(){return L(`{`).andr(V.dirMain).andl(We(`}`)).andl(R(`{`)).and(V.compositeObject).andl(R(`}`)).to((function(e){return new F.Command.Newdir(e.head,new F.ObjectBox.CompositeObject(e.tail))}))})),xyimport:B((function(){return L(`\\\\xyimport`).andr(R(`(`)).andr(V.factor).andl(R(`,`)).and(V.factor).andl(R(`)`)).and(I(Xe(L(`(`).andr(V.factor).andl(R(`,`)).and(V.factor).andl(R(`)`))))).andl(R(`{`)).and(I(z(L(`\\\\includegraphics`).andr(V.includegraphics),V.text().and(V.textNodeCreator).to((function(e){var t=e.head,n=e.tail;return V.toMath(`\\\\hbox{$\\\\objectstyle{`+t+`}$}`,n)}))))).andl(R(`}`)).to((function(e){var t,n,r=e.head.head.head,i=e.head.head.tail;e.head.tail.isDefined?(t=e.head.tail.get.head,n=e.head.tail.get.tail):(t=0,n=0);var a=e.tail;return a.isIncludegraphics===void 0?new F.Pos.Xyimport.TeXCommand(r,i,t,n,a):new F.Pos.Xyimport.Graphics(r,i,t,n,a)}))})),includegraphics:B((function(){return L(`[`).andr(I(Xe(V.includegraphicsAttrList))).andl(R(`]`)).andl(R(`{`)).and(I(Ke(/^[^\\s{}]+/))).andl(R(`}`)).to((function(e){var t=e.head.getOrElse(O.empty),n=e.tail;return new F.Command.Includegraphics(!1,t,n)}))})),includegraphicsAttrList:B((function(){return V.includegraphicsAttr().and(I(Je(L(`,`).andr(V.includegraphicsAttr)))).to((function(e){return e.tail.prepend(e.head)}))})),includegraphicsAttr:B((function(){return z(L(`width`).andr(R(`=`)).andr(V.dimen).to((function(e){return new F.Command.Includegraphics.Attr.Width(e)})),L(`height`).andr(R(`=`)).andr(V.dimen).to((function(e){return new F.Command.Includegraphics.Attr.Height(e)})))}))};for(var $e in Qe)V[$e]=Qe[$e];var et=V,tt=function(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]},nt=function(e){return e<0?-1:e>0?1:0},rt=function(e){return Math.abs(e)<l.machinePrecision?0:e},H=function(e,t){var n=e[t],r=function(){var r=n.call(this),a=function(){return r};return a.reset=i,e[t]=a,r},i=function(){e[t]=r};r.reset=i,i()},it=function(e){return Math.round(100*e)/100};function at(e){return at=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},at(e)}function ot(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&st(e,t)}function st(e,t){return st=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},st(e,t)}function ct(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=ut(e);if(t){var i=ut(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return lt(this,n)}}function lt(e,t){if(t&&(at(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function ut(e){return ut=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ut(e)}function dt(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function ft(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function pt(e,t,n){return t&&ft(e.prototype,t),n&&ft(e,n),e}var U=function(){function e(){dt(this,e)}return pt(e,[{key:`toRect`,value:function(t){return new e.Rect(this.x,this.y,t)}},{key:`toPoint`,value:function(){return new e.Point(this.x,this.y)}},{key:`combineRect`,value:function(t){return e.combineRect(this,t)}}],[{key:`combineRect`,value:function(e,t){if(e===void 0)return t;if(t===void 0)return e;var n=-(Math.min(e.x-e.l,t.x-t.l)-e.x),r=Math.max(e.x+e.r,t.x+t.r)-e.x,i=-(Math.min(e.y-e.d,t.y-t.d)-e.y),a=Math.max(e.y+e.u,t.y+t.u)-e.y;return e.toRect({l:n,r,d:i,u:a})}}]),e}();function mt(e){return mt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},mt(e)}function W(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ht(e,t)}function ht(e,t){return ht=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},ht(e,t)}function G(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=_t(e);if(t){var i=_t(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return gt(this,n)}}function gt(e,t){if(t&&(mt(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return K(e)}function K(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function _t(e){return _t=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_t(e)}function q(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function vt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function J(e,t,n){return t&&vt(e.prototype,t),n&&vt(e,n),e}U.Point=function(e){ot(n,e);var t=ct(n);function n(e,r){var i;return dt(this,n),(i=t.call(this)).x=e,i.y=r,i}return pt(n,[{key:`l`,get:function(){return 0}},{key:`r`,get:function(){return 0}},{key:`u`,get:function(){return 0}},{key:`d`,get:function(){return 0}},{key:`isPoint`,value:function(){return!0}},{key:`isRect`,value:function(){return!1}},{key:`isCircle`,value:function(){return!1}},{key:`edgePoint`,value:function(e,t){return this}},{key:`proportionalEdgePoint`,value:function(e,t){return this}},{key:`grow`,value:function(e,t){var n=Math.max(0,e),r=Math.max(0,t);return this.toRect({l:n,r:n,u:r,d:r})}},{key:`toSize`,value:function(e,t){return this.toRect({l:e/2,r:e/2,u:t/2,d:t/2})}},{key:`growTo`,value:function(e,t){var n=Math.max(0,e),r=Math.max(0,t);return this.toRect({l:n/2,r:n/2,u:r/2,d:r/2})}},{key:`shrinkTo`,value:function(e,t){return this}},{key:`move`,value:function(e,t){return new U.Point(e,t)}},{key:`shiftFrame`,value:function(e,t){return this}},{key:`rotate`,value:function(e){return this}},{key:`contains`,value:function(e){return!1}},{key:`toString`,value:function(){return`{x:`+this.x+`, y:`+this.y+`}`}}]),n}(U),U.Rect=function(e){ot(n,e);var t=ct(n);function n(e,r,i){var a;return dt(this,n),(a=t.call(this)).x=e,a.y=r,a.l=i.l||0,a.r=i.r||0,a.u=i.u||0,a.d=i.d||0,a}return pt(n,[{key:`isPoint`,value:function(){return this.l===0&&this.r===0&&this.u===0&&this.d===0}},{key:`isRect`,value:function(){return!this.isPoint()}},{key:`isCircle`,value:function(){return!1}},{key:`edgePoint`,value:function(e,t){if(this.isPoint())return this;var n,r=e-this.x,i=t-this.y;return r>0?(n=i*this.r/r)>this.u?new U.Point(this.x+this.u*r/i,this.y+this.u):n<-this.d?new U.Point(this.x-this.d*r/i,this.y-this.d):new U.Point(this.x+this.r,this.y+n):r<0?(n=-i*this.l/r)>this.u?new U.Point(this.x+this.u*r/i,this.y+this.u):n<-this.d?new U.Point(this.x-this.d*r/i,this.y-this.d):new U.Point(this.x-this.l,this.y+n):i>0?new U.Point(this.x,this.y+this.u):new U.Point(this.x,this.y-this.d)}},{key:`proportionalEdgePoint`,value:function(e,t){if(this.isPoint())return this;var n=e-this.x,r=t-this.y;if(Math.abs(n)<l.machinePrecision&&Math.abs(r)<l.machinePrecision)return new U.Point(this.x-this.l,this.y+this.u);var i,a=this.l+this.r,o=this.u+this.d,s=Math.PI,c=Math.atan2(r,n);return-3*s/4<c&&c<=-s/4?(i=(c+3*s/4)/(s/2),new U.Point(this.x+this.r-i*a,this.y+this.u)):-s/4<c&&c<=s/4?(i=(c+s/4)/(s/2),new U.Point(this.x-this.l,this.y+this.u-i*o)):s/4<c&&c<=3*s/4?(i=(c-s/4)/(s/2),new U.Point(this.x-this.l+i*a,this.y-this.d)):(i=(c-(c>0?3*s/4:-5*s/4))/(s/2),new U.Point(this.x+this.r,this.y-this.d+i*o))}},{key:`grow`,value:function(e,t){return this.toRect({l:Math.max(0,this.l+e),r:Math.max(0,this.r+e),u:Math.max(0,this.u+t),d:Math.max(0,this.d+t)})}},{key:`toSize`,value:function(e,t){var n,r,i,a,o=this.l+this.r,s=this.u+this.d;return o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o),s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s),this.toRect({l:a,r:i,u:n,d:r})}},{key:`growTo`,value:function(e,t){var n=this.u,r=this.d,i=this.r,a=this.l,o=a+i,s=n+r;return e>o&&(o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o)),t>s&&(s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s)),this.toRect({l:a,r:i,u:n,d:r})}},{key:`shrinkTo`,value:function(e,t){var n=this.u,r=this.d,i=this.r,a=this.l,o=a+i,s=n+r;return e<o&&(o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o)),t<s&&(s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s)),this.toRect({l:a,r:i,u:n,d:r})}},{key:`move`,value:function(e,t){return new U.Rect(e,t,{l:this.l,r:this.r,u:this.u,d:this.d})}},{key:`shiftFrame`,value:function(e,t){return new U.Rect(this.x,this.y,{l:Math.max(0,this.l-e),r:Math.max(0,this.r+e),u:Math.max(0,this.u+t),d:Math.max(0,this.d-t)})}},{key:`rotate`,value:function(e){var t=Math.cos(e),n=Math.sin(e),r=-this.l,i=this.r,a=this.u,o=-this.d,s={x:r*t-a*n,y:r*n+a*t},c={x:r*t-o*n,y:r*n+o*t},l={x:i*t-a*n,y:i*n+a*t},u={x:i*t-o*n,y:i*n+o*t};return this.toRect({l:-Math.min(s.x,c.x,l.x,u.x),r:Math.max(s.x,c.x,l.x,u.x),u:Math.max(s.y,c.y,l.y,u.y),d:-Math.min(s.y,c.y,l.y,u.y)})}},{key:`contains`,value:function(e){var t=e.x,n=e.y;return t>=this.x-this.l&&t<=this.x+this.r&&n>=this.y-this.d&&n<=this.y+this.u}},{key:`toString`,value:function(){return`{x:`+this.x+`, y:`+this.y+`, l:`+this.l+`, r:`+this.r+`, u:`+this.u+`, d:`+this.d+`}`}}]),n}(U),U.Ellipse=function(e){ot(n,e);var t=ct(n);function n(e,r,i,a,o,s){var c;return dt(this,n),(c=t.call(this)).x=e,c.y=r,c.l=i,c.r=a,c.u=o,c.d=s,c}return pt(n,[{key:`isPoint`,value:function(){return this.r===0&&this.l===0||this.u===0&&this.d===0}},{key:`isRect`,value:function(){return!1}},{key:`isCircle`,value:function(){return!this.isPoint()}},{key:`isPerfectCircle`,value:function(){return this.l===this.r&&this.l===this.u&&this.l===this.d}},{key:`edgePoint`,value:function(e,t){if(this.isPoint())return this;if(this.isPerfectCircle()){var n,r=e-this.x,i=t-this.y;return n=Math.abs(r)<l.machinePrecision&&Math.abs(i)<l.machinePrecision?-Math.PI/2:Math.atan2(i,r),new U.Point(this.x+this.r*Math.cos(n),this.y+this.r*Math.sin(n))}Math.PI;var a=this.l,o=this.r,s=this.u,c=this.d,u=this.x,d=this.y,f=u+(o-a)/2,p=d+(s-c)/2,m=(a+o)/2,h=(s+c)/2,g=-(r=e-u),_=(i=t-d)*m,v=g*h,y=_*_+v*v,b=-(c=_*f+v*p+((r*d-i*u)*m+(m-h)*g*p))/y,x=y*m*m-c*c;if(x<0)return new U.Point(this.x,this.y-this.d);var S=Math.sqrt(x)/y,C=h/m,w=_*b+v*S+f,T=C*(v*b-_*S+p-p)+p,E=_*b-v*S+f,D=C*(v*b+_*S+p-p)+p,ee=nt;return ee(w-f)===ee(e-f)&&ee(T-p)===ee(t-p)?new U.Point(w,T):new U.Point(E,D)}},{key:`proportionalEdgePoint`,value:function(e,t){if(this.isPoint())return this;if(this.isPerfectCircle()){var n,r=e-this.x,i=t-this.y;return n=Math.abs(r)<l.machinePrecision&&Math.abs(i)<l.machinePrecision?-Math.PI/2:Math.atan2(i,r),new U.Point(this.x-this.r*Math.cos(n),this.y-this.r*Math.sin(n))}Math.PI;var a=this.l,o=this.r,s=this.u,c=this.d,u=this.x,d=this.y,f=u+(o-a)/2,p=d+(s-c)/2,m=(a+o)/2,h=(s+c)/2,g=-(r=e-u),_=(i=t-d)*m,v=g*h,y=_*_+v*v,b=-(c=_*f+v*p+((r*d-i*u)*m+(m-h)*g*p))/y,x=y*m*m-c*c;if(x<0)return new U.Point(this.x,this.y-this.d);var S=Math.sqrt(x)/y,C=h/m,w=_*b+v*S+f,T=C*(v*b-_*S+p-p)+p,E=_*b-v*S+f,D=C*(v*b+_*S+p-p)+p;return sign(w-f)===sign(e-f)&&sign(T-p)===sign(t-p)?new U.Point(E,D):new U.Point(w,T)}},{key:`grow`,value:function(e,t){return new U.Ellipse(this.x,this.y,Math.max(0,this.l+e),Math.max(0,this.r+e),Math.max(0,this.u+t),Math.max(0,this.d+t))}},{key:`toSize`,value:function(e,t){var n,r,i,a,o=this.l+this.r,s=this.u+this.d;return o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o),s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s),new U.Ellipse(this.x,this.y,a,i,n,r)}},{key:`growTo`,value:function(e,t){var n=this.u,r=this.d,i=this.r,a=this.l,o=a+i,s=n+r;return e>o&&(o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o)),t>s&&(s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s)),new U.Ellipse(this.x,this.y,a,i,n,r)}},{key:`shrinkTo`,value:function(e,t){var n=this.u,r=this.d,i=this.r,a=this.l,o=a+i,s=n+r;return e<o&&(o===0?(a=e/2,i=e/2):(a=e*this.l/o,i=e*this.r/o)),t<s&&(s===0?(n=t/2,r=t/2):(n=t*this.u/s,r=t*this.d/s)),new U.Ellipse(this.x,this.y,a,i,n,r)}},{key:`move`,value:function(e,t){return new U.Ellipse(e,t,this.l,this.r,this.u,this.d)}},{key:`shiftFrame`,value:function(e,t){return new U.Ellipse(this.x,this.y,Math.max(0,this.l-e),Math.max(0,this.r+e),Math.max(0,this.u+t),Math.max(0,this.d-t))}},{key:`rotate`,value:function(e){return this}},{key:`contains`,value:function(e){var t=e.x,n=e.y;if(this.isPoint())return!1;var r=this.l,i=this.r,a=this.u,o=this.d,s=(r+i)/2,c=t-(this.x+(i-r)/2),l=(n-(this.y+(a-o)/2))/((a+o)/2/s);return c*c+l*l<=s*s}},{key:`toString`,value:function(){return`{x:`+this.x+`, y:`+this.y+`, l:`+this.l+`, r:`+this.r+`, u:`+this.u+`, d:`+this.d+`}`}}]),n}(U);var Y=function(){function e(){q(this,e)}return J(e,[{key:`isNone`,get:function(){return!1}}]),e}();function yt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}Y.NoneShape=function(e){W(n,e);var t=G(n);function n(){return q(this,n),t.call(this)}return J(n,[{key:`draw`,value:function(e){}},{key:`getBoundingBox`,value:function(){}},{key:`toString`,value:function(){return`NoneShape`}},{key:`isNone`,get:function(){return!0}}]),n}(Y),Y.none=new Y.NoneShape,Y.InvisibleBoxShape=function(e){W(n,e);var t=G(n);function n(e){var r;return q(this,n),(r=t.call(this)).bbox=e,r}return J(n,[{key:`draw`,value:function(e){}},{key:`getBoundingBox`,value:function(){return this.bbox}},{key:`toString`,value:function(){return`InvisibleBoxShape[bbox:`+this.bbox.toString()+`]`}}]),n}(Y),Y.TranslateShape=function(e){W(n,e);var t=G(n);function n(e,r,i){var a;return q(this,n),(a=t.call(this)).dx=e,a.dy=r,a.shape=i,H(K(a),`getBoundingBox`),a}return J(n,[{key:`draw`,value:function(e){var t=e.createGroup(e.transformBuilder().translate(this.dx,this.dy));this.shape.draw(t)}},{key:`getBoundingBox`,value:function(){var e=this.shape.getBoundingBox();if(e!==void 0)return new U.Rect(e.x+this.dx,e.y+this.dy,e)}},{key:`toString`,value:function(){return`TranslateShape[dx:`+this.dx+`, dy:`+this.dy+`, shape:`+this.shape.toString()+`]`}}]),n}(Y),Y.CompositeShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).foregroundShape=e,i.backgroundShape=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`draw`,value:function(e){this.backgroundShape.draw(e),this.foregroundShape.draw(e)}},{key:`getBoundingBox`,value:function(){return U.combineRect(this.foregroundShape.getBoundingBox(),this.backgroundShape.getBoundingBox())}},{key:`toString`,value:function(){return`(`+this.foregroundShape.toString()+`, `+this.backgroundShape.toString()+`)`}}]),n}(Y),Y.ChangeColorShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).color=e,i.shape=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`draw`,value:function(e){var t=e.createChangeColorGroup(this.color);this.shape.draw(t)}},{key:`getBoundingBox`,value:function(){return this.shape.getBoundingBox()}},{key:`toString`,value:function(){return this.shape+`, color:`+this.color}}]),n}(Y),Y.CircleSegmentShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o,s,c,l,u){var d;return q(this,n),(d=t.call(this)).x=e,d.y=r,d.sx=i,d.sy=a,d.r=o,d.large=s,d.flip=c,d.ex=l,d.ey=u,H(K(d),`getBoundingBox`),d}return J(n,[{key:`draw`,value:function(e){e.createSVGElement(`path`,{d:`M`+A.measure.em2px(this.sx)+`,`+A.measure.em2px(-this.sy)+` A`+A.measure.em2px(this.r)+`,`+A.measure.em2px(this.r)+` 0 `+this.large+`,`+this.flip+` `+A.measure.em2px(this.ex)+`,`+A.measure.em2px(-this.ey)})}},{key:`getBoundingBox`,value:function(){return new U.Ellipse(this.x,this.y,this.r,this.r,this.r,this.r)}},{key:`toString`,value:function(){return`CircleSegmentShape[x:`+this.x+`, y:`+this.y+`, sx:`+this.sx+`, sy:`+this.sy+`, r:`+this.r+`, large:`+this.large+`, flip:`+this.flip+`, ex:`+this.ex+`, ey:`+this.ey+`]`}}]),n}(Y),Y.FullCircleShape=function(e){W(n,e);var t=G(n);function n(e,r,i){var a;return q(this,n),(a=t.call(this)).x=e,a.y=r,a.r=i,H(K(a),`getBoundingBox`),a}return J(n,[{key:`draw`,value:function(e){e.createSVGElement(`circle`,{cx:A.measure.em2px(this.x),cy:A.measure.em2px(-this.y),r:A.measure.em2px(this.r)})}},{key:`getBoundingBox`,value:function(){return new U.Ellipse(this.x,this.y,this.r,this.r,this.r,this.r)}},{key:`toString`,value:function(){return`FullCircleShape[x:`+this.x+`, y:`+this.y+`, r:`+this.r+`]`}}]),n}(Y),Y.RectangleShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o,s,c,l,u,d,f,p){var m;return q(this,n),(m=t.call(this)).x=e,m.y=r,m.left=i,m.right=a,m.up=o,m.down=s,m.r=c,m.isDoubled=l,m.color=u,m.dasharray=d,m.fillColor=f,m.hideLine=p||!1,H(K(m),`getBoundingBox`),m}return J(n,[{key:`draw`,value:function(e){var t={x:A.measure.em2px(this.x-this.left),y:-A.measure.em2px(this.y+this.up),width:A.measure.em2px(this.left+this.right),height:A.measure.em2px(this.up+this.down),rx:A.measure.em2px(this.r)};this.dasharray!==void 0&&(t[`stroke-dasharray`]=this.dasharray),this.hideLine?t.stroke=`none`:this.color!==void 0&&(t.stroke=this.color),this.fillColor!==void 0&&(t.fill=this.fillColor),e.createSVGElement(`rect`,t),this.isDoubled&&(t={x:A.measure.em2px(this.x-this.left+A.measure.thickness),y:-A.measure.em2px(this.y+this.up-A.measure.thickness),width:A.measure.em2px(this.left+this.right-2*A.measure.thickness),height:A.measure.em2px(this.up+this.down-2*A.measure.thickness),rx:A.measure.em2px(Math.max(this.r-A.measure.thickness,0))},this.dasharray!==void 0&&(t[`stroke-dasharray`]=this.dasharray),this.hideLine?t.stroke=`none`:this.color!==void 0&&(t.stroke=this.color),this.fillColor!==void 0&&(t.fill=this.fillColor),e.createSVGElement(`rect`,t))}},{key:`getBoundingBox`,value:function(){return new U.Rect(this.x,this.y,{l:this.left,r:this.right,u:this.up,d:this.down})}},{key:`toString`,value:function(){return`RectangleShape[x:`+this.x+`, y:`+this.y+`, left:`+this.left+`, right:`+this.right+`, up:`+this.up+`, down:`+this.down+`, r:`+this.r+`, isDouble:`+this.isDouble+`, dasharray:`+this.dasharray+`]`}}]),n}(Y),Y.EllipseShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o,s,c,l,u){var d;return q(this,n),(d=t.call(this)).x=e,d.y=r,d.rx=i,d.ry=a,d.isDoubled=o,d.color=s,d.dasharray=c,d.fillColor=l,d.hideLine=u||!1,H(K(d),`getBoundingBox`),d}return J(n,[{key:`draw`,value:function(e){var t={cx:A.measure.em2px(this.x),cy:-A.measure.em2px(this.y),rx:A.measure.em2px(this.rx),ry:A.measure.em2px(this.ry)};this.dasharray!==void 0&&(t[`stroke-dasharray`]=this.dasharray),this.hideLine?t.stroke=`none`:this.color!==void 0&&(t.stroke=this.color),this.fillColor!==void 0&&(t.fill=this.fillColor),e.createSVGElement(`ellipse`,t),this.isDoubled&&(t={cx:A.measure.em2px(this.x),cy:-A.measure.em2px(this.y),rx:A.measure.em2px(Math.max(this.rx-A.measure.thickness)),ry:A.measure.em2px(Math.max(this.ry-A.measure.thickness))},this.dasharray!==void 0&&(t[`stroke-dasharray`]=this.dasharray),this.hideLine?t.stroke=`none`:this.color!==void 0&&(t.stroke=this.color),this.fillColor!==void 0&&(t.fill=this.fillColor),e.createSVGElement(`ellipse`,t))}},{key:`getBoundingBox`,value:function(){return new U.Rect(this.x,this.y,{l:this.rx,r:this.rx,u:this.ry,d:this.ry})}},{key:`toString`,value:function(){return`EllipseShape[x:`+this.x+`, y:`+this.y+`, rx:`+this.rx+`, ry:`+this.ry+`, isDoubled:`+this.isDoubled+`, dasharray:`+this.dasharray+`]`}}]),n}(Y),Y.BoxShadeShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o,s,c,l){var u;return q(this,n),(u=t.call(this)).x=e,u.y=r,u.left=i,u.right=a,u.up=o,u.down=s,u.depth=c,u.color=l||`currentColor`,H(K(u),`getBoundingBox`),u}return J(n,[{key:`draw`,value:function(e){var t=A.measure.em2px(this.x),n=A.measure.em2px(this.y),r=A.measure.em2px(this.left),i=A.measure.em2px(this.right),a=A.measure.em2px(this.up),o=A.measure.em2px(this.down),s=A.measure.em2px(this.depth);e.createSVGElement(`path`,{d:`M`+(t-r+s)+`,`+(-n+o)+`L`+(t+i)+`,`+(-n+o)+`L`+(t+i)+`,`+(-n-a+s)+`L`+(t+i+s)+`,`+(-n-a+s)+`L`+(t+i+s)+`,`+(-n+o+s)+`L`+(t-r+s)+`,`+(-n+o+s)+`Z`,stroke:this.color,fill:this.color})}},{key:`getBoundingBox`,value:function(){return new U.Rect(this.x,this.y,{l:this.left,r:this.right+this.depth,u:this.up,d:this.down+this.depth})}},{key:`toString`,value:function(){return`RectangleShape[x:`+this.x+`, y:`+this.y+`, left:`+this.left+`, right:`+this.right+`, up:`+this.up+`, down:`+this.down+`, depth:`+this.depth+`]`}}]),n}(Y),Y.LeftBrace=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o,s){var c;return q(this,n),(c=t.call(this)).x=e,c.y=r,c.up=i,c.down=a,c.degree=o,c.color=s||`currentColor`,H(K(c),`getBoundingBox`),c}return J(n,[{key:`draw`,value:function(e){var t,n=A.measure.oneem,r=Math.max(1.41975,this.down/n*1.125)-.660375,i=.660375-Math.max(1.41975,this.up/n*1.125);t=`M`+A.measure.em2px(-.0675)+` `+A.measure.em2px(r)+`T`+A.measure.em2px(-.068625)+` `+A.measure.em2px(.07875+r)+`Q`+A.measure.em2px(-.068625)+` `+A.measure.em2px(.190125+r)+` `+A.measure.em2px(-.0585)+` `+A.measure.em2px(.250875+r)+`T`+A.measure.em2px(-.01125)+` `+A.measure.em2px(.387+r)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(.55575+r)+` `+A.measure.em2px(.2475)+` `+A.measure.em2px(.6525+r)+`L`+A.measure.em2px(.262125)+` `+A.measure.em2px(.660375+r)+`L`+A.measure.em2px(.3015)+` `+A.measure.em2px(.660375+r)+`L`+A.measure.em2px(.30825)+` `+A.measure.em2px(.653625+r)+`V`+A.measure.em2px(.622125+r)+`Q`+A.measure.em2px(.30825)+` `+A.measure.em2px(.60975+r)+` `+A.measure.em2px(.2925)+` `+A.measure.em2px(.60075+r)+`Q`+A.measure.em2px(.205875)+` `+A.measure.em2px(.541125+r)+` `+A.measure.em2px(.149625)+` `+A.measure.em2px(.44775+r)+`T`+A.measure.em2px(.07425)+` `+A.measure.em2px(.239625+r)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(.2385+r)+` `+A.measure.em2px(.073125)+` `+A.measure.em2px(.235125+r)+`Q`+A.measure.em2px(.068625)+` `+A.measure.em2px(.203625+r)+` `+A.measure.em2px(.0675)+` `+A.measure.em2px(.041625+r)+`L`+A.measure.em2px(.0675)+` `+A.measure.em2px(.75825)+`Q`+A.measure.em2px(.0675)+` `+A.measure.em2px(.496125)+` `+A.measure.em2px(.066375)+` `+A.measure.em2px(.486)+`Q`+A.measure.em2px(.05625)+` `+A.measure.em2px(.336375)+` `+A.measure.em2px(-.021375)+` `+A.measure.em2px(.212625)+`T`+A.measure.em2px(-.226125)+` `+A.measure.em2px(.010125)+`L`+A.measure.em2px(-.241875)+` 0L`+A.measure.em2px(-.226125)+` `+A.measure.em2px(-.010125)+`Q`+A.measure.em2px(-.106875)+` `+A.measure.em2px(-.084375)+` `+A.measure.em2px(-.025875)+` `+A.measure.em2px(-.207)+`T`+A.measure.em2px(.066375)+` `+A.measure.em2px(-.486)+`Q`+A.measure.em2px(.0675)+` `+A.measure.em2px(-.496125)+` `+A.measure.em2px(.0675)+` `+A.measure.em2px(-.75825)+`L`+A.measure.em2px(.0675)+` `+A.measure.em2px(-.041625+i)+`Q`+A.measure.em2px(.068625)+` `+A.measure.em2px(-.203625+i)+` `+A.measure.em2px(.073125)+` `+A.measure.em2px(-.235125+i)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(-.2385+i)+` `+A.measure.em2px(.07425)+` `+A.measure.em2px(-.239625+i)+`Q`+A.measure.em2px(.093375)+` `+A.measure.em2px(-.354375+i)+` `+A.measure.em2px(.149625)+` `+A.measure.em2px(-.44775+i)+`T`+A.measure.em2px(.2925)+` `+A.measure.em2px(-.60075+i)+`Q`+A.measure.em2px(.30825)+` `+A.measure.em2px(-.60975+i)+` `+A.measure.em2px(.30825)+` `+A.measure.em2px(-.622125+i)+`L`+A.measure.em2px(.30825)+` `+A.measure.em2px(-.653625+i)+`L`+A.measure.em2px(.3015)+` `+A.measure.em2px(-.660375+i)+`L`+A.measure.em2px(.262125)+` `+A.measure.em2px(-.660375+i)+`L`+A.measure.em2px(.2475)+` `+A.measure.em2px(-.6525+i)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(-.55575+i)+` `+A.measure.em2px(-.01125)+` `+A.measure.em2px(-.387+i)+`Q`+A.measure.em2px(-.048375)+` `+A.measure.em2px(-.311625+i)+` `+A.measure.em2px(-.0585)+` `+A.measure.em2px(-.250875+i)+`T`+A.measure.em2px(-.068625)+` `+A.measure.em2px(-.07875+i)+`Q`+A.measure.em2px(-.0675)+` `+A.measure.em2px(i)+` `+A.measure.em2px(-.0675)+` `+A.measure.em2px(i)+`L`+A.measure.em2px(-.0675)+` `+A.measure.em2px(-.759375)+`V`+A.measure.em2px(-.5985)+`Q`+A.measure.em2px(-.0675)+` `+A.measure.em2px(-.47925)+` `+A.measure.em2px(-.075375)+` `+A.measure.em2px(-.41175)+`T`+A.measure.em2px(-.11475)+` `+A.measure.em2px(-.27)+`Q`+A.measure.em2px(-.133875)+` `+A.measure.em2px(-.2205)+` `+A.measure.em2px(-.160875)+` `+A.measure.em2px(-.17775)+`T`+A.measure.em2px(-.212625)+` `+A.measure.em2px(-.106875)+`T`+A.measure.em2px(-.25875)+` `+A.measure.em2px(-.06075)+`T`+A.measure.em2px(-.293625)+` `+A.measure.em2px(-.0315)+`T`+A.measure.em2px(-.307125)+` `+A.measure.em2px(-.02025)+`Q`+A.measure.em2px(-.30825)+` `+A.measure.em2px(-.019125)+` `+A.measure.em2px(-.30825)+` 0T`+A.measure.em2px(-.307125)+` `+A.measure.em2px(.02025)+`Q`+A.measure.em2px(-.307125)+` `+A.measure.em2px(.021375)+` `+A.measure.em2px(-.284625)+` `+A.measure.em2px(.03825)+`T`+A.measure.em2px(-.2295)+` `+A.measure.em2px(.091125)+`T`+A.measure.em2px(-.162)+` `+A.measure.em2px(.176625)+`T`+A.measure.em2px(-.10125)+` `+A.measure.em2px(.30825)+`T`+A.measure.em2px(-.068625)+` `+A.measure.em2px(.482625)+`Q`+A.measure.em2px(-.0675)+` `+A.measure.em2px(.496125)+` `+A.measure.em2px(-.0675)+` `+A.measure.em2px(.759375)+`Z`,e.createSVGElement(`path`,{d:t,fill:this.color,stroke:this.color,\"stroke-width\":`0pt`,transform:`translate(`+A.measure.em2px(this.x)+`,`+A.measure.em2px(-this.y)+`) rotate(`+-this.degree+`) scale(`+n/1.125+`)`})}},{key:`getBoundingBox`,value:function(){var e=A.measure.oneem;return new U.Rect(this.x,this.y,{l:.274*e,r:.274*e,u:Math.max(1.41975*e/1.125,this.up),d:Math.max(1.41975*e/1.125,this.down)}).rotate(this.degree*Math.PI/180)}},{key:`toString`,value:function(){return`LeftBrace[x:`+this.x+`, y:`+this.y+`, up:`+this.up+`, down:`+this.down+`]`}}]),n}(Y),Y.LeftParenthesis=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o){var s;return q(this,n),(s=t.call(this)).x=e,s.y=r,s.height=i,s.degree=a,s.color=o||`currentColor`,H(K(s),`getBoundingBox`),s}return J(n,[{key:`draw`,value:function(e){var t,n=A.measure.oneem,r=Math.max(.660375,this.height/2/n*1.125)-.660375,i=-r;t=`M`+A.measure.em2px(-.0675)+` `+A.measure.em2px(r)+`T`+A.measure.em2px(-.068625)+` `+A.measure.em2px(.07875+r)+`Q`+A.measure.em2px(-.068625)+` `+A.measure.em2px(.190125+r)+` `+A.measure.em2px(-.0585)+` `+A.measure.em2px(.250875+r)+`T`+A.measure.em2px(-.01125)+` `+A.measure.em2px(.387+r)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(.55575+r)+` `+A.measure.em2px(.2475)+` `+A.measure.em2px(.6525+r)+`L`+A.measure.em2px(.262125)+` `+A.measure.em2px(.660375+r)+`L`+A.measure.em2px(.3015)+` `+A.measure.em2px(.660375+r)+`L`+A.measure.em2px(.30825)+` `+A.measure.em2px(.653625+r)+`V`+A.measure.em2px(.622125+r)+`Q`+A.measure.em2px(.30825)+` `+A.measure.em2px(.60975+r)+` `+A.measure.em2px(.2925)+` `+A.measure.em2px(.60075+r)+`Q`+A.measure.em2px(.205875)+` `+A.measure.em2px(.541125+r)+` `+A.measure.em2px(.149625)+` `+A.measure.em2px(.44775+r)+`T`+A.measure.em2px(.07425)+` `+A.measure.em2px(.239625+r)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(.2385+r)+` `+A.measure.em2px(.073125)+` `+A.measure.em2px(.235125+r)+`Q`+A.measure.em2px(.068625)+` `+A.measure.em2px(.203625+r)+` `+A.measure.em2px(.0675)+` `+A.measure.em2px(.041625+r)+`L`+A.measure.em2px(.0675)+` `+A.measure.em2px(-.041625+i)+`Q`+A.measure.em2px(.068625)+` `+A.measure.em2px(-.203625+i)+` `+A.measure.em2px(.073125)+` `+A.measure.em2px(-.235125+i)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(-.2385+i)+` `+A.measure.em2px(.07425)+` `+A.measure.em2px(-.239625+i)+`Q`+A.measure.em2px(.093375)+` `+A.measure.em2px(-.354375+i)+` `+A.measure.em2px(.149625)+` `+A.measure.em2px(-.44775+i)+`T`+A.measure.em2px(.2925)+` `+A.measure.em2px(-.60075+i)+`Q`+A.measure.em2px(.30825)+` `+A.measure.em2px(-.60975+i)+` `+A.measure.em2px(.30825)+` `+A.measure.em2px(-.622125+i)+`L`+A.measure.em2px(.30825)+` `+A.measure.em2px(-.653625+i)+`L`+A.measure.em2px(.3015)+` `+A.measure.em2px(-.660375+i)+`L`+A.measure.em2px(.262125)+` `+A.measure.em2px(-.660375+i)+`L`+A.measure.em2px(.2475)+` `+A.measure.em2px(-.6525+i)+`Q`+A.measure.em2px(.07425)+` `+A.measure.em2px(-.55575+i)+` `+A.measure.em2px(-.01125)+` `+A.measure.em2px(-.387+i)+`Q`+A.measure.em2px(-.048375)+` `+A.measure.em2px(-.311625+i)+` `+A.measure.em2px(-.0585)+` `+A.measure.em2px(-.250875+i)+`T`+A.measure.em2px(-.068625)+` `+A.measure.em2px(-.07875+i)+`Q`+A.measure.em2px(-.0675)+` `+A.measure.em2px(i)+` `+A.measure.em2px(-.0675)+` `+A.measure.em2px(i)+`Z`,e.createSVGElement(`path`,{d:t,fill:this.color,stroke:this.color,\"stroke-width\":`0pt`,transform:`translate(`+A.measure.em2px(this.x)+`,`+A.measure.em2px(-this.y)+`) rotate(`+-this.degree+`) scale(`+n/1.125+`)`})}},{key:`getBoundingBox`,value:function(){var e=A.measure.oneem;return new U.Rect(this.x,this.y,{l:.06*e,r:.274*e,u:Math.max(.660375*e/1.125,this.height/2),d:Math.max(.660375*e/1.125,this.height/2)}).rotate(this.degree*Math.PI/180)}},{key:`toString`,value:function(){return`LeftBrace[x:`+this.x+`, y:`+this.y+`, up:`+this.up+`, down:`+this.down+`]`}}]),n}(Y),Y.TextShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.math=r,i.originalBBox=void 0,H(K(i),`getBoundingBox`),H(K(i),`getOriginalReferencePoint`),i}return J(n,[{key:`draw`,value:function(e){this._draw(e,!1)}},{key:`getBoundingBox`,value:function(){return this._draw(A.svgForTestLayout,!0)}},{key:`_draw`,value:function(e,t){return e.xypicWrapper.drawTextObject(this,e,t)}},{key:`getOriginalReferencePoint`,value:function(){this.getBoundingBox();var e=this.originalBBox,t=this.c,n=e.H,r=e.D;return new U.Point(t.x,t.y-(n-r)/2)}},{key:`toString`,value:function(){return`TextShape[c:`+this.c.toString()+`, math:`+this.math.toString()+`]`}}]),n}(Y),Y.ImageShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.url=r,H(K(i),`getBoundingBox`),H(K(i),`getOriginalReferencePoint`),i}return J(n,[{key:`draw`,value:function(e){var t=this.c;e.createSVGElement(`image`,{x:A.measure.em2px(t.x-t.l),y:A.measure.em2px(-t.y-t.u),width:A.measure.em2px(t.l+t.r),height:A.measure.em2px(t.u+t.d),preserveAspectRatio:`none`,\"xlink:href\":this.url})}},{key:`getBoundingBox`,value:function(){return this.c}},{key:`getOriginalReferencePoint`,value:function(){return this.c}},{key:`toString`,value:function(){return`ImageShape[c:`+this.c.toString()+`, height:`+this.height+`, width:`+this.width+`, url:`+this.url+`]`}}]),n}(Y),Y.ArrowheadShape=function(e){W(n,e);var t=G(n);function n(){return q(this,n),t.call(this)}return J(n,[{key:`draw`,value:function(e){var t=e.createGroup(e.transformBuilder().translate(this.c.x,this.c.y).rotateRadian(this.angle));this.drawDelegate(t)}},{key:`getBoundingBox`,value:function(){return this.c.toRect(this.getBox()).rotate(this.angle)}},{key:`toString`,value:function(){return`ArrowheadShape[c:`+this.c.toString()+`, angle:`+this.angle+`]`}}]),n}(Y),Y.GT2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.456*e,r:0,d:.229*e,u:.229*e}}},{key:`getRadius`,value:function(){return .213*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=e.createGroup(e.transformBuilder().rotateDegree(-10)),r=e.createGroup(e.transformBuilder().rotateDegree(10));n.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.GT3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.507*e,r:0,d:.268*e,u:.268*e}}},{key:`getRadius`,value:function(){return .325*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=e.createGroup(e.transformBuilder().rotateDegree(-15)),r=e.createGroup(e.transformBuilder().rotateDegree(15));n.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`line`,{x1:0,y1:0,x2:A.measure.em2px(-.507*t),y2:0}),r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.UpperGTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e,r:0,d:0,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.LowerGTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e,r:0,d:.147*e,u:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.GTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e,r:0,d:.147*e,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.LT2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.456*e,d:.229*e,u:.229*e}}},{key:`getRadius`,value:function(){return .213*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=e.createGroup(e.transformBuilder().rotateDegree(10)),r=e.createGroup(e.transformBuilder().rotateDegree(-10));n.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.LT3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.507*e,d:.268*e,u:.268*e}}},{key:`getRadius`,value:function(){return .325*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=e.createGroup(e.transformBuilder().rotateDegree(15)),r=e.createGroup(e.transformBuilder().rotateDegree(-15));n.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`line`,{x1:0,y1:0,x2:A.measure.em2px(.507*t),y2:0}),r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.UpperLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e,d:0,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.LowerLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e,d:.147*e,u:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.LTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e,d:.147*e,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem;e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.UpperColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:-t})}}]),n}(Y.ArrowheadShape),Y.LowerColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:0,d:A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:t})}}]),n}(Y.ArrowheadShape),Y.Column2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:.5*(A.measure.lineElementLength+A.measure.thickness),d:.5*(A.measure.lineElementLength+A.measure.thickness)}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(.5*(A.measure.lineElementLength+A.measure.thickness));e.createSVGElement(`line`,{x1:0,y1:t,x2:0,y2:-t})}}]),n}(Y.ArrowheadShape),Y.Column3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:.5*A.measure.lineElementLength+A.measure.thickness,d:.5*A.measure.lineElementLength+A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(.5*A.measure.lineElementLength+A.measure.thickness);e.createSVGElement(`line`,{x1:0,y1:t,x2:0,y2:-t})}}]),n}(Y.ArrowheadShape),Y.ColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:t,x2:0,y2:-t})}}]),n}(Y.ArrowheadShape),Y.UpperLParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:0,u:A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,1 0,`+-2*t})}}]),n}(Y.ArrowheadShape),Y.LowerLParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:0,u:0,d:A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,0 0,`+2*t})}}]),n}(Y.ArrowheadShape),Y.LParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.5*A.measure.lineElementLength,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M`+t+`,`+-t+` A `+t+`,`+t+` 0 0,0 `+t+`,`+t})}}]),n}(Y.ArrowheadShape),Y.UpperRParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.5*A.measure.lineElementLength,u:A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,0 0,`+-2*t})}}]),n}(Y.ArrowheadShape),Y.LowerRParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.5*A.measure.lineElementLength,u:0,d:A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,1 0,`+2*t})}}]),n}(Y.ArrowheadShape),Y.RParenArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M`+-t+`,`+-t+` A `+t+`,`+t+` 0 0,1 `+-t+`,`+t})}}]),n}(Y.ArrowheadShape),Y.LowerBackquoteArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:0,u:0,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,0 `+-t+`,`+t})}}]),n}(Y.ArrowheadShape),Y.UpperBackquoteArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:0,u:.5*A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,1 `+-t+`,`+-t})}}]),n}(Y.ArrowheadShape),Y.LowerQuoteArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.5*A.measure.lineElementLength,u:0,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,1 `+t+`,`+t})}}]),n}(Y.ArrowheadShape),Y.UpperQuoteArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.5*A.measure.lineElementLength,u:.5*A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`path`,{d:`M0,0 A `+t+`,`+t+` 0 0,0 `+t+`,`+-t})}}]),n}(Y.ArrowheadShape),Y.AsteriskArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=0,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:A.measure.thickness,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){e.createSVGElement(`circle`,{cx:0,cy:0,r:A.measure.em2px(A.measure.thickness),fill:`currentColor`})}}]),n}(Y.ArrowheadShape),Y.OArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=0,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:A.measure.thickness,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){e.createSVGElement(`circle`,{cx:0,cy:0,r:A.measure.em2px(A.measure.thickness)})}}]),n}(Y.ArrowheadShape),Y.PlusArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:.5*A.measure.lineElementLength,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.lineElementLength/2,n=A.measure.em2px(t);e.createSVGElement(`line`,{x1:-n,y1:0,x2:n,y2:0}),e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n})}}]),n}(Y.ArrowheadShape),Y.XArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r+Math.PI/4,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.5*A.measure.lineElementLength,r:.5*A.measure.lineElementLength,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.lineElementLength/2,n=A.measure.em2px(t);e.createSVGElement(`line`,{x1:-n,y1:0,x2:n,y2:0}),e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n})}}]),n}(Y.ArrowheadShape),Y.SlashArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r-Math.PI/10,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:A.measure.lineElementLength/2,d:A.measure.lineElementLength/2}}},{key:`drawDelegate`,value:function(e){var t=A.measure.lineElementLength/2,n=A.measure.em2px(t);e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n})}}]),n}(Y.ArrowheadShape),Y.Line3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.lineElementLength),n=A.measure.em2px(A.measure.thickness);e.createSVGElement(`line`,{x1:0,y1:n,x2:t,y2:n}),e.createSVGElement(`line`,{x1:0,y1:0,x2:t,y2:0}),e.createSVGElement(`line`,{x1:0,y1:-n,x2:t,y2:-n})}}]),n}(Y.ArrowheadShape),Y.Line2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:.5*A.measure.thickness,d:.5*A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(.5*A.measure.thickness),n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:t,x2:n,y2:t}),e.createSVGElement(`line`,{x1:0,y1:-t,x2:n,y2:-t})}}]),n}(Y.ArrowheadShape),Y.LineArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:0,d:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:t,y2:0})}}]),n}(Y.ArrowheadShape),Y.Dot3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){A.measure.oneem;var t=A.measure.em2px(A.measure.thickness),n=A.measure.em2px(A.measure.thickness),r=A.measure.dottedDasharray;e.createSVGElement(`line`,{x1:0,y1:t,x2:n,y2:t,\"stroke-dasharray\":r}),e.createSVGElement(`line`,{x1:0,y1:0,x2:n,y2:0,\"stroke-dasharray\":r}),e.createSVGElement(`line`,{x1:0,y1:-t,x2:n,y2:-t,\"stroke-dasharray\":r})}}]),n}(Y.ArrowheadShape),Y.Dot2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:.5*A.measure.thickness,d:.5*A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(.5*A.measure.thickness),n=A.measure.em2px(A.measure.thickness),r=A.measure.dottedDasharray;e.createSVGElement(`line`,{x1:0,y1:t,x2:n,y2:t,\"stroke-dasharray\":r}),e.createSVGElement(`line`,{x1:0,y1:-t,x2:n,y2:-t,\"stroke-dasharray\":r})}}]),n}(Y.ArrowheadShape),Y.DotArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:0,u:0,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.oneem;var t=A.measure.em2px(A.measure.thickness),n=A.measure.dottedDasharray;e.createSVGElement(`line`,{x1:0,y1:0,x2:t,y2:0,\"stroke-dasharray\":n})}}]),n}(Y.ArrowheadShape),Y.Tilde3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:-2*A.measure.thickness,r:2*A.measure.thickness,u:2*A.measure.thickness,d:2*A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.thickness);e.createSVGElement(`path`,{d:`M`+-2*t+`,`+t+` Q`+-t+`,0 0,`+t+` T`+2*t+`,`+t+`M`+-2*t+`,0 Q`+-t+`,`+-t+` 0,0 T`+2*t+`,0M`+-2*t+`,`+-t+` Q`+-t+`,`+-2*t+` 0,`+-t+` T`+2*t+`,`+-t})}}]),n}(Y.ArrowheadShape),Y.Tilde2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:-2*A.measure.thickness,r:2*A.measure.thickness,u:1.5*A.measure.thickness,d:1.5*A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.thickness);e.createSVGElement(`path`,{d:`M`+-2*t+`,`+.5*t+` Q`+-t+`,`+-.5*t+` 0,`+.5*t+` T`+2*t+`,`+.5*t+`M`+-2*t+`,`+-.5*t+` Q`+-t+`,`+-1.5*t+` 0,`+-.5*t+` T`+2*t+`,`+-.5*t})}}]),n}(Y.ArrowheadShape),Y.TildeArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:-2*A.measure.thickness,r:2*A.measure.thickness,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.thickness);e.createSVGElement(`path`,{d:`M`+-2*t+`,0 Q`+-t+`,`+-t+` 0,0 T`+2*t+`,0`})}}]),n}(Y.ArrowheadShape),Y.TildeArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:-2*A.measure.thickness,r:2*A.measure.thickness,u:A.measure.thickness,d:A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.thickness);e.createSVGElement(`path`,{d:`M`+-2*t+`,0 Q`+-t+`,`+-t+` 0,0 T`+2*t+`,0`})}}]),n}(Y.ArrowheadShape),Y.GTGTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e+2*A.measure.thickness,r:0,d:.147*e,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+-r+`,0 Q`+(A.measure.em2px(-.222*t)-r)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(-.489*t)-r)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M`+-r+`,0 Q`+(A.measure.em2px(-.222*t)-r)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(-.489*t)-r)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.UpperGTGTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e+2*A.measure.thickness,r:0,d:0,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+-r+`,0 Q`+(A.measure.em2px(-.222*t)-r)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(-.489*t)-r)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.LowerGTGTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.489*e+2*A.measure.thickness,r:0,d:.147*e,u:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+-r+`,0 Q`+(A.measure.em2px(-.222*t)-r)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(-.489*t)-r)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.GTGT2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.456*e+2*A.measure.thickness,r:0,d:.229*e,u:.229*e}}},{key:`getRadius`,value:function(){return .213*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=e.createGroup(e.transformBuilder().rotateDegree(-10)),i=e.createGroup(e.transformBuilder().rotateDegree(10));r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),i.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)});var a=e.createGroup(e.transformBuilder().translate(-2*n,0).rotateDegree(-10)),o=e.createGroup(e.transformBuilder().translate(-2*n,0).rotateDegree(10));a.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),o.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.GTGT3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:.507*e+2*A.measure.thickness,r:0,d:.268*e,u:.268*e}}},{key:`getRadius`,value:function(){return .325*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=e.createGroup(e.transformBuilder().rotateDegree(-15)),i=e.createGroup(e.transformBuilder().rotateDegree(15));r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),i.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)});var a=e.createGroup(e.transformBuilder().translate(-2*n,0).rotateDegree(-15)),o=e.createGroup(e.transformBuilder().translate(-2*n,0).rotateDegree(15));a.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),o.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`line`,{x1:0,y1:0,x2:A.measure.em2px(-.507*t-2*n),y2:0})}}]),n}(Y.ArrowheadShape),Y.LTLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e+2*A.measure.thickness,d:.147*e,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+r+`,0 Q`+(A.measure.em2px(.222*t)+r)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(.489*t)+r)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M`+r+`,0 Q`+(A.measure.em2px(.222*t)+r)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(.489*t)+r)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.UpperLTLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e+2*A.measure.thickness,d:0,u:.147*e}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+r+`,0 Q`+(A.measure.em2px(.222*t)+r)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(.489*t)+r)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.LowerLTLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.489*e+2*A.measure.thickness,d:.147*e,u:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+r+`,0 Q`+(A.measure.em2px(.222*t)+r)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(.489*t)+r)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.LTLT2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.456+e+2*A.measure.thickness,d:.229*e,u:.229*e}}},{key:`getRadius`,value:function(){return .213*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=e.createGroup(e.transformBuilder().translate(2*n,0).rotateDegree(10)),i=e.createGroup(e.transformBuilder().translate(2*n,0).rotateDegree(-10));r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),i.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)});var a=e.createGroup(e.transformBuilder().rotateDegree(10)),o=e.createGroup(e.transformBuilder().rotateDegree(-10));a.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),o.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.LTLT3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:0,r:.507*e+2*A.measure.thickness,d:.268*e,u:.268*e}}},{key:`getRadius`,value:function(){return .325*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=e.createGroup(e.transformBuilder().translate(2*n,0).rotateDegree(15)),i=e.createGroup(e.transformBuilder().translate(2*n,0).rotateDegree(-15));r.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),i.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)});var a=e.createGroup(e.transformBuilder().rotateDegree(15)),o=e.createGroup(e.transformBuilder().rotateDegree(-15));a.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),o.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`line`,{x1:0,y1:0,x2:A.measure.em2px(.507*t+2*n),y2:0})}}]),n}(Y.ArrowheadShape),Y.ColumnColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`line`,{x1:-A.measure.em2px(t),y1:n,x2:-A.measure.em2px(t),y2:-n})}}]),n}(Y.ArrowheadShape),Y.UpperColumnColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:-n}),e.createSVGElement(`line`,{x1:-A.measure.em2px(t),y1:0,x2:-A.measure.em2px(t),y2:-n})}}]),n}(Y.ArrowheadShape),Y.LowerColumnColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:0,d:A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:n}),e.createSVGElement(`line`,{x1:-A.measure.em2px(t),y1:0,x2:-A.measure.em2px(t),y2:n})}}]),n}(Y.ArrowheadShape),Y.ColumnColumn2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:.5*(A.measure.lineElementLength+A.measure.thickness),d:.5*(A.measure.lineElementLength+A.measure.thickness)}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(.5*(A.measure.lineElementLength+A.measure.thickness));e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`line`,{x1:-A.measure.em2px(t),y1:n,x2:-A.measure.em2px(t),y2:-n})}}]),n}(Y.ArrowheadShape),Y.ColumnColumn3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:.5*A.measure.lineElementLength+A.measure.thickness,d:.5*A.measure.lineElementLength+A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=(t=A.measure.thickness,A.measure.em2px(.5*A.measure.lineElementLength+A.measure.thickness));e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`line`,{x1:-A.measure.em2px(t),y1:n,x2:-A.measure.em2px(t),y2:-n})}}]),n}(Y.ArrowheadShape),Y.ColumnLineArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:t,x2:0,y2:-t});var n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:n,y2:0})}}]),n}(Y.ArrowheadShape),Y.UpperColumnLineArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:A.measure.lineElementLength,d:0}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:-t});var n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:n,y2:0})}}]),n}(Y.ArrowheadShape),Y.LowerColumnLineArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:0,d:A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){A.measure.thickness;var t=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:0,y2:t});var n=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:0,x2:n,y2:0})}}]),n}(Y.ArrowheadShape),Y.ColumnLine2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:.5*(A.measure.lineElementLength+A.measure.thickness),d:.5*(A.measure.lineElementLength+A.measure.thickness)}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(.5*(A.measure.lineElementLength+A.measure.thickness));e.createSVGElement(`line`,{x1:0,y1:-n,x2:0,y2:n});var r=A.measure.em2px(.5*t),i=A.measure.em2px(A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:r,x2:i,y2:r}),e.createSVGElement(`line`,{x1:0,y1:-r,x2:i,y2:-r})}}]),n}(Y.ArrowheadShape),Y.ColumnLine3ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:A.measure.lineElementLength,u:.5*A.measure.lineElementLength+A.measure.thickness,d:.5*A.measure.lineElementLength+A.measure.thickness}}},{key:`drawDelegate`,value:function(e){var t=A.measure.thickness,n=A.measure.em2px(.5*A.measure.lineElementLength+A.measure.thickness);e.createSVGElement(`line`,{x1:0,y1:-n,x2:0,y2:n});var r=A.measure.em2px(A.measure.lineElementLength),i=A.measure.em2px(t);e.createSVGElement(`line`,{x1:0,y1:i,x2:r,y2:i}),e.createSVGElement(`line`,{x1:0,y1:0,x2:r,y2:0}),e.createSVGElement(`line`,{x1:0,y1:-i,x2:r,y2:-i})}}]),n}(Y.ArrowheadShape),Y.GTColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.489*A.measure.oneem,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.GTGTColumnArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:.489*A.measure.oneem+2*A.measure.thickness,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:r,x2:0,y2:-r});var i=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+-i+`,0 Q`+(A.measure.em2px(-.222*t)-i)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(-.489*t)-i)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M`+-i+`,0 Q`+(A.measure.em2px(-.222*t)-i)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(-.489*t)-i)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)})}}]),n}(Y.ArrowheadShape),Y.ColumnLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.489*A.measure.oneem,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=(A.measure.thickness,A.measure.em2px(.5*A.measure.lineElementLength));e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.ColumnLTLTArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:0,r:.489*A.measure.oneem+2*A.measure.thickness,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.thickness,r=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:r,x2:0,y2:-r});var i=A.measure.em2px(2*n);e.createSVGElement(`path`,{d:`M`+i+`,0 Q`+(A.measure.em2px(.222*t)+i)+`,`+A.measure.em2px(-.02*t)+` `+(A.measure.em2px(.489*t)+i)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M`+i+`,0 Q`+(A.measure.em2px(.222*t)+i)+`,`+A.measure.em2px(.02*t)+` `+(A.measure.em2px(.489*t)+i)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(-.147*t)}),e.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(.489*t)+`,`+A.measure.em2px(.147*t)})}}]),n}(Y.ArrowheadShape),Y.SlashSlashArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r-Math.PI/10,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return{l:A.measure.thickness,r:0,u:.5*A.measure.lineElementLength,d:.5*A.measure.lineElementLength}}},{key:`drawDelegate`,value:function(e){var t=A.measure.em2px(A.measure.thickness),n=A.measure.em2px(.5*A.measure.lineElementLength);e.createSVGElement(`line`,{x1:0,y1:n,x2:0,y2:-n}),e.createSVGElement(`line`,{x1:-t,y1:n,x2:-t,y2:-n})}}]),n}(Y.ArrowheadShape),Y.LineGT2ArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){var e=A.measure.oneem;return{l:A.measure.lineElementLength,r:A.measure.lineElementLength,d:.229*e,u:.229*e}}},{key:`getRadius`,value:function(){return .213*A.measure.oneem}},{key:`drawDelegate`,value:function(e){var t=A.measure.oneem,n=A.measure.lineElementLength,r=A.measure.em2px(n),i=.5*A.measure.thickness,a=A.measure.em2px(i),o=this.getRadius(),s=A.measure.em2px(Math.sqrt(o*o-i*i)),c=e.createGroup(e.transformBuilder().translate(n,0).rotateDegree(-10)),l=e.createGroup(e.transformBuilder().translate(n,0).rotateDegree(10));c.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(-.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(-.147*t)}),l.createSVGElement(`path`,{d:`M0,0 Q`+A.measure.em2px(-.222*t)+`,`+A.measure.em2px(.02*t)+` `+A.measure.em2px(-.489*t)+`,`+A.measure.em2px(.147*t)}),e.createSVGElement(`path`,{d:`M`+-r+`,`+a+` L`+(r-s)+`,`+a+` M`+-r+`,`+-a+` L`+(r-s)+`,`+-a})}}]),n}(Y.ArrowheadShape),Y.TwocellEqualityArrowheadShape=function(e){W(n,e);var t=G(n);function n(e,r){var i;return q(this,n),(i=t.call(this)).c=e,i.angle=r,H(K(i),`getBoundingBox`),i}return J(n,[{key:`getBox`,value:function(){return A.measure.oneem,{l:A.measure.lineElementLength,r:A.measure.lineElementLength,d:.5*A.measure.thickness,u:.5*A.measure.thickness}}},{key:`drawDelegate`,value:function(e){A.measure.oneem;var t=A.measure.em2px(A.measure.lineElementLength),n=A.measure.em2px(.5*A.measure.thickness);e.createSVGElement(`path`,{d:`M`+-t+`,`+n+` L`+t+`,`+n+` M`+-t+`,`+-n+` L`+t+`,`+-n})}}]),n}(Y.ArrowheadShape),Y.LineShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a,o){var s;return q(this,n),(s=t.call(this)).line=e,s.object=r,s.main=i,s.variant=a,s.bbox=o,s.holeRanges=O.empty,s}return J(n,[{key:`sliceHole`,value:function(e){this.holeRanges=this.holeRanges.prepend(e)}},{key:`draw`,value:function(e){this.line.drawLine(e,this.object,this.main,this.variant,this.holeRanges)}},{key:`getBoundingBox`,value:function(){return this.bbox}},{key:`toString`,value:function(){return`LineShape[line:`+this.line+`, object:`+this.object+`, main:`+this.main+`, variant:`+this.variant+`]`}}]),n}(Y),Y.CurveShape=function(e){W(n,e);var t=G(n);function n(e,r,i,a){var o;return q(this,n),(o=t.call(this)).curve=e,o.objectForDrop=r,o.objectForConnect=i,o.bbox=a,o.holeRanges=O.empty,o}return J(n,[{key:`sliceHole`,value:function(e){this.holeRanges=this.holeRanges.prepend(e)}},{key:`draw`,value:function(e){this.curve.drawCurve(e,this.objectForDrop,this.objectForConnect,this.holeRanges)}},{key:`getBoundingBox`,value:function(){return this.bbox}},{key:`toString`,value:function(){return`CurveShape[curve`+this.curve+`, objectForDrop:`+(this.objectForDrop===void 0?`null`:this.objectForDrop.toString())+`, objectForConnect:`+(this.objectForConnect===void 0?`null`:this.objectForConnect.toString())+`]`}}]),n}(Y);var bt=function(){function e(t,n){(function(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)})(this,e),t>n?(this.start=n,this.end=t):(this.start=t,this.end=n)}var t,n,r;return t=e,(n=[{key:`difference`,value:function(t){var n=O.empty,r=this.start,i=this.end,a=t.start,o=t.end;return i<=a||o<=r?n=n.prepend(this):r<a?n=i<=o?n.prepend(new e(r,a)):(n=n.prepend(new e(r,a))).prepend(new e(o,i)):o<i&&(n=n.prepend(new e(o,i))),n}},{key:`differenceRanges`,value:function(e){var t=O.empty.prepend(this);return e.foreach((function(e){t=t.flatMap((function(t){return t.difference(e)}))})),t}},{key:`toString`,value:function(){return`[`+this.start+`, `+this.end+`]`}}])&&yt(t.prototype,n),r&&yt(t,r),e}();function xt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var St=function(){function e(t,n){(function(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)})(this,e),this.shape=t,this.env=n}var t,n,r;return t=e,(n=[{key:`duplicateEnv`,value:function(){var t=this.env.duplicate();return new e(this.shape,t)}},{key:`appendShapeToFront`,value:function(e){e.isNone||(this.shape.isNone?this.shape=e:this.shape=new Y.CompositeShape(e,this.shape))}},{key:`appendShapeToBack`,value:function(e){e.isNone||(this.shape.isNone?this.shape=e:this.shape=new Y.CompositeShape(this.shape,e))}}])&&xt(t.prototype,n),r&&xt(t,r),e}();function Ct(e){return Ct=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Ct(e)}function wt(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Tt(e,t)}function Tt(e,t){return Tt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Tt(e,t)}function Et(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=Ot(e);if(t){var i=Ot(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Dt(this,n)}}function Dt(e,t){if(t&&(Ct(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function Ot(e){return Ot=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ot(e)}function kt(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function At(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function jt(e,t,n){return t&&At(e.prototype,t),n&&At(e,n),e}var Mt=function(){function e(){kt(this,e);var t=A.measure.length2em(`1mm`);this.origin={x:0,y:0},this.xBase={x:t,y:0},this.yBase={x:0,y:t},this.savedPosition={},this.stateStack=O.empty,this.stackFrames=O.empty,this.stack=O.empty,this.angle=0,this.lastCurve=Q.none,this.p=this.c=e.originPosition,this.shouldCapturePos=!1,this.capturedPositions=O.empty,this.objectmargin=A.measure.objectmargin,this.objectheight=A.measure.objectheight,this.objectwidth=A.measure.objectwidth,this.labelmargin=A.measure.labelmargin}return jt(e,[{key:`duplicate`,value:function(){var t=new e;return e.copyFields(this,t),t}},{key:`saveState`,value:function(){var e=this.duplicate();this.stateStack=this.stateStack.prepend(e)}},{key:`restoreState`,value:function(){if(!this.stateStack.isEmpty){var t=this.stateStack.head;this.stateStack=this.stateStack.tail,e.copyFields(t,this)}}},{key:`absVector`,value:function(e,t){return{x:this.origin.x+e*this.xBase.x+t*this.yBase.x,y:this.origin.y+e*this.xBase.y+t*this.yBase.y}}},{key:`inverseAbsVector`,value:function(e,t){var n=this.xBase.x,r=this.xBase.y,i=this.yBase.x,a=this.yBase.y,o=n*a-r*i,s=e-this.origin.x,c=t-this.origin.y;return{x:(a*s-i*c)/o,y:(-r*s+n*c)/o}}},{key:`setOrigin`,value:function(e,t){this.origin={x:e,y:t}}},{key:`setXBase`,value:function(e,t){this.xBase={x:e,y:t}}},{key:`setYBase`,value:function(e,t){this.yBase={x:e,y:t}}},{key:`swapPAndC`,value:function(){var e=this.p;this.p=this.c,this.c=e}},{key:`enterStackFrame`,value:function(){this.stackFrames=this.stackFrames.prepend(this.stack),this.initStack()}},{key:`leaveStackFrame`,value:function(){this.stackFrames.isEmpty?this.initStack():(this.stack=this.stackFrames.head,this.stackFrames=this.stackFrames.tail)}},{key:`savePos`,value:function(e,t){this.savedPosition[e]=t}},{key:`startCapturePositions`,value:function(){this.shouldCapturePos=!0,this.capturedPositions=O.empty}},{key:`endCapturePositions`,value:function(){this.shouldCapturePos=!1;var e=this.capturedPositions;return this.capturedPositions=O.empty,e}},{key:`capturePosition`,value:function(e){this.shouldCapturePos&&e!==void 0&&(this.capturedPositions=this.capturedPositions.prepend(e))}},{key:`pushPos`,value:function(e){e!==void 0&&(this.stack=this.stack.prepend(e))}},{key:`popPos`,value:function(){if(this.stack.isEmpty)throw c(`ExecutionError`,`cannot pop from the empty stack`);var e=this.stack.head;return this.stack=this.stack.tail,e}},{key:`initStack`,value:function(){this.stack=O.empty}},{key:`setStack`,value:function(e){this.stack=e}},{key:`stackAt`,value:function(e){return this.stack.at(e)}},{key:`lookupPos`,value:function(e,t){var n=this.savedPosition[e];if(n===void 0)throw c(`ExecutionError`,t===void 0?`<pos> \"`+e+`\" not defined.`:t);return n}},{key:`toString`,value:function(){var e=``;for(var t in this.savedPosition)this.savedPosition.hasOwnProperty(t)&&(e.length>0&&(e+=`, `),e+=t.toString()+`:`+this.savedPosition[t]);return`Env\n p:`+this.p+`\n c:`+this.c+`\n angle:`+this.angle+`\n lastCurve:`+this.lastCurve+`\n savedPosition:{`+e+`}\n origin:{x:`+this.origin.x+`, y:`+this.origin.y+`}\n xBase:{x:`+this.xBase.x+`, y:`+this.xBase.y+`}\n yBase:{x:`+this.yBase.x+`, y:`+this.yBase.y+`}\n stackFrames:`+this.stackFrames+`\n stack:`+this.stack+`\n shouldCapturePos:`+this.shouldCapturePos+`\n capturedPositions:`+this.capturedPositions}}],[{key:`copyFields`,value:function(e,t){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);for(var r in t.savedPosition={},e.savedPosition)e.savedPosition.hasOwnProperty(r)&&(t.savedPosition[r]=e.savedPosition[r])}}]),e}();Mt.originPosition=new U.Point(0,0);var X=function(){function e(){kt(this,e)}return jt(e,[{key:`velocity`,value:function(e){var t=this.dpx(e),n=this.dpy(e);return Math.sqrt(t*t+n*n)}},{key:`length`,value:function(e){if(e<0||e>1)throw c(`ExecutionError`,`illegal cubic Bezier parameter t:`+e);this.buildLengthArray();var t=e*l.lengthResolution,n=Math.floor(t),r=Math.ceil(t);if(n===r)return this.lengthArray[n];var i=this.lengthArray[n];return i+(this.lengthArray[r]-i)/(r-n)*(t-n)}},{key:`tOfLength`,value:function(e){this.buildLengthArray();var t,n,r,i=this.lengthArray;if(e<i[0])return 0;if(e>i[i.length-1])return 1;for(var a=0,o=i.length-2;a<=o&&(n=i[t=a+o>>1],r=i[t+1],!(e>=n&&e<=r));)e<n?o=t-1:a=t+1;var s=l.lengthResolution;return n===r?t/s:(t+(e-n)/(r-n))/s}},{key:`tOfShavedStart`,value:function(e){if(e.isPoint())return 0;var t=this.tOfIntersections(e);return t.length==0?void 0:Math.min.apply(Math,t)}},{key:`tOfShavedEnd`,value:function(e){if(e.isPoint())return 1;var t=this.tOfIntersections(e);return t.length==0?void 0:Math.max.apply(Math,t)}},{key:`shaveStart`,value:function(e){if(e.isPoint())return this;var t=this.tOfIntersections(e);if(t.length!=0){var n=Math.min.apply(Math,t);return this.divide(n)[1]}}},{key:`shaveEnd`,value:function(e){if(e.isPoint())return this;var t=this.tOfIntersections(e);if(t.length!=0){var n=Math.max.apply(Math,t);return this.divide(n)[0]}}},{key:`buildLengthArray`,value:function(){if(this.lengthArray===void 0){var e=l.lengthResolution,t=Array(e+1),n=0,r=.5/e,i=0,a=r/3;t[0]=0,n=this.velocity(0)+4*this.velocity(r);var o=this.velocity(2*r);for(t[1]=a*(n+o),i=2;i<=e;i++)n+=2*o+4*this.velocity((2*i-1)*r),o=this.velocity(2*i*r),t[i]=a*(n+o);this.lengthArray=t}}},{key:`drawParallelCurve`,value:function(t,n){var r,i,a,o,s,c,u,d,f=this.countOfSegments()*l.interpolationResolution,p=Array(f+1),m=Array(f+1),h=Array(f+1),g=Array(f+1),_=Array(f+1),v=Math.PI/2,y=n;for(r=0;r<=f;r++)i=r/f,p[r]=i,a=this.angle(i),s=(o=this.position(i)).x,c=o.y,u=y*Math.cos(a+v),d=y*Math.sin(a+v),m[r]=s+u,h[r]=c+d,g[r]=s-u,_[r]=c-d;e.CubicBeziers.interpolation(p,m,h).drawPrimitive(t,`none`),e.CubicBeziers.interpolation(p,g,_).drawPrimitive(t,`none`)}},{key:`drawParallelDottedCurve`,value:function(e,t,n){var r=1/A.measure.em,i=r/2,a=r+t,o=this.length(1),s=Math.floor((o-r)/a),c=n;if(s>=0){var l,u=Math.PI/2,d=this.startPosition();for(this.endPosition(),l=0;l<=s;l++){d=i+l*a;var f=this.tOfLength(d),p=this.angle(f),m=this.position(f),h=m.x,g=m.y,_=c*Math.cos(p+u),v=c*Math.sin(p+u);e.createSVGElement(`circle`,{cx:A.measure.em2px(h+_),cy:-A.measure.em2px(g+v),r:.12,fill:`currentColor`}),e.createSVGElement(`circle`,{cx:A.measure.em2px(h-_),cy:-A.measure.em2px(g-v),r:.12,fill:`currentColor`})}}}},{key:`drawParallelDashedCurve`,value:function(t,n,r){var i,a,o,s,c,l,u,d,f=this.length(1),p=Math.floor((f-n)/(2*n)),m=2*p+1,h=(f-n)/2-p*n,g=Array(p+1),_=Array(p+1),v=Array(p+1),y=Array(p+1),b=Array(p+1),x=Math.PI/2,S=r;for(i=0;i<=m;i++)a=this.tOfLength(h+i*n),g[i]=a,o=this.angle(a),c=(s=this.position(a)).x,l=s.y,u=S*Math.cos(o+x),d=S*Math.sin(o+x),_[i]=c+u,v[i]=l+d,y[i]=c-u,b[i]=l-d;e.CubicBeziers.interpolation(g,_,v).drawSkipped(t),e.CubicBeziers.interpolation(g,y,b).drawSkipped(t)}},{key:`drawSquigCurve`,value:function(e,t){var n=A.measure.length2em(`0.15em`),r=this.length(1),i=4*n,a=n;if(r>=i){var o,s,c,l,u,d,f,p,m,h=Math.floor(r/i),g=(r-h*i)/2,_=Math.PI/2;switch(t){case`3`:o=g,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f=`M`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p=`M`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m=`M`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d);for(var v=0;v<h;v++)o=g+i*v+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x+2*u)+`,`+A.measure.em2px(-c.y-2*d),p+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),m+=` Q`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),o=g+i*v+2*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),p+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),m+=` `+A.measure.em2px(c.x-2*u)+`,`+A.measure.em2px(-c.y+2*d),o=g+i*(v+1),s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d);e.createSVGElement(`path`,{d:f}),e.createSVGElement(`path`,{d:p}),e.createSVGElement(`path`,{d:m});break;case`2`:for(o=g,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f=`M`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p=`M`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),v=0;v<h;v++)o=g+i*v+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` Q`+A.measure.em2px(c.x+3*u)+`,`+A.measure.em2px(-c.y-3*d),p+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),o=g+i*v+2*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),p+=` Q`+A.measure.em2px(c.x-3*u)+`,`+A.measure.em2px(-c.y+3*d),o=g+i*(v+1),s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d);e.createSVGElement(`path`,{d:f}),e.createSVGElement(`path`,{d:p});break;default:for(o=g,s=this.tOfLength(o),c=this.position(s),f=`M`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),v=0;v<h;v++)o=g+i*v+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),o=g+i*v+2*n,s=this.tOfLength(o),c=this.position(s),f+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),o=g+i*v+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*(v+1),s=this.tOfLength(o),c=this.position(s),f+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y);e.createSVGElement(`path`,{d:f})}}}},{key:`drawDashSquigCurve`,value:function(e,t){var n=A.measure.thickness,r=this.length(1),i=4*n,a=n;if(r>=i){var o,s,c,l,u,d,f,p,m,h=Math.floor((r-i)/2/i),g=(r-i)/2-h*i,_=Math.PI/2;switch(t){case`3`:f=p=m=``;for(var v=0;v<=h;v++)o=g+i*v*2,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` M`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` M`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m+=` M`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v*2+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x+2*u)+`,`+A.measure.em2px(-c.y-2*d),p+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),m+=` Q`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),o=g+i*v*2+2*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v*2+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),p+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),m+=` `+A.measure.em2px(c.x-2*u)+`,`+A.measure.em2px(-c.y+2*d),o=g+i*(2*v+1),s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),m+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d);e.createSVGElement(`path`,{d:f}),e.createSVGElement(`path`,{d:p}),e.createSVGElement(`path`,{d:m});break;case`2`:for(f=p=``,v=0;v<=h;v++)o=g+i*v*2,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` M`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` M`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v*2+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` Q`+A.measure.em2px(c.x+3*u)+`,`+A.measure.em2px(-c.y-3*d),p+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),o=g+i*v*2+2*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*v*2+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),p+=` Q`+A.measure.em2px(c.x-3*u)+`,`+A.measure.em2px(-c.y+3*d),o=g+i*(2*v+1),s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_)/2,d=a*Math.sin(l+_)/2,f+=` `+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),p+=` `+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d);e.createSVGElement(`path`,{d:f}),e.createSVGElement(`path`,{d:p});break;default:for(f=``,v=0;v<=h;v++)o=g+i*v*2,s=this.tOfLength(o),c=this.position(s),f+=` M`+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),o=g+i*v*2+n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x+u)+`,`+A.measure.em2px(-c.y-d),o=g+i*v*2+2*n,s=this.tOfLength(o),c=this.position(s),f+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),o=g+i*v*2+3*n,s=this.tOfLength(o),c=this.position(s),l=this.angle(s),u=a*Math.cos(l+_),d=a*Math.sin(l+_),f+=` Q`+A.measure.em2px(c.x-u)+`,`+A.measure.em2px(-c.y+d),o=g+i*(2*v+1),s=this.tOfLength(o),c=this.position(s),f+=` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y);e.createSVGElement(`path`,{d:f})}}}},{key:`drawCurve`,value:function(e,t,n,r){if(r.isEmpty)this._drawCurve(e,t,n);else{var i=new bt(0,1).differenceRanges(r),a=this;i.foreach((function(r){a.slice(r.start,r.end)._drawCurve(e,t,n)}))}}},{key:`_drawCurve`,value:function(e,t,n){var r,i=A.measure.length2em(`0.15em`);if(n!==void 0){var a=n.dirMain(),o=n.dirVariant();switch(a){case`=`:a=`-`,o=`2`;break;case`==`:a=`--`,o=`2`;break;case`:`:case`::`:a=`.`,o=`2`}switch(a){case``:break;case`-`:switch(o){case`2`:r=i/2,this.drawParallelCurve(e,r);break;case`3`:r=i,this.drawParallelCurve(e,r),this.drawPrimitive(e,`none`);break;default:r=0,this.drawPrimitive(e,`none`)}break;case`.`:case`..`:switch(o){case`2`:r=i/2,this.drawParallelDottedCurve(e,i,r);break;case`3`:r=i,this.drawParallelDottedCurve(e,i,r),this.drawPrimitive(e,A.measure.dottedDasharray);break;default:r=0,this.drawPrimitive(e,A.measure.dottedDasharray)}break;case`--`:var s=3*i;if((v=this.length(1))>=s)switch(o){case`2`:r=i/2,this.drawParallelDashedCurve(e,s,r);break;case`3`:r=i,this.drawParallelDashedCurve(e,s,r);var c=(v-s)/2-Math.floor((v-s)/2/s)*s,l=this.tOfLength(c);this.divide(l)[1].drawPrimitive(e,A.measure.em2px(s)+` `+A.measure.em2px(s));break;default:r=0,c=(v-s)/2-Math.floor((v-s)/2/s)*s,l=this.tOfLength(c),this.divide(l)[1].drawPrimitive(e,A.measure.em2px(s)+` `+A.measure.em2px(s))}break;case`~`:switch(this.drawSquigCurve(e,o),o){case`2`:r=1.5*i;break;case`3`:r=2*i;break;default:r=0}break;case`~~`:switch(this.drawDashSquigCurve(e,o),o){case`2`:r=1.5*i;break;case`3`:r=2*i;break;default:r=0}break;default:(b=new Mt).c=Mt.originPosition;var u=new St(Y.none,b),d=n.boundingBox(u);if(d==null)return;var f,p,m=d.l,h=m+d.r;if(t!==void 0){var g=t.boundingBox(u);g!==void 0&&(f=(p=g.l)+g.r)}else f=0;var _=h+f;_==0&&(_=A.measure.strokeWidth);var v=this.length(1);if((T=Math.floor(v/_))==0)return;c=(v-T*_)/2,u=new St(Y.none,b);for(var y=0;y<T;y++)E=c+y*_,t!==void 0&&(D=this.tOfLength(E+p),b.c=this.position(D),b.angle=this.angle(D),t.toDropShape(u).draw(e)),D=this.tOfLength(E+f+m),b.c=this.position(D),b.angle=this.angle(D),n.toDropShape(u).draw(e)}}else{var b;(b=new Mt).c=Mt.originPosition,u=new St(Y.none,b);var x=t,S=x.boundingBox(u);if(S===void 0)return;var C=S.l+S.r,w=C;w==0&&(w=A.measure.strokeWidth);var T;if(v=this.length(1),(T=Math.floor(v/w))==0)return;for(c=(v-T*w+w-C)/2+S.l,u=new St(Y.none,b),y=0;y<T;y++){var E=c+y*w,D=this.tOfLength(E);b.c=this.position(D),b.angle=0,x.toDropShape(u).draw(e)}}}},{key:`toShape`,value:function(e,t,n){var r,i=e.env,a=A.measure.length2em(`0.15em`),o=Y.none;if(n!==void 0){var s=n.dirMain(),c=n.dirVariant();switch(s){case`=`:s=`-`,c=`2`;break;case`==`:s=`--`,c=`2`;break;case`:`:case`::`:s=`.`,c=`2`}switch(s){case``:r=0;break;case`-`:case`.`:case`..`:switch(c){case`2`:r=a/2;break;case`3`:r=a;break;default:r=0}break;case`--`:var l=3*a;if((h=this.length(1))>=l)switch(c){case`2`:r=a/2;break;case`3`:r=a;break;default:r=0}break;case`~`:case`~~`:switch(c){case`2`:r=1.5*a;break;case`3`:r=2*a;break;default:r=0}break;default:var u=n.boundingBox(e);if(u==null)return i.angle=0,i.lastCurve=Q.none,Y.none;r=Math.max(u.u,u.d);var d,f=u.l+u.r;if(t!==void 0){var p=t.boundingBox(e);p!==void 0&&(d=p.l+p.r,r=Math.max(r,p.u,p.d))}else d=0;var m=f+d;m==0&&(m=A.measure.strokeWidth);var h=this.length(1);return Math.floor(h/m)==0?(i.angle=0,i.lastCurve=Q.none,Y.none):(o=new Y.CurveShape(this,t,n,this.boundingBox(r)),e.appendShapeToFront(o),o)}return r===void 0?Y.none:(o=new Y.CurveShape(this,t,n,this.boundingBox(r)),e.appendShapeToFront(o),o)}if(t!==void 0){var g=t.boundingBox(e);if(g==null)return i.angle=0,i.lastCurve=Q.none,Y.none;var _=g.l+g.r;return _==0&&(_=A.measure.strokeWidth),h=this.length(1),Math.floor(h/_)==0?(i.angle=0,i.lastCurve=Q.none,Y.none):(r=Math.max(g.u,g.d),o=new Y.CurveShape(this,t,n,this.boundingBox(r)),e.appendShapeToFront(o),o)}return o}}],[{key:`sign`,value:function(e){return e>0?1:e===0?0:-1}},{key:`solutionsOfCubicEq`,value:function(t,n,r,i){if(t===0)return e.solutionsOfQuadEq(n,r,i);var a=n/3/t,o=r/t,s=a*a-o/3,c=-(i/t)/2+o*a/2-a*a*a,l=c*c-s*s*s;if(l===0){var u=2*(h=c**(1/3))-a,d=-h-a;return e.filterByIn0to1([u,d])}if(l>0){var f=c+e.sign(c)*Math.sqrt(l),p=(m=e.sign(f)*Math.abs(f)**(1/3))+(h=s/m)-a;return e.filterByIn0to1([p])}var m=2*Math.sqrt(s),h=Math.acos(2*c/s/m),g=(u=m*Math.cos(h/3)-a,d=m*Math.cos((h+2*Math.PI)/3)-a,m*Math.cos((h+4*Math.PI)/3)-a);return e.filterByIn0to1([u,d,g])}},{key:`solutionsOfQuadEq`,value:function(t,n,r){if(t===0)return e.solutionsOfLinearEq(n,r);var i=n*n-4*r*t;if(i>=0){var a=Math.sqrt(i),o=(-n+a)/2/t,s=(-n-a)/2/t;return e.filterByIn0to1([o,s])}return[]}},{key:`solutionsOfLinearEq`,value:function(t,n){return t===0?n===0?0:[]:e.filterByIn0to1([-n/t])}},{key:`filterByIn0to1`,value:function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];r>=0&&r<=1&&t.push(r)}return t}}]),e}();X.QuadBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i){var a;kt(this,n),(a=t.call(this)).cp0=e,a.cp1=r,a.cp2=i;var o=e.x,s=2*(r.x-e.x),c=i.x-2*r.x+e.x;a.px=function(e){return o+e*s+e*e*c},a.dpx=function(e){return s+2*e*c};var l=e.y,u=2*(r.y-e.y),d=i.y-2*r.y+e.y;return a.py=function(e){return l+e*u+e*e*d},a.dpy=function(e){return u+2*e*d},a}return jt(n,[{key:`startPosition`,value:function(){return this.cp0}},{key:`endPosition`,value:function(){return this.cp2}},{key:`position`,value:function(e){return new U.Point(this.px(e),this.py(e))}},{key:`derivative`,value:function(e){return new U.Point(this.dpx(e),this.dpy(e))}},{key:`angle`,value:function(e){return Math.atan2(this.dpy(e),this.dpx(e))}},{key:`boundingBox`,value:function(e){var t=this.maxMin(this.cp0.x,this.cp1.x,this.cp2.x,e),n=this.maxMin(this.cp0.y,this.cp1.y,this.cp2.y,e);if(e===0)return new U.Rect(this.cp0.x,this.cp0.y,{l:this.cp0.x-t.min,r:t.max-this.cp0.x,u:n.max-this.cp0.y,d:this.cp0.y-n.min});var r=Math.PI/2,i=this.cp0.x,a=this.cp0.y,o=this.cp2.x,s=this.cp2.y,c=this.angle(0)+r,l=this.angle(1)+r,u=e*Math.cos(c),d=e*Math.sin(c),f=e*Math.cos(l),p=e*Math.sin(l),m=Math.min(t.min,i+u,i-u,o+f,o-f),h=Math.max(t.max,i+u,i-u,o+f,o-f),g=Math.min(n.min,a+d,a-d,s+p,s-p),_=Math.max(n.max,a+d,a-d,s+p,s-p);return new U.Rect(i,a,{l:i-m,r:h-i,u:_-a,d:a-g})}},{key:`maxMin`,value:function(e,t,n,r){var i,a;e>n?(i=e,a=n):(i=n,a=e);var o,s,c=rt,l=c(e),u=c(t-e),d=c(n-2*t+e);return d!=0&&(s=-u/d)>0&&s<1&&(o=function(e){return l+2*e*u+e*e*d}(s),i=Math.max(i,o+r,o-r),a=Math.min(a,o+r,o-r)),{min:a,max:i}}},{key:`divide`,value:function(e){if(e<0||e>1)throw c(`ExecutionError`,`illegal quadratic Bezier parameter t:`+e);var t=this.cp0.x,n=this.cp1.x,r=this.cp2.x,i=this.cp0.y,a=this.cp1.y,o=this.cp2.y,s=this.px(e),l=this.py(e),u=this.cp0,d=new U.Point(t+e*(n-t),i+e*(a-i)),f=new U.Point(s,l),p=f,m=new U.Point(n+e*(r-n),a+e*(o-a)),h=this.cp2;return[new X.QuadBezier(u,d,f),new X.QuadBezier(p,m,h)]}},{key:`slice`,value:function(e,t){if(!(e>=t)){if(e<0&&(e=0),t>1&&(t=1),e===0&&t===1)return this;this.cp0.x;var n=this.cp1.x,r=this.cp2.x,i=(this.cp0.y,this.cp1.y),a=this.cp2.y,o=this.px(e),s=this.py(e),c=n+e*(r-n),l=i+e*(a-i),u=new U.Point(o,s),d=new U.Point(o+t*(c-o),s+t*(l-s)),f=new U.Point(this.px(t),this.py(t));return new X.QuadBezier(u,d,f)}}},{key:`tOfIntersections`,value:function(e){if(e.isPoint())return[];if(e.isRect()){var t,n=e.x+e.r,r=e.x-e.l,i=e.y+e.u,a=e.y-e.d,o=rt,s=this.cp0.x,c=this.cp1.x,l=this.cp2.x,u=o(s),d=o(2*(c-s)),f=o(l-2*c+s),p=function(e){return u+e*d+e*e*f},m=this.cp0.y,h=this.cp1.y,g=this.cp2.y,_=o(m),v=o(2*(h-m)),y=o(g-2*h+m),b=function(e){return _+e*v+e*e*y},x=[];t=(t=X.solutionsOfQuadEq(f,d,u-n)).concat(X.solutionsOfQuadEq(f,d,u-r));for(var S=0;S<t.length;S++)(T=b(de=t[S]))>=a&&T<=i&&x.push(de);for(t=(t=X.solutionsOfQuadEq(y,v,_-i)).concat(X.solutionsOfQuadEq(y,v,_-a)),S=0;S<t.length;S++)(w=p(de=t[S]))>=r&&w<=n&&x.push(de);return x}if(e.isCircle()){var C=Math.PI,w=e.x,T=e.y,E=e.l,D=e.r,ee=e.u,te=e.d,ne=w+(D-E)/2,O=T+(ee-te)/2,re=(n=(E+D)/2,(ee+te)/2),ie=C/180,ae=new Z.Arc(ne,O,n,re,-C-ie,-C/2+ie),oe=new Z.Arc(ne,O,n,re,-C/2-ie,0+ie),se=new Z.Arc(ne,O,n,re,0-ie,C/2+ie),ce=new Z.Arc(ne,O,n,re,C/2-ie,C+ie),le=new Z.QuadBezier(this,0,1),ue=[];for(ue=(ue=(ue=(ue=ue.concat(Z.findIntersections(ae,le))).concat(Z.findIntersections(oe,le))).concat(Z.findIntersections(se,le))).concat(Z.findIntersections(ce,le)),x=[],S=0;S<ue.length;S++){var de=(ue[S][1].min+ue[S][1].max)/2;x.push(de)}return x}}},{key:`countOfSegments`,value:function(){return 1}},{key:`drawPrimitive`,value:function(e,t){var n=this.cp0,r=this.cp1,i=this.cp2;e.createSVGElement(`path`,{d:`M`+A.measure.em2px(n.x)+`,`+A.measure.em2px(-n.y)+` Q`+A.measure.em2px(r.x)+`,`+A.measure.em2px(-r.y)+` `+A.measure.em2px(i.x)+`,`+A.measure.em2px(-i.y),\"stroke-dasharray\":t})}},{key:`toString`,value:function(){return`QuadBezier(`+this.cp0.x+`, `+this.cp0.y+`)-(`+this.cp1.x+`, `+this.cp1.y+`)-(`+this.cp2.x+`, `+this.cp2.y+`)`}}]),n}(X),X.CubicBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a){var o;kt(this,n),(o=t.call(this)).cp0=e,o.cp1=r,o.cp2=i,o.cp3=a;var s=e.x,c=3*(r.x-e.x),l=3*(i.x-2*r.x+e.x),u=a.x-3*i.x+3*r.x-e.x;o.px=function(e){return s+e*c+e*e*l+e*e*e*u},o.dpx=function(e){return c+2*e*l+3*e*e*u};var d=e.y,f=3*(r.y-e.y),p=3*(i.y-2*r.y+e.y),m=a.y-3*i.y+3*r.y-e.y;return o.py=function(e){return d+e*f+e*e*p+e*e*e*m},o.dpy=function(e){return f+2*e*p+3*e*e*m},o}return jt(n,[{key:`startPosition`,value:function(){return this.cp0}},{key:`endPosition`,value:function(){return this.cp3}},{key:`position`,value:function(e){return new U.Point(this.px(e),this.py(e))}},{key:`derivative`,value:function(e){return new U.Point(this.dpx(e),this.dpy(e))}},{key:`angle`,value:function(e){return Math.atan2(this.dpy(e),this.dpx(e))}},{key:`boundingBox`,value:function(e){var t=this.maxMin(this.cp0.x,this.cp1.x,this.cp2.x,this.cp3.x,e),n=this.maxMin(this.cp0.y,this.cp1.y,this.cp2.y,this.cp3.y,e);if(e===0)return new U.Rect(this.cp0.x,this.cp0.y,{l:this.cp0.x-t.min,r:t.max-this.cp0.x,u:n.max-this.cp0.y,d:this.cp0.y-n.min});var r=Math.PI/2,i=this.cp0.x,a=this.cp0.y,o=this.cp3.x,s=this.cp3.y,c=this.angle(0)+r,l=this.angle(1)+r,u=e*Math.cos(c),d=e*Math.sin(c),f=e*Math.cos(l),p=e*Math.sin(l),m=Math.min(t.min,i+u,i-u,o+f,o-f),h=Math.max(t.max,i+u,i-u,o+f,o-f),g=Math.min(n.min,a+d,a-d,s+p,s-p),_=Math.max(n.max,a+d,a-d,s+p,s-p);return new U.Rect(i,a,{l:i-m,r:h-i,u:_-a,d:a-g})}},{key:`maxMin`,value:function(e,t,n,r,i){var a,o;e>r?(a=e,o=r):(a=r,o=e);var s,c=rt,l=c(e),u=c(t-e),d=c(n-2*t+e),f=c(r-3*n+3*t-e),p=function(e){e>0&&e<1&&(s=function(e){return l+3*e*u+3*e*e*d+e*e*e*f}(e),a=Math.max(a,s+i,s-i),o=Math.min(o,s+i,s-i))};if(f==0)d!=0&&p(-u/d/2);else{var m=d*d-u*f;m>0?(p((-d+Math.sqrt(m))/f),p((-d-Math.sqrt(m))/f)):m==0&&p(-d/f)}return{min:o,max:a}}},{key:`divide`,value:function(e){if(e<0||e>1)throw c(`ExecutionError`,`illegal cubic Bezier parameter t:`+e);var t=this.cp0.x,n=this.cp1.x,r=this.cp2.x,i=this.cp3.x,a=this.cp0.y,o=this.cp1.y,s=this.cp2.y,l=this.cp3.y,u=this.px(e),d=this.py(e),f=this.cp0,p=new U.Point(t+e*(n-t),a+e*(o-a)),m=new U.Point(t+2*e*(n-t)+e*e*(r-2*n+t),a+2*e*(o-a)+e*e*(s-2*o+a)),h=new U.Point(u,d),g=h,_=new U.Point(n+2*e*(r-n)+e*e*(i-2*r+n),o+2*e*(s-o)+e*e*(l-2*s+o)),v=new U.Point(r+e*(i-r),s+e*(l-s)),y=this.cp3;return[new X.CubicBezier(f,p,m,h),new X.CubicBezier(g,_,v,y)]}},{key:`slice`,value:function(e,t){if(!(e>=t)){if(e<0&&(e=0),t>1&&(t=1),e===0&&t===1)return this;this.cp0.x;var n=this.cp1.x,r=this.cp2.x,i=this.cp3.x,a=(this.cp0.y,this.cp1.y),o=this.cp2.y,s=this.cp3.y,c=this.px(e),l=this.py(e),u=n+2*e*(r-n)+e*e*(i-2*r+n),d=a+2*e*(o-a)+e*e*(s-2*o+a),f=r+e*(i-r),p=o+e*(s-o),m=new U.Point(c,l),h=new U.Point(c+t*(u-c),l+t*(d-l)),g=new U.Point(c+2*t*(u-c)+t*t*(f-2*u+c),l+2*t*(d-l)+t*t*(p-2*d+l)),_=new U.Point(this.px(t),this.py(t));return new X.CubicBezier(m,h,g,_)}}},{key:`tOfIntersections`,value:function(e){if(e.isPoint())return[];if(e.isRect()){var t,n=e.x+e.r,r=e.x-e.l,i=e.y+e.u,a=e.y-e.d,o=rt,s=this.cp0.x,c=this.cp1.x,l=this.cp2.x,u=this.cp3.x,d=this.cp0.y,f=this.cp1.y,p=this.cp2.y,m=this.cp3.y,h=o(s),g=o(3*(c-s)),_=o(3*(l-2*c+s)),v=o(u-3*l+3*c-s),y=function(e){return h+e*g+e*e*_+e*e*e*v},b=o(d),x=o(3*(f-d)),S=o(3*(p-2*f+d)),C=o(m-3*p+3*f-d),w=function(e){return b+e*x+e*e*S+e*e*e*C},T=[];t=(t=X.solutionsOfCubicEq(v,_,g,h-n)).concat(X.solutionsOfCubicEq(v,_,g,h-r));for(var E=0;E<t.length;E++)(te=w(he=t[E]))>=a&&te<=i&&T.push(he);for(t=(t=X.solutionsOfCubicEq(C,S,x,b-i)).concat(X.solutionsOfCubicEq(C,S,x,b-a)),E=0;E<t.length;E++)(ee=y(he=t[E]))>=r&&ee<=n&&T.push(he);return T}if(e.isCircle()){var D=Math.PI,ee=e.x,te=e.y,ne=e.l,O=e.r,re=e.u,ie=e.d,ae=ee+(O-ne)/2,oe=te+(re-ie)/2,se=(n=(ne+O)/2,(re+ie)/2),ce=D/180,le=new Z.Arc(ae,oe,n,se,-D-ce,-D/2+ce),ue=new Z.Arc(ae,oe,n,se,-D/2-ce,0+ce),de=new Z.Arc(ae,oe,n,se,0-ce,D/2+ce),fe=new Z.Arc(ae,oe,n,se,D/2-ce,D+ce),pe=new Z.CubicBezier(this,0,1),me=[];for(me=(me=(me=(me=me.concat(Z.findIntersections(le,pe))).concat(Z.findIntersections(ue,pe))).concat(Z.findIntersections(de,pe))).concat(Z.findIntersections(fe,pe)),T=[],E=0;E<me.length;E++){var he=(me[E][1].min+me[E][1].max)/2;T.push(he)}return T}}},{key:`countOfSegments`,value:function(){return 1}},{key:`drawPrimitive`,value:function(e,t){var n=this.cp0,r=this.cp1,i=this.cp2,a=this.cp3;e.createSVGElement(`path`,{d:`M`+A.measure.em2px(n.x)+`,`+A.measure.em2px(-n.y)+` C`+A.measure.em2px(r.x)+`,`+A.measure.em2px(-r.y)+` `+A.measure.em2px(i.x)+`,`+A.measure.em2px(-i.y)+` `+A.measure.em2px(a.x)+`,`+A.measure.em2px(-a.y),\"stroke-dasharray\":t})}},{key:`toString`,value:function(){return`CubicBezier(`+this.cp0.x+`, `+this.cp0.y+`)-(`+this.cp1.x+`, `+this.cp1.y+`)-(`+this.cp2.x+`, `+this.cp2.y+`)-(`+this.cp3.x+`, `+this.cp3.y+`)`}}]),n}(X),X.CubicBeziers=function(e){wt(n,e);var t=Et(n);function n(e){var r;kt(this,n),(r=t.call(this)).cbs=e;var i=r.cbs.length;return r.delegate=i==0?function(e,t,n){return n}:function(t,n,r){var a=t*i,o=Math.floor(a);o<0&&(o=0),o>=i&&(o=i-1);var s=a-o;return n(e[o],s)},r}return jt(n,[{key:`startPosition`,value:function(){return this.cbs[0].cp0}},{key:`endPosition`,value:function(){return this.cbs[this.cbs.length-1].cp3}},{key:`position`,value:function(e){return this.delegate(e,(function(e,t){return e.position(t)}),void 0)}},{key:`derivative`,value:function(e){return this.delegate(e,(function(e,t){return e.derivative(t)}),void 0)}},{key:`angle`,value:function(e){return this.delegate(e,(function(e,t){return e.angle(t)}),0)}},{key:`velocity`,value:function(e){var t=this.cbs.length;return this.delegate(e,(function(e,n){return t*e.velocity(n)}),0)}},{key:`boundingBox`,value:function(e){if(this.cbs.length!=0){var t,n=this.cbs[0].boundingBox(e),r=this.cbs.length;for(t=1;t<r;t++)n=n.combineRect(this.cbs[t].boundingBox(e));return n}}},{key:`tOfIntersections`,value:function(e){var t=[],n=0,r=this.cbs.length;for(n=0;n<r;n++)for(var i=this.cbs[n].tOfIntersections(e),a=0;a<i.length;a++)t.push((i[a]+n)/r);return t}},{key:`divide`,value:function(e){if(e<0||e>1)throw c(`ExecutionError`,`illegal cubic Bezier parameter t:`+e);if(e===0)return[new X.CubicBeziers([]),this];if(e===1)return[this,new X.CubicBeziers([])];var t=this.cbs.length,n=e*t,r=Math.floor(n);r===t&&(r=t-1);var i=n-r,a=this.cbs.slice(0,r),o=this.cbs.slice(r+1),s=this.cbs[r].divide(i);return a.push(s[0]),o.unshift(s[1]),[new X.CubicBeziers(a),new X.CubicBeziers(o)]}},{key:`slice`,value:function(e,t){if(!(e>=t)){if(e<0&&(e=0),t>1&&(t=1),e===0&&t===1)return this;var n=this.cbs.length,r=e*n,i=t*n,a=Math.floor(r),o=Math.floor(i);a===n&&(a=n-1),o===n&&(o=n-1);var s,c=r-a,l=i-o;return a===o?s=[this.cbs[a].slice(c,l)]:((s=this.cbs.slice(a+1,o)).push(this.cbs[o].slice(0,l)),s.unshift(this.cbs[a].slice(c,1))),new X.CubicBeziers(s)}}},{key:`countOfSegments`,value:function(){return this.cbs.length}},{key:`drawPrimitive`,value:function(e,t){for(var n=this.cbs.length,r=this.cbs,i=r[0],a=i.cp0,o=i.cp1,s=i.cp2,c=i.cp3,l=`M`+A.measure.em2px(a.x)+`,`+A.measure.em2px(-a.y)+` C`+A.measure.em2px(o.x)+`,`+A.measure.em2px(-o.y)+` `+A.measure.em2px(s.x)+`,`+A.measure.em2px(-s.y)+` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y),u=1;u<n;u++)s=(i=r[u]).cp2,c=i.cp3,l+=` S`+A.measure.em2px(s.x)+`,`+A.measure.em2px(-s.y)+` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y);e.createSVGElement(`path`,{d:l,\"stroke-dasharray\":t})}},{key:`drawSkipped`,value:function(e){for(var t=this.cbs.length,n=this.cbs,r=``,i=0;i<t;i+=2){var a=n[i],o=a.cp0,s=a.cp1,c=a.cp2,l=a.cp3;r+=`M`+A.measure.em2px(o.x)+`,`+A.measure.em2px(-o.y)+` C`+A.measure.em2px(s.x)+`,`+A.measure.em2px(-s.y)+` `+A.measure.em2px(c.x)+`,`+A.measure.em2px(-c.y)+` `+A.measure.em2px(l.x)+`,`+A.measure.em2px(-l.y)}e.createSVGElement(`path`,{d:r})}}],[{key:`interpolation`,value:function(e,t,n){var r,i=X.CubicBeziers.cubicSplineInterpolation(e,t),a=i[0],o=i[1],s=X.CubicBeziers.cubicSplineInterpolation(e,n),c=s[0],l=s[1],u=e.length,d=Array(u-1);for(r=0;r<u-1;r++)d[r]=new X.CubicBezier(new U.Point(t[r],n[r]),new U.Point(a[r],c[r]),new U.Point(o[r],l[r]),new U.Point(t[r+1],n[r+1]));return new X.CubicBeziers(d)}},{key:`cubicSplineInterpolation`,value:function(e,t){var n,r=e.length-1,i=Array(r);for(n=0;n<r;n++)i[n]=e[n+1]-e[n];var a=Array(r);for(n=1;n<r;n++)a[n]=3*(t[n+1]-t[n])/i[n]-3*(t[n]-t[n-1])/i[n-1];var o=Array(r+1),s=Array(r+1),c=Array(r+1);for(o[0]=1,s[0]=0,c[0]=0,n=1;n<r;n++)o[n]=2*(e[n+1]-e[n-1])-i[n-1]*s[n-1],s[n]=i[n]/o[n],c[n]=(a[n]-i[n-1]*c[n-1])/o[n];o[r]=1,c[r]=0;var l=Array(r),u=Array(r+1);for(u[r]=0,n=r-1;n>=0;n--){var d=i[n],f=u[n+1],p=d*d*c[n]-s[n]*f;u[n]=p,l[n]=t[n+1]-t[n]-(f+2*p)/3}var m=Array(r),h=Array(r);for(n=0;n<r;n++){var g=t[n],_=l[n],v=u[n];m[n]=g+_/3,h[n]=g+(2*_+v)/3}return[m,h]}}]),n}(X),X.CubicBSpline=function(){function e(t,n,r){if(kt(this,e),n.length<1)throw c(`ExecutionError`,`the number of internal control points of cubic B-spline must be greater than or equal to 1`);var i=[];i.push(t);for(var a=0,o=n.length;a<o;a++)i.push(n[a]);i.push(r),this.cps=i;var s=this.cps.length-1,l=function(e){return e<0?i[0]:e>s?i[s]:i[e]},u=function(e){var t=Math.abs(e);return t<=1?(3*t*t*t-6*t*t+4)/6:t<=2?-(t-2)*(t-2)*(t-2)/6:0};this.px=function(e){for(var t=(s+2)*e-1,n=Math.ceil(t-2),r=Math.floor(t+2),i=0,a=n;a<=r;a++)i+=u(t-a)*l(a).x;return i},this.py=function(e){for(var t=(s+2)*e-1,n=Math.ceil(t-2),r=Math.floor(t+2),i=0,a=n;a<=r;a++)i+=u(t-a)*l(a).y;return i};var d=function(e){var t=e>0?1:e<0?-1:0,n=Math.abs(e);return n<=1?t*(3*n*n-4*n)/2:n<=2?-t*(n-2)*(n-2)/2:0};this.dpx=function(e){for(var t=(s+2)*e-1,n=Math.ceil(t-2),r=Math.floor(t+2),i=0,a=n;a<=r;a++)i+=d(t-a)*l(a).x;return i},this.dpy=function(e){for(var t=(s+2)*e-1,n=Math.ceil(t-2),r=Math.floor(t+2),i=0,a=n;a<=r;a++)i+=d(t-a)*l(a).y;return i}}return jt(e,[{key:`position`,value:function(e){return new U.Point(this.px(e),this.py(e))}},{key:`angle`,value:function(e){return Math.atan2(this.dpy(e),this.dpx(e))}},{key:`toCubicBeziers`,value:function(){var e=[],t=this.cps,n=t[0],r=t[1],i=t[2],a=n.x,o=n.y,s=a+(r.x-a)/3,c=o+(r.y-o)/3,l=a+2*(r.x-a)/3,u=o+2*(r.y-o)/3,d=r.x+(i.x-r.x)/3,f=r.y+(i.y-r.y)/3,p=(l+d)/2,m=(u+f)/2,h=n,g=new U.Point(s,c),_=new U.Point(l,u),v=new U.Point(p,m),y=new X.CubicBezier(h,g,_,v);e.push(y);for(var b=this.cps.length-1,x=2;x<b;x++)n=r,r=i,i=t[x+1],a=p,o=m,s=2*p-l,c=2*m-u,l=n.x+2*(r.x-n.x)/3,u=n.y+2*(r.y-n.y)/3,p=(l+(d=r.x+(i.x-r.x)/3))/2,m=(u+(f=r.y+(i.y-r.y)/3))/2,h=v,g=new U.Point(s,c),_=new U.Point(l,u),v=new U.Point(p,m),y=new X.CubicBezier(h,g,_,v),e.push(y);return n=r,r=i,a=p,o=m,s=2*p-l,c=2*m-u,l=n.x+2*(r.x-n.x)/3,u=n.y+2*(r.y-n.y)/3,p=r.x,m=r.y,h=v,g=new U.Point(s,c),_=new U.Point(l,u),v=new U.Point(p,m),y=new X.CubicBezier(h,g,_,v),e.push(y),e}},{key:`countOfSegments`,value:function(){return this.cps.length-1}}]),e}(),X.Line=function(){function e(t,n){kt(this,e),this.s=t,this.e=n}return jt(e,[{key:`position`,value:function(e){return new U.Point(this.s.x+e*(this.e.x-this.s.x),this.s.y+e*(this.e.y-this.s.y))}},{key:`slice`,value:function(e,t){if(!(e>=t)){if(e<0&&(e=0),t>1&&(t=1),e===0&&t===1)return this;var n=this.s,r=this.e,i=r.x-n.x,a=r.y-n.y,o=new U.Point(n.x+e*i,n.y+e*a),s=new U.Point(n.x+t*i,n.y+t*a);return new X.Line(o,s)}}},{key:`tOfIntersections`,value:function(e){if(e.isPoint())return[];var t=this.s,n=this.e;if(e.isRect()){var r,i=e.x+e.r,a=e.x-e.l,o=e.y+e.u,s=e.y-e.d,c=t.x,l=t.y,u=n.x-c,d=n.y-l,f=function(e){return c+e*u},p=function(e){return l+e*d},m=[];r=(r=X.solutionsOfLinearEq(u,c-i)).concat(X.solutionsOfLinearEq(u,c-a));for(var h=0;h<r.length;h++){var g=p(_=r[h]);g>=s&&g<=o&&m.push(_)}for(r=(r=X.solutionsOfLinearEq(d,l-o)).concat(X.solutionsOfLinearEq(d,l-s)),h=0;h<r.length;h++){var _,v=f(_=r[h]);v>=a&&v<=i&&m.push(_)}return m}if(e.isCircle()){Math.PI;var y=e.l,b=e.r,x=e.u,S=e.d,C=e.x+(b-y)/2,w=e.y+(x-S)/2,T=(i=(y+b)/2,(x+S)/2),E=t.x,D=t.y,ee=n.x-E,te=-ee,ne=(s=n.y-D)*i,O=te*T,re=ne*ne+O*O,ie=(n=-(S=ne*C+O*w+((ee*D-s*E)*i+(i-T)*te*w))/re,re*i*i-S*S);if(ie<0)return[];var ae,oe,se=Math.sqrt(ie)/re,ce=T/i,le=ne*n+O*se+C,ue=ce*(O*n-ne*se+w-w)+w,de=ne*n-O*se+C,fe=ce*(O*n+ne*se+w-w)+w;return Math.abs(ee)>Math.abs(s)?(ae=(le-E)/ee,oe=(de-E)/ee):(ae=(ue-D)/s,oe=(fe-D)/s),m=[],ae>=0&&ae<=1&&m.push(ae),oe>=0&&oe<=1&&m.push(oe),m}}},{key:`toShape`,value:function(e,t,n,r){var i=e.env,a=A.measure.thickness,o=this.s,s=this.e;if(o.x!==s.x||o.y!==s.y){var c,l=s.x-o.x,u=s.y-o.y,d=Math.atan2(u,l),f=Y.none;switch(n){case`=`:n=`-`,r=`2`;break;case`==`:n=`--`,r=`2`;break;case`:`:case`::`:n=`.`,r=`2`}switch(n){case``:return i.angle=d,i.lastCurve=new Q.Line(o,s,i.p,i.c,void 0),f;case`-`:case`.`:case`..`:switch(r){case`2`:c=a/2;break;case`3`:c=a;break;default:c=0}break;case`--`:var p=3*a;if((g=Math.sqrt(l*l+u*u))>=p)switch(r){case`2`:c=a/2;break;case`3`:c=a;break;default:c=0}break;case`~`:case`~~`:switch(r){case`2`:c=1.5*a;break;case`3`:c=2*a;break;default:c=0}break;default:var m=t.boundingBox(e);if(m==null)return i.angle=0,i.lastCurve=Q.none,Y.none;var h=m.l+m.r;h==0&&(h=A.measure.strokeWidth);var g=Math.sqrt(l*l+u*u);if(Math.floor(g/h)==0)return i.angle=0,i.lastCurve=Q.none,Y.none;c=Math.max(m.u,m.d)}if(c!==void 0){var _=this.boundingBox(c);return f=new Y.LineShape(this,t,n,r,_),e.appendShapeToFront(f),i.angle=d,i.lastCurve=new Q.Line(o,s,i.p,i.c,f),f}}return i.angle=0,i.lastCurve=Q.none,Y.none}},{key:`boundingBox`,value:function(e){var t=this.s,n=this.e,r=n.x-t.x,i=n.y-t.y,a=Math.atan2(i,r),o=e*Math.cos(a+Math.PI/2),s=e*Math.sin(a+Math.PI/2);return new U.Rect(t.x,t.y,{l:t.x-Math.min(t.x+o,t.x-o,n.x+o,n.x-o),r:Math.max(t.x+o,t.x-o,n.x+o,n.x-o)-t.x,u:Math.max(t.y+s,t.y-s,n.y+s,n.y-s)-t.y,d:t.y-Math.min(t.y+s,t.y-s,n.y+s,n.y-s)})}},{key:`drawLine`,value:function(e,t,n,r,i){if(i.isEmpty)this._drawLine(e,t,n,r);else{var a=new bt(0,1).differenceRanges(i),o=this;a.foreach((function(i){o.slice(i.start,i.end)._drawLine(e,t,n,r)}))}}},{key:`_drawLine`,value:function(e,t,n,r){var i=A.measure.thickness,a=this.s,o=this.e;if(a.x!==o.x||a.y!==o.y){var s=o.x-a.x,c=o.y-a.y,l=Math.atan2(c,s),u={x:0,y:0};switch(n){case``:break;case`-`:this.drawStraightLine(e,a,o,u,l,i,r,``);break;case`=`:this.drawStraightLine(e,a,o,u,l,i,`2`,``);break;case`.`:case`..`:this.drawStraightLine(e,a,o,u,l,i,r,A.measure.dottedDasharray);break;case`:`:case`::`:this.drawStraightLine(e,a,o,u,l,i,`2`,A.measure.dottedDasharray);break;case`--`:case`==`:var d=3*i;(E=Math.sqrt(s*s+c*c))>=d&&(u={x:(D=(E-d)/2-Math.floor((E-d)/2/d)*d)*Math.cos(l),y:D*Math.sin(l)},this.drawStraightLine(e,a,o,u,l,i,n===`==`?`2`:r,A.measure.em2px(d)+` `+A.measure.em2px(d)));break;case`~`:if((E=Math.sqrt(s*s+c*c))>=(b=4*i)){u={x:(D=(E-(T=Math.floor(E/b))*b)/2)*Math.cos(l),y:D*Math.sin(l)};for(var f=i*Math.cos(l+Math.PI/2),p=i*Math.sin(l+Math.PI/2),m=i*Math.cos(l),h=i*Math.sin(l),g=a.x+u.x,_=-a.y-u.y,v=`M`+A.measure.em2px(g)+`,`+A.measure.em2px(_)+` Q`+A.measure.em2px(g+m+f)+`,`+A.measure.em2px(_-h-p)+` `+A.measure.em2px(g+2*m)+`,`+A.measure.em2px(_-2*h)+` T`+A.measure.em2px(g+4*m)+`,`+A.measure.em2px(_-4*h),y=1;y<T;y++)v+=` T`+A.measure.em2px(g+(4*y+2)*m)+`,`+A.measure.em2px(_-(4*y+2)*h)+` T`+A.measure.em2px(g+(4*y+4)*m)+`,`+A.measure.em2px(_-(4*y+4)*h);this.drawSquigglyLineShape(e,v,a,o,f,p,r)}break;case`~~`:var b;if((E=Math.sqrt(s*s+c*c))>=(b=4*i)){for(u={x:(D=(E-b)/2-(T=Math.floor((E-b)/2/b))*b)*Math.cos(l),y:D*Math.sin(l)},f=i*Math.cos(l+Math.PI/2),p=i*Math.sin(l+Math.PI/2),m=i*Math.cos(l),h=i*Math.sin(l),g=a.x+u.x,_=-a.y-u.y,v=``,y=0;y<=T;y++)v+=` M`+A.measure.em2px(g+8*y*m)+`,`+A.measure.em2px(_-8*y*h)+` Q`+A.measure.em2px(g+(8*y+1)*m+f)+`,`+A.measure.em2px(_-(8*y+1)*h-p)+` `+A.measure.em2px(g+(8*y+2)*m)+`,`+A.measure.em2px(_-(8*y+2)*h)+` T`+A.measure.em2px(g+(8*y+4)*m)+`,`+A.measure.em2px(_-(8*y+4)*h);this.drawSquigglyLineShape(e,v,a,o,f,p,r)}break;default:var x=new Mt;x.c=Mt.originPosition;var S=new St(Y.none,x),C=t.boundingBox(S);if(C==null)return;var w=C.l+C.r;w==0&&(w=A.measure.strokeWidth);var T,E=Math.sqrt(s*s+c*c);if((T=Math.floor(E/w))==0)return;var D=(E-T*w)/2,ee=Math.cos(l),te=Math.sin(l),ne=w*ee,O=w*te,re=a.x+(D+C.l)*ee,ie=a.y+(D+C.l)*te;for(S=new St(Y.none,x),y=0;y<T;y++)x.c=new U.Point(re+y*ne,ie+y*O),x.angle=l,t.toDropShape(S).draw(e)}}}},{key:`drawStraightLine`,value:function(e,t,n,r,i,a,o,s){if(o===`3`){var c=a*Math.cos(i+Math.PI/2),l=a*Math.sin(i+Math.PI/2);e.createSVGElement(`line`,{x1:A.measure.em2px(t.x+r.x),y1:-A.measure.em2px(t.y+r.y),x2:A.measure.em2px(n.x),y2:-A.measure.em2px(n.y),\"stroke-dasharray\":s}),e.createSVGElement(`line`,{x1:A.measure.em2px(t.x+c+r.x),y1:-A.measure.em2px(t.y+l+r.y),x2:A.measure.em2px(n.x+c),y2:-A.measure.em2px(n.y+l),\"stroke-dasharray\":s}),e.createSVGElement(`line`,{x1:A.measure.em2px(t.x-c+r.x),y1:-A.measure.em2px(t.y-l+r.y),x2:A.measure.em2px(n.x-c),y2:-A.measure.em2px(n.y-l),\"stroke-dasharray\":s})}else o===`2`?(c=a*Math.cos(i+Math.PI/2)/2,l=a*Math.sin(i+Math.PI/2)/2,e.createSVGElement(`line`,{x1:A.measure.em2px(t.x+c+r.x),y1:-A.measure.em2px(t.y+l+r.y),x2:A.measure.em2px(n.x+c),y2:-A.measure.em2px(n.y+l),\"stroke-dasharray\":s}),e.createSVGElement(`line`,{x1:A.measure.em2px(t.x-c+r.x),y1:-A.measure.em2px(t.y-l+r.y),x2:A.measure.em2px(n.x-c),y2:-A.measure.em2px(n.y-l),\"stroke-dasharray\":s})):e.createSVGElement(`line`,{x1:A.measure.em2px(t.x+r.x),y1:-A.measure.em2px(t.y+r.y),x2:A.measure.em2px(n.x),y2:-A.measure.em2px(n.y),\"stroke-dasharray\":s})}},{key:`drawSquigglyLineShape`,value:function(e,t,n,r,i,a,o){o===`3`?(e.createSVGElement(`path`,{d:t}),e.createGroup(e.transformBuilder().translate(i,a)).createSVGElement(`path`,{d:t}),e.createGroup(e.transformBuilder().translate(-i,-a)).createSVGElement(`path`,{d:t})):o===`2`?(e.createGroup(e.transformBuilder().translate(i/2,a/2)).createSVGElement(`path`,{d:t}),e.createGroup(e.transformBuilder().translate(-i/2,-a/2)).createSVGElement(`path`,{d:t})):e.createSVGElement(`path`,{d:t})}}]),e}();var Z=function(){function e(){kt(this,e)}return jt(e,[{key:`bezierFatLine`,value:function(e){var t,n,r,i,a=this.cps[0],o=this.cps[e];if(a.x!==o.x||a.y!==o.y)t=a.y-o.y,n=o.x-a.x,t/=i=Math.sqrt(t*t+n*n),n/=i,r=(a.x*o.y-a.y*o.x)/i;else{var s=this.bezier.angle(this.tmin);t=-Math.sin(s),n=Math.cos(s),r=-t*this.cp0.x-n*this.cp0.y}for(var c=r,l=r,u=1;u<e;u++){var d=-t*this.cps[u].x-n*this.cps[u].y;d>l?l=d:d<c&&(c=d)}return{min:[t,n,c],max:[t,n,l]}}},{key:`clippedLineRange`,value:function(e,t,n){for(var r,i,a,o,s,c=e.length-1,l=Array(c+1),u=tt,d=0;d<=c;d++)l[d]=[d/c,-t[0]*e[d].x-t[1]*e[d].y-t[2],1];if(l[0][1]<0){var f=!0;for(d=1;d<=c;d++)(r=-(m=u(l[0],l[d]))[2]/m[0])>0&&r<1&&(i===void 0||r<i)&&(i=r),l[d][1]>=0&&(f=!1);if(f)return}else i=0;if(l[c][1]<0)for(d=0;d<c;d++)(r=-(h=u(l[c],l[d]))[2]/h[0])>0&&r<1&&(a===void 0||r>a)&&(a=r);else a=1;for(d=0;d<=c;d++)l[d]=[d/c,n[0]*e[d].x+n[1]*e[d].y+n[2],1];if(l[0][1]<0){var p=!0;for(d=1;d<=c;d++){var m;(r=-(m=u(l[0],l[d]))[2]/m[0])>0&&r<1&&(o===void 0||r<o)&&(o=r),l[d][1]>=0&&(p=!1)}if(p)return}else o=0;if(l[c][1]<0)for(d=0;d<c;d++){var h;(r=-(h=u(l[c],l[d]))[2]/h[0])>0&&r<1&&(s===void 0||r>s)&&(s=r)}else s=1;var g=Math.max(i,o),_=Math.min(a,s);return{min:this.tmin+g*(this.tmax-this.tmin),max:this.tmin+_*(this.tmax-this.tmin)}}}],[{key:`findIntersections`,value:function(t,n){for(var r=e.maxIterations,i=e.goalAccuracy,a=[[t,n,!1]],o=0,s=[];o<r&&a.length>0;){o++;var c=a.shift(),l=(t=c[0],n=c[1],c[2]),u=t.fatLine(),d=n.clippedRange(u.min,u.max);if(d!=null){var f=d.min,p=d.max,m=p-f;if(m<i&&t.paramLength()<i)l?s.push([n.clip(f,p).paramRange(),t.paramRange()]):s.push([t.paramRange(),n.clip(f,p).paramRange()]);else if(m<=.8*n.paramLength())a.push([n.clip(f,p),t,!l]);else if(m>t.paramLength()){var h=(p+f)/2;a.push([n.clip(f,h),t,!l]),a.push([n.clip(h,p),t,!l])}else{var g=n.clip(f,p),_=t.paramRange(),v=(_.min+_.max)/2;a.push([g,t.clip(_.min,v),!l]),a.push([g,t.clip(v,_.max),!l])}}}return s}},{key:`maxIterations`,get:function(){return 30}},{key:`goalAccuracy`,get:function(){return 1e-4}}]),e}();Z.Line=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a){var o;return kt(this,n),(o=t.call(this)).p0=e,o.p1=r,o.tmin=i,o.tmax=a,o}return jt(n,[{key:`paramRange`,value:function(){return{min:this.tmin,max:this.tmax}}},{key:`paramLength`,value:function(){return this.tmax-this.tmin}},{key:`containsParam`,value:function(e){return e>=this.tmin&&e<=this.tmax}},{key:`position`,value:function(e){return{x:this.p0.x+e*(this.p1.x-this.p0.x),y:this.p0.y+e*(this.p1.y-this.p0.y)}}},{key:`fatLine`,value:function(){var e=this.p1.y-this.p0.y,t=this.p0.x-this.p1.x,n=this.p1.x*this.p0.y-this.p0.x*this.p1.y,r=Math.sqrt(e*e+t*t);return r===0?(e=1,t=0):(e/=r,t/=r,n/=r),{min:[e,t,n],max:[e,t,n]}}},{key:`clip`,value:function(e,t){return new Z.Line(this.p0,this.p1,e,t)}},{key:`clippedRange`,value:function(e,t){var n=[,,];return n[0]=this.position(this.tmin),n[1]=this.position(this.tmax),this.clippedLineRange(n,e,t)}},{key:`drawFatLine`,value:function(){this.fatLine().min;var e=function(e,t){return-(e*t[0]+t[2])/t[1]},t=this.p0.x,n=this.p1.x;A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(t),y1:-A.measure.em2px(e(t,lmax)),x2:A.measure.em2px(n),y2:-A.measure.em2px(e(n,lmax)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`red`})}}]),n}(Z),Z.QuadBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i){var a;return kt(this,n),(a=t.call(this)).bezier=e,a.tmin=r,a.tmax=i,a.cp0=e.position(r),a.cp1=new U.Point((1-i)*(1-r)*e.cp0.x+(r+i-2*r*i)*e.cp1.x+r*i*e.cp2.x,(1-i)*(1-r)*e.cp0.y+(r+i-2*r*i)*e.cp1.y+r*i*e.cp2.y),a.cp2=e.position(i),a.cps=[a.cp0,a.cp1,a.cp2],a}return jt(n,[{key:`paramRange`,value:function(){return{min:this.tmin,max:this.tmax}}},{key:`paramLength`,value:function(){return this.tmax-this.tmin}},{key:`fatLine`,value:function(){return this.bezierFatLine(2)}},{key:`clip`,value:function(e,t){return new Z.QuadBezier(this.bezier,e,t)}},{key:`clippedRange`,value:function(e,t){return this.clippedLineRange(this.cps,e,t)}},{key:`drawFatLine`,value:function(){var e=this.fatLine(),t=e.min,n=e.max,r=function(e,t){return-(e*t[0]+t[2])/t[1]},i=this.cp0.x,a=this.cp2.x;A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,t)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,t)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`blue`}),A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,n)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,n)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`red`})}}]),n}(Z),Z.CubicBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i){var a;return kt(this,n),(a=t.call(this)).bezier=e,a.tmin=r,a.tmax=i,a.cp0=e.position(r),a.cp1=new U.Point((1-i)*(1-r)*(1-r)*e.cp0.x+(1-r)*(2*r+i-3*r*i)*e.cp1.x+r*(2*i+r-3*r*i)*e.cp2.x+r*r*i*e.cp3.x,(1-i)*(1-r)*(1-r)*e.cp0.y+(1-r)*(2*r+i-3*r*i)*e.cp1.y+r*(2*i+r-3*r*i)*e.cp2.y+r*r*i*e.cp3.y),a.cp2=new U.Point((1-r)*(1-i)*(1-i)*e.cp0.x+(1-i)*(2*i+r-3*r*i)*e.cp1.x+i*(2*r+i-3*r*i)*e.cp2.x+r*i*i*e.cp3.x,(1-r)*(1-i)*(1-i)*e.cp0.y+(1-i)*(2*i+r-3*r*i)*e.cp1.y+i*(2*r+i-3*r*i)*e.cp2.y+r*i*i*e.cp3.y),a.cp3=e.position(i),a.cps=[a.cp0,a.cp1,a.cp2,a.cp3],a}return jt(n,[{key:`paramRange`,value:function(){return{min:this.tmin,max:this.tmax}}},{key:`paramLength`,value:function(){return this.tmax-this.tmin}},{key:`fatLine`,value:function(){return this.bezierFatLine(3)}},{key:`clip`,value:function(e,t){return new Z.CubicBezier(this.bezier,e,t)}},{key:`clippedRange`,value:function(e,t){return this.clippedLineRange(this.cps,e,t)}},{key:`drawFatLine`,value:function(){var e=this.fatLine(),t=e.min,n=e.max,r=function(e,t){return-(e*t[0]+t[2])/t[1]},i=this.cp0.x,a=this.cp3.x;A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,t)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,t)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`blue`}),A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,n)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,n)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`red`})}}]),n}(Z),Z.Arc=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a,o,s){var c;return kt(this,n),(c=t.call(this)).x=e,c.y=r,c.rx=i,c.ry=a,c.angleMin=o,c.angleMax=s,c}return jt(n,[{key:`paramRange`,value:function(){return{min:this.angleMin,max:this.angleMax}}},{key:`paramLength`,value:function(){return this.angleMax-this.angleMin}},{key:`normalizeAngle`,value:function(e){return(e=e%2*Math.PI)>Math.PI?e-2*Math.PI:e<-Math.PI?e+2*Math.PI:e}},{key:`containsParam`,value:function(e){return e>=this.angleMin&&e<=this.angleMax}},{key:`fatLine`,value:function(){var e=this.rx,t=this.ry,n=(this.angleMax+this.angleMin)/2,r=(this.angleMax-this.angleMin)/2,i=Math.cos(n),a=Math.sin(n),o=Math.sqrt(e*e*a*a+t*t*i*i);if(o<l.machinePrecision)var s=[1,0,this.x*t*i+this.y*e*a+e*t*Math.cos(r)],c=[1,0,this.x*t*i+this.y*e*a+e*t];else{var u=e/o,d=t/o;s=[-d*i,-u*a,this.x*d*i+this.y*u*a+e*t/o*Math.cos(r)],c=[-d*i,-u*a,this.x*d*i+this.y*u*a+e*t/o]}return{min:s,max:c}}},{key:`clip`,value:function(e,t){return new Z.Arc(this.x,this.y,this.rx,this.ry,e,t)}},{key:`toCircleLine`,value:function(e,t,n,r,i){var a=e[0],o=e[1],s=a*r,c=o*i,u=e[2]*r+(r-i)*o*n,d=Math.sqrt(s*s+c*c);return d<l.machinePrecision?(s=1,c=0):(s/=d,c/=d,u/=d),[s,c,u]}},{key:`clippedRange`,value:function(e,t){var n=this.x,r=this.y,i=this.rx,a=this.ry,o=this.toCircleLine(e,n,r,i,a),s=this.toCircleLine(t,n,r,i,a),c=i,l=this.angleMin,u=this.angleMax,d=-(o[0]*n+o[1]*r+o[2]),f=[];if(c*c-d*d>=0){var p=o[0]*d-o[1]*Math.sqrt(c*c-d*d),m=o[1]*d+o[0]*Math.sqrt(c*c-d*d),h=o[0]*d+o[1]*Math.sqrt(c*c-d*d),g=o[1]*d-o[0]*Math.sqrt(c*c-d*d),_=Math.atan2(m,p),v=Math.atan2(g,h);this.containsParam(_)&&f.push(_),this.containsParam(v)&&f.push(v)}var y,b,x=-(o[0]*(n+c*Math.cos(l))+o[1]*(r+c*Math.sin(l))+o[2]),S=-(o[0]*(n+c*Math.cos(u))+o[1]*(r+c*Math.sin(u))+o[2]);if(x<0){if(f.length==0)return;y=Math.min.apply(Math,f)}else y=this.angleMin;if(S<0){if(f.length==0)return;b=Math.max.apply(Math,f)}else b=this.angleMax;f=[],c*c-(d=s[0]*n+s[1]*r+s[2])*d>=0&&(p=-o[0]*d+o[1]*Math.sqrt(c*c-d*d),m=-o[1]*d-o[0]*Math.sqrt(c*c-d*d),h=-o[0]*d-o[1]*Math.sqrt(c*c-d*d),g=-o[1]*d+o[0]*Math.sqrt(c*c-d*d),_=Math.atan2(m,p),v=Math.atan2(g,h),this.containsParam(_)&&f.push(_),this.containsParam(v)&&f.push(v));var C,w;if(x=s[0]*(n+c*Math.cos(l))+s[1]*(r+c*Math.sin(l))+s[2],S=s[0]*(n+c*Math.cos(u))+s[1]*(r+c*Math.sin(u))+s[2],x<0){if(f.length==0)return;C=Math.min.apply(Math,f)}else C=this.angleMin;if(S<0){if(f.length==0)return;w=Math.max.apply(Math,f)}else w=this.angleMax;return{min:Math.max(y,C),max:Math.min(b,w)}}},{key:`drawFatLine`,value:function(){var e=this.fatLine(),t=e.min,n=e.max,r=function(e,t){return-(e*t[0]+t[2])/t[1]},i=this.x+this.r*Math.cos(this.angleMin),a=this.x+this.r*Math.cos(this.angleMax);A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,t)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,t)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`blue`}),A.svgForDebug.createSVGElement(`line`,{x1:A.measure.em2px(i),y1:-A.measure.em2px(r(i,n)),x2:A.measure.em2px(a),y2:-A.measure.em2px(r(a,n)),\"stroke-width\":A.measure.em2px(.02*A.measure.oneem),stroke:`red`})}}]),n}(Z);var Q=function e(){kt(this,e)};function Nt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Pt(e,t,n){return t&&Nt(e.prototype,t),n&&Nt(e,n),e}function Ft(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}Q.None=function(e){wt(n,e);var t=Et(n);function n(){return kt(this,n),t.call(this)}return jt(n,[{key:`isDefined`,get:function(){return!1}},{key:`segments`,value:function(){return[]}},{key:`angle`,value:function(){return 0}}]),n}(Q),Q.none=new Q.None,Q.Line=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a,o){var s;return kt(this,n),(s=t.call(this)).start=e,s.end=r,s.p=i,s.c=a,s.lineShape=o,s}return jt(n,[{key:`isDefined`,get:function(){return!0}},{key:`position`,value:function(e){return new U.Point(this.p.x+e*(this.c.x-this.p.x),this.p.y+e*(this.c.y-this.p.y))}},{key:`derivative`,value:function(e){return new U.Point(this.c.x-this.p.x,this.c.y-this.p.y)}},{key:`angle`,value:function(e){var t=this.c.x-this.p.x,n=this.c.y-this.p.y;return t===0&&n===0?0:Math.atan2(n,t)}},{key:`tOfPlace`,value:function(e,t,n,r){var i=e?this.start:this.p,a=t?this.end:this.c;if(i.x===a.x&&i.y===a.y)return 0;var o,s,c=a.x-i.x,l=a.y-i.y,u=Math.sqrt(c*c+l*l);n>.5?(o=a.x-(1-n)*c+r*c/u,s=a.y-(1-n)*l+r*l/u):(o=i.x+n*c+r*c/u,s=i.y+n*l+r*l/u);var d=this.c.x-this.p.x,f=this.c.y-this.p.y;return d===0&&f===0?0:Math.abs(d)>Math.abs(f)?(o-this.p.x)/d:(s-this.p.y)/f}},{key:`sliceHole`,value:function(e,t){if(this.lineShape!==void 0&&!e.isPoint()){var n=this.lineShape,r=n.line,i=r.tOfIntersections(e);i.push(0),i.push(1),i.sort();for(var a=i[0],o=1;o<i.length;o++){var s=i[o],c=r.position((s+a)/2);if(e.contains(c)){var l=new bt(a,s);n.sliceHole(l)}a=s}}}},{key:`segments`,value:function(){return[new Z.Line(this.p,this.c,0,1)]}}]),n}(Q),Q.QuadBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a){var o;return kt(this,n),(o=t.call(this)).origBezier=e,o.tOfShavedStart=r,o.tOfShavedEnd=i,a.isNone||(o.curveShape=a,r>0&&a.sliceHole(new bt(0,r)),i<1&&a.sliceHole(new bt(i,1))),o}return jt(n,[{key:`isDefined`,get:function(){return!0}},{key:`position`,value:function(e){return this.origBezier.position(e)}},{key:`derivative`,value:function(e){return this.origBezier.derivative(e)}},{key:`angle`,value:function(e){return this.origBezier.angle(e)}},{key:`tOfPlace`,value:function(e,t,n,r){var i,a;e?(i=this.tOfShavedStart,a=t?this.tOfShavedEnd-this.tOfShavedStart:1-this.tOfShavedStart):(i=0,a=t?this.tOfShavedEnd:1);var o=this.origBezier,s=i+a*n;if(r!==0){var c=o.length(s);s=o.tOfLength(c+r)}return s}},{key:`sliceHole`,value:function(e,t){var n=this.curveShape;if(n!==void 0&&!e.isPoint()){var r=n.curve,i=r.tOfIntersections(e);i.push(0),i.push(1),i.sort();for(var a=i[0],o=1;o<i.length;o++){var s=i[o];if(a<=t&&t<=s){var c=r.position((s+a)/2);if(e.contains(c)){var l=new bt(a,s);n.sliceHole(l)}}a=s}}}},{key:`segments`,value:function(){return[new Z.QuadBezier(this.origBezier,0,1)]}}]),n}(Q),Q.CubicBezier=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a){var o;return kt(this,n),(o=t.call(this)).origBezier=e,o.tOfShavedStart=r,o.tOfShavedEnd=i,a.isNone||(o.curveShape=a,r>0&&a.sliceHole(new bt(0,r)),i<1&&a.sliceHole(new bt(i,1))),o}return jt(n,[{key:`originalLine`,value:function(){return this.originalLine}},{key:`isDefined`,get:function(){return!0}},{key:`position`,value:function(e){return this.origBezier.position(e)}},{key:`derivative`,value:function(e){return this.origBezier.derivative(e)}},{key:`angle`,value:function(e){return this.origBezier.angle(e)}},{key:`tOfPlace`,value:function(e,t,n,r){var i,a;e?(i=this.tOfShavedStart,a=t?this.tOfShavedEnd-this.tOfShavedStart:1-this.tOfShavedStart):(i=0,a=t?this.tOfShavedEnd:1);var o=this.origBezier,s=i+a*n;if(r!==0){var c=o.length(s);s=o.tOfLength(c+r)}return s}},{key:`sliceHole`,value:function(e,t){var n=this.curveShape;if(n!==void 0&&!e.isPoint()){var r=n.curve,i=r.tOfIntersections(e);i.push(0),i.push(1),i.sort();for(var a=i[0],o=1;o<i.length;o++){var s=i[o];if(a<=t&&t<=s){var c=r.position((s+a)/2);if(e.contains(c)){var l=new bt(a,s);n.sliceHole(l)}}a=s}}}},{key:`segments`,value:function(){return[new Z.CubicBezier(this.origBezier,0,1)]}}]),n}(Q),Q.CubicBSpline=function(e){wt(n,e);var t=Et(n);function n(e,r,i,a,o,s){var c;return kt(this,n),(c=t.call(this)).s=e,c.e=r,c.origBeziers=i,c.tOfShavedStart=a,c.tOfShavedEnd=o,s.isNone||(c.curveShape=s,a>0&&s.sliceHole(new bt(0,a)),o<1&&s.sliceHole(new bt(o,1))),c}return jt(n,[{key:`isDefined`,get:function(){return!0}},{key:`position`,value:function(e){return this.origBeziers.position(e)}},{key:`derivative`,value:function(e){return this.origBeziers.derivative(e)}},{key:`angle`,value:function(e){return this.origBeziers.angle(e)}},{key:`tOfPlace`,value:function(e,t,n,r){var i,a;e?(i=this.tOfShavedStart,a=t?this.tOfShavedEnd-this.tOfShavedStart:1-this.tOfShavedStart):(i=0,a=t?this.tOfShavedEnd:1);var o=this.origBeziers,s=i+a*n;if(r!==0){var c=o.length(s);s=o.tOfLength(c+r)}return s}},{key:`sliceHole`,value:function(e,t){var n=this.curveShape;if(n!==void 0&&!e.isPoint()){var r=n.curve,i=r.tOfIntersections(e);i.push(0),i.push(1),i.sort();for(var a=i[0],o=1;o<i.length;o++){var s=i[o];if(a<=t&&t<=s){var c=r.position((s+a)/2);if(e.contains(c)){var l=new bt(a,s);n.sliceHole(l)}}a=s}}}},{key:`segments`,value:function(){for(var e=Array(this.origBeziers.length),t=e.length,n=0;n<t;n++)e[n]=new Z.CubicBezier(this.origBezier,n/t,(n+1)/t);return e}}]),n}(Q);var It=function e(){Ft(this,e)};function Lt(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function Rt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function zt(e,t,n){return t&&Rt(e.prototype,t),n&&Rt(e,n),e}function $(e,t){for(var n in t)e.prototype.hasOwnProperty(n)?console.log(`WARN`,`method `+n+` is already exists in class `+e.name):e.prototype[n]=t[n]}It.Position=function(){function e(t){Ft(this,e),this.pos=t}return Pt(e,[{key:`position`,value:function(e){return this.pos}},{key:`toString`,value:function(){return this.pos.toString()}}]),e}(),It.Macro=function(){function e(t){Ft(this,e),this.macro=t}return Pt(e,[{key:`position`,value:function(e){return env.c=this.macro.position(e),env.c}},{key:`toString`,value:function(){return this.macro.toString()}}]),e}(),It.Base=function(){function e(t,n,r){Ft(this,e),this.origin=t,this.xBase=n,this.yBase=r}return Pt(e,[{key:`position`,value:function(e){var t=e.env;return t.origin=this.origin,t.xBase=this.xBase,t.yBase=this.yBase,t.c}},{key:`toString`,value:function(){return`origin:`+this.origin+`, xBase:`+this.xBase+`, yBase:`+this.yBase}}]),e}(),It.Stack=function(){function e(t){Ft(this,e),this.stack=t}return Pt(e,[{key:`position`,value:function(e){var t=e.env;return this.stack.isEmpty||(this.stack.tail.reverse().foreach((function(e){t.capturePosition(e)})),t.c=this.stack.head),t.c}},{key:`toString`,value:function(){return this.stack.toString()}}]),e}(),$(F.PosDecor,{toShape:function(e){this.pos.toShape(e),this.decor.toShape(e)}}),$(F.Pos.Coord,{toShape:function(e){e.env.c=this.coord.position(e),this.pos2s.foreach((function(t){t.toShape(e)}))}}),$(F.Pos.Plus,{toShape:function(e){var t=e.env,n=this.coord.position(e);t.c=n.move(t.c.x+n.x,t.c.y+n.y)}}),$(F.Pos.Minus,{toShape:function(e){var t=e.env,n=this.coord.position(e);t.c=n.move(t.c.x-n.x,t.c.y-n.y)}}),$(F.Pos.Skew,{toShape:function(e){var t=e.env,n=this.coord.position(e);t.c=new U.Point(n.x+t.c.x,n.y+t.c.y).combineRect(t.c)}}),$(F.Pos.Cover,{toShape:function(e){var t=e.env,n=this.coord.position(e);t.c=t.c.combineRect(n)}}),$(F.Pos.Then,{toShape:function(e){var t=e.env;t.capturePosition(t.c),t.c=this.coord.position(e)}}),$(F.Pos.SwapPAndC,{toShape:function(e){var t=e.env;t.swapPAndC(),t.c=this.coord.position(e)}}),$(F.Pos.SetBase,{toShape:function(e){var t=e.env,n=t.p,r=t.c.x-n.x,i=t.c.y-n.y;t.setOrigin(n.x,n.y),t.setXBase(r,i),t.setYBase(-i,r),t.c=this.coord.position(e)}}),$(F.Pos.SetYBase,{toShape:function(e){var t=e.env;t.setYBase(t.c.x-t.origin.x,t.c.y-t.origin.y),t.c=this.coord.position(e)}}),$(F.Pos.ConnectObject,{toShape:function(e){this.object.toConnectShape(e)}}),$(F.Pos.DropObject,{toShape:function(e){this.object.toDropShape(e)}}),$(F.Pos.Place,{toShape:function(e){var t=e.env;if(t.lastCurve.isDefined){var n,r=this.place,i=r.shaveP>0,a=r.shaveC>0,o=i?r.shaveP-1:0,s=a?r.shaveC-1:0;if(i&&(n=0),a&&(n=1),i==a&&(n=.5),r.factor!==void 0)if(r.factor.isIntercept){if(a=i=!1,(n=r.factor.value(e))===void 0)return}else n=r.factor.value(e);var c=A.measure.length2em(r.slide.dimen.getOrElse(`0`))+(o-s)*A.measure.jot,l=t.lastCurve.tOfPlace(i,a,n,c),u=t.lastCurve.position(l),d=t.lastCurve.angle(l);return t.c=u,t.angle=d,l}}}),$(F.Pos.PushCoord,{toShape:function(e){var t=e.env,n=this.coord.position(e);t.pushPos(n)}}),$(F.Pos.EvalCoordThenPop,{toShape:function(e){var t=e.env;t.c=this.coord.position(e),t.popPos()}}),$(F.Pos.LoadStack,{toShape:function(e){var t=e.env;t.startCapturePositions(),this.coord.position(e);var n=t.endCapturePositions();t.setStack(n),t.pushPos(t.c)}}),$(F.Pos.DoCoord,{toShape:function(e){var t=e.env,n=this.coord;t.stack.reverse().foreach((function(r){t.c=r,n.position(e)}))}}),$(F.Pos.InitStack,{toShape:function(e){e.env.initStack()}}),$(F.Pos.EnterFrame,{toShape:function(e){e.env.enterStackFrame()}}),$(F.Pos.LeaveFrame,{toShape:function(e){e.env.leaveStackFrame()}}),$(F.Place.Factor,{value:function(e){return this.factor}}),$(F.Place.Intercept,{value:function(e){var t=e.env;if(t.lastCurve.isDefined){var n=t.duplicate();n.angle=0,n.lastCurve=Q.none,n.p=n.c=Mt.originPosition;var r=new St(Y.none,n);this.pos.toShape(r),e.appendShapeToFront(r.shape),n.lastCurve.isDefined||(n.lastCurve=new Q.Line(n.p,n.c,n.p,n.c,void 0));for(var i=[],a=t.lastCurve.segments(),o=n.lastCurve.segments(),s=0;s<a.length;s++)for(var c=0;c<o.length;c++)i=i.concat(Z.findIntersections(a[s],o[c]));if(i.length===0){console.log(`perhaps no curve intersection.`);for(var l=t.lastCurve,u=n.lastCurve,d=1e-5,f=0,p=2,m=0,h=0,g=function(e){return 1/(1+Math.exp(-e))},_=function(e){var t=Math.exp(-e);return t/(1+t)/(1+t)},v=g(m),y=g(h),b=_(m),x=_(h),S=l.derivative(v),C=u.derivative(y),w=S.x*b,T=-C.x*x,E=S.y*b,D=-C.y*x,ee=w*w+E*E,te=w*T+E*D,ne=T*w+D*E,O=T*T+D*D,re=l.position(v),ie=u.position(y),ae=re.x-ie.x,oe=re.y-ie.y,se=w*ae+E*oe,ce=T*ae+D*oe,le=Math.sqrt(se*se+ce*ce)<d,ue=.001*Math.max(ee,O);!le&&f<100;){f++;do{var de=O+ue,fe=(ee+ue)*de-te*ne,pe=(de*se-te*ce)/fe,me=(-ne*se+ee*ce)/fe;if(pe*pe+me*me<10000000000000002e-26*(m*m+h*h))le=!0;else{var he=m-pe,ge=h-me,_e=g(he),ve=g(ge),ye=l.position(_e),be=u.position(ve),xe=ye.x-be.x,Se=ye.y-be.y,k=(ae*ae+oe*oe-(xe*xe+Se*Se))/(pe*(ue*pe+se)+me*(ue*me+ce));if(k>0){h=ge,v=_e,y=ve,b=_(m=he),x=_(h),S=l.derivative(v),C=u.derivative(y),w=S.x*b,T=-C.x*x,ee=w*w+(E=S.y*b)*E,te=w*T+E*(D=-C.y*x),ne=T*w+D*E,O=T*T+D*D,se=w*(ae=xe)+E*(oe=Se),ce=T*ae+D*oe,le=Math.sqrt(se*se+ce*ce)<d;var Ce=2*k-1;ue+=Math.max(1/3,1-Ce*Ce*Ce),p=2}else ue*=p,p*=2}}while(!(le||k!==void 0&&k>0))}return g(m)}var we=(i[0][0].min+i[0][0].max)/2;for(s=1;s<i.length;s++){var Te=(i[s][0].min+i[s][0].max)/2;we>Te&&(we=Te)}return we}}}),$(F.Pos.SavePos,{toShape:function(e){var t=e.env;t.savePos(this.id,new It.Position(t.c))}}),$(F.Pos.SaveMacro,{toShape:function(e){e.env.savePos(this.id,new It.Macro(this.macro))}}),$(F.Pos.SaveBase,{toShape:function(e){var t=e.env;t.savePos(this.id,new It.Base(t.origin,t.xBase,t.yBase))}}),$(F.Pos.SaveStack,{toShape:function(e){var t=e.env;t.savePos(this.id,new It.Stack(t.stack))}}),$(F.Object,{toDropShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=this.modifiers;if(n.isEmpty)return this.object.toDropShape(e);var r=t.duplicate(),i=new St(Y.none,r),a=O.empty;n.foreach((function(e){e.preprocess(i,a),a=a.prepend(e)}));var o=this.object.toDropShape(i),s=r.c;if(s===void 0)return Y.none;var c=r.originalReferencePoint;return(r=t.duplicate()).c=s,r.originalReferencePoint=c,i=new St(Y.none,r),o=n.head.modifyShape(i,o,n.tail),e.appendShapeToFront(o),t.c=r.c.move(t.c.x,t.c.y),o},toConnectShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=this.modifiers;if(n.isEmpty)return this.object.toConnectShape(e);var r=t.duplicate(),i=new St(Y.none,r),a=O.empty;n.foreach((function(e){e.preprocess(i,a),a=a.prepend(e)}));var o=this.object.toConnectShape(i);t.angle=r.angle,t.lastCurve=r.lastCurve;var s=r.c;if(s===void 0)return Y.none;var c=r.originalReferencePoint;return(r=t.duplicate()).c=s,r.originalReferencePoint=c,i=new St(Y.none,r),o=n.head.modifyShape(i,o,n.tail),e.appendShapeToFront(o),t.c=r.c.move(t.c.x,t.c.y),o},boundingBox:function(e){var t=e.duplicateEnv(),n=t.env;return n.angle=0,n.p=n.c=Mt.originPosition,t.shape=Y.none,this.toDropShape(t).getBoundingBox()}}),$(F.ObjectBox,{toConnectShape:function(e){var t=(n=e.env).c,n=e.env,r=(A.measure.thickness,n.p.edgePoint(n.c.x,n.c.y)),i=n.c.edgePoint(n.p.x,n.p.y);if(r.x!==i.x||r.y!==i.y){var a=new X.Line(r,i).toShape(e,this,`196883`,``);return n.originalReferencePoint=t,a}return n.angle=0,n.lastCurve=Q.none,n.originalReferencePoint=t,Y.none},boundingBox:function(e){var t=e.duplicateEnv(),n=t.env;return n.angle=0,n.p=n.c=Mt.originPosition,t.shape=Y.none,this.toDropShape(t).getBoundingBox()}}),$(F.ObjectBox.WrapUpObject,{toDropShape:function(e){var t=e.env,n=this.object.toDropShape(e);return t.originalReferencePoint=t.c,n},toConnectShape:function(e){var t=e.env,n=this.object.toConnectShape(e);return t.originalReferencePoint=t.c,n}}),$(F.ObjectBox.CompositeObject,{toDropShape:function(e){var t=e.env,n=t.c;if(n===void 0)return Y.none;var r=n,i=t.duplicate(),a=new St(Y.none,i);this.objects.foreach((function(e){i.c=n;var t=e.toDropShape(a);r=U.combineRect(r,i.c),r=U.combineRect(r,t.getBoundingBox().toPoint())})),t.c=r;var o=a.shape;return e.appendShapeToFront(o),t.originalReferencePoint=n,o}}),$(F.ObjectBox.Xybox,{toDropShape:function(e){var t=e.env,n=t.c;if(n===void 0)return Y.none;var r=new Mt,i=new St(Y.none,r);this.posDecor.toShape(i);var a=i.shape,o=a.getBoundingBox();if(o===void 0)return Y.none;var s=Math.max(0,o.l-o.x),c=Math.max(0,o.r+o.x),l=Math.max(0,o.u+o.y),u=Math.max(0,o.d-o.y);t.c=new U.Rect(n.x,n.y,{l:s,r:c,u:l,d:u}),t.originalReferencePoint=n;var d=new Y.TranslateShape(n.x,n.y,a);return e.appendShapeToFront(d),d}}),$(F.ObjectBox.Xymatrix,{toDropShape:function(e){var t=e.env,n=t.c,r=this.xymatrix.toShape(e);return t.originalReferencePoint=n,r}}),$(F.ObjectBox.Text,{toDropShape:function(e){var t=e.env,n=new Y.TextShape(t.c,this.math);return e.appendShapeToFront(n),t.c=n.getBoundingBox(),t.originalReferencePoint=n.getOriginalReferencePoint(),n}}),$(F.ObjectBox.Empty,{toDropShape:function(e){var t=e.env;return t.originalReferencePoint=t.c,t.c=new U.Point(t.c.x,t.c.y),Y.none}}),$(F.ObjectBox.Txt,{toDropShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=this.textObject.toDropShape(e);return t.originalReferencePoint=t.c,n}}),$(F.ObjectBox.Txt.Width.Vector,{width:function(e){return this.vector.xy().x}}),$(F.ObjectBox.Txt.Width.Default,{width:function(e){var t=e.env.c;return t.r+t.l}}),$(F.ObjectBox.Cir,{toDropShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;t.originalReferencePoint=t.c;var n=this.radius.radius(e),r=t.c.x,i=t.c.y,a=this.cir.toDropShape(e,r,i,n);return t.c=new U.Ellipse(r,i,n,n,n,n),a},toConnectShape:function(e){var t=e.env;return t.originalReferencePoint=t.c,Y.none}}),$(F.ObjectBox.Cir.Radius.Vector,{radius:function(e){return this.vector.xy(e).x}}),$(F.ObjectBox.Cir.Radius.Default,{radius:function(e){return e.env.c.r}}),$(F.ObjectBox.Cir.Cir.Segment,{toDropShape:function(e,t,n,r){e.env;var i,a,o=this.startPointDegree(e),s=this.endPointDegree(e,o),c=s-o;if((c=c<0?c+360:c)===0)return Y.none;this.orient===`^`?(i=c>180?`1`:`0`,a=`0`):(i=c>180?`0`:`1`,a=`1`);var l=Math.PI/180,u=t+r*Math.cos(o*l),d=n+r*Math.sin(o*l),f=t+r*Math.cos(s*l),p=n+r*Math.sin(s*l),m=new Y.CircleSegmentShape(t,n,u,d,r,i,a,f,p);return e.appendShapeToFront(m),m},startPointDegree:function(e){var t=this.startDiag.toString();return this.orient===`^`?this.diagToAngleACW(t):this.diagToAngleCW(t)},endPointDegree:function(e,t){var n=this.endDiag.toString();return this.orient===`^`?this.diagToAngleACW(n,t):this.diagToAngleCW(n,t)},diagToAngleACW:function(e,t){switch(e){case`l`:return 90;case`r`:return-90;case`d`:return 180;case`u`:return 0;case`dl`:case`ld`:return 135;case`dr`:case`rd`:return-135;case`ul`:case`lu`:return 45;case`ur`:case`ru`:return-45;default:return t===void 0?0:t+180}},diagToAngleCW:function(e,t){switch(e){case`l`:return-90;case`r`:return 90;case`d`:return 0;case`u`:return 180;case`dl`:case`ld`:return-45;case`dr`:case`rd`:return 45;case`ul`:case`lu`:return-135;case`ur`:case`ru`:return 135;default:return t===void 0?0:t+180}}}),$(F.ObjectBox.Cir.Cir.Full,{toDropShape:function(e,t,n,r){var i=new Y.FullCircleShape(t,n,r);return e.appendShapeToFront(i),i}}),$(F.ObjectBox.Frame,{toDropShape:function(e){var t=e.env;return t.originalReferencePoint=t.c,this.toDropFilledShape(e,`currentColor`,!1)},toDropFilledShape:function(e,t,n){var r=e.env.c;if(r===void 0)return Y.none;var i=A.measure.thickness,a=r.x,o=r.y,s=r.l,c=r.r,l=r.u,u=r.d,d=Y.none;switch(this.main){case`--`:var f=3*i;if(n){var p=this.radius.xy(e);d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,A.measure.em2px(f)+` `+A.measure.em2px(f))}else{var m=this.radius.radius(e);d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,t,A.measure.em2px(f)+` `+A.measure.em2px(f))}break;case`==`:f=3*i,n?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!0,t,A.measure.em2px(f)+` `+A.measure.em2px(f))):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!0,t,A.measure.em2px(f)+` `+A.measure.em2px(f)));break;case`o-`:f=3*i,m=A.measure.lineElementLength,d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,t,A.measure.em2px(f)+` `+A.measure.em2px(f));break;case`oo`:var h=(p=this.radius.xy(e)).x;d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,h,h,!0,t,void 0);break;case`ee`:p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!0,t,void 0);break;case`-,`:var g=this.radius.depth(e);m=this.radius.radius(e),d=new Y.CompositeShape(new Y.RectangleShape(a,o,s,c,l,u,m,!1,t,void 0),new Y.BoxShadeShape(a,o,s,c,l,u,g));break;case`.o`:h=(p=this.radius.xy(e)).x,d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,h,h,!1,t,A.measure.dottedDasharray);break;case`-o`:f=3*i,h=(p=this.radius.xy(e)).x,d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,h,h,!1,t,A.measure.em2px(f)+` `+A.measure.em2px(f));break;case`.e`:p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,A.measure.dottedDasharray);break;case`-e`:f=3*i,p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,A.measure.em2px(f)+` `+A.measure.em2px(f));break;case`-`:n?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,void 0)):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,t,void 0));break;case`=`:n?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!0,t,void 0)):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!0,t,void 0));break;case`.`:n?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,A.measure.dottedDasharray)):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,t,A.measure.dottedDasharray));break;case`,`:g=this.radius.depth(e),d=new Y.BoxShadeShape(a,o,s,c,l,u,g,t);break;case`o`:h=(p=this.radius.xy(e)).x,d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,h,h,!1,t,void 0);break;case`e`:p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,t,void 0);break;case`\\\\{`:d=new Y.LeftBrace(a-s,o,l,u,0,t);break;case`\\\\}`:d=new Y.LeftBrace(a+c,o,u,l,180,t);break;case`^\\\\}`:case`^\\\\{`:d=new Y.LeftBrace(a,o+l,c,s,270,t);break;case`_\\\\{`:case`_\\\\}`:d=new Y.LeftBrace(a,o-u,s,c,90,t);break;case`(`:d=new Y.LeftParenthesis(a-s,o+(l-u)/2,l+u,0,t);break;case`)`:d=new Y.LeftParenthesis(a+c,o+(l-u)/2,l+u,180,t);break;case`^(`:case`^)`:d=new Y.LeftParenthesis(a+(c-s)/2,o+l,s+c,270,t);break;case`_(`:case`_)`:d=new Y.LeftParenthesis(a+(c-s)/2,o-u,s+c,90,t);break;case`*`:r.isCircle()?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,`currentColor`,void 0,t,!0)):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,`currentColor`,void 0,t,!0));break;case`**`:r.isCircle()?(p=this.radius.xy(e),d=new Y.EllipseShape(a+(c-s)/2,o+(l-u)/2,p.x,p.y,!1,`currentColor`,void 0,t,!1)):(m=this.radius.radius(e),d=new Y.RectangleShape(a,o,s,c,l,u,m,!1,`currentColor`,void 0,t,!1));break;default:return Y.none}return e.appendShapeToFront(d),d},toConnectShape:function(e){var t=e.env,n=t.c,r=t.p;n!==void 0&&r!==void 0||Y.none,t.originalReferencePoint=n;var i=t.duplicate();i.c=r.combineRect(n);var a=new St(Y.none,i),o=this.toDropShape(a);return e.appendShapeToFront(o),o}}),$(F.ObjectBox.Frame.Radius.Vector,{radius:function(e){return this.vector.xy(e).x},depth:function(e){return this.vector.xy(e).x},xy:function(e){return this.vector.xy(e)}}),$(F.ObjectBox.Frame.Radius.Default,{radius:function(e){return 0},depth:function(e){return A.measure.thickness/2},xy:function(e){var t=e.env.c;return{x:(t.l+t.r)/2,y:(t.u+t.d)/2}}}),$(F.ObjectBox.Dir,{toDropShape:function(e){var t=e.env,n=t.c;t.originalReferencePoint=n;var r=t.angle;if(n===void 0)return Y.none;t.c=new U.Point(n.x,n.y),A.measure.thickness;var i=Y.none;switch(this.main){case``:return Y.none;case`>`:switch(this.variant){case`2`:var a=(i=new Y.GT2ArrowheadShape(n,r)).getRadius();t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;case`3`:a=(i=new Y.GT3ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;default:i=this.variant===`^`?new Y.UpperGTArrowheadShape(n,r):this.variant===`_`?new Y.LowerGTArrowheadShape(n,r):new Y.GTArrowheadShape(n,r)}break;case`<`:switch(this.variant){case`2`:a=(i=new Y.LT2ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;case`3`:a=(i=new Y.LT3ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;default:i=this.variant===`^`?new Y.UpperLTArrowheadShape(n,r):this.variant===`_`?new Y.LowerLTArrowheadShape(n,r):new Y.LTArrowheadShape(n,r)}break;case`|`:switch(this.variant){case`^`:i=new Y.UpperColumnArrowheadShape(n,r);break;case`_`:i=new Y.LowerColumnArrowheadShape(n,r);break;case`2`:i=new Y.Column2ArrowheadShape(n,r);break;case`3`:i=new Y.Column3ArrowheadShape(n,r);break;default:i=new Y.ColumnArrowheadShape(n,r)}break;case`(`:switch(this.variant){case`^`:i=new Y.UpperLParenArrowheadShape(n,r);break;case`_`:i=new Y.LowerLParenArrowheadShape(n,r);break;default:i=new Y.LParenArrowheadShape(n,r)}break;case`)`:switch(this.variant){case`^`:i=new Y.UpperRParenArrowheadShape(n,r);break;case`_`:i=new Y.LowerRParenArrowheadShape(n,r);break;default:i=new Y.RParenArrowheadShape(n,r)}break;case\"`\":i=this.variant===`_`?new Y.LowerBackquoteArrowheadShape(n,r):new Y.UpperBackquoteArrowheadShape(n,r);break;case`'`:i=this.variant===`_`?new Y.LowerQuoteArrowheadShape(n,r):new Y.UpperQuoteArrowheadShape(n,r);break;case`*`:i=new Y.AsteriskArrowheadShape(n,0);break;case`o`:i=new Y.OArrowheadShape(n,0);break;case`+`:i=new Y.PlusArrowheadShape(n,r);break;case`x`:i=new Y.XArrowheadShape(n,r);break;case`/`:i=new Y.SlashArrowheadShape(n,r);break;case`-`:case`--`:A.measure.lineElementLength,i=this.variant===`3`?new Y.Line3ArrowheadShape(n,r):this.variant===`2`?new Y.Line2ArrowheadShape(n,r):new Y.LineArrowheadShape(n,r);break;case`=`:case`==`:i=new Y.Line2ArrowheadShape(n,r);break;case`.`:case`..`:i=this.variant===`3`?new Y.Dot3ArrowheadShape(n,r):this.variant===`2`?new Y.Dot2ArrowheadShape(n,r):new Y.DotArrowheadShape(n,r);break;case`:`:case`::`:i=new Y.Dot2ArrowheadShape(n,r);break;case`~`:case`~~`:i=this.variant===`3`?new Y.Tilde3ArrowheadShape(n,r):this.variant===`2`?new Y.Tilde2ArrowheadShape(n,r):new Y.TildeArrowheadShape(n,r);break;case`>>`:switch(this.variant){case`^`:i=new Y.UpperGTGTArrowheadShape(n,r);break;case`_`:i=new Y.LowerGTGTArrowheadShape(n,r);break;case`2`:a=(i=new Y.GTGT2ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;case`3`:a=(i=new Y.GTGT3ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;default:i=new Y.GTGTArrowheadShape(n,r)}break;case`<<`:switch(this.variant){case`^`:i=new Y.UpperLTLTArrowheadShape(n,r);break;case`_`:i=new Y.LowerLTLTArrowheadShape(n,r);break;case`2`:a=(i=new Y.LTLT2ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;case`3`:a=(i=new Y.LTLT3ArrowheadShape(n,r)).getRadius(),t.c=new U.Ellipse(n.x,n.y,a,a,a,a);break;default:i=new Y.LTLTArrowheadShape(n,r)}break;case`||`:switch(this.variant){case`^`:i=new Y.UpperColumnColumnArrowheadShape(n,r);break;case`_`:i=new Y.LowerColumnColumnArrowheadShape(n,r);break;case`2`:i=new Y.ColumnColumn2ArrowheadShape(n,r);break;case`3`:i=new Y.ColumnColumn3ArrowheadShape(n,r);break;default:i=new Y.ColumnColumnArrowheadShape(n,r)}break;case`|-`:switch(this.variant){case`^`:i=new Y.UpperColumnLineArrowheadShape(n,r);break;case`_`:i=new Y.LowerColumnLineArrowheadShape(n,r);break;case`2`:i=new Y.ColumnLine2ArrowheadShape(n,r);break;case`3`:i=new Y.ColumnLine3ArrowheadShape(n,r);break;default:i=new Y.ColumnLineArrowheadShape(n,r)}break;case`>|`:i=new Y.GTColumnArrowheadShape(n,r);break;case`>>|`:i=new Y.GTGTColumnArrowheadShape(n,r);break;case`|<`:i=new Y.ColumnLTArrowheadShape(n,r);break;case`|<<`:i=new Y.ColumnLTLTArrowheadShape(n,r);break;case`//`:i=new Y.SlashSlashArrowheadShape(n,r);break;case`=>`:i=new Y.LineGT2ArrowheadShape(n,r);break;default:var o=A.repositories.dirRepository.get(this.main);if(o===void 0)throw c(`ExecutionError`,`\\\\dir `+this.variant+`{`+this.main+`} not defined.`);i=o.toDropShape(e)}return e.appendShapeToFront(i),i},toConnectShape:function(e){var t=e.env;t.originalReferencePoint=t.c,A.measure.thickness;var n=t.p.edgePoint(t.c.x,t.c.y),r=t.c.edgePoint(t.p.x,t.p.y);return n.x!==r.x||n.y!==r.y?new X.Line(n,r).toShape(e,this,this.main,this.variant):(t.angle=0,t.lastCurve=Q.none,Y.none)}}),$(F.ObjectBox.Curve,{toDropShape:function(e){var t=e.env;return t.originalReferencePoint=t.c,Y.none},toConnectShape:function(e){var t=e.env;t.originalReferencePoint=t.c;var n=void 0,r=void 0;this.objects.foreach((function(e){n=e.objectForDrop(n),r=e.objectForConnect(r)})),n===void 0&&r===void 0&&(r=new F.Object(O.empty,new F.ObjectBox.Dir(``,`-`))),A.measure.thickness;var i=t.c,a=t.p,o=[];this.poslist.foreach((function(t){t.addPositions(o,e)})),t.c=i,t.p=a;var s=Y.none,c=a,l=i;switch(o.length){case 0:return c.x===l.x&&c.y===l.y?(t.lastCurve=Q.none,t.angle=0,Y.none):r===void 0?n.toConnectShape(e):r.toConnectShape(e);case 1:var u=(f=new X.QuadBezier(c,o[0],l)).tOfShavedStart(c),d=f.tOfShavedEnd(l);if(u===void 0||d===void 0||u>=d)return t.angle=0,t.lastCurve=Q.none,Y.none;s=f.toShape(e,n,r),t.lastCurve=new Q.QuadBezier(f,u,d,s),t.angle=Math.atan2(l.y-c.y,l.x-c.x);break;case 2:var f;if(u=(f=new X.CubicBezier(c,o[0],o[1],l)).tOfShavedStart(c),d=f.tOfShavedEnd(l),u===void 0||d===void 0||u>=d)return t.angle=0,t.lastCurve=Q.none,Y.none;s=f.toShape(e,n,r),t.lastCurve=new Q.CubicBezier(f,u,d,s),t.angle=Math.atan2(l.y-c.y,l.x-c.x);break;default:var p=new X.CubicBSpline(c,o,l),m=new X.CubicBeziers(p.toCubicBeziers());if(u=m.tOfShavedStart(c),d=m.tOfShavedEnd(l),u===void 0||d===void 0||u>=d)return t.angle=0,t.lastCurve=Q.none,Y.none;s=m.toShape(e,n,r),t.lastCurve=new Q.CubicBSpline(c,l,m,u,d,s),t.angle=Math.atan2(l.y-c.y,l.x-c.x)}return s}}),$(F.ObjectBox.Curve.Object.Drop,{objectForDrop:function(e){return this.object},objectForConnect:function(e){return e}}),$(F.ObjectBox.Curve.Object.Connect,{objectForDrop:function(e){return e},objectForConnect:function(e){return this.object}}),$(F.ObjectBox.Curve.PosList.CurPos,{addPositions:function(e,t){var n=t.env;e.push(n.c)}}),$(F.ObjectBox.Curve.PosList.Pos,{addPositions:function(e,t){var n=t.env;this.pos.toShape(t),e.push(n.c)}}),$(F.ObjectBox.Curve.PosList.AddStack,{addPositions:function(e,t){t.env.stack.reverse().foreach((function(t){e.push(t)}))}}),$(F.Coord.C,{position:function(e){return e.env.c}}),$(F.Coord.P,{position:function(e){return e.env.p}}),$(F.Coord.X,{position:function(e){var t=e.env,n=t.p,r=t.c,i=t.origin,a=t.xBase,o=r.y-n.y,s=n.x-r.x,c=r.x*n.y-r.y*n.x,u=a.y,d=-a.x,f=a.x*i.y-a.y*i.x,p=o*d-u*s;if(Math.abs(p)<l.machinePrecision)return console.log(`there is no intersection point.`),Mt.originPosition;var m=-(d*c-s*f)/p,h=(u*c-o*f)/p;return new U.Point(m,h)}}),$(F.Coord.Y,{position:function(e){var t=e.env,n=t.p,r=t.c,i=t.origin,a=t.yBase,o=r.y-n.y,s=n.x-r.x,c=r.x*n.y-r.y*n.x,u=a.y,d=-a.x,f=a.x*i.y-a.y*i.x,p=o*d-u*s;if(Math.abs(p)<l.machinePrecision)return console.log(`there is no intersection point.`),Mt.originPosition;var m=-(d*c-s*f)/p,h=(u*c-o*f)/p;return new U.Point(m,h)}}),$(F.Coord.Vector,{position:function(e){var t=this.vector.xy(e);return new U.Point(t.x,t.y)}}),$(F.Coord.Id,{position:function(e){return e.env.lookupPos(this.id).position(e)}}),$(F.Coord.Group,{position:function(e){var t=e.env,n=t.origin,r=t.xBase,i=t.yBase,a=t.p;return this.posDecor.toShape(e),t.p=a,t.origin=n,t.xBase=r,t.yBase=i,t.c}}),$(F.Coord.StackPosition,{position:function(e){return e.env.stackAt(this.number)}}),$(F.Coord.DeltaRowColumn,{position:function(e){var t=e.env,n=t.xymatrixRow,r=t.xymatrixCol;if(n===void 0||r===void 0)throw c(`ExecutionError`,`xymatrix rows and columns not found for `+this.toSring());var i=this.prefix+(n+this.dr)+`,`+(r+this.dc);return e.env.lookupPos(i,`in entry \"`+t.xymatrixRow+`,`+t.xymatrixCol+`\": No `+this+` (is `+i+`) from here.`).position(e)}}),$(F.Coord.Hops,{position:function(e){var t=e.env,n=t.xymatrixRow,r=t.xymatrixCol;if(n===void 0||r===void 0)throw c(`ExecutionError`,`xymatrix rows and columns not found for `+this.toSring());this.hops.foreach((function(e){switch(e){case`u`:--n;break;case`d`:n+=1;break;case`l`:--r;break;case`r`:r+=1}}));var i=this.prefix+n+`,`+r;return e.env.lookupPos(i,`in entry \"`+t.xymatrixRow+`,`+t.xymatrixCol+`\": No `+this+` (is `+i+`) from here.`).position(e)}}),$(F.Coord.HopsWithPlace,{position:function(e){var t=e.env,n=t.xymatrixRow,r=t.xymatrixCol;if(n===void 0||r===void 0)throw c(`ExecutionError`,`xymatrix rows and columns not found for `+this.toSring());this.hops.foreach((function(e){switch(e){case`u`:--n;break;case`d`:n+=1;break;case`l`:--r;break;case`r`:r+=1}}));var i=this.prefix+n+`,`+r,a=e.env.lookupPos(i,`in entry \"`+t.xymatrixRow+`,`+t.xymatrixCol+`\": No `+this+` (is `+i+`) from here.`).position(e),o=(t.c,t.duplicate());o.p=t.c,o.c=a;var s,l=o.c.x-o.p.x,u=o.c.y-o.p.y;s=l===0&&u===0?0:Math.atan2(u,l),o.angle=s;var d=o.p.edgePoint(o.c.x,o.c.y),f=o.c.edgePoint(o.p.x,o.p.y);o.lastCurve=new Q.Line(d,f,o.p,o.c,void 0);var p=new St(Y.none,o),m=this.place.toShape(p);return o.lastCurve.position(m)}}),$(F.Vector.InCurBase,{xy:function(e){return e.env.absVector(this.x,this.y)},angle:function(e){var t=e.env.absVector(this.x,this.y);return Math.atan2(t.y,t.x)}}),$(F.Vector.Abs,{xy:function(e){return{x:A.measure.length2em(this.x),y:A.measure.length2em(this.y)}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Vector.Angle,{xy:function(e){var t=Math.PI/180*this.degree;return e.env.absVector(Math.cos(t),Math.sin(t))},angle:function(e){return Math.PI/180*this.degree}}),$(F.Vector.Dir,{xy:function(e){var t=A.measure.length2em(this.dimen),n=this.dir.angle(e);return{x:t*Math.cos(n),y:t*Math.sin(n)}},angle:function(e){return this.dir.angle(e)}}),$(F.Vector.Corner,{xy:function(e){var t=this.corner.xy(e);return{x:t.x*this.factor,y:t.y*this.factor}},angle:function(e){return this.corner.angle(e)}}),$(F.Corner.L,{xy:function(e){return{x:-e.env.c.l,y:0}},angle:function(e){return Math.PI}}),$(F.Corner.R,{xy:function(e){return{x:e.env.c.r,y:0}},angle:function(e){return 0}}),$(F.Corner.D,{xy:function(e){return{x:0,y:-e.env.c.d}},angle:function(e){return-Math.PI/2}}),$(F.Corner.U,{xy:function(e){return{x:0,y:e.env.c.u}},angle:function(e){return Math.PI/2}}),$(F.Corner.CL,{xy:function(e){var t=e.env.c;return{x:-t.l,y:(t.u-t.d)/2}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.CR,{xy:function(e){var t=e.env.c;return{x:t.r,y:(t.u-t.d)/2}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.CD,{xy:function(e){var t=e.env.c;return{x:(t.r-t.l)/2,y:-t.d}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.CU,{xy:function(e){var t=e.env.c;return{x:(t.r-t.l)/2,y:t.u}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.LU,{xy:function(e){var t=e.env.c;return{x:-t.l,y:t.u}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.LD,{xy:function(e){var t=e.env.c;return{x:-t.l,y:-t.d}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.RU,{xy:function(e){var t=e.env.c;return{x:t.r,y:t.u}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.RD,{xy:function(e){var t=e.env.c;return{x:t.r,y:-t.d}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.NearestEdgePoint,{xy:function(e){var t=e.env,n=t.c,r=n.edgePoint(t.p.x,t.p.y);return{x:r.x-n.x,y:r.y-n.y}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.PropEdgePoint,{xy:function(e){var t=e.env,n=t.c,r=n.proportionalEdgePoint(t.p.x,t.p.y);return{x:r.x-n.x,y:r.y-n.y}},angle:function(e){var t=this.xy(e);return Math.atan2(t.y,t.x)}}),$(F.Corner.Axis,{xy:function(e){return{x:0,y:A.measure.axisHeightLength}},angle:function(e){return Math.PI/2}}),$(F.Modifier,{proceedModifyShape:function(e,t,n){return n.isEmpty?t:n.head.modifyShape(e,t,n.tail)}}),$(F.Modifier.Vector,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=this.vector.xy(e),i=e.env;return i.c=i.c.shiftFrame(-r.x,-r.y),t=new Y.TranslateShape(-r.x,-r.y,t),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.RestoreOriginalRefPoint,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env,i=r.originalReferencePoint;if(i!==void 0){var a=r.c.x-i.x,o=r.c.y-i.y;r.c=r.c.shiftFrame(a,o),t=new Y.TranslateShape(a,o,t)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.Point,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env.c;return e.env.c=new U.Point(r.x,r.y),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.Rect,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env.c;return e.env.c=new U.Rect(r.x,r.y,{l:r.l,r:r.r,u:r.u,d:r.d}),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.Circle,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env.c;return e.env.c=new U.Ellipse(r.x,r.y,r.l,r.r,r.u,r.d),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.L,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env,i=r.c;if(i!==void 0){var a,o,s=i.r+i.l,c=i.u+i.d;s<c?(a=(i.l-i.r)/2,o=(i.d-i.u)/2):(a=-i.r+c/2,o=(i.d-i.u)/2),r.c=r.c.shiftFrame(a,o),t=new Y.TranslateShape(a,o,t)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.R,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env,i=r.c;if(i!==void 0){var a,o,s=i.r+i.l,c=i.u+i.d;s<c?(a=(i.l-i.r)/2,o=(i.d-i.u)/2):(a=i.l-c/2,o=(i.d-i.u)/2),r.c=r.c.shiftFrame(a,o),t=new Y.TranslateShape(a,o,t)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.U,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env,i=r.c;if(i!==void 0){var a,o,s=i.r+i.l;s>i.u+i.d?(a=(i.l-i.r)/2,o=(i.d-i.u)/2):(a=(i.l-i.r)/2,o=i.d-s/2),r.c=r.c.shiftFrame(a,o),t=new Y.TranslateShape(a,o,t)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.D,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env,i=r.c;if(i!==void 0){var a,o,s=i.r+i.l;s>i.u+i.d?(a=(i.l-i.r)/2,o=(i.d-i.u)/2):(a=(i.l-i.r)/2,o=-i.u+s/2),r.c=r.c.shiftFrame(a,o),t=new Y.TranslateShape(a,o,t)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.C,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r,i,a=e.env,o=a.c;return o!==void 0&&(r=(o.l-o.r)/2,i=(o.d-o.u)/2,a.c=a.c.shiftFrame(r,i),t=new Y.TranslateShape(r,i,t)),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.ChangeColor,{preprocess:function(e,t){},modifyShape:function(e,t,n){return t=this.proceedModifyShape(e,t,n),new Y.ChangeColorShape(this.colorName,t)}}),$(F.Modifier.Shape.Alphabets,{preprocess:function(e,t){var n=A.repositories.modifierRepository.get(this.alphabets);if(n!==void 0)return n.preprocess(e,t)},modifyShape:function(e,t,n){var r=A.repositories.modifierRepository.get(this.alphabets);if(r!==void 0)return r.modifyShape(e,t,n)}}),$(F.Modifier.Shape.DefineShape,{preprocess:function(e,t){var n=t.reverse();A.repositories.modifierRepository.put(this.shape,new F.Modifier.Shape.CompositeModifiers(n))},modifyShape:function(e,t,n){return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.CompositeModifiers,{preprocess:function(e,t){this.modifiers.foreach((function(n){n.preprocess(e,t),t=t.prepend(n)}))},modifyShape:function(e,t,n){return t=this.proceedModifyShape(e,t,this.modifiers),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Invisible,{preprocess:function(e,t){},modifyShape:function(e,t,n){return t=this.proceedModifyShape(e,t,n),Y.none}}),$(F.Modifier.Hidden,{preprocess:function(e,t){},modifyShape:function(e,t,n){return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Direction,{preprocess:function(e,t){e.env.angle=this.direction.angle(e)},modifyShape:function(e,t,n){return e.env.angle=this.direction.angle(e),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.AddOp,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env.c;return e.env.c=this.op.apply(this.size,r,e),e.appendShapeToFront(new Y.InvisibleBoxShape(e.env.c)),this.proceedModifyShape(e,t,n)}}),$(F.Modifier.AddOp.Grow,{apply:function(e,t,n){var r=n.env,i=e.isDefault?{x:2*r.objectmargin,y:2*r.objectmargin}:e.vector.xy(n),a=Math.abs(i.x/2),o=Math.abs(i.y/2);return t.grow(a,o)},applyToDimen:function(e,t){return e+t}}),$(F.Modifier.AddOp.Shrink,{apply:function(e,t,n){var r=n.env,i=e.isDefault?{x:2*r.objectmargin,y:2*r.objectmargin}:e.vector.xy(n),a=-Math.abs(i.x/2),o=-Math.abs(i.y/2);return t.grow(a,o)},applyToDimen:function(e,t){return e-t}}),$(F.Modifier.AddOp.Set,{apply:function(e,t,n){var r=n.env,i=e.isDefault?{x:r.objectwidth,y:r.objectheight}:e.vector.xy(n),a=Math.abs(i.x),o=Math.abs(i.y);return t.toSize(a,o)},applyToDimen:function(e,t){return t}}),$(F.Modifier.AddOp.GrowTo,{apply:function(e,t,n){var r=Math.max(t.l+t.r,t.u+t.d),i=e.isDefault?{x:r,y:r}:e.vector.xy(n),a=Math.abs(i.x),o=Math.abs(i.y);return t.growTo(a,o)},applyToDimen:function(e,t){return Math.max(Math.max(e,t),0)}}),$(F.Modifier.AddOp.ShrinkTo,{apply:function(e,t,n){var r=Math.min(t.l+t.r,t.u+t.d),i=e.isDefault?{x:r,y:r}:e.vector.xy(n),a=Math.abs(i.x),o=Math.abs(i.y);return t.shrinkTo(a,o)},applyToDimen:function(e,t){return Math.max(Math.min(e,t),0)}}),$(F.Modifier.Shape.Frame,{preprocess:function(e,t){},modifyShape:function(e,t,n){var r=e.env;if(r.c!==void 0){this.main;var i=new F.ObjectBox.Frame.Radius.Default,a=`currentColor`;this.options.foreach((function(e){i=e.getRadius(i)})),this.options.foreach((function(e){a=e.getColorName(a)}));var o=r.duplicate(),s=new St(Y.none,o),c=new F.ObjectBox.Frame(i,this.main).toDropFilledShape(s,a,r.c.isCircle());t=new Y.CompositeShape(t,c)}return this.proceedModifyShape(e,t,n)}}),$(F.Modifier.Shape.Frame.Radius,{getRadius:function(e){return new F.ObjectBox.Frame.Radius.Vector(this.vector)},getColorName:function(e){return e}}),$(F.Modifier.Shape.Frame.Color,{getRadius:function(e){return e},getColorName:function(e){return this.colorName}}),$(F.Direction.Compound,{angle:function(e){var t=this.dir.angle(e);return this.rots.foreach((function(n){t=n.rotate(t,e)})),t}}),$(F.Direction.Diag,{angle:function(e){return this.diag.angle(e)}}),$(F.Direction.Vector,{angle:function(e){return this.vector.angle(e)}}),$(F.Direction.ConstructVector,{angle:function(e){var t=e.env,n=t.origin,r=t.xBase,i=t.yBase,a=t.p,o=t.c;this.posDecor.toShape(e);var s=Math.atan2(t.c.y-t.p.y,t.c.x-t.p.x);return t.c=o,t.p=a,t.origin=n,t.xBase=r,t.yBase=i,s}}),$(F.Direction.RotVector,{rotate:function(e,t){return e+this.vector.angle(t)}}),$(F.Direction.RotCW,{rotate:function(e,t){return e+Math.PI/2}}),$(F.Direction.RotAntiCW,{rotate:function(e,t){return e-Math.PI/2}}),$(F.Diag.Default,{isEmpty:!0,angle:function(e){return e.env.angle}}),$(F.Diag.Angle,{isEmpty:!1,angle:function(e){return this.ang}}),$(F.Decor,{toShape:function(e){this.commands.foreach((function(t){t.toShape(e)}))}}),$(F.Command.Save,{toShape:function(e){e.env.saveState(),this.pos.toShape(e)}}),$(F.Command.Restore,{toShape:function(e){e.env.restoreState()}}),$(F.Command.Pos,{toShape:function(e){this.pos.toShape(e)}}),$(F.Command.AfterPos,{toShape:function(e){this.pos.toShape(e),this.decor.toShape(e)}}),$(F.Command.Drop,{toShape:function(e){this.object.toDropShape(e)}}),$(F.Command.Connect,{toShape:function(e){this.object.toConnectShape(e)}}),$(F.Command.Relax,{toShape:function(e){}}),$(F.Command.Ignore,{toShape:function(e){}}),$(F.Command.ShowAST,{toShape:function(e){console.log(this.pos.toString()+` `+this.decor)}}),$(F.Command.Ar,{toShape:function(e){var t=e.env,n=t.origin,r=t.xBase,i=t.yBase,a=t.p,o=t.c;t.pathActionForBeforeSegment=y.empty,t.pathActionForAfterSegment=y.empty,t.labelsForNextSegmentOnly=y.empty,t.labelsForLastSegmentOnly=y.empty,t.labelsForEverySegment=y.empty,t.segmentSlideEm=y.empty,t.lastTurnDiag=y.empty,t.arrowVariant=``,t.tailTip=new F.Command.Ar.Form.Tip.Tipchars(``),t.headTip=new F.Command.Ar.Form.Tip.Tipchars(`>`),t.stemConn=new F.Command.Ar.Form.Conn.Connchars(`-`),t.reverseAboveAndBelow=!1,t.arrowObjectModifiers=O.empty,this.forms.foreach((function(t){t.toShape(e)})),t.pathActionForBeforeSegment.isDefined||(t.pathActionForBeforeSegment=new y.Some(new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.ConnectObject(new F.Object(t.arrowObjectModifiers,t.stemConn.getObject(e))))),new F.Decor(O.empty)))),t.labelsForNextSegmentOnly=new y.Some(new F.Command.Path.Labels(O.empty.append(new F.Command.Path.Label.At(new F.Pos.Place(new F.Place(1,1,new F.Place.Factor(0),new F.Slide(y.empty))),t.tailTip.getObject(e),y.empty)))),t.labelsForLastSegmentOnly=new y.Some(new F.Command.Path.Labels(O.empty.append(new F.Command.Path.Label.At(new F.Pos.Place(new F.Place(1,1,new F.Place.Factor(1),new F.Slide(y.empty))),t.headTip.getObject(e),y.empty)))),this.path.toShape(e),t.c=o,t.p=a,t.origin=n,t.xBase=r,t.yBase=i}}),$(F.Command.Ar.Form.BuildArrow,{toShape:function(e){var t=e.env;t.arrowVariant=this.variant,t.tailTip=this.tailTip,t.stemConn=this.stemConn,t.headTip=this.headTip}}),$(F.Command.Ar.Form.ChangeVariant,{toShape:function(e){e.env.arrowVariant=this.variant}}),$(F.Command.Ar.Form.ChangeStem,{toShape:function(e){e.env.stemConn=new F.Command.Ar.Form.Conn.Connchars(this.connchar)}}),$(F.Command.Ar.Form.DashArrowStem,{toShape:function(e){}}),$(F.Command.Ar.Form.CurveArrow,{toShape:function(e){var t=e.env,n=A.measure.em2length(2*A.measure.length2em(this.dist));t.pathActionForBeforeSegment=new y.Some(new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.ConnectObject(new F.Object(t.arrowObjectModifiers,new F.ObjectBox.Curve(O.empty,O.empty.append(new F.ObjectBox.Curve.Object.Connect(t.stemConn.getObject(e))),O.empty.append(new F.ObjectBox.Curve.PosList.Pos(new F.Pos.Coord(new F.Coord.Group(new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.ConnectObject(new F.Object(O.empty,new F.ObjectBox.Dir(``,``)))).append(new F.Pos.Place(new F.Place(0,0,void 0,new F.Slide(y.empty)))).append(new F.Pos.Plus(new F.Coord.Vector(new F.Vector.Dir(this.direction,n))))),new F.Decor(O.empty))),O.empty)))))))),new F.Decor(O.empty)))}}),$(F.Command.Ar.Form.CurveFitToDirection,{toShape:function(e){var t=e.env;t.pathActionForBeforeSegment=new y.Some(new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.ConnectObject(new F.Object(t.arrowObjectModifiers,new F.ObjectBox.Curve(O.empty,O.empty.append(new F.ObjectBox.Curve.Object.Connect(t.stemConn.getObject(e))),O.empty.append(new F.ObjectBox.Curve.PosList.Pos(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.SwapPAndC(new F.Coord.C)).append(new F.Pos.Plus(new F.Coord.Vector(new F.Vector.Dir(this.outDirection,`3pc`))))))).append(new F.ObjectBox.Curve.PosList.Pos(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.SwapPAndC(new F.Coord.C)).append(new F.Pos.Plus(new F.Coord.Vector(new F.Vector.Dir(this.inDirection,`3pc`)))))))))))),new F.Decor(O.empty)))}}),$(F.Command.Ar.Form.CurveWithControlPoints,{toShape:function(e){var t=e.env,n=t.duplicate();n.startCapturePositions();var r=new St(Y.none,n);this.coord.position(r);var i=n.endCapturePositions();i=i.append(n.c);var a=O.empty;i.reverse().foreach((function(e){var n=t.inverseAbsVector(e.x,e.y);a=a.prepend(new F.ObjectBox.Curve.PosList.Pos(new F.Pos.Coord(new F.Coord.Vector(new F.Vector.InCurBase(n.x,n.y)),O.empty)))})),t.pathActionForBeforeSegment=new y.Some(new F.PosDecor(new F.Pos.Coord(new F.Coord.C,O.empty.append(new F.Pos.ConnectObject(new F.Object(t.arrowObjectModifiers,new F.ObjectBox.Curve(O.empty,O.empty.append(new F.ObjectBox.Curve.Object.Connect(t.stemConn.getObject(e))),a))))),new F.Decor(O.empty)))}}),$(F.Command.Ar.Form.AddShape,{toShape:function(e){e.env.arrowObjectModifiers=O.empty.append(this.shape)}}),$(F.Command.Ar.Form.AddModifiers,{toShape:function(e){e.env.arrowObjectModifiers=this.modifiers}}),$(F.Command.Ar.Form.Slide,{toShape:function(e){e.env.segmentSlideEm=new y.Some(A.measure.length2em(this.slideDimen))}}),$(F.Command.Ar.Form.LabelAt,{toShape:function(e){e.env.labelsForEverySegment=new y.Some(new F.Command.Path.Labels(O.empty.append(new F.Command.Path.Label.At(new F.Pos.Place(this.anchor),this.it,y.empty))))}}),$(F.Command.Ar.Form.LabelAbove,{toShape:function(e){var t,n=e.env;t=n.reverseAboveAndBelow?new F.Command.Path.Label.Below(new F.Pos.Place(this.anchor),this.it,y.empty):new F.Command.Path.Label.Above(new F.Pos.Place(this.anchor),this.it,y.empty),n.labelsForEverySegment=new y.Some(new F.Command.Path.Labels(O.empty.append(t)))}}),$(F.Command.Ar.Form.LabelBelow,{toShape:function(e){var t,n=e.env;t=n.reverseAboveAndBelow?new F.Command.Path.Label.Above(new F.Pos.Place(this.anchor),this.it,y.empty):new F.Command.Path.Label.Below(new F.Pos.Place(this.anchor),this.it,y.empty),n.labelsForEverySegment=new y.Some(new F.Command.Path.Labels(O.empty.append(t)))}}),$(F.Command.Ar.Form.ReverseAboveAndBelow,{toShape:function(e){e.env.reverseAboveAndBelow=!0}}),$(F.Command.Ar.Form.Conn.Connchars,{getObject:function(e){var t=e.env,n=new F.ObjectBox.Dir(t.arrowVariant,this.connchars);return new F.Object(t.arrowObjectModifiers,n)}}),$(F.Command.Ar.Form.Conn.Object,{getObject:function(e){var t=e.env.arrowObjectModifiers.concat(this.object.modifiers);return new F.Object(t,this.object.object)}}),$(F.Command.Ar.Form.Conn.Dir,{getObject:function(e){var t=e.env,n=this.dir,r=n;return n.variant===``&&t.arrowVariant!==``&&(r=new F.ObjectBox.Dir(t.arrowVariant,n.main)),new F.Object(t.arrowObjectModifiers,r)}}),$(F.Command.Ar.Form.Tip.Tipchars,{getObject:function(e){var t=e.env,n=new F.ObjectBox.Dir(t.arrowVariant,this.tipchars);return new F.Object(t.arrowObjectModifiers,n)}}),$(F.Command.Ar.Form.Tip.Object,{getObject:function(e){var t=e.env.arrowObjectModifiers.concat(this.object.modifiers);return new F.Object(t,this.object.object)}}),$(F.Command.Ar.Form.Tip.Dir,{getObject:function(e){var t=e.env,n=this.dir,r=n;return n.variant===``&&t.arrowVariant!==``&&(r=new F.ObjectBox.Dir(t.arrowVariant,n.main)),new F.Object(t.arrowObjectModifiers,r)}}),$(F.Command.Path,{toShape:function(e){var t=e.env,n=t.origin,r=t.xBase,i=t.yBase,a=t.p,o=t.c;t.pathActionForBeforeSegment=y.empty,t.pathActionForAfterSegment=y.empty,t.labelsForNextSegmentOnly=y.empty,t.labelsForLastSegmentOnly=y.empty,t.labelsForEverySegment=y.empty,t.segmentSlideEm=y.empty,t.lastTurnDiag=y.empty,this.path.toShape(e),t.c=o,t.p=a,t.origin=n,t.xBase=r,t.yBase=i}}),$(F.Command.AfterPath,{toShape:function(e){this.path.toShape(e),this.decor.toShape(e)}}),$(F.Command.Path.Path,{toShape:function(e){this.pathElements.foreach((function(t){t.toShape(e)}))}}),$(F.Command.Path.SetBeforeAction,{toShape:function(e){e.env.pathActionForBeforeSegment=new y.Some(this.posDecor)}}),$(F.Command.Path.SetAfterAction,{toShape:function(e){e.env.pathActionForAfterSegment=new y.Some(this.posDecor)}}),$(F.Command.Path.AddLabelNextSegmentOnly,{toShape:function(e){e.env.labelsForNextSegmentOnly=new y.Some(this.labels)}}),$(F.Command.Path.AddLabelLastSegmentOnly,{toShape:function(e){e.env.labelsForLastSegmentOnly=new y.Some(this.labels)}}),$(F.Command.Path.AddLabelEverySegment,{toShape:function(e){e.env.labelsForEverySegment=new y.Some(this.labels)}}),$(F.Command.Path.StraightSegment,{toShape:function(e){var t=e.env;this.segment.setupPositions(e);var n=t.c;t.pathActionForBeforeSegment.foreach((function(t){t.toShape(e)})),t.labelsForNextSegmentOnly.foreach((function(n){n.toShape(e),t.labelsForNextSegmentOnly=y.empty})),t.labelsForEverySegment.foreach((function(t){t.toShape(e)})),t.c=n,t.pathActionForAfterSegment.foreach((function(t){t.toShape(e)})),this.segment.toLabelsShape(e)}}),$(F.Command.Path.LastSegment,{toShape:function(e){var t=e.env;this.segment.setupPositions(e);var n=t.c;t.pathActionForBeforeSegment.foreach((function(t){t.toShape(e)})),t.labelsForNextSegmentOnly.foreach((function(n){n.toShape(e),t.labelsForNextSegmentOnly=y.empty})),t.labelsForLastSegmentOnly.foreach((function(n){n.toShape(e),t.labelsForNextSegmentOnly=y.empty})),t.labelsForEverySegment.foreach((function(t){t.toShape(e)})),t.c=n,t.pathActionForAfterSegment.foreach((function(t){t.toShape(e)})),this.segment.toLabelsShape(e)}}),$(F.Command.Path.TurningSegment,{toShape:function(e){var t=e.env,n=t.c;this.segment.pos.toShape(e),t.p=n;var r=this.turn.explicitizedCircle(e),i=this.turn.radius.radius(e);t.lastTurnDiag=new y.Some(r.endDiag);var a=r.startVector(e),o=r.endVector(e),s=t.segmentSlideEm.getOrElse(0);this.segment.slide.dimen.foreach((function(e){s=A.measure.length2em(e),t.segmentSlideEm=new y.Some(s)})),s!==0&&(t.p=t.p.move(t.p.x-s*a.y,t.p.y+s*a.x),t.c=t.c.move(t.c.x-s*o.y,t.c.y+s*o.x),i=r.orient===`^`?Math.max(0,i-s):Math.max(0,i+s));var c,u=t.p.edgePoint(t.p.x+a.x,t.p.y+a.y),d=t.c,f=r.relativeStartPoint(e,i),p=r.relativeEndPoint(e,i),m=r.relativeEndPoint(e,i+(r.orient===`^`?s:-s)),h=a.x*o.y-a.y*o.x;if(Math.abs(h)<l.machinePrecision)c=0;else{var g=d.x-u.x+f.x-p.x,_=d.y-u.y+f.y-p.y;(c=(o.y*g-o.x*_)/h)<0&&(c=0)}var v=u.x-f.x+c*a.x,b=u.y-f.y+c*a.y,x=(r.toDropShape(e,v,b,i),new U.Point(v+m.x,b+m.y));t.c=new U.Point(v+f.x,b+f.y),t.pathActionForBeforeSegment.foreach((function(t){t.toShape(e)})),t.labelsForNextSegmentOnly.foreach((function(n){n.toShape(e),t.labelsForNextSegmentOnly=y.empty})),t.labelsForEverySegment.foreach((function(t){t.toShape(e)})),t.c=x,t.pathActionForAfterSegment.foreach((function(t){t.toShape(e)})),this.segment.toLabelsShape(e)}}),$(F.Command.Path.Turn.Cir,{explicitizedCircle:function(e){var t,n,r,i=e.env;return t=this.cir.startDiag.isEmpty?i.lastTurnDiag.getOrElse(new F.Diag.R):this.cir.startDiag,n=this.cir.orient,r=this.cir.endDiag.isEmpty?t.turn(n):this.cir.endDiag,new F.ObjectBox.Cir.Cir.Segment(t,n,r)}}),$(F.ObjectBox.Cir.Cir.Segment,{startVector:function(e){var t=this.startDiag.angle(e);return{x:Math.cos(t),y:Math.sin(t)}},endVector:function(e){var t=this.endDiag.angle(e);return{x:Math.cos(t),y:Math.sin(t)}},relativeStartPointAngle:function(e){return this.startPointDegree(e)/180*Math.PI},relativeStartPoint:function(e,t){var n=this.startPointDegree(e)/180*Math.PI;return{x:t*Math.cos(n),y:t*Math.sin(n)}},relativeEndPoint:function(e,t){var n;return n=this.endPointDegree(e,this.relativeStartPointAngle(e))/180*Math.PI,{x:t*Math.cos(n),y:t*Math.sin(n)}}}),$(F.Command.Path.Turn.Diag,{explicitizedCircle:function(e){var t,n,r,i=e.env,a=(t=this.diag.isEmpty?i.lastTurnDiag.getOrElse(new F.Diag.R):this.diag).angle(e);return n=(i.c.x-i.p.x)*Math.sin(a)-(i.c.y-i.p.y)*Math.cos(a)<0?`^`:`_`,r=t.turn(n),new F.ObjectBox.Cir.Cir.Segment(t,n,r)}}),$(F.Command.Path.TurnRadius.Default,{radius:function(e){return A.measure.turnradius}}),$(F.Command.Path.TurnRadius.Dimen,{radius:function(e){return A.measure.length2em(this.dimen)}}),$(F.Command.Path.Segment,{setupPositions:function(e){var t=e.env;t.p=t.c,this.pos.toShape(e);var n=t.p,r=t.c,i=r.x-n.x,a=r.y-n.y,o=Math.atan2(a,i)+Math.PI/2,s=t.segmentSlideEm.getOrElse(0);this.slide.dimen.foreach((function(e){s=A.measure.length2em(e),t.segmentSlideEm=new y.Some(s)})),s!==0&&(n=n.move(n.x+s*Math.cos(o),n.y+s*Math.sin(o)),r=r.move(r.x+s*Math.cos(o),r.y+s*Math.sin(o))),t.p=n,t.c=r},toLabelsShape:function(e){var t=e.env,n=t.c,r=t.p;this.labels.toShape(e),t.c=n,t.p=r}}),$(F.Command.Path.Labels,{toShape:function(e){this.labels.foreach((function(t){t.toShape(e)}))}}),$(F.Command.Path.Label,{toShape:function(e){var t=e.env,n=t.p,r=t.c,i=this.anchor.toShape(e),a=this.getLabelMargin(e);if(a!==0){var o=(b=t.lastCurve).isNone?Math.atan2(r.y-n.y,r.x-n.x)+Math.PI/2:b.angle(i)+Math.PI/2+(a>0?0:Math.PI);r=t.c;var s=new St(Y.none,t);this.it.toDropShape(s);var c=s.shape,l=c.getBoundingBox();if(l!==void 0){var u=l.x-r.x,d=l.y-r.y,f=l.l,p=l.r,m=l.u,h=l.d,g=Math.cos(o),_=Math.sin(o),v=Math.min((u-f)*g+(d-h)*_,(u-f)*g+(d+m)*_,(u+p)*g+(d-h)*_,(u+p)*g+(d+m)*_),y=Math.abs(a)-v;t.c=t.c.move(r.x+y*g,r.y+y*_),e.appendShapeToFront(new Y.TranslateShape(y*g,y*_,c))}}else this.it.toDropShape(e);var b=t.lastCurve;this.shouldSliceHole&&b.isDefined&&i!==void 0&&b.sliceHole(t.c,i),this.aliasOption.foreach((function(e){t.savePos(e,new It.Position(t.c))}))}}),$(F.Command.Path.Label.Above,{getLabelMargin:function(e){return e.env.labelmargin},shouldSliceHole:!1}),$(F.Command.Path.Label.Below,{getLabelMargin:function(e){return-e.env.labelmargin},shouldSliceHole:!1}),$(F.Command.Path.Label.At,{getLabelMargin:function(e){return 0},shouldSliceHole:!0}),$(F.Command.Xymatrix,{toShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=t.duplicate(),r=new St(Y.none,n);n.xymatrixPrefix=``,n.xymatrixRowSepEm=A.measure.length2em(`2pc`),n.xymatrixColSepEm=A.measure.length2em(`2pc`),n.xymatrixPretendEntryHeight=y.empty,n.xymatrixPretendEntryWidth=y.empty,n.xymatrixFixedRow=!1,n.xymatrixFixedCol=!1,n.xymatrixOrientationAngle=0,n.xymatrixEntryModifiers=O.empty,this.setup.foreach((function(e){e.toShape(r)}));var i,a,o=n.xymatrixOrientationAngle,s=0,c=0,l=new Bt(this.rows.map((function(e){c+=1,a=0;var t=new Bt.Row(e.entries.map((function(e){a+=1;var t=n.duplicate();t.origin={x:0,y:0},t.p=t.c=Mt.originPosition,t.angle=0,t.lastCurve=Q.none,t.xymatrixRow=c,t.xymatrixCol=a;var r,i,o,s,l=new St(Y.none,t),u=e.toShape(l),d=t.c;if(n.xymatrixPretendEntryHeight.isDefined){var f=n.xymatrixPretendEntryHeight.get;o=f/2,s=f/2}else o=d.u,s=d.d;if(n.xymatrixPretendEntryWidth.isDefined){var p=n.xymatrixPretendEntryWidth.get;r=p/2,i=p/2}else r=d.l,i=d.r;var m=new U.Rect(0,0,{l:r,r:i,u:o,d:s});return new Bt.Entry(t.c,u,e.decor,m)})),o);return s=Math.max(s,a),t})),o);if((i=c)===0)return Y.none;l.rows.foreach((function(e){a=0,e.entries.foreach((function(e){a+=1,l.getColumn(a).addEntry(e)}))}));var u,d,f=n.xymatrixColSepEm,p=[],m=t.c.x;if(p.push(m),n.xymatrixFixedCol){var h=0,g=0;l.columns.foreach((function(e){h=Math.max(h,e.getL()),g=Math.max(g,e.getR())})),l.columns.tail.foreach((function(e){m=m+g+f+h,p.push(m)})),u=h,d=p[p.length-1]+g}else{var _=l.columns.head;l.columns.tail.foreach((function(e){m=m+_.getR()+f+e.getL(),p.push(m),_=e})),u=l.columns.head.getL(),d=m+l.columns.at(s-1).getR()-p[0]}var v,b,x=n.xymatrixRowSepEm,S=[],C=t.c.y;if(S.push(C),n.xymatrixFixedRow){var w=0,T=0;l.rows.foreach((function(e){w=Math.max(w,e.getU()),T=Math.max(T,e.getD())})),l.rows.tail.foreach((function(e){C-=T+x+w,S.push(C)})),v=w,b=S[0]-S[S.length-1]+T}else{var E=l.rows.head;l.rows.tail.foreach((function(e){C-=E.getD()+x+e.getU(),S.push(C),E=e})),v=l.rows.head.getU(),b=S[0]-C+l.rows.at(i-1).getD()}t.c=new U.Rect(t.c.x,t.c.y,{l:u,r:d,u:v,d:b});var D=n.xymatrixPrefix,ee=Math.cos(o),te=Math.sin(o),ne=0;l.rows.foreach((function(e){var t=0;e.entries.foreach((function(e){var r=p[t],i=S[ne],a=r*ee-i*te,o=r*te+i*ee,s=t+1,c=ne+1,l=new It.Position(e.c.move(a,o));n.savePos(c+`,`+s,l),n.savePos(D+c+`,`+s,l),t+=1})),ne+=1})),r=new St(Y.none,n),ne=0,l.rows.foreach((function(e){var t=0;e.entries.foreach((function(e){var i=p[t],a=S[ne],o=i*ee-a*te,s=i*te+a*ee,c=t+1,l=ne+1,u=new Y.TranslateShape(o,s,e.objectShape);r.appendShapeToFront(u),n.c=e.c.move(o,s),n.xymatrixRow=l,n.xymatrixCol=c,e.decor.toShape(r),t+=1})),ne+=1}));var re=r.shape;return e.appendShapeToFront(re),t.savedPosition=n.savedPosition,re}});var Bt=function(){function e(t,n){Lt(this,e),this.rows=t,this.columns=O.empty,this.orientation=n}return zt(e,[{key:`getColumn`,value:function(t){if(this.columns.length()>=t)return this.columns.at(t-1);var n=new e.Column(this.orientation);return this.columns=this.columns.append(n),n}},{key:`toString`,value:function(){return`Xymatrix{\n`+this.rows.mkString(`\\\\\\\\\n`)+`\n}`}}]),e}();function Vt(e,t,n){var r=[],i=[],a={lastNoSuccess:void 0,whiteSpaceRegex:l.whiteSpaceRegex,createTextNode:function(t){var n=new o.Z(t,e.stack.env,e.configuration).mml(),a=A.textObjectIdCounter;return A.textObjectIdCounter++,r.push(n),i.push(a),n}},s=new Se(e.string,e.i,a),u=k.parse(t,s);if(e.i=u.next.offset,u.successful){var d=``+A.xypicCommandIdCounter;A.xypicCommandIdCounter++,A.xypicCommandMap[d]=u.get();var f=JSON.stringify(i);return e.create(n,{\"data-cmd-id\":d,\"data-text-mml-ids\":f},r)}var p=a.lastNoSuccess.next.pos().lineContents();throw c(`SyntaxError`,a.lastNoSuccess.msg+`. Parse error at or near \"`+p+`\".`)}Bt.Row=function(){function e(t,n){Lt(this,e),this.entries=t,this.orientation=n,H(this,`getU`),H(this,`getD`)}return zt(e,[{key:`getU`,value:function(){var e=this.orientation,t=0;return this.entries.foreach((function(n){t=Math.max(t,n.getU(e))})),t}},{key:`getD`,value:function(){var e=this.orientation,t=0;return this.entries.foreach((function(n){t=Math.max(t,n.getD(e))})),t}},{key:`toString`,value:function(){return this.entries.mkString(` & `)}}]),e}(),Bt.Column=function(){function e(t){Lt(this,e),this.entries=O.empty,this.orientation=t,H(this,`getL`),H(this,`getR`)}return zt(e,[{key:`addEntry`,value:function(e){this.entries=this.entries.append(e),this.getL.reset,this.getR.reset}},{key:`getL`,value:function(){var e=this.orientation,t=0;return this.entries.foreach((function(n){t=Math.max(t,n.getL(e))})),t}},{key:`getR`,value:function(){var e=this.orientation,t=0;return this.entries.foreach((function(n){t=Math.max(t,n.getR(e))})),t}},{key:`toString`,value:function(){return this.entries.mkString(` \\\\\\\\ `)}}]),e}(),Bt.Entry=function(){function e(t,n,r,i){Lt(this,e),this.c=t,this.objectShape=n,this.decor=r,this.frame=i}return zt(e,[{key:`getDistanceToEdgePoint`,value:function(e,t){var n=e.edgePoint(e.x+Math.cos(t),e.y+Math.sin(t)),r=n.x-e.x,i=n.y-e.y;return Math.sqrt(r*r+i*i)}},{key:`getU`,value:function(e){return e===0?this.frame.u:this.getDistanceToEdgePoint(this.frame,e+Math.PI/2)}},{key:`getD`,value:function(e){return e===0?this.frame.d:this.getDistanceToEdgePoint(this.frame,e-Math.PI/2)}},{key:`getL`,value:function(e){return e===0?this.frame.l:this.getDistanceToEdgePoint(this.frame,e+Math.PI)}},{key:`getR`,value:function(e){return e===0?this.frame.r:this.getDistanceToEdgePoint(this.frame,e)}},{key:`toString`,value:function(){return this.objectShape.toString()+` `+this.decor}}]),e}(),$(F.Command.Xymatrix.Setup.Prefix,{toShape:function(e){e.env.xymatrixPrefix=this.prefix}}),$(F.Command.Xymatrix.Setup.ChangeSpacing.Row,{toShape:function(e){var t=e.env;t.xymatrixRowSepEm=this.addop.applyToDimen(t.xymatrixRowSepEm,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.ChangeSpacing.Column,{toShape:function(e){var t=e.env;t.xymatrixColSepEm=this.addop.applyToDimen(t.xymatrixColSepEm,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.ChangeSpacing.RowAndColumn,{toShape:function(e){var t=e.env,n=this.addop.applyToDimen(t.xymatrixRowSepEm,A.measure.length2em(this.dimen));t.xymatrixRowSepEm=n,t.xymatrixColSepEm=n}}),$(F.Command.Xymatrix.Setup.PretendEntrySize.Height,{toShape:function(e){e.env.xymatrixPretendEntryHeight=new y.Some(A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.PretendEntrySize.Width,{toShape:function(e){e.env.xymatrixPretendEntryWidth=new y.Some(A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.PretendEntrySize.HeightAndWidth,{toShape:function(e){var t=new y.Some(A.measure.length2em(this.dimen));e.env.xymatrixPretendEntryHeight=t,e.env.xymatrixPretendEntryWidth=t}}),$(F.Command.Xymatrix.Setup.FixGrid.Row,{toShape:function(e){e.env.xymatrixFixedRow=!0}}),$(F.Command.Xymatrix.Setup.FixGrid.Column,{toShape:function(e){e.env.xymatrixFixedCol=!0}}),$(F.Command.Xymatrix.Setup.FixGrid.RowAndColumn,{toShape:function(e){e.env.xymatrixFixedRow=!0,e.env.xymatrixFixedCol=!0}}),$(F.Command.Xymatrix.Setup.AdjustEntrySize.Margin,{toShape:function(e){var t=e.env;t.objectmargin=this.addop.applyToDimen(t.objectmargin,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.AdjustEntrySize.Width,{toShape:function(e){var t=e.env;t.objectwidth=this.addop.applyToDimen(t.objectwidth,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.AdjustEntrySize.Height,{toShape:function(e){var t=e.env;t.objectheight=this.addop.applyToDimen(t.objectheight,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.AdjustLabelSep,{toShape:function(e){var t=e.env;t.labelmargin=this.addop.applyToDimen(t.labelmargin,A.measure.length2em(this.dimen))}}),$(F.Command.Xymatrix.Setup.SetOrientation,{toShape:function(e){e.env.xymatrixOrientationAngle=this.direction.angle(e)}}),$(F.Command.Xymatrix.Setup.AddModifier,{toShape:function(e){var t=e.env;t.xymatrixEntryModifiers=t.xymatrixEntryModifiers.prepend(this.modifier)}}),$(F.Command.Xymatrix.Entry.SimpleEntry,{toShape:function(e){var t=e.env,n=A.measure.em2length(t.objectmargin+t.objectwidth),r=A.measure.em2length(t.objectmargin+t.objectheight),i=new F.Modifier.AddOp(new F.Modifier.AddOp.GrowTo,new F.Modifier.AddOp.VactorSize(new F.Vector.Abs(n,r))),a=A.measure.em2length(t.objectmargin),o=new F.Modifier.AddOp(new F.Modifier.AddOp.Grow,new F.Modifier.AddOp.VactorSize(new F.Vector.Abs(a,a))),s=this.modifiers.concat(t.xymatrixEntryModifiers).prepend(i).prepend(o);return new F.Object(s,this.objectbox).toDropShape(e)}}),$(F.Command.Xymatrix.Entry.EmptyEntry,{toShape:function(e){var t=e.env,n=A.measure.em2length(t.objectmargin+t.objectwidth),r=A.measure.em2length(t.objectmargin+t.objectheight),i=new F.Modifier.AddOp(new F.Modifier.AddOp.GrowTo,new F.Modifier.AddOp.VactorSize(new F.Vector.Abs(n,r))),a=A.measure.em2length(t.objectmargin),o=new F.Modifier.AddOp(new F.Modifier.AddOp.Grow,new F.Modifier.AddOp.VactorSize(new F.Vector.Abs(a,a))),s=t.xymatrixEntryModifiers.prepend(i).prepend(o);return new F.Object(s,new F.ObjectBox.Empty).toDropShape(e)}}),$(F.Command.Xymatrix.Entry.ObjectEntry,{toShape:function(e){return this.object.toDropShape(e)}}),$(F.Command.Twocell,{toShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=t.duplicate(),r=new St(Y.none,n);n.twocellmodmapobject=t.twocellmodmapobject||new F.Object(O.empty,new F.ObjectBox.Dir(``,`|`)),n.twocellhead=t.twocellhead||new F.Object(O.empty,new F.ObjectBox.Dir(``,`>`)),n.twocelltail=t.twocelltail||new F.Object(O.empty,new F.ObjectBox.Dir(``,``)),n.twocellarrowobject=t.twocellarrowobject||new F.Object(O.empty,new F.ObjectBox.Dir(``,`=>`)),n.twocellUpperCurveObjectSpacer=t.twocellUpperCurveObjectSpacer,n.twocellUpperCurveObject=t.twocellUpperCurveObject,n.twocellLowerCurveObjectSpacer=t.twocellLowerCurveObjectSpacer,n.twocellLowerCurveObject=t.twocellLowerCurveObject,n.twocellUpperLabel=y.empty,n.twocellLowerLabel=y.empty,n.twocellCurvatureEm=y.empty,n.twocellShouldDrawCurve=!0,n.twocellShouldDrawModMap=!1,this.switches.foreach((function(e){e.setup(r)})),this.twocell.toShape(r,this.arrow),e.appendShapeToFront(r.shape)}}),$(F.Command.Twocell.Hops2cell,{toShape:function(e,t){var n=e.env,r=n.c,i=n.angle,a=n.c,o=this.targetPosition(e);if(a!==void 0&&o!==void 0){var s=o.x-a.x,c=o.y-a.y;if(s!==0||c!==0){var l=new U.Point(a.x+.5*s,a.y+.5*c),u=Math.atan2(c,s),d=u+Math.PI/2,f=n.twocellCurvatureEm.getOrElse(this.getDefaultCurvature()),p=Math.cos(d),m=Math.sin(d),h=this.getUpperControlPoint(a,o,l,f,p,m),g=this.getLowerControlPoint(a,o,l,f,p,m);if(n.twocellShouldDrawCurve){var _,v;if(v=(_=n.twocellUpperCurveObjectSpacer)===void 0?new F.Object(O.empty,new F.ObjectBox.Dir(``,`-`)):n.twocellUpperCurveObject===void 0?void 0:n.twocellUpperCurveObject.getOrElse(void 0),this.toUpperCurveShape(e,a,h,o,_,v),n.lastCurve.isDefined){n.angle=u;var y=this.getUpperLabelPosition(a,o,l,f,p,m),b=this.getUpperLabelAngle(d,a,o,l,f,p,m);n.twocellUpperLabel.foreach((function(t){t.toShape(e,y,Math.cos(b),Math.sin(b),u)})),this.hasUpperTips&&t.toUpperTipsShape(e)}if(v=(_=n.twocellLowerCurveObjectSpacer)===void 0?new F.Object(O.empty,new F.ObjectBox.Dir(``,`-`)):n.twocellLowerCurveObject===void 0?void 0:n.twocellLowerCurveObject.getOrElse(void 0),this.toLowerCurveShape(e,a,g,o,_,v),n.lastCurve.isDefined){n.angle=u;var x=this.getLowerLabelPosition(a,o,l,f,p,m),S=this.getLowerLabelAngle(d,a,o,l,f,p,m);n.twocellLowerLabel.foreach((function(t){t.toShape(e,x,Math.cos(S),Math.sin(S),u)})),this.hasLowerTips&&t.toLowerTipsShape(e)}}n.c=this.getDefaultArrowPoint(a,o,l,f,p,m),n.angle=d+Math.PI;var C=l;t.toArrowShape(e,C),n.c=r,n.angle=i}}},_toCurveShape:function(e,t,n,r,i,a){var o=e.env,s=new X.QuadBezier(t,n,r),c=s.tOfShavedStart(t),l=s.tOfShavedEnd(r);if(c===void 0||l===void 0||c>=l)o.lastCurve=Q.none;else{var u=s.toShape(e,i,a);o.lastCurve=new Q.QuadBezier(s,c,l,u)}},targetPosition:function(e){var t=e.env,n=t.xymatrixRow,r=t.xymatrixCol;if(n===void 0||r===void 0)throw c(`ExecutionError`,`rows and columns not found for hops [`+this.hops+`]`);for(var i=0;i<this.hops.length;i++)switch(this.hops[i]){case`u`:--n;break;case`d`:n+=1;break;case`l`:--r;break;case`r`:r+=1}var a=n+`,`+r;return e.env.lookupPos(a,`in entry \"`+t.xymatrixRow+`,`+t.xymatrixCol+`\": No `+this+` (is `+a+`) from here.`).position(e)}}),$(F.Command.Twocell.Twocell,{getUpperControlPoint:function(e,t,n,r,i,a){return new U.Point(n.x+r*i,n.y+r*a)},getLowerControlPoint:function(e,t,n,r,i,a){return new U.Point(n.x-r*i,n.y-r*a)},getUpperLabelPosition:function(e,t,n,r,i,a){return new U.Point(n.x+.5*r*i,n.y+.5*r*a)},getLowerLabelPosition:function(e,t,n,r,i,a){return new U.Point(n.x-.5*r*i,n.y-.5*r*a)},getUpperLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?Math.PI:0)},getLowerLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?0:Math.PI)},getDefaultArrowPoint:function(e,t,n,r,i,a){return n},toUpperCurveShape:function(e,t,n,r,i,a){this._toCurveShape(e,t,n,r,i,a)},toLowerCurveShape:function(e,t,n,r,i,a){this._toCurveShape(e,t,n,r,i,a)},getDefaultCurvature:function(){return 3.5*A.measure.lineElementLength},hasUpperTips:!0,hasLowerTips:!0}),$(F.Command.Twocell.UpperTwocell,{getUpperControlPoint:function(e,t,n,r,i,a){return new U.Point(n.x+r*i,n.y+r*a)},getLowerControlPoint:function(e,t,n,r,i,a){return n},getUpperLabelPosition:function(e,t,n,r,i,a){return new U.Point(n.x+.5*r*i,n.y+.5*r*a)},getLowerLabelPosition:function(e,t,n,r,i,a){return n},getUpperLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?Math.PI:0)},getLowerLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?0:Math.PI)},getDefaultArrowPoint:function(e,t,n,r,i,a){return new U.Point(n.x+.25*r*i,n.y+.25*r*a)},toUpperCurveShape:function(e,t,n,r,i,a){this._toCurveShape(e,t,n,r,i,a)},toLowerCurveShape:function(e,t,n,r,i,a){var o=t.edgePoint(r.x,r.y),s=r.edgePoint(t.x,t.y);o.x!==s.x||o.y!==s.y?e.env.lastCurve=new Q.Line(o,s,t,r,void 0):e.env.lastCurve=Q.none},getDefaultCurvature:function(){return 7*A.measure.lineElementLength},hasUpperTips:!0,hasLowerTips:!1}),$(F.Command.Twocell.LowerTwocell,{getUpperControlPoint:function(e,t,n,r,i,a){return n},getLowerControlPoint:function(e,t,n,r,i,a){return new U.Point(n.x+r*i,n.y+r*a)},getUpperLabelPosition:function(e,t,n,r,i,a){return n},getLowerLabelPosition:function(e,t,n,r,i,a){return new U.Point(n.x+.5*r*i,n.y+.5*r*a)},getUpperLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?0:Math.PI)},getLowerLabelAngle:function(e,t,n,r,i,a,o){return e+(i<0?Math.PI:0)},getDefaultArrowPoint:function(e,t,n,r,i,a){return new U.Point(n.x+.25*r*i,n.y+.25*r*a)},toUpperCurveShape:function(e,t,n,r,i,a){var o=t.edgePoint(r.x,r.y),s=r.edgePoint(t.x,t.y);o.x!==s.x||o.y!==s.y?e.env.lastCurve=new Q.Line(o,s,t,r,void 0):e.env.lastCurve=Q.none},toLowerCurveShape:function(e,t,n,r,i,a){this._toCurveShape(e,t,n,r,i,a)},getDefaultCurvature:function(){return-7*A.measure.lineElementLength},hasUpperTips:!1,hasLowerTips:!0}),$(F.Command.Twocell.CompositeMap,{getUpperControlPoint:function(e,t,n,r,i,a){var o=this.getMidBoxSize();return new U.Ellipse(n.x+r*i,n.y+r*a,o,o,o,o)},getLowerControlPoint:function(e,t,n,r,i,a){var o=this.getMidBoxSize();return new U.Ellipse(n.x+r*i,n.y+r*a,o,o,o,o)},getUpperLabelPosition:function(e,t,n,r,i,a){var o=n.x+r*i-t.x,s=n.y+r*a-t.y;return Math.sqrt(o*o+s*s),new U.Point(t.x+.5*o,t.y+.5*s)},getLowerLabelPosition:function(e,t,n,r,i,a){var o=n.x+r*i-e.x,s=n.y+r*a-e.y;return Math.sqrt(o*o+s*s),new U.Point(e.x+.5*o,e.y+.5*s)},getUpperLabelAngle:function(e,t,n,r,i,a,o){var s=n.x-r.x+i*a,c=n.y-r.y+i*o,l=Math.atan2(c,s),u=i<0?Math.PI:0;return l+Math.PI/2+u},getLowerLabelAngle:function(e,t,n,r,i,a,o){var s=r.x+i*a-t.x,c=r.y+i*o-t.y,l=Math.atan2(c,s),u=i<0?Math.PI:0;return l+Math.PI/2+u},getDefaultArrowPoint:function(e,t,n,r,i,a){return n},toUpperCurveShape:function(e,t,n,r,i,a){var o=e.env,s=t,c=n,l=s.edgePoint(c.x,c.y),u=c.edgePoint(s.x,s.y),d=o.p,f=o.c;o.p=s,o.c=c,new X.Line(l,u).toShape(e,void 0,`-`,``),o.p=d,o.c=f},toLowerCurveShape:function(e,t,n,r,i,a){var o=e.env,s=n,c=r,l=s.edgePoint(c.x,c.y),u=c.edgePoint(s.x,s.y),d=o.p,f=o.c;o.p=s,o.c=c,new X.Line(l,u).toShape(e,void 0,`-`,``),o.p=d,o.c=f},getMidBoxSize:function(){return .5*A.measure.lineElementLength},getDefaultCurvature:function(){return 3.5*A.measure.lineElementLength},hasUpperTips:!0,hasLowerTips:!0}),$(F.Command.Twocell.Switch.UpperLabel,{setup:function(e){e.env.twocellUpperLabel=new y.Some(this)},toShape:function(e,t,n,r,i){this.label.toShape(e,t,n,r,i)}}),$(F.Command.Twocell.Switch.LowerLabel,{setup:function(e){e.env.twocellLowerLabel=new y.Some(this)},toShape:function(e,t,n,r,i){this.label.toShape(e,t,n,r,i)}}),$(F.Command.Twocell.Switch.SetCurvature,{setup:function(e){var t=e.env;this.nudge.isOmit?t.twocellShouldDrawCurve=!1:t.twocellCurvatureEm=new y.Some(this.nudge.number*A.measure.lineElementLength)}}),$(F.Command.Twocell.Switch.DoNotSetCurvedArrows,{setup:function(e){e.env.twocellShouldDrawCurve=!1}}),$(F.Command.Twocell.Switch.PlaceModMapObject,{setup:function(e){e.env.twocellShouldDrawModMap=!0}}),$(F.Command.Twocell.Switch.ChangeHeadTailObject,{setup:function(e){var t=e.env;switch(this.what){case\"`\":t.twocelltail=this.object;break;case`'`:t.twocellhead=this.object}}}),$(F.Command.Twocell.Switch.ChangeCurveObject,{setup:function(e){var t=e.env;switch(this.what){case``:t.twocellUpperCurveObjectSpacer=this.spacer,t.twocellUpperCurveObject=this.maybeObject,t.twocellLowerCurveObjectSpacer=this.spacer,t.twocellLowerCurveObject=this.maybeObject;break;case`^`:t.twocellUpperCurveObjectSpacer=this.spacer,t.twocellUpperCurveObject=this.maybeObject;break;case`_`:t.twocellLowerCurveObjectSpacer=this.spacer,t.twocellLowerCurveObject=this.maybeObject}}}),$(F.Command.Twocell.Label,{toShape:function(e,t,n,r,i){var a,o=this.maybeNudge;if(o.isDefined){var s=o.get;if(s.isOmit)return;a=s.number*A.measure.lineElementLength}else a=this.getDefaultLabelOffset();var c=e.env,l=c.c;c.c=new U.Point(t.x+a*n,t.y+a*r),this.labelObject.toDropShape(e),c.c=l},getDefaultLabelOffset:function(){return A.measure.lineElementLength}}),$(F.Command.Twocell.Nudge.Number,{isOmit:!1}),$(F.Command.Twocell.Nudge.Omit,{isOmit:!0}),$(F.Command.Twocell.Arrow,{toTipsShape:function(e,t,n){var r=e.env,i=r.lastCurve,a=r.c,o=r.angle,s=t?Math.PI:0,c=i.tOfPlace(!0,!0,t?0:1,0);r.c=i.position(c),r.angle=i.angle(c)+s,r.twocellhead.toDropShape(e),c=i.tOfPlace(!0,!0,t?1:0,0),r.c=i.position(c),r.angle=i.angle(c)+s,n?r.twocellhead.toDropShape(e):r.twocelltail.toDropShape(e),r.twocellShouldDrawModMap&&(c=i.tOfPlace(!1,!1,.5,0),r.c=i.position(c),r.angle=i.angle(c)+s,r.twocellmodmapobject.toDropShape(e)),r.c=a,r.angle=o}}),$(F.Command.Twocell.Arrow.WithOrientation,{toUpperTipsShape:function(e){switch(this.tok){case``:case`^`:case`_`:case`=`:case`\\\\omit`:case`'`:this.toTipsShape(e,!1,!1);break;case\"`\":this.toTipsShape(e,!0,!1);break;case`\"`:this.toTipsShape(e,!1,!0)}},toLowerTipsShape:function(e){switch(this.tok){case``:case`^`:case`_`:case`=`:case`\\\\omit`:case\"`\":this.toTipsShape(e,!1,!1);break;case`'`:this.toTipsShape(e,!0,!1);break;case`\"`:this.toTipsShape(e,!1,!0)}},toArrowShape:function(e,t){var n=e.env,r=n.c;switch(this.tok){case`^`:var i=n.angle;n.angle=i+Math.PI,n.twocellarrowobject.toDropShape(e),n.c=new U.Point(r.x+A.measure.lineElementLength*Math.cos(i-Math.PI/2),r.y+A.measure.lineElementLength*Math.sin(i-Math.PI/2)),this.labelObject.toDropShape(e),n.angle=i;break;case``:case`_`:i=n.angle,n.twocellarrowobject.toDropShape(e),n.c=new U.Point(r.x+A.measure.lineElementLength*Math.cos(i+Math.PI/2),r.y+A.measure.lineElementLength*Math.sin(i+Math.PI/2)),this.labelObject.toDropShape(e);break;case`=`:i=n.angle;var a=new Y.TwocellEqualityArrowheadShape(n.c,n.angle);e.appendShapeToFront(a),n.c=new U.Point(r.x+A.measure.lineElementLength*Math.cos(i+Math.PI/2),r.y+A.measure.lineElementLength*Math.sin(i+Math.PI/2)),this.labelObject.toDropShape(e);break;default:this.labelObject.toDropShape(e)}n.c=r}}),$(F.Command.Twocell.Arrow.WithPosition,{toUpperTipsShape:function(e){this.toTipsShape(e,!1,!1)},toLowerTipsShape:function(e){this.toTipsShape(e,!1,!1)},toArrowShape:function(e,t){var n,r=e.env,i=r.c,a=r.angle,o=this.nudge;if(o.isOmit)n=i;else{var s=o.number*A.measure.lineElementLength;n=new U.Point(t.x+s*Math.cos(a),t.y+s*Math.sin(a))}r.c=n,r.twocellarrowobject.toDropShape(e),o.isOmit||(r.c=new U.Point(n.x+A.measure.lineElementLength*Math.cos(a+Math.PI/2),n.y+A.measure.lineElementLength*Math.sin(a+Math.PI/2)),this.labelObject.toDropShape(e)),r.c=i}}),$(F.Pos.Xyimport.TeXCommand,{toShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=t.duplicate(),r=new St(Y.none,n),i=this.graphics.toDropShape(r),a=this.width,o=this.height;if(a===0||o===0)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\xyimport should be non-zero.`);var s=n.c,l=s.l+s.r,u=s.u+s.d;if(l===0||u===0)throw c(`ExecutionError`,`the width and height of the graphics to import should be non-zero.`);var d=this.xOffset,f=this.yOffset;t.c=s.toRect({u:u/o*(o-f),d:u/o*f,l:l/a*d,r:l/a*(a-d)}),t.setXBase(l/a,0),t.setYBase(0,u/o);var p=s.l-t.c.l,m=s.d-t.c.d;i=new Y.TranslateShape(p,m,r.shape),e.appendShapeToFront(i)}}),$(F.Pos.Xyimport.Graphics,{toShape:function(e){var t=e.env;if(t.c===void 0)return Y.none;var n=t.duplicate(),r=new St(Y.none,n),i=this.width,a=this.height;if(i===0||a===0)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\xyimport should be non-zero.`);var o=this.graphics;if(o.setup(r),!n.includegraphicsWidth.isDefined||!n.includegraphicsHeight.isDefined)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\includegraphics are required.`);var s=n.includegraphicsWidth.get,l=n.includegraphicsHeight.get;if(s===0||l===0)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\includegraphics should be non-zero.`);var u=this.xOffset,d=this.yOffset;t.c=n.c.toRect({u:l/a*(a-d),d:l/a*d,l:s/i*u,r:s/i*(i-u)}),t.setXBase(s/i,0),t.setYBase(0,l/a);var f=new Y.ImageShape(t.c,o.filepath);e.appendShapeToFront(f)}}),$(F.Command.Includegraphics,{setup:function(e){var t=e.env;t.includegraphicsWidth=y.empty,t.includegraphicsHeight=y.empty,this.attributeList.foreach((function(t){t.setup(e)}))}}),$(F.Command.Includegraphics.Attr.Width,{setup:function(e){e.env.includegraphicsWidth=new y.Some(A.measure.length2em(this.dimen))}}),$(F.Command.Includegraphics.Attr.Height,{setup:function(e){e.env.includegraphicsHeight=new y.Some(A.measure.length2em(this.dimen))}});var Ht={};Ht.Macro=i.Z.Macro,Ht.xybox=function(e,t,n){var r=Vt(e,et.xybox(),F.xypic.prototype.kind);e.Push(r)},Ht.xymatrixbox=function(e,t,n){var r=Vt(e,et.xymatrixbox(),F.xypic.prototype.kind);e.Push(r)},Ht.newdir=function(e,t,n){var r=Vt(e,et.newdir(),F.xypic.newdir.prototype.kind);e.Push(r)},Ht.xyincludegraphics=function(e,t,n){var r=Vt(e,et.includegraphics(),F.xypic.includegraphics.prototype.kind);e.Push(r)},Ht.xyEnvironment=function(e,t){var n=Vt(e,et.xy(),F.xypic.prototype.kind);return e.Push(t),n},new r.QQ(`xypic-command`,{hole:[`Macro`,`{\\\\style{visibility:hidden}{x}}`],objectstyle:[`Macro`,`\\\\textstyle`],labelstyle:[`Macro`,`\\\\scriptstyle`],twocellstyle:[`Macro`,`\\\\scriptstyle`],xybox:[`xybox`,`xybox`],xymatrix:[`xymatrixbox`,`xymatrix`],newdir:[`newdir`,`newdir`],includegraphics:[`xyincludegraphics`,`includegraphics`]},Ht),new r.QM(`xypic-environment`,a.Z.environment,{xy:[`xyEnvironment`,null,!1]},Ht),t.VK.create(`xypic`,{handler:{macro:[`xypic-command`],environment:[`xypic-environment`]},preprocessors:[function(e){e.math,e.document,e.data,A.xypicCommandIdCounter=0,A.xypicCommandMap={},A.textObjectIdCounter=0,A.wrapperOfTextObjectMap={}}],nodes:{xypic:function(e,t,n){var r=e.mmlFactory;return new F.xypic(r,t,n)},\"xypic-newdir\":function(e,t,n){var r=e.mmlFactory;return new F.xypic.newdir(r,t,n)},\"xypic-includegraphics\":function(e,t,n){var r=e.mmlFactory;return new F.xypic.includegraphics(r,t,n)}}}),Ie.embeddedModifierMap={o:new F.Modifier.Shape.Circle,l:new F.Modifier.Shape.L,r:new F.Modifier.Shape.R,u:new F.Modifier.Shape.U,d:new F.Modifier.Shape.D,c:new F.Modifier.Shape.C,aliceblue:new F.Modifier.Shape.ChangeColor(`aliceblue`),antiquewhite:new F.Modifier.Shape.ChangeColor(`antiquewhite`),aqua:new F.Modifier.Shape.ChangeColor(`aqua`),aquamarine:new F.Modifier.Shape.ChangeColor(`aquamarine`),azure:new F.Modifier.Shape.ChangeColor(`azure`),beige:new F.Modifier.Shape.ChangeColor(`beige`),bisque:new F.Modifier.Shape.ChangeColor(`bisque`),black:new F.Modifier.Shape.ChangeColor(`black`),blanchedalmond:new F.Modifier.Shape.ChangeColor(`blanchedalmond`),blue:new F.Modifier.Shape.ChangeColor(`blue`),blueviolet:new F.Modifier.Shape.ChangeColor(`blueviolet`),brown:new F.Modifier.Shape.ChangeColor(`brown`),burlywood:new F.Modifier.Shape.ChangeColor(`burlywood`),cadetblue:new F.Modifier.Shape.ChangeColor(`cadetblue`),chartreuse:new F.Modifier.Shape.ChangeColor(`chartreuse`),chocolate:new F.Modifier.Shape.ChangeColor(`chocolate`),coral:new F.Modifier.Shape.ChangeColor(`coral`),cornflowerblue:new F.Modifier.Shape.ChangeColor(`cornflowerblue`),cornsilk:new F.Modifier.Shape.ChangeColor(`cornsilk`),crimson:new F.Modifier.Shape.ChangeColor(`crimson`),cyan:new F.Modifier.Shape.ChangeColor(`cyan`),darkblue:new F.Modifier.Shape.ChangeColor(`darkblue`),darkcyan:new F.Modifier.Shape.ChangeColor(`darkcyan`),darkgoldenrod:new F.Modifier.Shape.ChangeColor(`darkgoldenrod`),darkgray:new F.Modifier.Shape.ChangeColor(`darkgray`),darkgreen:new F.Modifier.Shape.ChangeColor(`darkgreen`),darkgrey:new F.Modifier.Shape.ChangeColor(`darkgrey`),darkkhaki:new F.Modifier.Shape.ChangeColor(`darkkhaki`),darkmagenta:new F.Modifier.Shape.ChangeColor(`darkmagenta`),darkolivegreen:new F.Modifier.Shape.ChangeColor(`darkolivegreen`),darkorange:new F.Modifier.Shape.ChangeColor(`darkorange`),darkorchid:new F.Modifier.Shape.ChangeColor(`darkorchid`),darkred:new F.Modifier.Shape.ChangeColor(`darkred`),darksalmon:new F.Modifier.Shape.ChangeColor(`darksalmon`),darkseagreen:new F.Modifier.Shape.ChangeColor(`darkseagreen`),darkslateblue:new F.Modifier.Shape.ChangeColor(`darkslateblue`),darkslategray:new F.Modifier.Shape.ChangeColor(`darkslategray`),darkslategrey:new F.Modifier.Shape.ChangeColor(`darkslategrey`),darkturquoise:new F.Modifier.Shape.ChangeColor(`darkturquoise`),darkviolet:new F.Modifier.Shape.ChangeColor(`darkviolet`),deeppink:new F.Modifier.Shape.ChangeColor(`deeppink`),deepskyblue:new F.Modifier.Shape.ChangeColor(`deepskyblue`),dimgray:new F.Modifier.Shape.ChangeColor(`dimgray`),dimgrey:new F.Modifier.Shape.ChangeColor(`dimgrey`),dodgerblue:new F.Modifier.Shape.ChangeColor(`dodgerblue`),firebrick:new F.Modifier.Shape.ChangeColor(`firebrick`),floralwhite:new F.Modifier.Shape.ChangeColor(`floralwhite`),forestgreen:new F.Modifier.Shape.ChangeColor(`forestgreen`),fuchsia:new F.Modifier.Shape.ChangeColor(`fuchsia`),gainsboro:new F.Modifier.Shape.ChangeColor(`gainsboro`),ghostwhite:new F.Modifier.Shape.ChangeColor(`ghostwhite`),gold:new F.Modifier.Shape.ChangeColor(`gold`),goldenrod:new F.Modifier.Shape.ChangeColor(`goldenrod`),gray:new F.Modifier.Shape.ChangeColor(`gray`),grey:new F.Modifier.Shape.ChangeColor(`grey`),green:new F.Modifier.Shape.ChangeColor(`green`),greenyellow:new F.Modifier.Shape.ChangeColor(`greenyellow`),honeydew:new F.Modifier.Shape.ChangeColor(`honeydew`),hotpink:new F.Modifier.Shape.ChangeColor(`hotpink`),indianred:new F.Modifier.Shape.ChangeColor(`indianred`),indigo:new F.Modifier.Shape.ChangeColor(`indigo`),ivory:new F.Modifier.Shape.ChangeColor(`ivory`),khaki:new F.Modifier.Shape.ChangeColor(`khaki`),lavender:new F.Modifier.Shape.ChangeColor(`lavender`),lavenderblush:new F.Modifier.Shape.ChangeColor(`lavenderblush`),lawngreen:new F.Modifier.Shape.ChangeColor(`lawngreen`),lemonchiffon:new F.Modifier.Shape.ChangeColor(`lemonchiffon`),lightblue:new F.Modifier.Shape.ChangeColor(`lightblue`),lightcoral:new F.Modifier.Shape.ChangeColor(`lightcoral`),lightcyan:new F.Modifier.Shape.ChangeColor(`lightcyan`),lightgoldenrodyellow:new F.Modifier.Shape.ChangeColor(`lightgoldenrodyellow`),lightgray:new F.Modifier.Shape.ChangeColor(`lightgray`),lightgreen:new F.Modifier.Shape.ChangeColor(`lightgreen`),lightgrey:new F.Modifier.Shape.ChangeColor(`lightgrey`),lightpink:new F.Modifier.Shape.ChangeColor(`lightpink`),lightsalmon:new F.Modifier.Shape.ChangeColor(`lightsalmon`),lightseagreen:new F.Modifier.Shape.ChangeColor(`lightseagreen`),lightskyblue:new F.Modifier.Shape.ChangeColor(`lightskyblue`),lightslategray:new F.Modifier.Shape.ChangeColor(`lightslategray`),lightslategrey:new F.Modifier.Shape.ChangeColor(`lightslategrey`),lightsteelblue:new F.Modifier.Shape.ChangeColor(`lightsteelblue`),lightyellow:new F.Modifier.Shape.ChangeColor(`lightyellow`),lime:new F.Modifier.Shape.ChangeColor(`lime`),limegreen:new F.Modifier.Shape.ChangeColor(`limegreen`),linen:new F.Modifier.Shape.ChangeColor(`linen`),magenta:new F.Modifier.Shape.ChangeColor(`magenta`),maroon:new F.Modifier.Shape.ChangeColor(`maroon`),mediumaquamarine:new F.Modifier.Shape.ChangeColor(`mediumaquamarine`),mediumblue:new F.Modifier.Shape.ChangeColor(`mediumblue`),mediumorchid:new F.Modifier.Shape.ChangeColor(`mediumorchid`),mediumpurple:new F.Modifier.Shape.ChangeColor(`mediumpurple`),mediumseagreen:new F.Modifier.Shape.ChangeColor(`mediumseagreen`),mediumslateblue:new F.Modifier.Shape.ChangeColor(`mediumslateblue`),mediumspringgreen:new F.Modifier.Shape.ChangeColor(`mediumspringgreen`),mediumturquoise:new F.Modifier.Shape.ChangeColor(`mediumturquoise`),mediumvioletred:new F.Modifier.Shape.ChangeColor(`mediumvioletred`),midnightblue:new F.Modifier.Shape.ChangeColor(`midnightblue`),mintcream:new F.Modifier.Shape.ChangeColor(`mintcream`),mistyrose:new F.Modifier.Shape.ChangeColor(`mistyrose`),moccasin:new F.Modifier.Shape.ChangeColor(`moccasin`),navajowhite:new F.Modifier.Shape.ChangeColor(`navajowhite`),navy:new F.Modifier.Shape.ChangeColor(`navy`),oldlace:new F.Modifier.Shape.ChangeColor(`oldlace`),olive:new F.Modifier.Shape.ChangeColor(`olive`),olivedrab:new F.Modifier.Shape.ChangeColor(`olivedrab`),orange:new F.Modifier.Shape.ChangeColor(`orange`),orangered:new F.Modifier.Shape.ChangeColor(`orangered`),orchid:new F.Modifier.Shape.ChangeColor(`orchid`),palegoldenrod:new F.Modifier.Shape.ChangeColor(`palegoldenrod`),palegreen:new F.Modifier.Shape.ChangeColor(`palegreen`),paleturquoise:new F.Modifier.Shape.ChangeColor(`paleturquoise`),palevioletred:new F.Modifier.Shape.ChangeColor(`palevioletred`),papayawhip:new F.Modifier.Shape.ChangeColor(`papayawhip`),peachpuff:new F.Modifier.Shape.ChangeColor(`peachpuff`),peru:new F.Modifier.Shape.ChangeColor(`peru`),pink:new F.Modifier.Shape.ChangeColor(`pink`),plum:new F.Modifier.Shape.ChangeColor(`plum`),powderblue:new F.Modifier.Shape.ChangeColor(`powderblue`),purple:new F.Modifier.Shape.ChangeColor(`purple`),red:new F.Modifier.Shape.ChangeColor(`red`),rosybrown:new F.Modifier.Shape.ChangeColor(`rosybrown`),royalblue:new F.Modifier.Shape.ChangeColor(`royalblue`),saddlebrown:new F.Modifier.Shape.ChangeColor(`saddlebrown`),salmon:new F.Modifier.Shape.ChangeColor(`salmon`),sandybrown:new F.Modifier.Shape.ChangeColor(`sandybrown`),seagreen:new F.Modifier.Shape.ChangeColor(`seagreen`),seashell:new F.Modifier.Shape.ChangeColor(`seashell`),sienna:new F.Modifier.Shape.ChangeColor(`sienna`),silver:new F.Modifier.Shape.ChangeColor(`silver`),skyblue:new F.Modifier.Shape.ChangeColor(`skyblue`),slateblue:new F.Modifier.Shape.ChangeColor(`slateblue`),slategray:new F.Modifier.Shape.ChangeColor(`slategray`),slategrey:new F.Modifier.Shape.ChangeColor(`slategrey`),snow:new F.Modifier.Shape.ChangeColor(`snow`),springgreen:new F.Modifier.Shape.ChangeColor(`springgreen`),steelblue:new F.Modifier.Shape.ChangeColor(`steelblue`),tan:new F.Modifier.Shape.ChangeColor(`tan`),teal:new F.Modifier.Shape.ChangeColor(`teal`),thistle:new F.Modifier.Shape.ChangeColor(`thistle`),tomato:new F.Modifier.Shape.ChangeColor(`tomato`),turquoise:new F.Modifier.Shape.ChangeColor(`turquoise`),violet:new F.Modifier.Shape.ChangeColor(`violet`),wheat:new F.Modifier.Shape.ChangeColor(`wheat`),white:new F.Modifier.Shape.ChangeColor(`white`),whitesmoke:new F.Modifier.Shape.ChangeColor(`whitesmoke`),yellow:new F.Modifier.Shape.ChangeColor(`yellow`),yellowgreen:new F.Modifier.Shape.ChangeColor(`yellowgreen`)};var Ut=n(81),Wt=n(748),Gt=n(226);function Kt(e){return Kt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Kt(e)}function qt(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Jt(e,t)}function Jt(e,t){return Jt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Jt(e,t)}function Yt(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=Qt(e);if(t){var i=Qt(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Xt(this,n)}}function Xt(e,t){if(t&&(Kt(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return Zt(e)}function Zt(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function Qt(e){return Qt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Qt(e)}function $t(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function en(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function tn(e,t,n){return t&&en(e.prototype,t),n&&en(e,n),e}var nn=it,rn=function(){function e(){$t(this,e)}return tn(e,null,[{key:`createSVG`,value:function(e,t,n,r,i,a,o){return new on(e,t,n,r,i,a,o)}}]),e}(),an=function(){function e(t){$t(this,e),this.xypicWrapper=t}return tn(e,[{key:`createElement`,value:function(e){return this.xypicWrapper.svg(e)}},{key:`createGroup`,value:function(e){return new un(this,e)}},{key:`createChangeColorGroup`,value:function(e){return new dn(this,e)}},{key:`createSVGElement`,value:function(e,t){var n=this.createElement(e);if(t){for(var r in t)if(t.hasOwnProperty(r)){var i=t[r].toString();r===`xlink:href`?this.xypicWrapper.setAttribute(n,r,i,`http://www.w3.org/1999/xlink`):this.xypicWrapper.setAttribute(n,r,i)}}return this.appendChild(n),n}},{key:`appendChild`,value:function(e){return this.xypicWrapper.adaptor.append(this.drawArea,e),e}},{key:`transformBuilder`,value:function(){return new sn}}]),e}(),on=function(e){qt(n,e);var t=Yt(n);function n(e,r,i,a,o,s,c){var l;$t(this,n);var u=(l=t.call(this,e)).createElement(`svg`);if(l.xypicWrapper.setAttribute(u,`xmlns`,`http://www.w3.org/2000/svg`),l.xypicWrapper.setAttribute(u,`version`,`1.1`),c)for(var d in c)c.hasOwnProperty(d)&&l.xypicWrapper.setAttribute(u,d,c[d].toString());for(var f in u.style&&(u.style.width=A.measure.Em(a),u.style.height=A.measure.Em(r+i)),c={fill:`none`,stroke:s,\"stroke-linecap\":`round`,\"stroke-width\":A.measure.em2px(o)},l.drawArea=l.createElement(`g`),c)c.hasOwnProperty(f)&&l.xypicWrapper.setAttribute(l.drawArea,f,c[f].toString());return l.xypicWrapper.append(u,l.drawArea),l.svg=u,l.boundingBox=void 0,l.color=s,l}return tn(n,[{key:`setHeight`,value:function(e){this.xypicWrapper.setStyle(this.svg,`height`,A.measure.Em(e))}},{key:`setWidth`,value:function(e){this.xypicWrapper.setStyle(this.svg,`width`,A.measure.Em(e))}},{key:`setAttribute`,value:function(e,t){this.xypicWrapper.setAttribute(this.svg,e,t.toString())}},{key:`extendBoundingBox`,value:function(e){this.boundingBox=U.combineRect(this.boundingBox,e)}},{key:`getOrigin`,value:function(){return{x:0,y:0}}},{key:`getCurrentColor`,value:function(){return this.color}}]),n}(an),sn=function(){function e(t){$t(this,e),this.transform=t||O.empty}return tn(e,[{key:`translate`,value:function(t,n){return new e(this.transform.append(new cn(t,n)))}},{key:`rotateDegree`,value:function(t){return new e(this.transform.append(new ln(t/180*Math.PI)))}},{key:`rotateRadian`,value:function(t){return new e(this.transform.append(new ln(t)))}},{key:`toString`,value:function(){var e=``;return this.transform.foreach((function(t){e+=t.toTranslateForm()})),e}},{key:`apply`,value:function(e,t){var n={x:e,y:t};return this.transform.foreach((function(e){n=e.apply(n.x,n.y)})),n}}]),e}(),cn=function(){function e(t,n){$t(this,e),this.dx=t,this.dy=n}return tn(e,[{key:`apply`,value:function(e,t){return{x:e-this.dx,y:t+this.dy}}},{key:`toTranslateForm`,value:function(){return`translate(`+A.measure.em2px(this.dx)+`,`+A.measure.em2px(-this.dy)+`) `}}]),e}(),ln=function(){function e(t){$t(this,e),this.radian=t}return tn(e,[{key:`apply`,value:function(e,t){var n=Math.cos(this.radian),r=Math.sin(this.radian);return{x:n*e+r*t,y:-r*e+n*t}}},{key:`toTranslateForm`,value:function(){return`rotate(`+nn(-180*this.radian/Math.PI)+`) `}}]),e}(),un=function(e){qt(n,e);var t=Yt(n);function n(e,r){var i;$t(this,n),(i=t.call(this,e.xypicWrapper)).parent=e,i.drawArea=e.createSVGElement(`g`,r===void 0?{}:{transform:r.toString()});var a=e.getOrigin();return i.origin=r===void 0?a:r.apply(a.x,a.y),H(Zt(i),`getCurrentColor`),i}return tn(n,[{key:`remove`,value:function(){this.xypicWrapper.remove(this.drawArea)}},{key:`extendBoundingBox`,value:function(e){this.parent.extendBoundingBox(e)}},{key:`getOrigin`,value:function(){return this.origin}},{key:`getCurrentColor`,value:function(){return this.parent.getCurrentColor()}}]),n}(an),dn=function(e){qt(n,e);var t=Yt(n);function n(e,r){var i;return $t(this,n),(i=t.call(this,e.xypicWrapper)).parent=e,i.drawArea=e.createSVGElement(`g`,{stroke:r}),i.color=r,H(Zt(i),`getOrigin`),i}return tn(n,[{key:`remove`,value:function(){this.xypicWrapper.remove(this.drawArea)}},{key:`extendBoundingBox`,value:function(e){this.parent.extendBoundingBox(e)}},{key:`getOrigin`,value:function(){return this.parent.getOrigin()}},{key:`getCurrentColor`,value:function(){return this.color}}]),n}(an);function fn(e){return fn=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},fn(e)}function pn(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if(typeof e==`string`)return mn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return mn(e,t)}}(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(s)throw a}}}}function mn(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function hn(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function gn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _n(e,t,n){return t&&gn(e.prototype,t),n&&gn(e,n),e}function vn(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&yn(e,t)}function yn(e,t){return yn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},yn(e,t)}function bn(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=Sn(e);if(t){var i=Sn(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return xn(this,n)}}function xn(e,t){if(t&&(fn(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function Sn(e){return Sn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Sn(e)}var Cn=`http://www.w3.org/2000/svg`,wn=it;function Tn(e,t){var n=function(e){vn(n,e);var t=bn(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;hn(this,n),i=t.call(this,e,r,a);for(var o=A.wrapperOfTextObjectMap,s=r.textMmls,c=i.childNodes,l=s.length,u=0;u<l;u++){var d=s[u].xypicTextObjectId;o[d]=c[u]}return i._textObjects=[],i}return _n(n,[{key:`getElement`,value:function(){return this.chtml}},{key:`appendTextObject`,value:function(e){this._textObjects.push(e)}},{key:`getChildWrapper`,value:function(e){var t=e.xypicTextObjectId;if(t==null)throw c(`IllegalStateError`,`BUG`);var n=A.wrapperOfTextObjectMap[t];if(n==null)throw c(`IllegalStateError`,`unknown textObjectId:`+t);return n}},{key:`toCHTML`,value:function(e){var t=A.svgForDebug,n=A.svgForTestLayout;this._textObjects=[],this.setupMeasure(this),this._toCHTML(e),A.svgForDebug=t,A.svgForTestLayout=n}},{key:`setupMeasure`,value:function(e){var t=it,n=e.length2em(`1em`),r=parseFloat(e.px(100).replace(`px`,``))/100,i=e.font.params.axis_height,a=e.length2em(`0.15em`),o=function(t){return Math.round(parseFloat(e.px(100*t).replace(`px`,``)))/100};A.measure={length2em:function(n){return t(e.length2em(n))},oneem:n,em2length:function(e){return t(e/n)+`em`},Em:function(t){return e.em(t)},em:r,em2px:o,axis_height:i,strokeWidth:e.length2em(`0.04em`),thickness:a,jot:e.length2em(`3pt`),objectmargin:e.length2em(`3pt`),objectwidth:e.length2em(`0pt`),objectheight:e.length2em(`0pt`),labelmargin:e.length2em(`2.5pt`),turnradius:e.length2em(`10pt`),lineElementLength:e.length2em(`5pt`),axisHeightLength:i*e.length2em(`10pt`),dottedDasharray:n+` `+o(a)}}},{key:`append`,value:function(e,t){this.adaptor.append(e,t)}},{key:`remove`,value:function(e){this.adaptor.remove(e)}},{key:`svg`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return this.adaptor.node(e,t,n,Cn)}},{key:`setAttribute`,value:function(e,t,n,r){return this.adaptor.setAttribute(e,t,n,r)}},{key:`setStyle`,value:function(e,t,n){this.adaptor.setStyle(e,t,n)}},{key:`drawTextObject`,value:function(e,t,n){var r=A.measure.length2em(`0.2em`),i=t.xypicWrapper,a=i.getChildWrapper(e.math),o=a.adaptor,s=a.getBBox(),c=s.scale,l=(s.h+r)*c,u=(s.d+r)*c,d=(s.w+2*r)*c,f=(l+u)/2,p=d/2,m=e.c;if(e.originalBBox={H:l,D:u,W:d},!n){var h=a.html(`mjx-xypic-object`);o.append(i.getElement(),h),o.setStyle(h,`color`,t.getCurrentColor()),a.toCHTML(h);var g=t.getOrigin();o.setAttribute(h,`data-x`,m.x-p-g.x+r*c),o.setAttribute(h,`data-y`,-m.y-f-g.y+r*c),o.setAttribute(h,`data-xypic-id`,e.math.xypicTextObjectId),i.appendTextObject(h)}return m.toRect({u:f,d:f,l:p,r:p})}}]),n}(e),r=function(e){vn(n,e);var t=bn(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return hn(this,n),(i=t.call(this,e,r,a)).shape=null,i}return _n(n,[{key:`computeBBox`,value:function(e){e.empty();var t=this.node.cmd;if(t){var n=this.length2em(`0.2em`);if(this.shape==null){var r=A.svgForDebug,i=A.svgForTestLayout;this._textObjects=[],this.setupMeasure(this),this.adaptor;var a=A.measure.strokeWidth,o=1,s=0,c=1,l=A.measure.em2px,u=`black`,d=rn.createSVG(this,o,s,c,a,u,{viewBox:[0,-l(o+s),l(c),l(o+s)].join(` `),role:`img`,focusable:!1,overflow:`visible`});A.svgForDebug=d,A.svgForTestLayout=d;var f=new Mt,p=new St(Y.none,f);t.toShape(p),this.shape=p.shape,A.svgForDebug=r,A.svgForTestLayout=i}var m=this.shape,h=m.getBoundingBox();h!==void 0&&(h=new U.Rect(0,0,{l:Math.max(0,-(h.x-h.l)),r:Math.max(0,h.x+h.r),u:Math.max(0,h.y+h.u),d:Math.max(0,-(h.y-h.d))}),e.updateFrom(new Gt.bK({w:h.l+h.r+2*n,h:h.u+2*n,d:h.d})))}}},{key:`kind`,get:function(){return F.xypic.prototype.kind}},{key:`_toCHTML`,value:function(e){var t=this.standardCHTMLnode(e);this.cthml=t;var n=this.adaptor,r=this.length2em(`0.2em`),i=A.measure.strokeWidth,a=1,o=0,s=1,c=A.measure.em2px,l=rn.createSVG(this,a,o,s,i,`black`,{viewBox:[0,-c(a+o),c(s),c(a+o)].join(` `),role:`img`,focusable:!1,overflow:`visible`});A.svgForDebug=l,A.svgForTestLayout=l,n.append(t,l.svg);var u=this.node.cmd;if(u){if(this.shape==null){var d=new Mt,f=new St(Y.none,d);u.toShape(f),this.shape=f.shape}var p=this.shape;p.draw(l);var m=p.getBoundingBox();if(m!==void 0){var h=(m=new U.Rect(0,0,{l:Math.max(0,-(m.x-m.l)),r:Math.max(0,m.x+m.r),u:Math.max(0,m.y+m.u),d:Math.max(0,-(m.y-m.d))})).x-m.l-r,g=-m.y-m.u-r,_=m.l+m.r+2*r,v=m.u+m.d+2*r;l.setWidth(_),l.setHeight(v),l.setAttribute(`viewBox`,[c(h),c(g),c(_),c(v)].join(` `)),n.setStyle(t,`vertical-align`,wn(-m.d-r+A.measure.axis_height)+`em`);var y,b=pn(this._textObjects);try{for(b.s();!(y=b.n()).done;){var x=y.value,S=parseFloat(n.getAttribute(x,`data-x`)),C=parseFloat(n.getAttribute(x,`data-y`));n.setStyle(x,`left`,wn(S-h)+`em`),n.setStyle(x,`top`,wn(C+m.y-m.d-.5*r)+`em`)}}catch(e){b.e(e)}finally{b.f()}}else n.remove(l.svg)}else n.remove(l.svg)}}],[{key:`styles`,get:function(){return{\"mjx-xypic path\":{\"stroke-width\":`inherit`},\".MathJax mjx-xypic path\":{\"stroke-width\":`inherit`},\"mjx-xypic-object\":{\"text-align\":`center`,position:`absolute`},\"mjx-xypic\":{position:`relative`}}}}]),n}(n);t[r.prototype.kind]=r;var i=function(e){vn(n,e);var t=bn(n);function n(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return hn(this,n),t.call(this,e,r,i)}return _n(n,[{key:`kind`,get:function(){return F.xypic.newdir.prototype.kind}},{key:`_toCHTML`,value:function(e){var t=this.node.cmd;A.repositories.dirRepository.put(t.dirMain,t.compositeObject)}}]),n}(n);t[i.prototype.kind]=i;var a=function(e){vn(n,e);var t=bn(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return hn(this,n),(i=t.call(this,e,r,a))._setupGraphics(),i.computeBBox(i.bbox),i.bboxComputed=!0,i}return _n(n,[{key:`kind`,get:function(){return F.xypic.includegraphics.prototype.kind}},{key:`_setupGraphics`,value:function(){this.setupMeasure(this);var e=new Mt,t=new St(Y.none,e),n=this.node.cmd;if(n.setup(t),!e.includegraphicsWidth.isDefined||!e.includegraphicsHeight.isDefined)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\includegraphics are required.`);var r=e.includegraphicsWidth.get,i=e.includegraphicsHeight.get;this.imageWidth=this.length2em(r),this.imageHeight=this.length2em(i),this.filepath=n.filepath}},{key:`computeBBox`,value:function(e){e.empty(),e.updateFrom(new Gt.bK({w:this.imageWidth,h:this.imageHeight,d:0}))}},{key:`_toCHTML`,value:function(e){var t=this.standardCHTMLnode(e);this.cthml=t,this.adaptor.setStyle(t,`position`,`relative`),this.adaptor.setStyle(t,`vertical-align`,`0em`);var n=this.html(`img`);this.adaptor.setAttribute(n,`src`,this.filepath),this.adaptor.setStyle(n,`width`,wn(this.imageWidth)+`em`),this.adaptor.setStyle(n,`height`,wn(this.imageHeight)+`em`),this.adaptor.append(t,n)}}]),n}(n);t[a.prototype.kind]=a}Ut.wO!==void 0&&Tn(Ut.wO,Wt.w);var En=n(952),Dn=n(84);function On(e){return On=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},On(e)}function kn(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if(typeof e==`string`)return An(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return An(e,t)}}(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(s)throw a}}}}function An(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function jn(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function Mn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Nn(e,t,n){return t&&Mn(e.prototype,t),n&&Mn(e,n),e}function Pn(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Fn(e,t)}function Fn(e,t){return Fn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Fn(e,t)}function In(e){var t=function(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch{return!1}}();return function(){var n,r=Rn(e);if(t){var i=Rn(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ln(this,n)}}function Ln(e,t){if(t&&(On(t)===`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return function(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}(e)}function Rn(e){return Rn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Rn(e)}var zn=`http://www.w3.org/2000/svg`,Bn=it;function Vn(e,t){var n=function(e){Pn(n,e);var t=In(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;jn(this,n),i=t.call(this,e,r,a);for(var o=A.wrapperOfTextObjectMap,s=r.textMmls,c=i.childNodes,l=s.length,u=0;u<l;u++){var d=s[u].xypicTextObjectId;o[d]=c[u]}return i._textObjects=[],i}return Nn(n,[{key:`getElement`,value:function(){return this.svgNode}},{key:`appendTextObject`,value:function(e){this._textObjects.push(e)}},{key:`getChildWrapper`,value:function(e){var t=e.xypicTextObjectId;if(t==null)throw c(`IllegalStateError`,`BUG`);var n=A.wrapperOfTextObjectMap[t];if(n==null)throw c(`IllegalStateError`,`unknown textObjectId:`+t);return n}},{key:`toSVG`,value:function(e){var t=A.svgForDebug,n=A.svgForTestLayout;this._textObjects=[],this.setupMeasure(this),this._toSVG(e),A.svgForDebug=t,A.svgForTestLayout=n}},{key:`setupMeasure`,value:function(e){var t=it,n=e.length2em(`1em`),r=parseFloat(e.px(100).replace(`px`,``))/100,i=e.font.params.axis_height,a=e.length2em(`0.15em`),o=function(t){return Math.round(parseFloat(e.px(100*t).replace(`px`,``)))/100};A.measure={length2em:function(n){return t(e.length2em(n))},oneem:n,em2length:function(e){return t(e/n)+`em`},Em:function(t){return e.em(t)},em:r,em2px:o,axis_height:i,strokeWidth:e.length2em(`0.04em`),thickness:a,jot:e.length2em(`3pt`),objectmargin:e.length2em(`3pt`),objectwidth:e.length2em(`0pt`),objectheight:e.length2em(`0pt`),labelmargin:e.length2em(`2.5pt`),turnradius:e.length2em(`10pt`),lineElementLength:e.length2em(`5pt`),axisHeightLength:i*e.length2em(`10pt`),dottedDasharray:n+` `+o(a)}}},{key:`append`,value:function(e,t){this.adaptor.append(e,t)}},{key:`remove`,value:function(e){this.adaptor.remove(e)}},{key:`svg`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return this.adaptor.node(e,t,n,zn)}},{key:`setAttribute`,value:function(e,t,n,r){return this.adaptor.setAttribute(e,t,n,r)}},{key:`setStyle`,value:function(e,t,n){this.adaptor.setStyle(e,t,n)}},{key:`drawTextObject`,value:function(e,t,n){var r=A.measure.length2em(`0.2em`),i=t.xypicWrapper,a=i.getChildWrapper(e.math),o=a.adaptor,s=a.getBBox(),c=s.scale,l=(s.h+r)*c,u=(s.d+r)*c,d=(s.w+2*r)*c,f=(l+u)/2,p=d/2,m=e.c;if(e.originalBBox={H:l,D:u,W:d},!n){var h=a.svg(`g`);o.append(i.getElement(),h),o.setAttribute(h,`stroke`,t.getCurrentColor()),o.setAttribute(h,`fill`,t.getCurrentColor()),a.toSVG(h);var g=t.getOrigin();o.setAttribute(h,`data-x`,m.x-p-g.x+r*c),o.setAttribute(h,`data-y`,-m.y+(l-u)/2-g.y),o.setAttribute(h,`data-xypic-id`,e.math.xypicTextObjectId),i.appendTextObject(h)}return m.toRect({u:f,d:f,l:p,r:p})}}]),n}(e),r=function(e){Pn(n,e);var t=In(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return jn(this,n),(i=t.call(this,e,r,a)).shape=null,i}return Nn(n,[{key:`computeBBox`,value:function(e){e.empty();var t=this.node.cmd;if(t){var n=this.length2em(`0.2em`);if(this.shape==null){var r=A.svgForDebug,i=A.svgForTestLayout;this._textObjects=[],this.setupMeasure(this),this.adaptor;var a=A.measure.strokeWidth,o=1,s=0,c=1,l=A.measure.em2px,u=`black`,d=rn.createSVG(this,o,s,c,a,u,{viewBox:[0,-l(o+s),l(c),l(o+s)].join(` `),role:`img`,focusable:!1,overflow:`visible`});A.svgForDebug=d,A.svgForTestLayout=d;var f=new Mt,p=new St(Y.none,f);t.toShape(p),this.shape=p.shape,A.svgForDebug=r,A.svgForTestLayout=i}var m=this.shape,h=m.getBoundingBox();h!==void 0&&(h=new U.Rect(0,0,{l:Math.max(0,-(h.x-h.l)),r:Math.max(0,h.x+h.r),u:Math.max(0,h.y+h.u),d:Math.max(0,-(h.y-h.d))}),e.updateFrom(new Gt.bK({w:h.l+h.r+2*n,h:h.u+2*n,d:h.d})))}}},{key:`kind`,get:function(){return F.xypic.prototype.kind}},{key:`_toSVG`,value:function(e){var t=this.standardSVGnode(e);this.svgNode=t;var n=this.adaptor,r=this.length2em(`0.2em`),i=A.measure.strokeWidth,a=1,o=0,s=1,c=A.measure.em2px,l=rn.createSVG(this,a,o,s,i,`black`,{viewBox:[0,-c(a+o),c(s),c(a+o)].join(` `),role:`img`,focusable:!1,overflow:`visible`});A.svgForDebug=l,A.svgForTestLayout=l,n.append(t,l.drawArea);var u=this.node.cmd;if(u){if(this.shape==null){var d=new Mt,f=new St(Y.none,d);u.toShape(f),this.shape=f.shape}var p=this.shape;p.draw(l);var m=p.getBoundingBox();if(m!==void 0){var h=(m=new U.Rect(0,0,{l:Math.max(0,-(m.x-m.l)),r:Math.max(0,m.x+m.r),u:Math.max(0,m.y+m.u),d:Math.max(0,-(m.y-m.d))})).x-m.l-r,g=-m.y-m.u-r,_=m.l+m.r+2*r,v=m.u+m.d+2*r;l.setWidth(_),l.setHeight(v),l.setAttribute(`viewBox`,[c(h),c(g),c(_),c(v)].join(` `));var y=this.fixed(1)/c(1);n.setAttribute(l.drawArea,`transform`,`translate(`+this.fixed(-h)+`,`+this.fixed(m.y+A.measure.axis_height)+`) scale(`+y+`, `+-y+`)`);var b,x=kn(this._textObjects);try{for(x.s();!(b=x.n()).done;){var S=b.value,C=parseFloat(n.getAttribute(S,`data-x`)),w=parseFloat(n.getAttribute(S,`data-y`)),T=C-h,E=-w+m.y+A.measure.axis_height;this.place(T,E,S)}}catch(e){x.e(e)}finally{x.f()}}else n.remove(l.drawArea)}else n.remove(l.drawArea)}}],[{key:`styles`,get:function(){return{'g[data-mml-node=\"xypic\"] path':{\"stroke-width\":`inherit`},'.MathJax g[data-mml-node=\"xypic\"] path':{\"stroke-width\":`inherit`}}}}]),n}(n);t[r.prototype.kind]=r;var i=function(e){Pn(n,e);var t=In(n);function n(e,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return jn(this,n),t.call(this,e,r,i)}return Nn(n,[{key:`kind`,get:function(){return F.xypic.newdir.prototype.kind}},{key:`computeBBox`,value:function(e){var t=this.node.cmd;A.repositories.dirRepository.put(t.dirMain,t.compositeObject)}},{key:`_toSVG`,value:function(e){var t=this.node.cmd;A.repositories.dirRepository.put(t.dirMain,t.compositeObject)}}]),n}(n);t[i.prototype.kind]=i;var a=function(e){Pn(n,e);var t=In(n);function n(e,r){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return jn(this,n),(i=t.call(this,e,r,a))._setupGraphics(),i.computeBBox(i.bbox),i.bboxComputed=!0,i}return Nn(n,[{key:`kind`,get:function(){return F.xypic.includegraphics.prototype.kind}},{key:`_setupGraphics`,value:function(){this.setupMeasure(this);var e=new Mt,t=new St(Y.none,e),n=this.node.cmd;if(n.setup(t),!e.includegraphicsWidth.isDefined||!e.includegraphicsHeight.isDefined)throw c(`ExecutionError`,`the 'width' and 'height' attributes of the \\\\includegraphics are required.`);var r=e.includegraphicsWidth.get,i=e.includegraphicsHeight.get;this.imageWidth=this.length2em(r),this.imageHeight=this.length2em(i),this.filepath=n.filepath}},{key:`computeBBox`,value:function(e){e.empty(),e.updateFrom(new Gt.bK({w:this.imageWidth,h:this.imageHeight,d:0}))}},{key:`_toSVG`,value:function(e){var t=this.standardSVGnode(e);this.svgNode=t;var n=this.fixed(1),r=this.svg(`image`,{x:`0`,y:`0`,preserveAspectRatio:`none`,width:Bn(this.imageWidth),height:Bn(this.imageHeight),transform:`scale(`+n+`,`+-n+`) translate(0,`+Bn(-this.imageHeight)+`)`});this.adaptor.setAttribute(r,`xlink:href`,this.filepath,`http://www.w3.org/1999/xlink`),this.adaptor.append(t,r)}}]),n}(n);t[a.prototype.kind]=a}En.y!==void 0&&Vn(En.y,Dn.N);var Hn=MathJax._.components.loader.Loader;Hn&&(MathJax._.output.chtml.Wrapper.CHTMLWrapper||Hn.ready(`output/chtml`).then((function(){var e=MathJax._.output.chtml;Tn(e.Wrapper.CHTMLWrapper,e.Wrappers_ts.CHTMLWrappers)})).catch((function(e){return console.log(`Caught`,e)})),MathJax._.output.svg.Wrapper.SVGWrapper||Hn.ready(`output/svg`).then((function(){var e=MathJax._.output.svg;Vn(e.Wrapper.SVGWrapper,e.Wrappers_ts.SVGWrappers)})).catch((function(e){return console.log(`Caught`,e)})))})()})();\n//# sourceMappingURL=xypic-DrMJn58R.js.map"],"names":["e","t","n","r","i","a","o","s","c","l","u","d","f","p","m","h","g","_","v","y","b","x","S","C","w","T","E","D","ee","de","te","ne","O","re","ie","ae","oe","se","ce","le","ue","he","fe","pe","me","ge","_e","ve","ye","be","xe","Se","k","Ce","we","Te"],"mappings":"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","x_google_ignoreList":[0]}
|